給你自己搭的博客加個(gè) Markdown

Markdown

今天給大家推薦一個(gè)簡(jiǎn)單易用的開(kāi)源 Markdown 組件, 來(lái)自 Github 上一個(gè)美圖公司的大佬.

Markdown 是什么

Markdown 是一個(gè)簡(jiǎn)單的電子郵件風(fēng)格的標(biāo)記語(yǔ)言, 甚至比世界上最好的兩門(mén)語(yǔ)言 Python 還要簡(jiǎn)單.

使用 Markdown 碼字有以下優(yōu)點(diǎn):

  • 純文本攘宙,所以兼容性極強(qiáng)瞻颂,可以用所有文本編輯器打開(kāi)鸳劳。
  • 讓你專注于文字而不是排版。
  • 格式轉(zhuǎn)換方便,Markdown 的文本你可以輕松轉(zhuǎn)換為 html、電子書(shū)等。
  • Markdown 的標(biāo)記語(yǔ)法有極好的可讀性脓斩。

誰(shuí)在用

田牌旗下的 Github 上項(xiàng)目的 README 都是用 Markdown 寫(xiě)的, 文件后綴是.md, 網(wǎng)易云筆記, 簡(jiǎn)書(shū)也都支持 Markdown 語(yǔ)法.

很多人使用微信排版 (包括我) 也是用 Markdown 寫(xiě)完直接交給轉(zhuǎn)換插件轉(zhuǎn)化為 HTML 后復(fù)制過(guò)去一鍵搞定.

正片

今天推薦的開(kāi)源 Markdown 組件倉(cāng)庫(kù)地址是:

https://github.com/pandao/editor.md

這個(gè)倉(cāng)庫(kù)的 Markdown 擴(kuò)展了原來(lái)的 Markdown 語(yǔ)言, 常用的語(yǔ)法不在話下, 同時(shí)支持 LaTeX 公式, Emoji 表情, 以及流程圖等等.

引入編輯器

使用方法很簡(jiǎn)單, 直接把倉(cāng)庫(kù)克隆下來(lái), 然后在你的網(wǎng)頁(yè)中貼上下面的代碼:
(在 Django 或其他Web 框架中, 更推薦使用類似 Jinja 的非硬編碼引入格式而非下述的絕對(duì)地址)

<link rel="stylesheet" href="editormd.min.css" />
<div id="editormd">
    <textarea style="display:none;">### Hello Editor.md !</textarea>
</div>

并添加 JavaScript 代碼啟用(同樣推薦軟編碼來(lái)引入文件), 可以對(duì)編輯器的大小等進(jìn)行設(shè)置, 具體參考文檔:

<script src="jquery.min.js"></script>
<script src="editormd.min.js"></script>
<script type="text/javascript">
    $(function() {
        var editor = editormd("editormd", {
            path : "../lib/" // Autoload modules mode, codemirror, marked... dependents libs path
        });
    });
</script>

引入之后大概是這個(gè)樣子:


image.png

Markdown 轉(zhuǎn)化為 HTML

如果是想把文章呈現(xiàn)在網(wǎng)頁(yè)而不是編輯, 那么引入下面的代碼即可:

<link rel="stylesheet" href="{% static 'editor/css/editormd.min.css' %}">
{# Markdown Editor #}
<div id="editormd" class="col-md-10 text-left">
<textarea style="display:none;" id="id_body"></textarea>
<script type="text/javascript">
        $(function() {
            var editor = editormd("editormd", {
                width: "100%",
                height: 640,
                path : "{% static 'editor/lib/' %}" // Autoload modules mode, codemirror, marked... dependents libs path
            });
        });
</script>

需要注意的是我們?cè)?lt;textarea>標(biāo)簽中的內(nèi)容不能留有空格, 否則可能會(huì)出現(xiàn)與預(yù)想內(nèi)容不符合的情況. 例如, 第一行內(nèi)容你想設(shè)為標(biāo)題卻變成一行代碼. 舉個(gè)栗子:
假如你在 Django 中這樣寫(xiě):

 <div id="editormd" class="col-md-10 text-left">
{# DO NOT left space before article.body, or the first line may become a CODE line. #}
<textarea style="display: none" id="id_body">
        { article.body }}
</textarea>
 </div>

結(jié)果是:


結(jié)果

是不是和預(yù)想的不一樣? 這是因?yàn)?textarea 標(biāo)簽里面的文字都是文本, 沒(méi)有縮進(jìn)的概念, 留了太多空格反而是 Markdown 語(yǔ)法中的代碼行引用.

現(xiàn)在把代碼改回一行, 不留空格, 結(jié)果就和預(yù)想的一樣啦

<textarea style="display: none" id="id_body">{{ article.body }}</textarea>
結(jié)果
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市畴栖,隨后出現(xiàn)的幾起案子随静,更是在濱河造成了極大的恐慌,老刑警劉巖吗讶,帶你破解...
    沈念sama閱讀 222,183評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件燎猛,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡照皆,警方通過(guò)查閱死者的電腦和手機(jī)重绷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)膜毁,“玉大人昭卓,你說(shuō)我怎么就攤上這事∥帘酰” “怎么了候醒?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,766評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)杂瘸。 經(jīng)常有香客問(wèn)我火焰,道長(zhǎng),這世上最難降的妖魔是什么胧沫? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,854評(píng)論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮占业,結(jié)果婚禮上绒怨,老公的妹妹穿的比我還像新娘。我一直安慰自己谦疾,他們只是感情好南蹂,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著念恍,像睡著了一般六剥。 火紅的嫁衣襯著肌膚如雪晚顷。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,457評(píng)論 1 311
  • 那天疗疟,我揣著相機(jī)與錄音该默,去河邊找鬼。 笑死策彤,一個(gè)胖子當(dāng)著我的面吹牛栓袖,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播店诗,決...
    沈念sama閱讀 40,999評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼裹刮,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了庞瘸?” 一聲冷哼從身側(cè)響起捧弃,我...
    開(kāi)封第一講書(shū)人閱讀 39,914評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎擦囊,沒(méi)想到半個(gè)月后违霞,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,465評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡霜第,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評(píng)論 3 342
  • 正文 我和宋清朗相戀三年葛家,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片泌类。...
    茶點(diǎn)故事閱讀 40,675評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡癞谒,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出刃榨,到底是詐尸還是另有隱情弹砚,我是刑警寧澤,帶...
    沈念sama閱讀 36,354評(píng)論 5 351
  • 正文 年R本政府宣布枢希,位于F島的核電站桌吃,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏苞轿。R本人自食惡果不足惜茅诱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望搬卒。 院中可真熱鬧瑟俭,春花似錦、人聲如沸契邀。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,514評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至微饥,卻和暖如春逗扒,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背欠橘。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,616評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工矩肩, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人简软。 一個(gè)月前我還...
    沈念sama閱讀 49,091評(píng)論 3 378
  • 正文 我出身青樓蛮拔,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親痹升。 傳聞我的和親對(duì)象是個(gè)殘疾皇子建炫,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評(píng)論 2 360

推薦閱讀更多精彩內(nèi)容

  • # Python 資源大全中文版 我想很多程序員應(yīng)該記得 GitHub 上有一個(gè) Awesome - XXX 系列...
    小邁克閱讀 2,996評(píng)論 1 3
  • 傅里葉變換需要正交函數(shù),為什么需要正交函數(shù)呢疼蛾?這個(gè)待研究肛跌。 正交函數(shù),是指兩個(gè)函數(shù)的積的定積分為0察郁。比如不...
    poiu621閱讀 187評(píng)論 0 0
  • 劉春敏閱讀 168評(píng)論 0 0