2.5 KiB
2.5 KiB
Heading
The Heading extension adds support for headings of different levels. Headings are rendered with <h1>, <h2>, <h3>, <h4>, <h5> or <h6> HTML tags. By default all six heading levels (or styles) are enabled, but you can pass an array to only allow a few levels. Check the usage example to see how this is done.
Type # at the beginning of a new line and it will magically transform to a heading, same for ## , ### , #### , ##### and ###### .
Installation
# with npm
npm install @tiptap/extension-heading
# with Yarn
yarn add @tiptap/extension-heading
Settings
HTMLAttributes
Custom HTML attributes that should be added to the rendered HTML tag.
Heading.configure({
HTMLAttributes: {
class: 'my-custom-class',
},
})
levels
Specifies which heading levels are supported.
Default: [1, 2, 3, 4, 5, 6]
Heading.configure({
levels: [1, 2],
})
Commands
setHeading()
Creates a heading node with the specified level.
editor.commands.setHeading({ level: 1 })
toggleHeading()
Toggles a heading node with the specified level.
editor.commands.toggleHeading({ level: 1 })
Keyboard shortcuts
| Command | Windows/Linux | macOS |
|---|---|---|
| toggleHeading({ level: 1 }) | Control Alt 1 |
Cmd Alt 1 |
| toggleHeading({ level: 2 }) | Control Alt 2 |
Cmd Alt 2 |
| toggleHeading({ level: 3 }) | Control Alt 3 |
Cmd Alt 3 |
| toggleHeading({ level: 4 }) | Control Alt 4 |
Cmd Alt 4 |
| toggleHeading({ level: 5 }) | Control Alt 5 |
Cmd Alt 5 |
| toggleHeading({ level: 6 }) | Control Alt 6 |
Cmd Alt 6 |