一行程式碼讓純文本編輯器秒變 Markdown 編輯器
- 2020 年 3 月 12 日
- 筆記
轉自機器之心
只要你有純文本編輯器,加上一條語句,瞬間它就可以成為 Markdown 編輯器。
Markdeep 是一個用來寫純文本的插件,它能以 Markdown 的語法與渲染方式純文本,並在網頁上展示。同時,除了 Markdown 語法,Markdeep 還額外支援圖表、數學方程等擴展能力。
項目主頁:https://casual-effects.com/markdeep/
我們先看看效果,如下左邊是純文本編輯器的編輯頁面,右邊是在瀏覽器上的渲染效果:
Markdeep 非常容易使用,它也不需要安裝插件或聯網。如上所示只要在純文本最後加上「<!—Markdeep→」那一行的表達式,它就可以變成一個地道的 Markdown 編輯器。Markdeep 不需要額外安裝任何東西,也不需要導出、編譯等雜七雜八的過程。
看著 Markdeep 很簡單,但它的功能卻不少,一點也不遜色於 Typora 等正統的 Markdown 編輯器。不論我們是寫項目的 README 文檔、實驗報告,還是要做 PPT 或寫論文,它都能滿足。該項目提供了很多示例,例如生成的 PPT 是什麼樣的,後文會具體展示。
開源程式碼
Markdeep 是開源的,所以可以直接下載和修改源程式碼文件 markdeep.js。整個編輯器就是一個 JavaScript 腳本,上面定義了各種格式與渲染方式。作者表示,目前他正研究該如何有效降低腳本文件大小。
用於表格處理的部分程式碼,整個腳本有超過 5000 行程式碼。
腳本源碼地址:https://casual-effects.com/markdeep/latest/markdeep.js
作者表示,這個項目本來就是一個業餘項目,它並不會有完整的技術支援。不過只要提交的 Bug 足夠具體,作者都會完善它。此外,該項目還會經常加入一些新特性,從 2015 年 10 月份的第一版,到今年 2 月份的最新版,這個編輯器已經維護了很長時間。
Markdeep 怎麼用
如果你需要創建一個 Markdeep 的文件,只需要打開任意一個文本編輯器,然後開始編輯。完成文本編輯工作後,只需要在其底部寫下一個簡單的程式碼就行了。然後,將這個文檔保存為純文本文件,使用 .md.html 為擴展名。
<!-- Markdeep: --><style class="fallback">body{visibility:hidden;white-space:pre;font-family:monospace}</style><script src="markdeep.min.js" charset="utf-8"></script><script src="https://casual-effects.com/markdeep/latest/markdeep.min.js" charset="utf-8"></script><script>window.alreadyProcessedMarkdeep||(document.body.style.visibility="visible")</script>
如果你希望在源文檔中使用 Unicode,則需要在文檔頂部先加上這句話:
<meta charset="utf-8">
想要看看效果?你可以將文本拖入瀏覽器或雙擊它。即使網路離線也可以查閱文檔。如果不想因為離線而失去格式,可以將 markdeep.min.js 文件和文檔保存在一個文件夾中。
如果想要看看 Markdeep 原始文本,在文件 URL 最後加上「?noformat」即可。
上手示例
小編隨手測試了幾個典型 Markdown 語法,比如:代辦列表、自動鏈接、表格、內聯圖片、程式碼。與此同時,LaTeX 的數學表達式和圖形也能直接設計,而不需要任何插件。具體效果可參考:
簡而言之,配備完善,對於熟悉 Markdown 的小夥伴來說,用起來會十分順手及方便。這意味著,在有網的情況下,隨意拎一個文本編輯器後,就再也沒有人能攔得了你使用 Markdown 了。與此同時,時時預覽效果也非常簡便,只需要在文本編輯器里修改,瀏覽器中刷新下便可呈現最新效果。
Markdeep 能幹什麼
只要是 Markdown 支援的,Markdeep 就能夠支援,它在業界和學術界能得到廣泛使用。如下所示,各種題材與格式的文檔都能用 Markdeep 完成:
- API 文檔
- 教學大綱
- 遊戲設計文件
- 家庭作業
- 課程 PPT
- 軟體庫網站
- 個人部落格
- 簡歷
- 論文
看起來 Markdeep 似乎什麼都能做,項目作者同樣也展示了這些方面的效果圖:
Markdeep 製作的 PPT。
Markdeep 製作的個人簡歷。
總之,除了使用方便、展示炫酷,Markdeep 的功能也是非常強大。正如其它開發者所強調的,Markdeep 是能製作簡單圖表的 Markdown 工具,它以一種「ASCII Art」的方式用純文本製作出圖形,並且不用渲染也非常明晰。