用 Obsidian 撰寫及管理部落格文章
前置要求是有個配置好的 GitHub Pages 搭配 Jekyll 的部落格,這部分網路上教學資源極多,這裡不贅述。
發布流程
大概念如下:
- 假設部落格的文章放在
/_posts
而圖片放在/assets/img
- 在 Obsidian 中建立映射的資料夾
- 使用 Rsync 同步 markdown 文件及圖片
這有個點就是:如何只同步部落格用到的圖片而不同步其他無關圖片?我用的方法是把所有計畫發布到部落格的圖片都以 blog 作為檔名開頭。
#!/bin/zsh
rsync -avu --delete ~/Obsidian/Blog/* ~/blog/_posts/
rsync -avu --delete ~/Obsidian/assets/img/blog* ~/blog/assets/img
後面則是接到自動發 git add、commit 及 push 的程式碼。如果有些文章還沒有要發布,可以通過以下方式處理:
- 檔案開頭註記 draft
- Rsync exclude 含有 draft 開頭的檔案
CMS 部分
開一頁面,填入如下 Dataview 程式碼:
TABLE
title as Title,
category as Category,
join(tags) as Tags
FROM "Blog"
SORT file.name DESC
就可以獲得如下的頁面啦!