目录css
常常写技术文档,须要将文档像代码同样管理,例如能够提交SVN或者GIT,能够比对历史差别。用WORD之类的工具,文档不是纯文本,无法知足需求。用简单文本没有格式不美观。Latex最强大,可是对于通常文档撰写又过重量,配置一个好的模板太费神,并且标记有些复杂很差记。html
若是你也有上述困苦,那么能够尝试一下markdown! Markdown是一种可使用普通文本编辑器编写的标记语言,相似HTML,不过比HTML简单不少! 用markdown撰写的文章能够直接转成HTML格式进行显示。 目前主流的博客系统都直接支持markdown,开源代码托管网站GitHub中readme文档撰写默认是markdown格式。 Mardown语法很是简单, 基本十分钟能够所有学会!linux
为了让markdown支持更丰富的元素,不一样组织和我的还开发了许多markdown扩展,例如能够支持表格、编程语言代码块、数学公式等等。git
虽然markdown能够用任何文本编辑器进行撰写,可是使用专门的markdown编辑器,能够作到一边编写一边实时显示渲染效果。网上免费的markdown编辑器很是多,这里给你们介绍一款我的以为最好用的markdown编辑器Haroopad! 它是开源、免费、跨平台的,支持windows,linux和mac系统。Haroopad已经内置了各类markdown扩展,支持100多种编程语言代码的直接显示,例如C/C++, JAVA, C#, Ruby, Python, Erlang, Makefile等等,甚至代码显示的背景框都有不少主题能够选择。另外它支持撰写数学公式,支持一套文本绘图DSL,支持自动生成文档目录等等。Haroopad支持直接将文档发布成PDF格式。最后Haroopad支持用户自定义显示样式。 因为Haroopad是韩国人写的,因此用户手册里面不少都是韩语,所以这里将Haroopad的一些主要用法给你们介绍一下!程序员
Haroopad使用很是简单,左边是编辑区,右边是预览区。支持实时预览。
github
Haroopad支持全部的markdown标准语法。Markdown基本语法见http://www.appinn.com/markdown/,基本上十分钟以内能够所有学会。编程
写好的markdown文稿保存成*.md
文件。md文件是纯文本格式,能够用记事本打开直接阅读修改。在Haroopad下,能够将md文稿发布成带样式的html文件或者pdf文件。windows
发布成HTML格式: 文件 -> 导出到 -> HTMLmarkdown
发布成PDF格式: 文件 -> 打印 -> 打印到文件网络
对于程序员来讲,最须要的就是对于Code Block的强大支持! Haroopad支持100多种编程语言!每种语言的代码会按照语言风格进行编排缩进和语法高亮。
Code Block须要以~~~
加上编程语言标识符的单独一行开始,以~~~
单独一行结束。
例如对于一段C++的Code Block。
显示结果以下:
代码块的背景框风格在Haroopad中能够配置:
文件 -> 偏好设置 -> Code -> 主题
Haroopad支持很是多的代码框风格,例如上面C++中的例子中配置的是sublime的风格。
在Haroopad中插入图片很是方便,以下:
小括号内分别是图片的url(能够是网络地址)、title以及图片的显示大小(单位px)。
Haroopad中绘制表格的语法以下:
显示效果以下:
Haroopad扩展支持tasklist,语法以下:
显示效果以下:
Haroopad借助Mathjax扩展来支持对数学公式的显示。
为了让haroopad支持数学公式首先须要在配置里面开启数学公式支持:
文件 -> 偏好设置 -> Markdown -> 启用数学表达式
md文档中数学公式框须要以单独$$
一行开始,并以$$
一行结束,中间是符合Mathjax要求的数学公式:
显示效果:
Haroopad支持mermaid扩展。Mermaid是一套绘图的符号语言扩展,支持绘制各类关系图,序列图。
Haroopad中mermaid绘图以~~~mermaid
单独一行开始,以~~~
单独一行结束。
显示效果以下:
其中graph TD
指定绘图方向是从上而下,改成graph LR
则是从左至右。
其它例子:
Mermaid扩展还支持其它绘图方式,以及调整绘图样式,具体见mermail介绍https://github.com/knsv/mermaid/wiki
Haroopad支持直接撰写PPT。在撰写文档的时候以***
作分页,在presentation mode下就会是独立的一页PPT。
要将文档以PPT模式显示,须要开启presentation mode:
视图 -> Presentation Mode
具体参见Haroopad关于Presentation Mode的说明: http://pad.haroopress.com/page.html?f=how-to-write-presentation
Haroopad支持对markdown语法的快捷键和自动补全。须要的话能够在偏好设置里面进行设置。
Haroopad支持自动插入目录。具体在须要插入目录的地方插入空行和 `` 就搞定一切了。
Haroopad支持丰富的媒体插入。例如音频和视频。
Haroopad支持自定义编辑区和预览发布的样式,具体在
文件 -> 偏好设置 -> 编辑器 ->自定义主题 -> 编辑
文件 -> 偏好设置 -> 预览 ->自定义主题 -> 编辑
在弹出的目录里面有css文件,修改该css文件用来改变样式。每次修改css后须要重启haroopad。我收集了不少适合haroopad使用的css主题,能够在个人github上下载:https://github.com/MagicBowen/markdown
将md文件发布成pdf后,会发现Code Block背景框的风格变化了。该问题的解决须要配置haroopad的预览样式css文件,增长设置让其严格按照颜色样式打印就行了。以下:
因为其简单易用,Markdown在社区已经愈来愈流行。甚至有些项目将自动化测试用例都用markdown语法来写,能够直接发布给客户看成说明文档,执行的时候靠一段解释代码将其翻译成目标语言执行,真的作到测试即文档。而Haroopad是一款很是强大的markdown编辑器,它内置的不少mardown扩展都是为了方便程序员,避免了你们处处寻找插件自行配制的繁琐。到目前为止haroopad是我找到的最好用的markdown编辑器。最后在支持如此多的特性后,haroopad依然很是轻量! 但愿Haroopad一样适合你!
做者:MagicBowen , Email: e.bowen.wang@icloud.com , 转载请注明做者信息!