如何自动设置 kramdown 转换器的 HTML 输出样式?
How to automatically style HTML output of kramdown converter?
我在 kramdown 中写笔记,然后使用 kramdown
转换器获取 html 文件以在本地(而不是在服务器上)读取。
$ kramdown notes.txt > notes.html
我的工作流程是不断更新 notes.txt
,然后快速渲染 notes.html
以查看它。
我想给笔记添加样式,所以我制作了一个 CSS 文件 notes_style.css
来格式化 HTML 正文:
body {
...
}
我向 notes.txt
添加了一个 <head>
标签,并在我的样式表中放入了一个 link。然后我在 notes.txt
:
的内容周围放置 <body>
标签
<head>
<link rel="stylesheet" type="txt/css" href="themes/notes_style.css" />
</head>
<body>
...
</body>
然后我意识到,由于 kramdown
忽略 HTML 块,因此 <body>
中的任何内容都不会转换为 HTML。在能够将 kramdown 转换为 HTML 的同时,我应该如何设置 <body>
内容的样式?我不想在每次使用 kramdown
.
时手动添加 <body>
标签
我怀疑我的工作流程有问题,但不确定正确的方法是什么。
Kramdown 有 parse_block_html
option 导致它解析 HTML 元素的内容。你可以这样使用它:
$ kramdown --parse-block-html notes.txt > notes.html
或者,Kramdown 也会查找 special markdown
attribute on HTML elements。如果设置为'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 嵌套在元素中。
我在 kramdown 中写笔记,然后使用 kramdown
转换器获取 html 文件以在本地(而不是在服务器上)读取。
$ kramdown notes.txt > notes.html
我的工作流程是不断更新 notes.txt
,然后快速渲染 notes.html
以查看它。
我想给笔记添加样式,所以我制作了一个 CSS 文件 notes_style.css
来格式化 HTML 正文:
body {
...
}
我向 notes.txt
添加了一个 <head>
标签,并在我的样式表中放入了一个 link。然后我在 notes.txt
:
<body>
标签
<head>
<link rel="stylesheet" type="txt/css" href="themes/notes_style.css" />
</head>
<body>
...
</body>
然后我意识到,由于 kramdown
忽略 HTML 块,因此 <body>
中的任何内容都不会转换为 HTML。在能够将 kramdown 转换为 HTML 的同时,我应该如何设置 <body>
内容的样式?我不想在每次使用 kramdown
.
<body>
标签
我怀疑我的工作流程有问题,但不确定正确的方法是什么。
Kramdown 有 parse_block_html
option 导致它解析 HTML 元素的内容。你可以这样使用它:
$ kramdown --parse-block-html notes.txt > notes.html
或者,Kramdown 也会查找 special markdown
attribute on HTML elements。如果设置为'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 嵌套在元素中。