0

我在 kramdown 中写笔记,然后使用kramdown转换器获取要在本地(而不是在服务器上)读取的 html 文件。

$ kramdown notes.txt > notes.html

我的工作流程是不断更新notes.txt,然后快速渲染notes.html查看。

我想为笔记设置样式,所以我制作了一个notes_style.css格式化 HTML 正文的 CSS 文件:

body {
...
}

我向我的样式表添加了一个<head>标签notes.txt并放入了一个链接。然后我<body>在以下内容周围放置标签notes.txt

<head>
  <link rel="stylesheet" type="txt/css" href="themes/notes_style.css" />
</head>
<body>
  ...
</body>

然后我意识到,由于kramdown忽略了 HTML 块,因此没有任何<body>内容转换为 HTML。<body>在能够将 kramdown 转换为 HTML 的同时,我应该如何设置内容的样式?我不想<body>每次使用kramdown.

我怀疑我的工作流程有问题,但不确定正确的方法是什么。

4

1 回答 1

2

Kramdown 可以parse_block_html选择解析 HTML 元素的内容。你可以像这样使用它:

$ kramdown --parse-block-html notes.txt > notes.html

或者,Kramdown 还寻找 HTML 元素的特殊markdown属性。如果它设置为'1',那么 Kramdown 会将该元素的内容解析为 markdown。所以你可以这样做(你需要引号1,Kramdown 的 HTML 解析器非常严格):

<head>
  <link rel="stylesheet" type="txt/css" href="themes/notes_style.css" />
</head>
<body markdown='1'>
Content here will be parsed _as Markdown_.
</body>

在这两种情况下,您的body内容都需要像往常一样保持对齐,您不能缩进它,因为您可能会自然地编写嵌套在元素中的 HTML。

于 2016-11-02T23:47:22.387 回答