介绍
remarkable 是一个基于 JavaScript 的 Markdown 解析器和渲染器。它支持包括 GFM(Github Flavored Markdown)在内的各种 Markdown 语法,并能够将解析后的内容渲染成 HTML。remarkable 可以运行在浏览器和 Node.js 中,可以作为一个 npm 包使用。
安装
你可以通过 npm 安装 remarkable:
npm install remarkable
使用方法
基本用法
下面是一个简单的示例,演示如何使用 remarkable 将 Markdown 渲染成 HTML:
const Remarkable = require('remarkable'); const md = new Remarkable(); const markdownText = '# Hello, world!\n\nThis is **bold** text.'; const htmlText = md.render(markdownText); console.log(htmlText); // <h1>Hello, world!</h1>\n<p>This is <strong>bold</strong> text.</p>
自定义配置
remarkable 支持自定义配置,以便更好地适应你的需求。下面是一些常用的选项:
html
:启用 HTML 标签输出(默认为 false)。xhtmlOut
:使用 XHTML 输出而不是 HTML 输出(默认为 false)。breaks
:启用对换行符的解析(默认为 false)。linkify
:自动转换 URL 和 email 为链接(默认为 false)。typographer
:启用一些额外的规则,如智能引号和短划线转换(默认为 false)。
-- -------------------- ---- ------- ----- ---------- - ---------------------- ----- -- - --- ------------ ----- ----- -------- ----- ------------ ----- --- ----- ------------ - -- ------ -------------- -- -------- ----- ----- --- -- --------------------------------- ----- -------- - ------------------------ ---------------------- -- ---------- -------------------- -- --------------------- ----- ----- --- -- -- -------------------------------------------
插件扩展
remarkable 还支持插件扩展,以便更灵活地满足你的需求。下面是一个示例,演示如何使用插件将 Markdown 渲染成 LaTeX:
-- -------------------- ---- ------- ----- ---------- - ---------------------- ----- ----- - ----------------- ----- -- - --- ------------- ------------------- -- - ------------------------------------ - -------- ---- -------- -- - ------ ----------------------------------------- - ------------ ---- --- -- ------------------------------------- - -------- ---- -------- -- - ------ ----------------------------------------- - ------------ ----- --- -- --- ----- ------------ - ----- -- ---- ----- ----- - --- - ------- ----- -------- - ------------------------ ---------------------- -- ---- -- ---- ----- ----- --------------------------- ------------------- -------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------- - --- - ----------------------------------------------- ------------------ ------------------------ ------------- -------------------------------------- ------------ ------- ------------------------------------------------------------- ------------------ ----------- -------------------- --------------------- -------------- --------------- --------------------- ------------- ---------------------------- - ----------------------------------------------------------- -------- ----------------------------------------------------------------------------------