Text Formatting
Add style and emphasis to your text using various formatting options.
Make text bold, italic, underlined, or apply a combination of these styles for emphasis.
Add strikethrough to indicate deleted content, use
inline code for technical terms, or highlight important information.Format mathematical expressions with subscript and superscript text.
Show keyboard shortcuts like ⌘ + B for bold or ⌘ + I for italic formatting.
1
100%
Files
'use client';
import * as React from 'react';
import { Plate, usePlateEditor } from 'platejs/react';
import { EditorKit } from '@/components/editor/editor-kit';
import { Editor, EditorContainer } from '@/components/ui/editor';
import { DEMO_VALUES } from './values/demo-values';
export default function Demo({ id }: { id: string }) {
const editor = usePlateEditor({
plugins: EditorKit,
value: DEMO_VALUES[id],
});
return (
<Plate editor={editor}>
<EditorContainer variant="demo">
<Editor />
</EditorContainer>
</Plate>
);
}
Basic text formatting marks like bold, italic, and underline.
basic-marks-demo


功能特性
- 格式化内联代码片段和技术术语
- 支持快捷键快速格式化
- 默认渲染为
<code>HTML 元素
套件使用
安装
最快捷的方式是使用 BasicMarksKit 来添加代码插件,该套件包含预配置的 CodePlugin 以及其他基础标记及其 Plate UI 组件。
'use client';
import {
BoldPlugin,
CodePlugin,
HighlightPlugin,
ItalicPlugin,
KbdPlugin,
StrikethroughPlugin,
SubscriptPlugin,
SuperscriptPlugin,
UnderlinePlugin,
} from '@platejs/basic-nodes/react';
import { CodeLeaf } from '@/components/ui/code-node';
import { HighlightLeaf } from '@/components/ui/highlight-node';
import { KbdLeaf } from '@/components/ui/kbd-node';
export const BasicMarksKit = [
BoldPlugin,
ItalicPlugin,
UnderlinePlugin,
CodePlugin.configure({
node: { component: CodeLeaf },
shortcuts: { toggle: { keys: 'mod+e' } },
}),
StrikethroughPlugin.configure({
shortcuts: { toggle: { keys: 'mod+shift+x' } },
}),
SubscriptPlugin.configure({
shortcuts: { toggle: { keys: 'mod+comma' } },
}),
SuperscriptPlugin.configure({
shortcuts: { toggle: { keys: 'mod+period' } },
}),
HighlightPlugin.configure({
node: { component: HighlightLeaf },
shortcuts: { toggle: { keys: 'mod+shift+h' } },
}),
KbdPlugin.withComponent(KbdLeaf),
];
CodeLeaf: 渲染内联代码元素
添加套件
将套件添加到你的插件中:
import { createPlateEditor } from 'platejs/react';
import { BasicMarksKit } from '@/components/editor/plugins/basic-marks-kit';
const editor = createPlateEditor({
plugins: [
// ...其他插件
...BasicMarksKit,
],
});手动配置
安装
pnpm add @platejs/basic-nodes
添加插件
在创建编辑器时,将 CodePlugin 包含到 Plate 插件数组中。
import { CodePlugin } from '@platejs/basic-nodes/react';
import { createPlateEditor } from 'platejs/react';
const editor = createPlateEditor({
plugins: [
// ...其他插件
CodePlugin,
],
});配置插件
你可以为 CodePlugin 配置自定义组件和键盘快捷键。
import { CodePlugin } from '@platejs/basic-nodes/react';
import { createPlateEditor } from 'platejs/react';
import { CodeLeaf } from '@/components/ui/code-node';
const editor = createPlateEditor({
plugins: [
// ...其他插件
CodePlugin.configure({
node: { component: CodeLeaf },
shortcuts: { toggle: { keys: 'mod+e' } },
}),
],
});添加工具栏按钮
你可以在工具栏中添加 MarkToolbarButton 来切换代码格式。
插件
CodePlugin
用于内联代码文本格式化的插件。默认渲染为 <code> HTML 元素。
转换操作
tf.code.toggle
切换所选文本的代码格式。