md2html之Ruby 标签支持

博客 JavaScript markdown

`md2html`是以前我用`javascript`写的markdown语法解释器,便于在博客等网页使用。例如: ![](https://file.hurray0.com/uploads/menu/88/5fe6584884a16369c1434dd9ab8958a2.png) 可以实现实时的编辑和预览,使用非常方便。 昨天在网上看到了``标签: > ruby原指5.5级的字体格式,在美国又称Agate,它的大小正好适合注音。现在在日文中,这词不再表示字体的名称,而是表示名词形式的标音。当它被翻译回英文时,它被称为rubi(由假名译来,日文:ルビ)。但是ruby的拼法还是比较普遍。 除了字母以外,一些假名也会用ruby来标注。   —— 维基百科 由于最近在学日语,加上有注音看起来非常[綺麗]^(き れい),所以改了一下原来的代码。原理如下: ```javascript // ruby s = s.replace(/\[([^\]]+)\]\^\(([^\)]+)\)/mg, function($0, $1, $2) { res = ""; var buf = $2.split(" "); for (var ii = 0; ii < $1.length; ii++) { res += ""+ $1[ii] +""+ buf[ii] +""; } return res; }); ``` ## 语法说明 > [原文]^\(yuán wén\) ## 效果展示 ### 这是一句[中文]^(zhōng wén) ### これは[日本語]^(に ほん ご)です。 ---   崇祯五年十二月,余住西湖。大雪三日,湖中人鸟声俱绝。   是日,更定矣,余[挐]^(ná)一小舟,拥[毳]^(cuì)衣、炉火独往湖心亭看雪。[雾凇沆砀]^(wù sōng hàng dàng),天与云、与山、与水,上下一白。湖上影子,惟长堤一痕,湖心亭一点,与余舟一芥,舟中人两三粒而已。   到亭上,有两人铺毡对坐,一童子烧酒,炉正沸。见余,大喜,曰:“湖中焉得更有此人!”拉余同饮。余强饮三大白而别。问其姓氏,是金陵人客此。   及下船,舟子喃喃曰:“莫说相公痴,更有痴似相公者。” ```   崇祯五年十二月,余住西湖。大雪三日,湖中人鸟声俱绝。   是日,更定矣,余[挐]^(ná)一小舟,拥[毳]^(cuì)衣、炉火独往湖心亭看雪。[雾凇沆砀]^(wù sōng hàng dàng),天与云、与山、与水,上下一白。湖上影子,惟长堤一痕,湖心亭一点,与余舟一芥,舟中人两三粒而已。   到亭上,有两人铺毡对坐,一童子烧酒,炉正沸。见余,大喜,曰:“湖中焉得更有此人!”拉余同饮。余强饮三大白而别。问其姓氏,是金陵人客此。   及下船,舟子喃喃曰:“莫说相公痴,更有痴似相公者。” ``` --- [雷神]^(なる かみ)の 少し[響]^(とよ)みて さし曇り 雨も降らぬか 君を留めむ [雷神]^(なる かみ)の 少し[響]^(とよ)みて 降らずとも われは留らむ 妹し留めば ``` [雷神]^(なる かみ)の 少し[響]^(とよ)みて さし曇り 雨も降らぬか 君を留めむ [雷神]^(なる かみ)の 少し[響]^(とよ)みて 降らずとも われは留らむ 妹し留めば ``` ### md2html.js下载 [https://hurray0.com/static/md2html/md2html.js](https://hurray0.com/static/md2html/md2html.js) ``` Author: Hurray Date: 2017.01.22 HowToUse: var parser = new Markdown2HTML(); var html = parser.md2html(md); alert(html); ```