npm 包 metalsmith-markdownit 使用教程

阅读时长 5 分钟读完

在前端开发中,我们通常需要对网站进行文档的编写和管理,而 markdown 语言的使用很好地解决了这个问题。而通过使用 metalsmith-markdownit 这个 npm 包,我们可以更加便利地管理和渲染 markdown 文档。

Metalsmith 是什么?

Metalsmith 是一个用于静态网站生成的插件式框架。通过使用插件来完成各种各样的任务,开发者可以轻松管理和生成静态网站的内容。

metalsmith-markdownit 是什么?

metalsmith-markdownit 是一个用于在 Metalsmith 中将 markdown 文档转化为 HTML 的插件。该插件使用了 markdown-it 这个基于 Node.js 的 markdown 解析器。

metalsmith-markdownit 的安装和使用

我们需要先安装和配置 Metalsmith:

接着,安装 metalsmith-markdownit:

在 Metalsmith 中使用该插件:

以上代码中,我们使用了 metalsmith-markdownit 中的 markdown() 方法来编译 markdown 文档。我们还可以给这个方法传入一些选项来进行更加细致的配置:

-- -------------------- ---- -------
---------------------
  ---------------
    -- ----------- ----
    -------- -
      ----- -----
      -------- -----
      ------------ ----
    --
    -- -------
    ---------------- -
      -- ------
      ------- -------------
      -- ------
      ----- --
    -
  ---
  -------------------- -
    -- ----- ----- ----
  ---

markdown-it 插件选项

markdown-it 是一个基于 Node.js 的 markdown 解析器,而 metalsmith-markdownit 是通过使用该解析器来将 markdown 文档转化为 HTML 的。在使用 markdown-it 时,我们可以向其传入一些选项来进行更加细致的配置。在 metalsmith-markdownit 中,我们可以通过在 markdown 方法的参数中传入一个 options 对象来进行同样的配置。

以下是一些 markdown-it 的配置选项:

  • html:允许在 markdown 中使用 HTML 代码。
  • linkify:自动转化 URL 和 Email 地址为链接。
  • typographer:启用智能化标点符号。

渲染模板的选项

在上面的代码中,我们没有指定任何渲染模板的选项。然而,如果你需要在转化 markdown 文档为 HTML 时使用模板,那么你可以通过在 markdown 方法的参数中传入一个 rendererOptions 对象来进行模板的渲染。

以下是一些 rendererOptions 的配置选项:

  • engine:指定使用的模板引擎。
  • vars:指定模板中的变量。

示例代码

以下是一些示例代码,展示了如何使用 metalsmith-markdownit 插件来将 markdown 文档转化为 HTML。

转化单个 markdown 文档

-- -------------------- ---- -------
----- ---------- - ----------------------
----- -------- - ---------------------------------

---------------------
  ----------------
  -----------------------
  ------------
  ----------------
  -------------------- -
    -- ----- ----- ----
  ---

以上代码会将 ./src 目录下的所有 markdown 文档转化为 HTML,并输出到 ./build 目录下。

使用模板来渲染 markdown 文档

-- -------------------- ---- -------
----- ---------- - ----------------------
----- -------- - ---------------------------------
----- ---------- - ----------------------

---------------------
  ----------------
  -----------------------
  ------------
  ---------------
    ---------------- -
      ------- -------------
      ----- -
        ------ --- -----
      -
    -
  ---
  -------------------- ----------- ------
    --- -------- - ----------------------
    ------------------------------------------
      -------------------- - ---------
    ---
    -------
  --
  -------------------- -
    -- ----- ----- ----
  ---

以上代码会将 ./src 目录下的所有 markdown 文档转化为 HTML,并使用 handlebars 模板引擎来渲染 HTML。在模板中,我们可以使用 {title} 变量来展示网站的标题。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/78084

纠错
反馈