Toolbar & menus
Customise the toolbar, bubble menu, slash menu, drag handle and menubar.
Toolbar
The toolbar is generated from your extensions: every extension with a button contributes one or more controls, in the order of the extensions array.
| Option (all extensions) | Description |
|---|---|
spacer | Render a separator before the button. |
divider | Render a separator after the button. |
toolbar | false hides the button but keeps the extension. |
button | Replace the button entirely (see Custom extensions). |
The toolbar follows the WAI-ARIA toolbar pattern: ← / → move between controls, Home / End jump to the ends. On touch devices it becomes a horizontally scrollable strip with 40 px touch targets.
Replacing a button
Bubble menu
Selecting text shows a bubble menu. Its content is configured on BaseKit per node type:
Entries are extension names (bold, link, color, AI, textAlign …), divider, text-bubble (the block-type switcher) or the built-in video actions. Extensions that aren't registered are skipped automatically.
Links, tables, images and column layouts get their own context menus when those extensions are registered. On touch devices the bubble menu opens below the selection so it doesn't collide with the native selection toolbar.
Slash menu
Register SlashCommand and type / at the start of an empty line.
Plugins can also contribute slash commands without touching this configuration.
Drag handle
A drag handle appears to the left of the hovered block (desktop only). It moves blocks by drag and drop and opens a block menu: delete, clear formatting, copy, duplicate, alignment and indentation. The + button inserts a new line and opens the slash menu.
Disable it — together with bubble menus — with hide-bubble.
Menubar
A classic File / Edit / View / Insert / Format menubar is available:
Menu entries only appear when the extension they need is registered.