认识Markdown

去年经朋友介绍,发现了一种非常有意思的文本处理手段,markdown,随便学了学。其语法很简单,很适合coder思维,也很方便,总结如下。

强调

斜体

1
*斜体*

斜体

粗体

1
**粗体**

粗体

删除线

1
~~删除线~~

删除线

引用

1
2
3
4
5
6
7
8
9
> You can do anything, but not everything.
> - David Allen
>> - Are
>> - you
>> - sure?
>> - visitor
>>> ##### Yes,
>>> ##### I am.
>>> - David

引用效果
这个效果就如常见文献中引用的字段一样,引用里还可以嵌套标题和列表。
*hexo貌似不支持这么引用。

层级

标题

相当于html中h1到h6的标签,几个#号代表h几。

1
2
3
4
5
6
# 标题1  
## 标题2
### 标题3
#### 标题4
##### 标题5
###### 标题6

标题1

标题2

标题3

标题4

标题5
标题6

其次,还可以在标题下加一根灰色的细线来美化:

1
2
###### 标题6
---

标题6

“-“的数量只要不少于3个即可。
另外,有些不那么严格的编辑器可以接受”#”与标题名之间没有空格(e.g. maxiang.io),但为保险起见或移植方便,尽量加空格。

列表

有序列表

1
2
3
1. item 1
2. item 2
3. item 3
  1. item 1
  2. item 2
  3. item 3

*为避免有序列表的顺序错乱,表项下的代码要顶格不缩进,且子列表要严格缩进。当然这取决于编辑器对语法要求的严格程度。

无序列表

1
2
3
- item a
- item b
- item c
  • item a
  • item b
  • item c

*无序列表的表项符号可以是”+”, “-“, “*”。

表格

1
2
3
| Column 1 | Column 2 | Column 3 |
| :- | :-: | -: |
| a | b | c |
Column 1 Column 2 Column 3
a b c

其中第二行定义每一列的对齐格式,“:-”, “:-:”, “-:”分别为左对齐,居中和右对齐,“-”符号的个数可以是不少于1的任意数目。
*为免不同解析器对表格的解析造成兼容性问题,表格应与其上面的文字空一行。

外部资源

链接

1
[Go to Google](http://google.com)

Go to Google

图片

1
![img](http://imgpath)

img
因为图片相当于HTML的img标签,因此需要使用图床,本地图片使用前需上传。

代码

非常优雅的代码块插入方式。
对于一行代码,可以用如下语法,其中“`”的个数不少于1个。

1
`System.out.println("Hello World!");`

System.out.println("Hello World!");
对于多行代码,可以用如下语法,其中”`”的个数不少于3个,且在代码开头处可以指明代码语言,以让解析器根据语言的关键字添加合适的高亮。

```java
public static void main(String args[]){
System.out.println(“Hello World!”);
}
```

效果:

1
2
3
public static void main(String args[]){  
System.out.println("Hello World!");
}

目录

要生成目录,只需要在文档开头加上[toc]标记即可,Markdown解析器根据#~######来生成目录。

HTML

Markdown语法完全兼容HTML,你可以在需要的地方插入HTML标签,比如常用的center, br, table, ul, ol, font等等。

其他

其他诸如LaTex公式,流程图之类的黑科技暂时用不到,就不在此列举了。