开始学习用Markdown做笔记,告别纯office
Markdown是一种轻量级标记语言,允许人们使用易读易写的纯文本格式编写文档,然后转换成格式丰富的HTML页面,使书写的内容具有一定格式。那标记语言对于我们一定不陌生,也不应该陌生,之前就说过我们有必要学习一下这种语言,现在就怕上用场了。说到Markdown,相信用过Github的同学应该不陌生,还记得那个README.md文件吗?
Markdown给我感觉简直就是相见恨晚!作为一个IT从业人员,确实是太有必要学习了,换句话说,也是高逼格的一种体现,但是我不得不说这对一个地书写格式有要求的人来说太有帮助了。使用Markdown,不需要再像Office下一样用鼠标做各种调格式、插图片、写公式等等繁琐的工作(大部分时候是不会去关心快捷方式的),而是只需要专注于你的书写,你所需要的格式靠书写就可以完成,实际上是很高效的,效果也会更好!使用Markdown可以写文章、可以写博客、可以加图片、转链接、生成列表、写数学公式、画流程图等等,现在,很多平台都已经支持这种写作方法,例如有道云笔记、简书、CSDN、Github等等,编辑软件也很多,例如Atom、Sublime Text等等(自己常用的软件也需要多学习一下快捷方式、插件的使用)。
*
Markdown有很多用法,有两点需要注意:
1.有时因编辑器的支持不同,可能有所区别:
2.有些语法可以同时使用,有些不可以,很多复杂用法可以凭经验总结。
下面介绍一些简单用法*
Guide
1. 标题
Markdown 的标题有两种语法
一种是用底线的形式,利用 = (最高阶标题)和 - (第二阶标题),= 和 - 符号的数量不固定,例如:
This is an H1
==================
This is an H2
————————-
另一种则是在行首插入 1 到 6 个 # ,然后一个空格,对应到标题 1 到 6 阶,例如:
# H1
## H2
### H3
#### H4
2. 文字格式
加粗 **加粗**
强调 *强调*
划去 \~\~划去\~\~
2. 分隔线
你可以在一行中用三个以上的星号、减号、底线来建立一个分隔线,行内不能有其他东西。你也可以在星号或是减号中间插入空格。下面每种写法都可以建立分隔线:
写法:
* * *
*
- - -
—
效果:
3. 字符转义
Markdown 支持以下这些符号前面加上反斜杠来帮助插入普通的符号:
\ 反斜线
` 反引号
* 星号
_ 底线
{} 花括号
[] 方括号
() 括弧
# 井字号
+ 加号
- 减号
. 英文句点
! 惊叹号
4. 段落
一个字母的空格—— 
一个汉字的空格—— 
留空白的换行,将会被自动转换成一个段落,会有一定的段落间距,便于阅读。
5. 引用
引用符号:>
一级引用 > :
引用文本
二级引用 >> :
二级引用
6. 颜色字体
写法:
<font face="黑体">我是黑体字</font>
<font face="微软雅黑">我是微软雅黑</font>
<font face="STCAIYUN">我是华文彩云</font>
<font color=#0099ff size=12 face="黑体">黑体</font>
<font color=#00ffff size=3>呵呵</font>
<font color=gray size=5>gray</font>
效果:
7. 表情符号 Emoji
支持表情符号,你可以用系统默认的 Emoji 符号(无法支持 Windows 用户)
也可以用图片的表情,输入 :
将会出现智能提示
:smile: :laughing: :dizzy_face: :sob: :cold_sweat: :sweat_smile: :cry: :triumph: :heart_eyes: :relaxed: :sunglasses: :weary:
写法:
:smile: :laughing: :dizzy_face: :sob: :cold_sweat:
:sweat_smile: :cry: :triumph: :heart_eyes: :relaxed:
:sunglasses: :weary:
:+1: :-1: :100: :clap: :bell: :gift: :question: :bomb: :heart: :coffee: :cyclone: :bow: :kiss: :pray: :sweat_drops: :hankey: :exclamation: :anger:
写法:
:+1: :-1: :100: :clap: :bell: :gift: :question: :bomb:
:heart: :coffee: :cyclone: :bow: :kiss: :pray:
:sweat_drops: :hankey: :exclamation: :anger:
8. 图片
语法格式: ![]() 括号里是图片链接,可以是本地链接也可以是网络链接
![alt 文本](http://image-path.png)
![alt 文本](http://image-path.png "图片 Title 值")
![设置图片宽度高度](http://image-path.png =300x200)
![设置图片宽度](http://image-path.png =300x)
![设置图片高度](http://image-path.png =x200)
9. 链接
语法:
[]() []中给链接取个名字,()中链接地址,如
[百度](www.baidu.com)
百度 [百度](www.baidu.com)
10. 内嵌
内嵌符号: ``
内嵌
`内嵌`
11. 代码块
代码块有两种表示方法,一种是使用两个Tab
键:
文本前按两下Tab键达到此效果
还有一种是使用 “` 包含的方式
写法:
```
*emphasize* **strong**
_emphasize_ __strong__
@a = 1
```
效果:
*emphasize* **strong**
_emphasize_ __strong__
@a = 1
代码块的语法高亮支持
如果在 “` 后面更随语言名称,可以有语法高亮的效果:
演示 Ruby 代码高亮
写法:
```ruby
class PostController < ApplicationController
def index
@posts = Post.last_actived.limit(10)
end
end
```
效果:
演示 YAML 文件
```yml
zh-CN:
name: 姓名
age: 年龄
```
Tip: Markdown 语言名称支持下面这些高亮显示:
ruby
,python
,js
,html
,erb
,css
,coffee
,bash
,json
,yml
,xml
…
12. 有序、无序列表
无序列表
写法:
- Ruby
- Rails
- ActiveRecord
- Go
- Gofmt
- Revel
- Node.js
- Koa
- Express
- Ruby
- Rails
- ActiveRecord
- Go
- Gofmt
- Express
- Node.js
- Koa
- Express
效果:
- Ruby
- Rails
- ActiveRecord
- Go
- Gofmt
- Revel
- Node.js
- Koa
- Express
- Ruby
- Rails
- ActiveRecord
- Go
- Gofmt
- Express
- Node.js
- Koa
- Express
有序列表
写法:
1. Node.js
1. Express
2. Koa
3. Sails
2. Ruby
1. Rails
2. Sinatra
3. Go
1. Node.js
1. Express
2. Koa
3. Sails
2. Ruby
1. Rails
2. Sinatra
3. Go
效果:
- Node.js
- Express
- Koa
- Sails
- Ruby
- Rails
- Sinatra
- Go
- Node.js
- Express
- Koa
- Sails
- Ruby
- Rails
- Sinatra
- Node.js
- Go
13. 表格
写法:
| header 1 | header 3 |
| -------- | -------- |
| cell 1 | cell 2 |
| cell 3 | cell 4 |
| cell 5 | cell 6 |
header 1 | header 3 |
---|---|
cell 1 | cell 2 |
cell 3 | cell 4 |
cell 5 | cell 6 |
14. 计划项
写法:
- [ ]
- [ ] - [ ]
- [x]
- [x] - [x]
效果:
- [ ]
- [ ] - [ ]
- [x]
- [x] - [x]
15. 数学公式
写法:
```math
E = mc^2
```
效果:
E = mc^2
16. 流程图
写法:
```
graph LR
A-->B
```
```
sequenceDiagram
A->>B: How are you?
B->>A: Great!
```
```
gantt
dateFormat YYYY-MM-DD
section S1
T1: 2014-01-01, 9d
section S2
T2: 2014-01-11, 9d
section S3
T3: 2014-01-02, 9d
```
graph LR
A-->B
sequenceDiagram
A->>B: How are you?
B->>A: Great!
gantt
dateFormat YYYY-MM-DD
section S1
T1: 2014-01-01, 9d
section S2
T2: 2014-01-11, 9d
section S3
T3: 2014-01-02, 9d