如何生成 markdown 文件的內容索引

2021-07-15 03:55:54 字數 1205 閱讀 6730

目前很多文件都是用 markdown 格式編寫,並且以**的形式託管在 gitlab 上,

同時,使用 gh-md-toc

來生成文件目錄。

但是,gh-md-toc 會直接將結果列印到 stout,而我們想要直接將其新增到文件頭部,

而不是從 stdout 再複製貼上,然後還要格式化空行。

顯然,我們需要將這段文字新增到檔案的頭部,並且刪除第一行空行,在最後一行新增一行空行

這樣肯定不便捷,對不?

先看一條命令:

$ gh-md-toc file.md | (tail -n +2 && echo "" && cat file.md) | sponge file.md
你會驚訝的發現,這條命令就完成了所有事,為 file.md 生成了 table of

contents,並且自動新增在了 file.md 的頭部,並且完美的處理了空行。

但是,追求極致的程式設計師不會止步,因為上面的命令中 file.md 這個待處理的檔案出現了

3 次,所以也挺煩人的,對吧,即使使用命令替換也來得不如一次直接。

即:新增乙個函式,重定義 gh-md-toc,新增下面的函式定義到你的 shell rc,例如:

function gh-md-toc

()

將上面的/home/***/github/github-markdown-toc/gh-md-toc替換成 gh-md-doc

在你的系統上的路徑。

注意:如果你把 gh-md-doc 放在了 $path 中,必須用絕對路徑呼叫,否則就無限遞迴了 :-)

最後,source shell rc 配置檔案,生效

$ source ~/.bashrc

or$ source ~/.zshrc

現在,要為某個 markdown 檔案新增 table of contents 只需要執行:

$ gh-md

-toc file.md

接下來看個例子:

具體可見:dc/os 安裝部署

markdown文件必備

markdown是一種很好用的快速標記 快速排版語言,現在它的應用在我們的日常開發中越來越廣泛,之前對markdown用的比較少,所以對這些書寫語法不是很熟悉,為了後面更好更快的書寫我部落格中的文章,特地將markdown語法進行了乙個比較詳細的彙總和整理。通過 的數量分別表示h1 h6的標題,標題...

Markdown使用文件

markdown 的目標是實現 易讀易寫 markdown 的語法有個主要的目的 用來作為一種網路內容的寫作用語言 請注意,在 html 區塊標籤 div p.中不能使用markdown 語法。在區段標籤 span del cite.中可以使用 不過需要注意的是,code 範圍內,不論是行內還是區塊...

Markdown文件入門

markdown文件入門 詳細教程可訪問 使用 號可表示 1 6 級標題,一級標題對應乙個 號,二級標題對應兩個 號,以此類推。一級標題 二級標題 標題 四級標題 五級標題 六級標題 效果 四級標題 五級標題 六級標題 markdown 段落沒有特殊的格式,直接編寫文字就好,段落的換行是使用回車 斜...