什么是 MarkDown

还记得用git的时候总要你写一个readme.md的文件么?这个.md文件是干嘛用的呢?其实.md格式就是markdwon文件的缩写。Mark Down 是一种[电子邮件]风格的[标记语言],可以将文本转化为Html。通过markdown进行写作可以让我们专注于内容,而暂时忘记格式。
大家可以阅读下面的文章了解为什么要使用markdown。本篇只介绍常用的markdown工具和平常需要使用的语法。更多的内容请参看附录[参考文献]
为什么作家应该用 Markdown 保存自己的文稿
Markdown写作浅谈


MarkDown 编辑器

  • MarkdownPad
    MarkdowmPad 是一款可视化markdown编辑器,在左侧进行编辑,右侧可以看到转换成页面后的效果,如果对markdown不熟悉,可以用这个练练手
    Moreinfo:[MarkdownPad下载]

  • Sublime
    Sublime 就不用多说了,markdown用熟了就不用对照着转换后的效果编辑了。sublime 是付费的,但是我一直用着免费版本,高频操作下差不多20分钟会提示你购买,已经很厚道了。
    Moreinfo:[Sublime下载]

  • Cmd Markdown
    Cmd Markdown 是一款在线的markdown编辑器,和MarkdownPad一样是可以看到应用markdown的效果的,目前是最好的在线markdown编辑器,可以看看知乎上的评论
    MoreInfo:[Cmd Markdown]


MarkDown 语法

###标题

1
2
3
4
5
6
7
<!--六级标题,和html语言是一样的,使用\#代表标题级数-->
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题

一级标题

二级标题

三级标题

四级标题

五级标题
六级标题

###列表
无序列表

1
2
3
4
<!-- -*+都可以,但是空格不能缺 -->
- 无序列表项1
- 无序列表项2
- 无序列表项3

  • 列表项1
  • 列表项2
  • 列表项3

有序列表

1
2
3
4
<!--有序列表 数字和点要有,后面的空格不能省,前面的数字顺序无所谓-->
2. 有序列表1
3. 有序列表2
1. 有序列表3

  1. 有序列表1
  2. 有序列表2
  3. 有序列表3

嵌套列表

1
2
3
4
5
6
7
<!--列表可以嵌套使用,注意缩进和空格-->
- 嵌套列表
+ 嵌套列表
+ 嵌套列表
- 嵌套列表
* 嵌套列表
- 嵌套列表

  • 嵌套列表
    • 嵌套列表
    • 嵌套列表
      • 嵌套列表
      • 嵌套列表
  • 嵌套列表

###链接
文字链接

1
2
<!--后面括号里的是tooltips,鼠标放在文字上会提示,在网址后空一格添加,可省略 -->
[mcl's Space](www.mclspace.com "mcl的空间")

mcl’s Space

图片链接

1
2
<!--图片超链接:在前面加一个感叹号即可-->
![示例图片](http://icoco.qiniudn.com/image/hexo/09090115252c6bc118f5d9c215.gif "这个是Tooltips")

示例图片

索引链接

1
2
3
4
5
6
<!--索引超链接:如果网址中有括号可以这么用,1,2只要对应就好,可以使用任意字符-->
[mcl' space][*]
![Example][2]
[*]:www.mclspace.com
[2]:http://icoco.qiniudn.com/image/hexo/m1.jpg

mcl’ space
Example

自动链接

1
2
3
<!--自动链接:加尖括号即可,实验结果表明 网址的话得在前面加http://,否则无法显示-->
<www.mclspace.com>
<rdmclin2@gmail.com>

http://www.mclspace.com
rdmclin2@gmail.com


###引用
引用

1
2
<!--翻译成html就是<blockquote></blockquote>,符号后的空格可不要-->
> 引用

这个是引用的话

引用的引用

1
2
3
<!--内层符号前的空格必须要-->
>引用
>>引用中的引用

引用

引用中的引用


###粗体和斜体

1
2
3
4
5
<!--星号与下划线都可以,单是斜体,双是粗体,符号可跨行,符号可加空格-->
**粗体**
__粗体__
*斜体*
_斜体_

粗体
粗体
斜体
斜体


###表格
表格

1
2
3
4
5
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |

Tables Are Cool
col 3 is right-aligned $1600
col 2 is centered $12
zebra stripes are neat $1

###代码
行内代码

1
2
3
4
5
<!--在第一行后指定编程语言,也可以不指定,用三个反引号-->
\`\`\`java
String helloworld = "Hello world!";
System.out.println(helloworld);
\`\`\`

1
2
String helloworld = "Hello world!";
System.out.println(helloworld);

段落代码

1
2
3
<!--每行文字前加4个空格或者1个Tab -->
String helloworld = "Hello world!";
System.out.println(helloworld);

String helloworld = "Hello world!";
System.out.println(helloworld);

###分割线

1
2
<!--三个或更多-_*,必须单独一行,可含空格-->
---


###注释

1
<!-- 注释 -->


###转义字符

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<!-- Markdown中的转义字符为\,转义的有 -->
\\ 反斜杠
\` 反引号
\* 星号
\_ 下划线
\{\} 大括号
\[\] 中括号
\(\) 小括号
\# 井号
\+ 加号
\- 减号
\. 英文句号
\! 感叹号


###更多

1
<!--more -->

页内跳转

  1. 先定义一个锚(id)

    <span id="jump">Hello World</span>
    
  2. 然后使用markdown的语法:

    [XXXX](#jump)
    

参考文献