如何将具有站点导航的通用页眉添加到asciidoc文档?

时间:2016-10-18 01:49:38

标签: html css asciidoc asciidoctor

我正在尝试使用asciidoctor构建基本文档站点。我正在努力的一件事是如何将标准网站标题(带有徽标和顶级导航的横幅)注入每个文档页面。

我从命令行直接将我的asciidoc渲染为html。我试图找到一种方法以某种方式注入一个额外的div元素并将其固定在顶部,但我无法弄清楚要使用什么机制。我的早期尝试涉及使用docinfo.html,但会将其注入<head>元素中的html,而不是<body>

我知道像Jekyll这样的全面发布系统允许我配置&#34;前端问题&#34;这可能可以解决这个问题,但我希望有一个使用vanilla asciidoctor的机制或技巧可以达到这个目的。

2 个答案:

答案 0 :(得分:1)

邮件列表上的

Ted Bergeron mentioned一个简单的项目:

Demo website刚刚使用Asciidoctor创建。

检查corresponding repo以查看文件以及如何创建网站(仅使用一个命令)。

总结:只需创建一个标题asciidoc文件,其中包含您的站点导航(在演示站点中使用表标记完成),不包含,包括0级(文档)标题。在您网站的每个页面的顶部都包含此标题文件。然后通过在项目上运行asciidoctor *.txt来渲染。

答案 1 :(得分:0)

--embedded选项+简单的后处理

使用此选项,asciidoctor仅生成<body>元素的内部。

例如:

main.adoc

= Super title

== Second level

asdf

== Also second level

qwer

然后:

asciidoctor --embedded main.adoc

产生:

main.html

<div class="sect1">
<h2 id="_second_level">Second level</h2>
<div class="sectionbody">
<div class="paragraph">
<p>asdf</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_also_second_level">Also second level</h2>
<div class="sectionbody">
<div class="paragraph">
<p>qwer</p>
</div>
</div>
</div>

然后您可以cat仅使用页眉和页脚,然后完成。

经过Asciidoctor 2.0.10测试。