使用 Markdown 自由地寫部落格

soulteary發表於2020-11-15

使用 Markdown 自由地寫部落格

清理收藏夾的時候,看到了這篇請教如何使用 Markdown 寫技術部落格的經典問題。

我是從 15 年開始使用 Ghost ,到 17 年開始轉向使用 Hugo ,過程中除了我的部落格之外,美團技術團隊的部落格也使用了 Hugo 作為編寫釋出方式,算下來不知不覺已經使用 Markdown 寫了五年部落格。

獨樂樂不如眾樂樂,那麼就來聊聊怎麼使用 Markdown 寫部落格。先來聊聊編輯器吧。

寫作工具

使用 Markdown 編寫部落格是自由的,尤其是體現在工具層面。

你可以選擇在支援 Markdown 渲染的網站、平臺上書寫你的內容,也可以選擇使用筆記本、平板、甚至是手機上支援 Markdown 的客戶端。

我個人比較習慣在 Web 版本的 Confluence(Wiki)、印象筆記這類適合採集整理的工具中先進行筆記整理,然後使用筆記本或平板上的 Markdown 客戶端進一步組織內容。在五年裡使用過不少工具,目前用著比較穩定、可靠的工具有 MWeb 和 Ulysses,工具功能層面差異不大,出於個人習慣目前主要使用後者。

日常碼字的介面,目前文件庫中有幾千篇文章和草稿

需要說明的一點是,這個工具對於 Markdown 表格支援能力比較差,習慣使用表格而非列表來闡明觀點的同學可以選擇前者或者其他工具。

Ulysses 的寫作體驗還是比較棒的,建議開啟打字機模式,深度體驗一番,相信你也會喜歡上這款工具。

文件儲存管理

使用 Markdown 編寫技術內容的自由不光體現在工具上,還有對於內容的整理和儲存。

你可以使用任何你喜歡和習慣的方式來管理內容:

  • 習慣使用軟體自帶資料庫的同學,直接使用各種軟體自帶的檔案庫即可。
  • 習慣使用 iCloud 協同的同學,可以使用軟體功能原生“支援” iCloud 儲存的軟體。
  • 習慣使用雲儲存的同學,可以將文件放在雲端儲存服務同步資料夾內儲存。
  • 習慣使用硬碟、U盤的同學,可以將文件放在這些移動儲存介質裡。
  • 不少習慣使用 Git 的同學甚至可以將內容作為 Git 程式碼一樣進行管理。
  • 習慣使用平臺的同學可以在各種部落格、筆記平臺軟體中儲存你的內容。

我個人使用習慣比較“混合”。

我一般會將寫作過程中的文件以資料夾形式放在 iCloud 目錄中,先使用 iCloud 服務進行同步,如果軟體支援備份,我也會進行設定,比如使用 Ulysses 的定時備份,給內容多一份保險。

軟體的自動備份

而寫作完畢的內容,會存在 Git 中,然後使用 CI 進行一些自動化操作以及內容釋出。

寫完的內容會儲存在 Git 中

文件釋出前的處理

使用 Markdown 記錄的文字內容,在輸出呈現過程中,也能夠有非常大的自由。

上一小節中,提到了使用 CI 進行自動化文件處理和釋出,那麼需要處理哪些內容呢?常見的內容包括並不僅限於下面的內容:

  • 怎麼處理程式碼高亮
  • 怎麼處理文件中的外鏈圖片
  • 怎麼處理一些額外的排版
  • 怎麼處理新增內容的分詞和搜尋

在幾年的使用過程中,我積累了一些小工具來處理這些問題,比如下面這些:

Markdown 文件 CI 處理流程

當我將寫好的內容新增到 Git 倉庫中之後,CI 首先會處理目錄、格式、排版等瑣事,然後將外鏈圖片上傳到一些圖床以及 OSS 進行備份,並替換圖片地址到接下來將到面世的文件中。同時處理文件中的程式碼高亮、以及進行一些程式碼層面上的效能優化,最後提供給我一個“內部閱覽地址”,待我確認內容呈現沒有大的問題之後,戳一下介面中的“執行”按鈕,便可完成整個網站內容的更新。

Markdown 文件 CI 處理流程

同步至社交媒體

最初我的方案是使用 Node 、瀏覽器外掛、Puppeteer 完成了一套簡陋但是夠用的小工具,能夠自動將我的網站內容同步到各種我常用的社交平臺的工具。

但是慢慢的,我放棄了這個方案,因為:

  1. 只寫原創、實踐類文章和個人思考的前提下,我的成文速度挺慢的,一般一天能寫完一篇就不錯了,偶爾一天發兩篇,那是用上了我的“庫存”。所以指令碼自動釋出,提升效率並不是關鍵點,我需要持續跟著平臺這些工具,ROI 太低了。
  2. 每個平臺的釋出看似相似,其實有不少細節差異,手動釋出有時候有一些額外的樂趣,比如和你的讀者進行一些簡單的互動、溝通。全自動化會抹殺這個好玩的事情。

但是如果不使用指令碼,是不是一定會出現大量文章編輯工種的排版工作呢?答案顯然是否定的。因為在近兩年,各大平臺都支援了代格式的富文字複製貼上。使用合適的工具,能極大的分發體驗,把排版變為簡單的“複製貼上”操作。

這裡推薦一款開源小工具,Markdown Nice。可以讓你在網頁中預覽 Markdown 內容,並得到適合“一鍵複製貼上”到各種社交平臺的富文字格式。類似的開源工具在 GitHub 中還有很多,如果你願意的話,完全可以定製一套更適合你自己的專屬工具。

使用合適的工具,可以簡化分發排版

我的網站,一般會使用 Hugo 模版生成 HTML 和 Markdown 兩個版本的內容,前者是給一般讀者使用,後者是給我或者有 Markdown 閱讀器的讀者準備。將生成好的 Markdown 格式的文件先複製到上面的工具中,然後就是一遍喝飲料,一遍釋出內容,看看讀者會說些什麼了。

最後

先寫到這裡,後續有更新再繼續聊。

我要繼續去整理文件啦。

–EOF


我現在有一個小小的折騰群,裡面聚集了一些喜歡折騰的小夥伴。

在不發廣告的情況下,我們在裡面會一起聊聊軟體、HomeLab、程式設計上的一些問題,也會在群裡不定期的分享一些技術沙龍的資料。

喜歡折騰的小夥伴歡迎掃碼新增好友。(請註明來源和目的,否則不會通過稽核)

關於折騰群入群的那些事


本文使用「署名 4.0 國際 (CC BY 4.0)」許可協議,歡迎轉載、或重新修改使用,但需要註明來源。 署名 4.0 國際 (CC BY 4.0)

本文作者: 蘇洋

建立時間: 2020年11月01日
統計字數: 12976字
閱讀時間: 26分鐘閱讀
本文連結: https://soulteary.com/2020/11/01/use-nginx-to-build-a-front-end-log-statistics-service-service.html

相關文章