1 个不稳定版本
0.5.4 | 2022年7月14日 |
---|
2799 在 命令行工具 中
64KB
1.5K SLoC
crosspub
适用于 tilde 服务器用户,将博客文章跨发布到 HTML 和 Gemini 的工具。
安装
运行
make
sudo make install
用法
crosspub 设计为无需任何配置即可直接使用。要开始,创建一个包含目录并初始化它。
mkdir website
crosspub --init
这会创建两个目录,一个用于 posts
(特定日期编写的博客和文章)和一个用于 topics
(随时间变化和增长的演变文档),以及创建一个默认的配置文件。
crosspub 内容使用 gemtext 编写,这是一种轻量级标记语言。文件应以 .gmi
结尾。
接下来,修改 config.toml 中的设置,请参阅 基本配置。
在您的 HTML 和 Gemini 根目录中创建文章目录
mkdir ~/public_html/posts
mkdir ~/public_gemini/posts
将这些路径更改为匹配您的配置。
准备好生成您的网站时,只需导航到您初始化的目录并运行
crosspub
文章语法
posts/ 中所有的 gemtext 文件都必须以强制性的 TOML 前置信息开头
---
title = "Example Title"
date = "YYYY-MM-DD"
slug = "example"
---
Content goes here
...
"slug" 是一个短字符串,将成为文件名的一部分,基本上是一个简短的标题。
主题语法
topics/ 中的文件以略有不同的前置信息开头,缺少日期字段。
---
title = "Example Topic"
slug = "example_topic"
---
...
基本配置
配置文件位于 $HOME/crosspub/config.toml
name
是您网站的标题url
是网站的基 URL(不包括波浪号部分)username
是您的用户名,网站上的 tilde 扩展名减去~
字符html_root
和gemini_root
是您公共_html 和公共_gemini 文件的路径。
关于文件
crosspub 允许您编写一个简介并将其生成 About 页面。首先确保您有一个用于 crosspub 数据的目录
mkdir -p ~/.local/share/crosspub
接下来,在该目录中创建一个名为 about.gmi
的文件。这只是一个普通的 gemtext 文件,没有前置信息。
最后编辑 ~/.config/crosspub/config.toml
以确保 use_about_page = true
高级配置
自定义模板
如果需要,可以通过使用自定义模板来创建更多独特的网站。首先创建正确的目录
mkdir -p ~/.local/share/crosspub/templates/html
mkdir -p ~/.local/share/crosspub/templates/gemini
默认模板位于 /usr/share/crosspub/templates/
。建议查看内置模板,以了解它们是如何工作的。
crosspub为HTML和Gemini各使用5个模板
- index
- post
- topic
- postlist
- about
这些模板中的一些或全部可以被位于 ~/.local/share/crosspub/templates
的模板所覆盖。
自定义CSS
与模板类似,可以修改全局CSS。用户CSS应放在 ~/.local/share/crosspub/templates/html/style.css
帖子列表
默认的index.html和index.gmi模板都列出了主页上的帖子。如果您想将此列表移至单独的页面,请将您的配置中的 post_list = true
设置。这将在 {HTML_ROOT}/posts/posts.html
和 {GEMINI_ROOT}/posts/posts.gmi
创建列表。crosspub 不会自动链接到这些列表,因此您需要根据需要修改其他模板。
依赖关系
约3.5–4.5MB
约81K SLoC