寫在前面(寫作原因)Markdown 近兩年太火了,以至于 MAC 端 Markdown 編輯器基本上一個(gè)月就能新出一款。很多人對(duì)Markdown 依舊沒(méi)有多少了解,這主要體現(xiàn)在兩方面: 一方面有些人覺(jué)得Markdown是萬(wàn)能的:一看別人推薦什么工具自己就跟著用,一上來(lái)就學(xué)各種所謂語(yǔ)法;或者自己還沒(méi)體會(huì)一個(gè)東西的精髓就到處給別人推薦,別人不用他還生氣。 另一方面有些人覺(jué)得Markdown是萬(wàn)萬(wàn)不能的:一部分選擇固守自己的舒適區(qū)域(比如word),不愿意接觸,認(rèn)為學(xué)習(xí)難度大;另一部分用著更高級(jí)的 LaTeX 等其他工具覺(jué)得 Markdown 太low,用著丟人。 為了讓上述兩部分人不本末倒置,能夠先脫離那些基本的語(yǔ)法,從一個(gè)不同的視角去了解Markdown,所以簡(jiǎn)單寫一些東西。 Markdown誕生歷史:Markdown 由 John Gruber 在2004年創(chuàng)建,至今已經(jīng)是12年的時(shí)間。 關(guān)于Markdown最初的定義如下: a plain text formatting syntax(注意:是純文本的語(yǔ)法) a software tool, written in Perl, that converts the plain text formatting to HTML
最初的設(shè)計(jì)理念: The overriding design goal for Markdown’s formatting syntax is to make it as readable as possible. The idea is that a Markdown-formatted document should be publishable as-is, as plain text, without looking like it’s been marked up with tags or formatting instructions.(簡(jiǎn)單說(shuō)就是易讀)
Mrakdown 有哪些優(yōu)點(diǎn)通過(guò)Markdown的起源和最初的設(shè)計(jì)理念可知,Markdown最大的一個(gè)特點(diǎn)是易讀,而另一個(gè)特點(diǎn)是易寫。 所謂易讀絕對(duì)不要理解為排版之后呈現(xiàn)出來(lái)的結(jié)果易讀,你認(rèn)真想一下格式化都完成了,打兩個(gè)符號(hào)和點(diǎn)幾下鼠標(biāo)得到的最終效果是一樣的,怎么可能是指格式化后的結(jié)果易讀呢? 這里的易讀是說(shuō)你讀最原始的Markdown文件(也就是以 .md 結(jié)尾的文件)非常容易,不會(huì)像讀 HTML 網(wǎng)頁(yè)那樣滿屏幕都是*<尖括號(hào)>和各種縮進(jìn)*(最近正在寫網(wǎng)站的我對(duì)這一點(diǎn)有很深的體會(huì))。易讀的特點(diǎn),對(duì)于要看各種文檔的程序員是非常友善的。 所謂易寫一方面你可以和類似于office之類的軟件去對(duì)比,寫作的過(guò)程中你(基本上)可以脫離對(duì)鼠標(biāo)的依賴。這樣就帶來(lái)了兩個(gè)好處:你不需要先辛苦碼字,然后再辛苦地用鼠標(biāo)點(diǎn)來(lái)點(diǎn)去格式化你的文本;你可以集中精力在文字上,只要你事先有了一個(gè)清晰的框架,寫作和格式化文本可以一氣呵成,如果使用即時(shí)呈現(xiàn)的編輯器,那么所見(jiàn)即所得 另一方面你可以和類似于HTML之類的東西去對(duì)比,你不需要記住太多和寫作無(wú)關(guān)的tag,也不需要讓那一堆尖括號(hào)和各種縮進(jìn)擾亂了自己的寫作思路。 除此之外,Markdown 的學(xué)習(xí)曲線非常平緩,找個(gè)介紹語(yǔ)法的網(wǎng)站讀半個(gè)小時(shí),找個(gè)在線編輯器練習(xí)一個(gè)小時(shí),你就可以比較順利地運(yùn)用這種輕量級(jí)標(biāo)記語(yǔ)言。 Markdown 和 HTML 的區(qū)別在這里需要強(qiáng)調(diào)一下Markdown和HTML的區(qū)別。 如果你了解一點(diǎn)前端的知識(shí)就應(yīng)該知道HTML的全稱是超文本標(biāo)記語(yǔ)言(英語(yǔ):HyperText Markup Language,簡(jiǎn)稱:HTML),所以HTML也是一種文本標(biāo)記語(yǔ)言。Markdown 的定義是“輕量級(jí)”標(biāo)記語(yǔ)言,而HTML是“超”,所以Markdown是基本不可能取代HTML作用的,你倒是可以把它看成HTML的一個(gè)子集。 就工作原理而言,你所寫的 Markdown 格式文本,也是最終轉(zhuǎn)換為 HTML 進(jìn)而在網(wǎng)頁(yè)上呈現(xiàn)。 Mrakdown 有哪些缺點(diǎn)從辯證的角度看問(wèn)題,任何一個(gè)事物的優(yōu)點(diǎn)在另一個(gè)維度都可能變成它的缺點(diǎn)。 在這里同樣如此,因?yàn)镸arkdown 誕生之初就被定義為面向純文本的語(yǔ)言,所以不管如何進(jìn)化,插入圖片和表格永遠(yuǎn)都是它的硬傷。優(yōu)化圖片和表格的插入體驗(yàn)也是后來(lái)各種編輯器突出的賣點(diǎn);因?yàn)?Markdown 誕生之初就被定義為輕量級(jí)的語(yǔ)言,你要知道,即便是對(duì)文本而言,也有很多它應(yīng)付不了的事情。 - 讓某一行居中?做不到
- 讓某一行右對(duì)齊?做不到
- 想更換字體?做不到
- 想改變顏色?做不到
- 想改變布局?做不到
其實(shí)不止這些,Markdown 根本就不支持其它和布局格式相關(guān)的內(nèi)容。原因很簡(jiǎn)單,如上文所述,Markdown 是 HTML 的子集,而和布局格式相關(guān)的內(nèi)容是CSS的本職工作。 和LaTeX的區(qū)別如果你不知道什么是LaTeX的話自行百度吧。LaTeX 從它生下來(lái),能定位以及量級(jí)和Markdown就都不是一個(gè)水平。 LaTeX是一個(gè)強(qiáng)大的排版工具,注意,是排版工具。絕大多數(shù)高質(zhì)量的書籍排版或者論文版本,一些逼格很高的簡(jiǎn)歷排版都會(huì)使用LaTeX。另外,LaTeX最強(qiáng)大的功能在于其對(duì)各種復(fù)雜數(shù)學(xué)公式的支持和呈現(xiàn)。而 Markdown 根本就不能稱之為一個(gè)排版工具,真正意義上的排版功能它一個(gè)沒(méi)有。雖然它可以定義一個(gè)題目(語(yǔ)法是若干個(gè)#),但是這個(gè)題目放在你頁(yè)面的左邊右邊還是中間它不關(guān)心。不過(guò),現(xiàn)在已經(jīng)有很多編輯器支持在Markdown中插入LaTeX語(yǔ)法了。 所以用一句老話總結(jié):革命只有分工不同,沒(méi)有高低貴賤之分。 沒(méi)有完全統(tǒng)一的標(biāo)準(zhǔn)這個(gè)缺點(diǎn)你可能感受不到,但其實(shí)是最大的問(wèn)題。 比較有趣的是,早些時(shí)候多個(gè)使用Markdown的互聯(lián)網(wǎng)巨頭聯(lián)合起來(lái)想制訂一個(gè)統(tǒng)一的標(biāo)準(zhǔn)叫做Standard Markdown。結(jié)果這個(gè)事兒被創(chuàng)始人知道了,老爺子不開(kāi)心,說(shuō)你不能用standard這么官方的名字,因?yàn)槲揖蜎](méi)想讓它統(tǒng)一。后來(lái)這個(gè)計(jì)劃更名為Common Markdown,對(duì)了,這個(gè)計(jì)劃牽頭的人就是大名鼎的 Stack Overflow 創(chuàng)始人。 為什么近些年如此火爆首先是因?yàn)?Markdown 本身易讀易寫的特點(diǎn)。 另一方面,一個(gè)東西發(fā)明出來(lái),如果沒(méi)人推廣那自然就會(huì)默默無(wú)聞直至滅亡。那么近些年都是誰(shuí)在推廣使用并且支持它呢?Reddit, Github, Stack Overflow, BioStar 等等,**Rstudio **甚至有一套專門的 R Markdown 供使用R語(yǔ)言的人們來(lái)運(yùn)用。如果你了解上面哪怕一個(gè)東西目前的火爆程度,都應(yīng)該可以理解為什么他們使用的 Markdown 會(huì)被更多人了解和接受。 此外,有人說(shuō)21世紀(jì)是生命科學(xué)的世紀(jì),但目前看起來(lái)更像是程序員的世界,程序員在各種社區(qū)大量使用Markdown,再加上近幾年互聯(lián)網(wǎng)的發(fā)展,火爆也就不足為奇了。 適用于那些群體基于Markdown的優(yōu)缺點(diǎn)以及火爆的原因,我們可以得出如下的結(jié)論,Markdown這套東西比較適合: - 經(jīng)常閱讀書寫各種技術(shù)文檔的技術(shù)人員
- 混跡于各種技術(shù)論壇和社區(qū)的程序猿
- 經(jīng)常碼字并且追求效率和流暢度的文字工作者
- 只求排版簡(jiǎn)單明了不求過(guò)分花哨的網(wǎng)站編輯
- 喜歡分享,愛(ài)好寫作的博客或者專欄作者
- 喜歡整理各種讀書筆記學(xué)習(xí)筆記的學(xué)生黨
如果你是上述中的某一類人,筆者推薦你對(duì) Markdown 進(jìn)行一些基礎(chǔ)的學(xué)習(xí)和應(yīng)用。你的生活應(yīng)該會(huì)有所改變。 如果不是,那么我想說(shuō):任何一個(gè)工具即使它再簡(jiǎn)單再火爆,只要不能提高你的效率或者改善你的體驗(yàn)都請(qǐng)你無(wú)視它。 有哪些編輯器可以使用Markdown這里僅僅列舉部分我個(gè)人體驗(yàn)過(guò)的 WindowsTypora(好用且免費(fèi)) Mac OSUlysses (文字工作者最愛(ài),不僅僅是編輯器且貴) MWeb (國(guó)產(chǎn),完成度高,支持多平臺(tái)分享,如印象筆記和WordPress) Typora (好用且免費(fèi)) iOSMWeb (同Mac OS) Bear(免費(fèi)有內(nèi)購(gòu),不只是編輯器) 錘子便簽(免費(fèi),易用,全平臺(tái)) Android錘子便簽(免費(fèi),易用,全平臺(tái)) Chrome 插件Markdown Here(神器,免費(fèi),可以配合印象筆記使用) 國(guó)內(nèi)寫作平臺(tái)簡(jiǎn)書 筆記類應(yīng)用為知筆記(自身支持) 有道云筆記(自身支持) 印象筆記(因?yàn)橛∠蟊旧淼脑O(shè)計(jì)機(jī)制(支持全文及圖片內(nèi)文字搜索)和附件(圖片等)存儲(chǔ)機(jī)制,并不支持,但是原生的各種快捷鍵已經(jīng)足夠強(qiáng)大。如果你想使用的話,配合馬克飛象、Markdown Here 或者 MWeb 使用,效果都很好) 如何學(xué)習(xí)Markdown一旦你清楚了自己要不要使用Markdown,那么學(xué)習(xí)它的用法根本就沒(méi)有什么難度。
|