@mdit/plugin-emoji
markdown-it 的表情插件。
安装
pnpm
pnpm add @mdit/plugin-emojiyarn
yarn add @mdit/plugin-emojinpm
npm i @mdit/plugin-emoji使用
import MarkdownIt from "markdown-it";
import { fullEmoji } from "@mdit/plugin-emoji";
const mdIt = MarkdownIt().use(fullEmoji);
mdIt.render("来自火星的问候 :satellite:");提供了几种不同的预设:
fullEmoji: 包含所有可用的表情支持lightEmoji: 包含常用表情的一个子集bareEmoji: 不包含任何默认定义,仅包含你在选项中定义的内容
格式
:表情名称:- 捷键短语,如
:),:D等 (如果启用)
示例
来自火星的问候 📡
经典快捷键: 😃 😦
示例
来自火星的问候 :satellite:
经典快捷键: :-) :-(选项
definitions
- 类型:
Record<string, string> - 默认值:
{}(取决于预设)
重写可用的表情定义。键是表情名称,值是表情字符。
示例: { name1: 'char1', name2: 'char2', ... }
enabled
- 类型:
string[] - 默认值:
[]
如果指定,则仅渲染此列表中的表情。否则,将渲染定义中的所有表情。
shortcuts
- 类型:
Record<string, string | string[]> - 默认值:
{}(取决于预设)
重写默认快捷键。键是表情名称,值是表情的快捷键短语。
示例: { "smile": [ ":)", ":-)" ], "laughing": ":D" }
自定义渲染器
默认情况下,表情被渲染为相应的 Unicode 字符。但你可以根据需要更改渲染器函数。
例如,使用 twemoji:
import MarkdownIt from "markdown-it";
import { fullEmoji } from "@mdit/plugin-emoji";
import twemoji from "twemoji";
const mdIt = MarkdownIt().use(fullEmoji);
mdIt.renderer.rules.emoji = (tokens, idx) => {
return twemoji.parse(tokens[idx].content);
};你可以使用以下样式使图片高度与行高匹配:
.emoji {
height: 1.2em;
}