身爲大程序員,我原本是不須要 Markdown 編輯器的,可是 Haroopad 讓我簡直欲罷不能,不能再愛更多。跨平臺,代碼高亮,Vim 鍵綁定,多列模式,行號,摺疊, Github Flavored Markdown 等功能~html
其實它最吸引個人是它的所見即所得的繪圖功能。python
安裝方法ios
下面是在Ubuntu 14.04 64bit上的安裝實錄.git
從官網下載x86的deb包,雙擊安裝便可程序員
安裝完成後,從Unity中輸入Haroopad便可打開程序界面github
簡介 Haroopad:一款讓你欲罷不能的Markdown編輯器 身爲大程序員,我原本是不須要 Markdown 編輯器的,可是 Haroopad 讓我簡直欲罷不能,不能再愛更多。跨平臺,代碼高亮,Vim 鍵綁定,多列模式,行號,摺疊, Github Flavored Markdown 等功能~ 其實它最吸引個人是它的所見即所得的繪圖功能。 安裝方法 下面是在Ubuntu 14.04 64bit上的安裝實錄. 從官網下載x86的deb包,雙擊安裝便可 安裝完成後,從Unity中輸入Haroopad便可打開程序界面 使用方法 下面給出了一個markdown源碼示例的使用說明,參見參考文獻[3] [html] view plain copy 在CODE上查看代碼片派生到個人代碼片 #Markdown和Haroopad介紹文檔 [TOC "float:right"] ##什麼是Markdown Markdown 是一種輕量級標記語言,創始人爲約翰·格魯伯(John Gruber)。簡而言之的說,它能夠經過相似HTML的標記語法,使普通文本內容具備必定的格式。 ###Markdown有哪些優勢 * 純文本實現,使用任何文本編輯器都可編輯,全平臺通用。 * 排版清晰簡潔,可讀性較高,使用擴展能夠得到更多語法格式支持,漂亮美觀。 * 語法簡潔,上手較快,任何人都可在短期內學會。即便不會語法的讀者,也能夠讀懂其原始文件的內容。 * 豐富的工具鏈支持: - 編輯器:各類支持所見即所得的編輯器,如本文介紹的Haroopad。 - 平臺支持:各大博客系統、Wiki系統均有相關插件,代碼託管平臺Github也支持使用Markdown來編寫Readme文件。 - 和其餘格式進行轉化:能夠方便的轉化爲HTML文件等。 ###Markdown的基本語法 Markdown的基本語法很是簡單,本文即用Markdown完成。 ####標題 能夠在標題內容前輸入特定數量的井號('#')來實現對應級別的HTML樣式的標題(HTML提供六級標題)。例如: # 一級標題 #### 四級標題 一級和二級標題還有一種寫法: 一級標題 =================== 二級標題 -------------------- ####特殊格式字體 在須要改變的文字片斷先後 使用一對符號能夠改變文字爲特殊格式: * 粗體 使用`**文字**`或者`__文字__` 效果:**這裏請你們尤爲注意!** * 斜體 使用`*文字*`或者`_文字_` 效果:會不調用父類的 *析構函數* 呢? * 高亮 使用`==文字==` 效果:==這裏是高亮的重點==,但這裏不是。 * 下劃線 使用`++文字++` 效果:若是此時的++判斷結果爲真++…… * 刪除線 使用`~~文字~~` 效果:~~1.2的版本已經修復這個Bug?~~ * 上角標 使用`^文字^` 效果:單位圓的方程式是x^2^+y^2^=1。 * 下角標 使用`~文字~` 效果:最多見的氧化反應是C+O~2~=CO~2~ ####外部內容嵌入 * 圖像 使用``來貼入圖片 效果:  * 連接 使用`[linkText](url)`來插入連接 效果: [博客首頁](http://www.walkcd.com) * 電子郵件 使用`<郵件地址>`來插入郵件地址 效果:<cdsama@gmail.com> ####列表 #####無序列表 使用以下格式(*+-能夠任意替換): ``` * 第一章 * 第二章 + 第一條 + 第二條 - 第一則 ``` 效果: * 第一章 * 第二章 * 第一條 * 第二條 * 第一則 #####有序列表 使用以下格式(即爲效果): 1. 內容 2. 內容 3. 內容 ####表格 簡單表格以下,分號的位置表示對齊方式: ``` |這裏是列名一|列二|三| |:-|:-:|-:| |這列是左對齊|這列是居中對齊|這列是右對齊| |左對齊|居中對齊|右對齊| ``` 效果: |這裏是列名一|列二|三| |:-|:-:|-:| |這列是左對齊|這列是居中對齊|這列是右對齊| |左對齊|居中對齊|右對齊| |1|2|3| ####分割線 如下三個連續符號構成一個分割線,分別是三種不一樣的分割線: `***` `---` `___` 效果: *** --- ___ ####換行、空格和標記符號 在瀏覽器中通常狀況下,Markdown會刪除全部換行和空格,打亂原有的縮進和排版。經過回車和至少兩個空格能夠強制換行。 要打出連續空格能夠用輸入法輸入全角中文空格或者: 半字大的空白` `或` ` 全字大的空白` `或` ` 不斷行的空白格` `或` ` 若要輸出符號本來的意思能夠加斜線\來輸出 例如: \* 不是列表 ####引用 使用右尖括號便可插入一段引用,例如: ``` > 這裏是一段引用 >> 書是人類進步的階梯。 --高爾基 > > 退出二級引用 ``` 效果: > 這裏是一段引用 >> 書是人類進步的階梯。 --高爾基 > > 退出二級引用 ####代碼 使用一對反引號便可包含一個行內代碼使用一對三個反引號能夠包括多行代碼,另外多行Tab也能夠用於代碼段,例如: `code` ``` code blocks ``` 效果:`print("hello");` ``` #include <iostream> int main() { std::cout<<"hello world!""<<std::endl; return 0; } ``` ##Haroopad介紹 Haroopad是一個韓國人寫的Markdown編輯器,項目主頁是: [Haroopad - The Next Document processor based on Markdown](http://pad.haroopress.com/) ###Haroopad的優勢和缺點 優勢: * 跨Windows、Mac、Linux三大平臺。 * 支持實時渲染,能夠在編寫的時候實時查看效果。 * 支持複製、導出到HTML。 * 支持多種編程語言語法高亮。 * 支持繪製各類流程時序圖等非標準Markdown格式。 缺點: * 暫時不支持導出到PDF等格式 ###Haroopad支持的額外語法 ####目錄 單行插入[toc]或[TOC]便可生成目錄 ####腳註 使用`[^id]` `[^id]:text`便可生成一對腳註 [^demo] ####代碼語法高亮 在```後加入編程語言名稱 例如````python` ```python @requires_authorization def somefunc(param1='', param2=0): '''A docstring''' if param1 > param2: # interesting print 'Greater' return (param2 - param1 + 1) or None class SomeClass: pass >>> message = '''interpreter ... prompt''' ``` ####計劃任務列表 使用`- [ ] task name` `- [x] finished task`來建立計劃任務。 效果: - [x] 任務1 - [x] 任務2 ####圖像繪製 圖像繪製使用了mermaid引擎([訪問該項目地址](https://github.com/knsv/mermaid))。 目前支持流程圖和時序圖,能夠在該項目Wiki上查看更多用法,如下列舉兩個最基本的例子。 流程圖: ```mermaid graph TD subgraph 子圖 a1[矩形] a2>旗幟形] a3(圓角方形) end subgraph 第二個子圖 b1((圓形)) b2{斜方形} end a1-->|實線箭頭|a2 a2-->a1 a2-.->|虛線箭頭|a3 a3-.->a2 a3==>|加粗箭頭|a1 a1==>a3 b1---b2 b2---|實線無箭頭|b1 a1-->b1 ``` 時序圖: ```mermaid sequenceDiagram Alice->>Bob: Hello Bob, how are you? alt is sick Bob->>Alice: Not so good :( else is well Bob->>Alice: Feeling fresh like a daisy end opt Extra response Bob->>Alice: Thanks for asking end ``` [^demo]:這裏是一個示例腳註。 在haroopad中的效果以下,你能夠借鑑該說明來編寫本身的markdown文件或繪製流程圖 流程圖和時序圖的繪製 Hapoopad目前經過mermaid能夠支持流程圖和時序圖的繪製,爲了更好地繪製咱們須要的圖形,咱們須要深刻了解mermaid的語法。 下面是一些語法文檔,須要逐個瞭解 http://knsv.github.io/mermaid/#mermaid mermaid的源碼參見 https://github.com/knsv/mermaid 參考文獻 [1].https://github.com/songshaodong/mermaid 源碼 [2].http://pad.haroopress.com/user.html 官網 [3].http://blog.walkcd.com/applies-to-documentation-of-markdown-and-haroopad-presentation/
[3].http://blog.walkcd.com/applies-to-documentation-of-markdown-and-haroopad-presentation/編程