命令行

在任何装有 Node.js 20+ 的机器上,一条命令就能构建网站,无需安装:

npx @abstractwebunit/markdown-publish build --vault 笔记路径 --out dist

dist 里会出现一个现成的静态网站——用任意静态服务器打开它,或者扔到任何托管平台上。

Flag 一览

Flag 作用
--vault <文件夹> vault 的路径(覆盖一切)
--vault-dir <文件夹> 同上,但相对于当前目录/配置文件
--out <文件夹> 网站构建到哪里(默认 dist)
--config <文件> 配置文件路径(默认 markdown-publish.config.json)
--site-name--site-url--site-lang--site-description--site-footer 配置
--build-mode full|public 发布全部,还是只发布 publish: public 的笔记
--base-href </路径/> 网站子路径(GitHub Pages 用 /仓库名/)

Flag 会覆盖配置文件,所以可以把通用设置放在 markdown-publish.config.json 里,差异部分用 flag 传入。

示例:构建并在本地预览

npx @abstractwebunit/markdown-publish build --vault ./我的笔记 --out site
npx serve site
Windows + Git Bash

Git Bash 可能会“吃掉” --base-href /sub/ 的值,把它变成 Windows 路径。解决办法是在命令前加 MSYS_NO_PATHCONV=1 前缀。普通的 PowerShell/cmd 以及 CI 上没有这个问题。