tiptap/docs/src/docPages/api/nodes/code-block.md

42 lines
2.1 KiB
Markdown
Raw Normal View History

2020-08-19 03:39:41 +08:00
# CodeBlock
2021-01-25 17:35:52 +08:00
[![Version](https://img.shields.io/npm/v/@tiptap/extension-code-block.svg?label=version)](https://www.npmjs.com/package/@tiptap/extension-code-block)
[![Downloads](https://img.shields.io/npm/dm/@tiptap/extension-code-block.svg)](https://npmcharts.com/compare/@tiptap/extension-code-block?minimal=true)
2020-09-10 23:29:34 +08:00
With the CodeBlock extension you can add fenced code blocks to your documents. Itll wrap the code in `<pre>` and `<code>` HTML tags.
2020-10-02 21:12:01 +08:00
Type <code>&grave;&grave;&grave;&nbsp;</code> (three backticks and a space) or <code>&Tilde;&Tilde;&Tilde;&nbsp;</code> (three tildes and a space) and a code block is instantly added for you. You can even specify the language, try writing <code>&grave;&grave;&grave;css&nbsp;</code>. That should add a `language-css` class to the `<code>`-tag.
2020-09-10 23:29:34 +08:00
::: warning Restrictions
2021-04-03 21:21:30 +08:00
The CodeBlock extension doesnt come with styling and has no syntax highlighting built-in. Its [on our roadmap](/api/nodes/code-block-lowlight) though.
2020-09-10 23:29:34 +08:00
:::
2020-08-20 21:44:08 +08:00
## Installation
```bash
2020-10-30 21:24:16 +08:00
# with npm
npm install @tiptap/extension-code-block
2020-10-30 21:24:16 +08:00
# with Yarn
yarn add @tiptap/extension-code-block
```
2020-09-23 18:03:03 +08:00
## Settings
2020-11-18 19:12:34 +08:00
| Option | Type | Default | Description |
| ------------------- | -------- | ------------- | --------------------------------------------------------------------- |
| HTMLAttributes | `Object` | `{}` | Custom HTML attributes that should be added to the rendered HTML tag. |
| languageClassPrefix | `String` | `'language-'` | Adds a prefix to language classes that are applied to code tags. |
2020-08-20 21:44:08 +08:00
## Commands
| Command | Parameters | Description |
| --------- | ---------- | ----------------------------- |
| codeBlock | — | Wrap content in a code block. |
2020-08-20 21:44:08 +08:00
## Keyboard shortcuts
2020-11-19 08:16:10 +08:00
* Windows/Linux: `Control`&nbsp;`Alt`&nbsp;`C`
* macOS: `Cmd`&nbsp;`Alt`&nbsp;`C`
2020-09-21 22:59:28 +08:00
## Source code
[packages/extension-code-block/](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-code-block/)
## Usage
<demo name="Nodes/CodeBlock" highlight="3-5,17,36" />