Entu SSG 是一个简单的 Pug、Markdown、Yaml 静态网站生成器,支持多种语言环境。
./build.js ./my-page/entu-ssg-config.yaml
可以通过 Yaml 文件配置网站构建过程,其路径必须是 entu-ssg.js 的第一个参数。必需的参数为
locales:
- en
- et
source: ./source
build: ./build
assets: ./assets
protectedFromCleanup:
- assets
- index.html
server:
port: 4000
assets: /assets/
dev:
aliases: true
paths:
- test/page1
- test/page2
页面内容由 **index.pug** 文件生成。所有其他文件都将被忽略,但您可以将这些文件用于 Pug include/extends。您可以在文件名中放置语言环境标识符(如 index.en.pug)以提供特定于语言环境的内容。
若要将数据传递到 index.pug,请使用 **data.yaml** 文件。此数据以名为 self 的对象传递到 index.pug(若要从 data.yaml 中获取属性 text,请在 index.pug 中使用 self.text)。
您可以在文件名中放置语言环境标识符(如 data.en.yaml)以提供特定于语言环境的内容。
一些页面参数会改变 HTML 的生成方式。这些是
path: /testpage1
aliases:
- /test
- /test123
data:
news: ./datafiles/news.yaml
someOtherData:
- A
- B
若要生成页面 CSS,请使用 **.styl** 文件。全局 style.css 由所有 .styl 文件(从源文件夹中)组合而成,并保存到生成文件夹的根文件夹中(如 /style.css)。
若要生成页面 JS,请使用 **.js** 文件。全局 script.js 由所有 .js 文件(从源文件夹中)组合而成,并保存到生成文件夹的根文件夹中(如 /script.js)。
- source
|- _templates
| |- layout.pug
| |- mixins.pug
| +- somescripts.js
|
|- testpage1
| |- data.en.yaml
| |- data.et.yaml
| |- index.pug
| +- style.et.styl
|
|- testpage2
| |- index.en.pug
| |- index.et.pug
| |- data.yaml
| +- testpage2en
| |- index.en.pug
| +- data.en.yaml
|
|- index.pug
+- style.styl
- build
|- en
| |- index.html
| |- testpage1
| | +- index.html
| |
| +- testpage2
| |- index.html
| +- testpage2en
| +- index.html
|
|- et
| |- index.html
| |- testpage1
| | +- index.html
| |
| +- testpage2
| +- index.html
|- script.js
|- script.js.map
|- style.css
+- style.css.map
查找更多 静态站点生成器。