Markdown 语法和 MWeb 写作使用说明
Markdown 的设计哲学
Markdown 的目標是實現「易讀易寫」。
不過最需要強調的便是它的可讀性。一份使用 Markdown 格式撰寫的文件應該可以直接以純文字發佈,並且看起來不會像是由許多標籤或是格式指令所構成。
Markdown 的語法有個主要的目的:用來作為一種網路內容的_寫作_用語言。
本文约定
如果有写 效果如下:
, 在 MWeb 编辑状态下只有用 CMD + R
预览才可以看效果。
标题
Markdown 语法:
# 第一级标题 `<h1>`
## 第二级标题 `<h2>`
###### 第六级标题 `<h6>`
`</pre>
效果如下:
# 第一级标题 `<h1>`
## 第二级标题 `<h2>`
###### 第六级标题 `<h6>`
## 强调
Markdown 语法:
<pre>`*这些文字会生成`<em>`*
_这些文字会生成`<u>`_
**这些文字会生成`<strong>`**
__这些文字会生成`<strong>`__
`</pre>
在 MWeb 中的快捷键为: `CMD + U`、`CMD + I`、`CMD + B`
效果如下:
_这些文字会生成`<em>`_
<u>这些文字会生成`<u>`</u>
**这些文字会生成`<strong>`**
**这些文字会生成`<strong>`**
## 换行
四个及以上空格加回车。
如果不想打这么多空格,只要回车就为换行,请勾选:`Preferences` - `Themes` - `Translate newlines to <br> tags`
## 列表
### 无序列表
Markdown 语法:
<pre>`* 项目一 无序列表 `* + 空格键`
* 项目二
* 项目二的子项目一 无序列表 `TAB + * + 空格键`
* 项目二的子项目二
`</pre>
在 MWeb 中的快捷键为: `Option + U`
效果如下:
项目一 无序列表
* + 空格键
项目二
* 项目二的子项目一 无序列表 `TAB + * + 空格键`
- 项目二的子项目二
有序列表
Markdown 语法:
`1\. 项目一 有序列表 `数字 + . + 空格键` 2\. 项目二 3\. 项目三 1\. 项目三的子项目一 有序列表 `TAB + 数字 + . + 空格键` 2\. 项目三的子项目二 `
效果如下:
项目一 有序列表
数字 + . + 空格键
项目二3. 项目三
1. 项目三的子项目一 有序列表 `TAB + 数字 + . + 空格键`
- 项目三的子项目二
任务列表(Task lists)
Markdown 语法:
`- [ ] 任务一 未做任务 `- + 空格 + [ ]` - [x] 任务二 已做任务 `- + 空格 + [x]` `
效果如下:
任务一 未做任务
- + 空格 + [ ]
任务二 已做任务
- + 空格 + [x]
图片
Markdown 语法:
`![GitHub set up](http://zh.mweb.im/asset/img/set-up-git.gif) 格式: ![Alt Text](url) `
Control + Shift + I
可插入Markdown语法。如果是 MWeb 的文档库中的文档,还可以用拖放图片、
CMD + V
粘贴、CMD + Option + I
导入这三种方式来增加图片。效果如下:
链接
Markdown 语法:
`email <[email protected]> [GitHub](http://github.com) 自动生成连接 <http://www.github.com/> `
Control + Shift + L
可插入Markdown语法。如果是 MWeb 的文档库中的文档,拖放或
CMD + Option + I
导入非图片时,会生成连接。效果如下:
Email 连接: [email protected]
自动生成连接像: http://www.github.com/ 这样
区块引用
Markdown 语法:
`某某说: > 第一行引用 > 第二行费用文字 `
CMD + Shift + B
可插入Markdown语法。效果如下:
某某说:
第一行引用
第二行费用文字
## 行内代码
Markdown 语法:
<pre>`像这样即可:`<addr>` `code`
`</pre>
`CMD + K` 可插入Markdown语法。
效果如下:
像这样即可:`<addr>` `code`
## 多行或者一段代码
Markdown 语法:
<pre>````js
function fancyAlert(arg) {
if(arg) {
$.facebox({div:'#foo'})
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
`</pre>
`CMD + Shift + K` 可插入Markdown语法。
效果如下:
<pre>`function fancyAlert(arg) {
if(arg) {
$.facebox({div:'#foo'})
}
}
`</pre>
## 顺序图或流程图
Markdown 语法:
<pre>````sequence
张三->李四: 嘿,小四儿, 写博客了没?
Note right of 李四: 李四愣了一下,说:
李四-->张三: 忙得吐血,哪有时间写。
1
2
3
4
5
6
7
8
st=>start: 开始
e=>end: 结束
op=>operation: 我的操作
cond=>condition: 确认?
st->op->cond
cond(yes)->e
cond(no)->op
`</pre>
效果如下( `Preferences` - `Themes` - `Enable sequence & flow chart` 才会看到效果 ):
<pre>`张三->李四: 嘿,小四儿, 写博客了没?
Note right of 李四: 李四愣了一下,说:
李四-->张三: 忙得吐血,哪有时间写。
`</pre>
<pre>`st=>start: 开始
e=>end: 结束
op=>operation: 我的操作
cond=>condition: 确认?
st->op->cond
cond(yes)->e
cond(no)->op
`</pre>
更多请参考:[http://bramp.github.io/js-sequence-diagrams/](http://bramp.github.io/js-sequence-diagrams/), [http://adrai.github.io/flowchart.js/](http://adrai.github.io/flowchart.js/)
## 表格
Markdown 语法:
<pre>`第一格表头 | 第二格表头
--------- | -------------
内容单元格 第一列第一格 | 内容单元格第二列第一格
内容单元格 第一列第二格 多加文字 | 内容单元格第二列第二格
`</pre>
效果如下:
<table>
<thead>
<tr>
<th>第一格表头</th>
<th>第二格表头</th>
</tr>
</thead>
<tbody>
<tr>
<td>内容单元格 第一列第一格</td>
<td>内容单元格第二列第一格</td>
</tr>
<tr>
<td>内容单元格 第一列第二格 多加文字</td>
<td>内容单元格第二列第二格</td>
</tr>
</tbody>
</table>
## 删除线
Markdown 语法:
<pre>`加删除线像这样用: ~~删除这些~~
`</pre>
效果如下:
加删除线像这样用: <del>删除这些</del>
## 分隔线
以下三种方式都可以生成分隔线:
<pre>`***
*****
- - -
`</pre>
效果如下:
* * *
* * *
* * *
## MathJax
Markdown 语法:
<pre>`块级公式:
$$ x = \dfrac{-b \pm \sqrt{b^2 - 4ac}}{2a} $$
\\[ \frac{1}{\Bigl(\sqrt{\phi \sqrt{5}}-\phi\Bigr) e^{\frac25 \pi}} =
1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}}
{1+\frac{e^{-8\pi}} {1+\ldots} } } } \\]
行内公式: $\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N$
`</pre>
效果如下(`Preferences` - `Themes` - `Enable MathJax` 才会看到效果):
块级公式:
\[ x = \dfrac{-b \pm \sqrt{b^2 - 4ac}}{2a} \]
\[ \frac{1}{\Bigl(\sqrt{\phi \sqrt{5}}-\phi\Bigr) e^{\frac25 \pi}} =
1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}}
{1+\frac{e^{-8\pi}} {1+\ldots} } } } \]
行内公式: \(\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N\)
## 脚注(Footnote)
Markdown 语法:
<pre>`这是一个脚注:[^sample_footnote]
`</pre>
效果如下:
这是一个脚注:<sup id="fnref1">[1](#fn1)</sup>
## 注释和阅读更多
<!-- comment -->
<!--more-->
Actions->Insert Read More Comment _或者_ `Command + .`
**注** 阅读更多的功能只用在生成网站或博客时。
## TOC
Markdown 语法:
<pre>`[TOC]
效果如下:
- [第一级标题 `<h1>`](#toc_3)
- 这里是脚注信息 ↩
Markdown 语法和 MWeb 写作使用说明