4 个版本

0.18.3 2022 年 12 月 16 日
0.18.2 2020 年 4 月 18 日
0.18.1 2020 年 4 月 2 日
0.1.0 2018 年 7 月 27 日

#2352 in 命令行实用程序

每月 25 次下载

公平 许可证

59KB
1.5K SLoC

Rust 1K SLoC // 0.0% comments Stylus 365 SLoC Pan 324 SLoC // 0.0% comments

Mdsite

crate Docs MIT/Apache2 licensed dependency status Build Status

从 Markdown 文件生成具有功能的静态网站

  • 支持 TeX 风格的数学公式
  • 文件路径是文章 URL
  • 文件名是文章标题
  • 文章可以隐藏(链接不会插入索引/标签页面)

您可以查看 演示网站 以了解形态学的用法。

安装

形态学 使用 Rust 语言(2018 版本)实现,因此您需要 cargo 命令

cargo install morpho

形态学 将安装到您的 cargo 二进制目录中(~/.cargo/bin/)。

命令行界面

形态学 可以用作命令

$ morpho -h
static site generator from markdown files

USAGE:
    morpho <SUBCOMMAND>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

SUBCOMMANDS:
    build    Build the site static files
    help     Prints this message or the help of the given subcommand(s)
    init     Initialize the site directory layout
    new      Create a site post
    serve    Serve the site, rebuild on change
    theme    Blog theme operations

您也可以查看子命令用法

$ morpho serve -h
Serve the site, rebuild on change

USAGE:
    morpho serve [OPTIONS]

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -p, --port <port>    Serve the site at http://127.0.0.1:<port> [default: 5000]

初始化网站

$ morpho init mysite

网站目录(mysite)布局已初始化

mysite
├── config.toml
├── media
├── posts
│   ├── hello.md
│   └── math.md
└── _themes
  • config.toml:网站配置文件
  • media:网站媒体目录
  • posts:网站文章目录
  • posts/hello.md:一个 Markdown 格式的文章
  • _themes:网站主题目录

构建网站

$ cd mysite
$ morpho build

网站的静态文件将构建到子目录 _build 中,当前网站目录(mysite)布局为

mysite
├── config.toml
├── media
├── posts
│   ├── hello.md
│   └── math.md
├── _themes
└── _builds
  • _builds:生成的静态网站顶级目录

提供网站服务

$ morpho serve

自动打开网站索引页面,并在您添加或更改内容时重新生成您的静态网站

新文章

创建一个标题为 another 的新文章

$ morpho new another

创建了一个新的 Markdown 文件 posts/another.md,您可以编辑它以创建新文章。

刷新索引页面,您将找到新文章。

config.toml

site_url = ""
site_name = "Mdsite"
site_motto = "Simple is Beautiful!"
footer_note = "Keep It Simple, Stupid!"
media_dir = "media"
build_dir = "_build"
theme = "simple"
theme_root_dir = "_themes"
rebuild_interval = 2
posts_per_page = 20

依赖项

~13–25MB
~366K SLoC