#网站生成器 #网站 #生成器 #静态网站 #静态

bin+lib siter

一个静态网站生成器,其中内容和配置也是模板

2个版本

0.1.1 2021年12月3日
0.1.0 2020年9月8日

#363 in 模板引擎

MIT许可证

26KB
664

Siter

一个静态网站生成器,其中每个内容项都是模板,模板本身也是模板。

将内容页面也做成模板的优势是,你可以轻松地将JavaScript代码片段或循环添加到其中,而无需对整个结构进行调整。

基本网站的设置看起来可能是这样的。

  • root_config.ito
  • 内容
    • index.md
    • anotherpage.md
    • apples.md
  • 模板
    • page.html
  • 静态
    • 任何静态文件

root_config.ito

{{export
output="public"
}}
{{@export menu}}
<a href="/">HOME</a>
<a href="/apples">apples</a>
{{/export}}

index.md

{{export
title="My Website"
}}{{@md}}
Markdown
=======

By limiting markdown to specifig blocks we can include other kinds of content outside

{{/md}}
<script>
    function not_markdown(){
        return "This function will not be gobbled up by markdown"
    }
</script>
{{@md}}
Realisitically most content pages won't need javascript, but it's nice to know you CAN.
{{/md}}

模板/page.html

{{export as_index=true}}
<doctype! HTML>
<html>
<head>
    <title>{{first .title "My Default Title"}}</title>
    {{#If the page has any head data include that here#}}
    {{first .head}}
</head>
<body>
    <div id="menu">{{.menu}}</div>
    <div id="content">
        {{$1}}{{# $1 is the page content #}}
    </div>
</body>
</html>

依赖项

~21MB
~210K SLoC