VS Code + Jekyll Markdown 实用速查
这篇笔记面向当前的 Jekyll/al-folio 站点。VS Code 预览适合检查基础 Markdown,最终效果以 Jekyll 本地预览为准。
1. 文件放在哪里
- 学习笔记:
_imported_notes/<slug>.md - 博客文章:
_posts/YYYY-MM-DD-<slug>.md - 项目页:
_projects/<slug>.md - 图片:
assets/img/,或按主题创建更细的子目录
文件名建议只使用小写英文、数字和连字符,避免空格。
2. Front matter
每篇文章开头都需要 YAML front matter:
---
layout: post
title: "AXI 握手协议学习笔记"
description: "记录 valid/ready 握手的时序规则与常见错误。"
tags: [notes, digital-design, axi]
categories: [notes]
---
title 会由页面布局渲染为一级标题,正文从 ## 开始即可。
3. 基础语法
## 二级标题
### 三级标题
**粗体**、_斜体_、`inline_code`
- 无序列表
- 第二项
1. 有序列表
2. 第二项
```systemverilog
assign ready = !full;
```
4. 站内链接与图片
站内链接优先使用 Jekyll link 标签,文件改名后构建会立即暴露错误:
[查看 Notes]({% link _pages/notes.md %}) [查看 Git 笔记]({% link _imported_notes/tools-git.md %})
图片推荐使用主题自带的响应式组件:
{%
include figure.liquid
path="assets/img/example.png"
title="数据通路结构"
class="img-fluid rounded z-depth-1"
%}
5. 公式
行内公式使用 $$ ... $$,独立公式也使用双美元符并单独成段:
$$ CPI = \frac{cycles}{instructions} $$
$$
T_{CPU} = IC \times CPI \times T_{clock}
$$
6. 提示块
al-folio 通过 blockquote 类名提供提示、警告和危险样式:
> ##### TIP
>
> 先在仿真中确认握手时序,再进行综合。
{: .block-tip }
可用类名为 .block-tip、.block-warning 和 .block-danger。
7. 标签页
先在 front matter 中开启:
tabs: true
然后使用 Liquid 标签:
{% tabs shell-example %}
{% tab shell-example PowerShell %}
git status
{% endtab %}
{% tab shell-example Bash %}
git status
{% endtab %}
{% endtabs %}
8. Mermaid 图表
先在 front matter 中开启 Mermaid:
mermaid:
enabled: true
zoomable: true
再写 mermaid 代码块:
```mermaid
flowchart LR
Input --> Accelerator --> Output
```
9. 本地预览与构建
在 E:\Projects\blog 中启动 Docker 预览:
docker compose up -d
打开 http://localhost:8080/。修改 Markdown 后会自动重新生成;修改 _config.yml 后建议执行:
docker compose restart
不使用 Docker 时,可在已安装 Ruby 依赖的环境中运行:
bundle exec jekyll serve
提交前至少执行一次完整构建:
bundle exec jekyll build --baseurl /al-folio