[TOC]
對于 Markdown 文件編輯來說,需求并不是什么特別 NB 的功能,無非就是需要:
* 實時預覽
* 生成 HTML 文件
* 生成 PDF 文件
* 語法檢查(因為 Markdown 的標記相對簡單,基本不用進行檢查。)
* 其他功能擴展(比如數學公式生成、目錄生成器、樣式修飾、腳注、其他特定功能或樣式)
因為 Markdown 和它的擴展沒有形成最終的統一,所以各種 Markdown 的擴展也是各做各的,各個平臺支持力度也是不盡相同,往往都是一個擴展在這個平臺支持,在另一個平臺就不支持了。所以你在寫 Markdown 的時候要考慮文章存放的平臺,或者最終的用途(比如生成 HTML、PDF)是否能準確解析,不然會白費力氣的:不支持的標記會變成普通文本使得看上去怪怪的。
那我們就開始一一來看看好了:
# 1. Markdown 實時預覽
新版的 VScode 已經支持 Markdown 實時預覽了,支持解析的標記應該是 GitHub 支持的標準(我猜的,未考證)。所以你是否需要預覽插件就看你自己了,不過我還是列出幾個吧:
* `Instant Markdown` 以靜態服務器的形式解析 Markdown 文件,會自動打開瀏覽器并支持實時預覽。雖說很好用,但是總是突然就彈出瀏覽器界面,總是會讓你心煩意亂。
* `Auto-Open Markdown Preview` 隨著新版 VScode 對 Markdown 的預覽,基本不需要這款插件了,因為它的功能和 VScode 提供的預覽方式是一樣的。都是在側邊(編輯區)預覽解析后的 Markdown 文件。
* `Preview`
----
# 2. Markdown 轉 HTML
Markdown 轉 HTML 可能是不少小伙伴需要的,實現方式上也很多,但就在 VScode 里直接實現來說,還是很有必要的,尤其當你不會構建轉換環境的時候。
* `Copy Markdown as HTML` 目前就看到這一款插件(如你有更好的選擇,記得留言告訴大家哦!),不過它用起來不是很方便。你需要創建一個空的 HTML 文件,然后到 markdown 文件里按 Ctrl+Shift+P 呼出命令欄,然后選擇`Markdown: Copy as HTML`命令得到 HTML 文件(這會兒 HTML 在剪切板里),然后再回到先前的 HTML 文件中粘貼并保存,這樣才能最終轉換成 HTML 文件,而且解析樣式不能通過設置來自定義,要修改樣式,要自己寫 CSS 樣式。不管如何到底也是成功裝換了。
----
# 3. Markdown 轉 PDF
我們都知道 Markdown 文件沒有解析器是不能愉快閱讀的(它甚至不能在瀏覽器中打開直接解析),比起讓人下載 Markdown 閱讀器,不如直接轉成 PDF 直接些(畢竟大部分人都有 PDF 閱讀器,即使沒有,PDF 也是可以直接在瀏覽器中打開的——Edge 瀏覽器就支持),相對原始 Markdown 閱讀起來更容易些。做到寫的人容易,讀的人也容易,你好我好大家好!
* `Markdown PDF` 這個插件可以把你在編輯區打開的 Markdown 文件轉換成 PDF 文件,而且命令就在鼠標右鍵菜單里:`Convert Markdown to PDF`使用起來非常方便,它會直接生成到 Markdown 所在的目錄里(可通過設置指定生成目錄(路徑))。它還支持通過設置控制樣式或者其他的顯示(隱藏)內容。 設置:`文件》首選項》設置》Markdown-pdf configuration`里面有各項參數,你可以按照自己的需求進行自定義設置。其中:`"markdown-pdf.outputDirectory"`項就可以設置 PDF 生成保存的路徑,默認是保存到當前路徑 (markdown 文件所在路徑)。它算是比較人性化的插件了吧。
* `md2pdf`
----
# 4. Markdown 轉 Word 及其他格式
我覺得轉成 Word 也是某些小伙伴的剛需,所以也列出來:
* `vscode-pandoc` 算是專門轉換 Markdown 的插件吧,支持把 Markdown 轉成 HTML、PDF、`Word`,還沒試過,大家可以看看。
* `md2reader` 把 Markdown 轉換成`EPUD`/`MOBI`格式,(我還沒試,親們試試)。
----
# 5. Markdown 輔助編輯插件
先說輔助編輯是什么鬼! 我們都知道其實 Markdown 在某些方面還是比較難編輯的,比如:表格(相當于 HTML 的 table 標簽) ,因此,就有了輔助編輯插件了,主要是通過快捷鍵或者鼠標右鍵菜單快速插入或者生成 markdown 標記。以方便不太熟悉 Markdown 標記的人或者想要快速生成標記的人的需求。畢竟 VScode 也只是在編輯器的導航器中內置了加粗、斜體、刪除線、列表等 4 個插入標記的功能按鈕,并不能滿足需求,所以你和我一樣比較懶的話,輔助編輯插件是個不錯的選擇:
* `Markdown Shortcuts` 這個插件就支持通過快捷鍵和鼠標右鍵菜單快速生成 Markdown 標記, 它基本覆蓋了標準的 Markdown 的所有標記符,很是方便,尤其是快速生成表格標記方面。
* `Markdown TOC` 這是生成目錄用的(生成 [TOC] 標記)但是 [TOC] 并不是標準 markdown 標記,你要用的話要考慮下平臺支持因素。順便說下:這個插件做得不完美,它的鼠標右鍵菜單會在所有的語言的編輯區中出現(當你點擊鼠標右鍵的時候),這會讓人很煩,我已經給插件作者提 issu 了,不知道他是否會修正。畢竟只是一個小功能插件,用的人也不是很多,畢竟不是任何人都需要 [TOC]。
----
# 6. Markdown 擴展標記支持插件
就像我在前面說到的那樣,VScode 可能采用了 GitHub 的標準,所以某些特殊的 Markdown 擴展標記是無法解析出來的(或者插入標記)。這就需要 Markdown 擴展標記插件來幫忙了。
* `Markdown+Math` 這算是一個比較全面的工具吧,支持生成 HTML,支持插入標記,可能它的特色功能是數學公式、圖形的插入解析,所以,如果你有這方面的需求,可以下下來使用。
* `Evernote` 支持把印象筆記的文件以 Markdown 格式打開(印象筆記是不支持 markdown 文件的)。
# 再寫點
其實,你會發現:插件很多,會有功能重復的地方,就看你怎么選擇了,到底需不需要這些工具,主要看用途、看平臺:markdown 有不少擴展,但并不是全部平臺都支持,markdown 雖容易編輯,但不一定便于閱讀、傳閱(雖說比普通文本漂亮,比 word 這樣的文檔兼容性強,比 HTML 簡單)。因此,需要作出取舍和選擇。
最后順便推薦偶然看到的插件:`writing4cn` 專門為中文Markdown編輯進行格式化的插件,好像是提供中文和英文之間流出空隙的格式化插件。也算中文編輯時的一點優化吧。