mirror of
https://github.com/adambard/learnxinyminutes-docs.git
synced 2024-12-24 18:11:38 +00:00
6261f85b2f
The translation is outdated, so I try to update it.
331 lines
8.2 KiB
Markdown
331 lines
8.2 KiB
Markdown
---
|
||
language: markdown
|
||
contributors:
|
||
- ["Dan Turkel", "http://danturkel.com/"]
|
||
translators:
|
||
- ["Fangzhou Chen","https://github.com/FZSS"]
|
||
filename: learnmarkdown-cn.md
|
||
lang: zh-cn
|
||
---
|
||
|
||
Markdown 由 John Gruber 于 2004年创立. 它旨在成为一门容易读写的语法结构,并可以便利地转换成 HTML(以及其他很多)格式。
|
||
|
||
在不同的解析器中,Markdown 的实现方法有所不同。
|
||
此教程会指出哪些特征是通用,哪一些只对某一解析器有效。
|
||
|
||
- [HTML标签](#html-elements)
|
||
- [标题](#headings)
|
||
- [文本样式](#simple-text-styles)
|
||
- [段落](#paragraphs)
|
||
- [列表](#lists)
|
||
- [代码块](#code-blocks)
|
||
- [水平线分隔](#horizontal-rule)
|
||
- [链接](#links)
|
||
- [图片](#images)
|
||
- [杂项](#miscellany)
|
||
|
||
## HTML标签
|
||
Markdown 是 HTML 的父集,所以任何 HTML 文件都是有效的 Markdown。
|
||
|
||
```md
|
||
<!--这意味着我们可以在 Markdown 里使用任何 HTML 元素,比如注释元素,
|
||
且不会被 Markdown 解析器所影响。不过如果你在 Markdown 文件内创建了 HTML 元素,
|
||
你将无法在 HTML 元素的内容中使用 Markdown 语法。-->
|
||
```
|
||
|
||
## 标题
|
||
|
||
通过在文本前加上不同数量的hash(#), 你可以创建相对应的 `<h1>` 到 `<h6>` HTML元素。
|
||
|
||
```md
|
||
# 这是一个 <h1>
|
||
## 这是一个 <h2>
|
||
### 这是一个 <h3>
|
||
#### 这是一个 <h4>
|
||
##### 这是一个 <h5>
|
||
###### 这是一个 <h6>
|
||
```
|
||
对于 `<h1>` 和 `<h2>` 元素,Markdown 额外提供了两种添加方式。
|
||
|
||
```md
|
||
这是一个 h1
|
||
=============
|
||
|
||
这是一个 h2
|
||
-------------
|
||
```
|
||
|
||
## 文本样式
|
||
|
||
文本的斜体,粗体在 Markdown 中可以轻易实现。
|
||
|
||
```md
|
||
*此文本为斜体。*
|
||
_此文本也是。_
|
||
|
||
**此文本为粗体。**
|
||
__此文本也是__
|
||
|
||
***此文本是斜体加粗体。***
|
||
**_或者这样。_**
|
||
*__这个也是!__*
|
||
```
|
||
|
||
GitHub 也支持 Markdown,在 GitHub 的 Markdown 解析器中,我们可以使用删除线:
|
||
|
||
```md
|
||
~~此文本为删除线效果。~~
|
||
```
|
||
## 段落
|
||
|
||
Paragraphs are a one or multiple adjacent lines of text separated by one or
|
||
multiple blank lines.
|
||
段落由一个句子或是多个中间没有空行的句子组成,每个段落由一个或是多个空行分隔开来。
|
||
|
||
```md
|
||
这是第一段落. 这句话在同一个段落里,好玩么?
|
||
|
||
现在我是第二段落。
|
||
这句话也在第二段落!
|
||
|
||
|
||
这句话在第三段落!
|
||
```
|
||
|
||
如果你插入一个 HTML中的<br />标签,你可以在段末加入两个以上的空格,然后另起一段。
|
||
(译者注:试了一下,很多解析器,并不需要空两个空格,直接换行就会添加一个`<br />`)
|
||
|
||
```md
|
||
此段落结尾有两个空格(选中以显示)。
|
||
|
||
上文有一个 <br /> !
|
||
```
|
||
|
||
段落引用可由 `>` 字符轻松实现。
|
||
|
||
```md
|
||
> 这是一个段落引用。 你可以
|
||
> 手动断开你的句子,然后在每句句子前面添加 `>` 字符。或者让你的句子变得很长,以至于他们自动得换行。
|
||
> 只要你的文字以 `>` 字符开头,两种方式无异。
|
||
|
||
> 你也可以对文本进行
|
||
>> 多层引用
|
||
> 这多机智啊!
|
||
```
|
||
|
||
## 列表
|
||
无序列表可由星号,加号或者减号来创建
|
||
|
||
```md
|
||
* 项目
|
||
* 项目
|
||
* 另一个项目
|
||
|
||
或者
|
||
|
||
+ 项目
|
||
+ 项目
|
||
+ 另一个项目
|
||
|
||
或者
|
||
|
||
- 项目
|
||
- 项目
|
||
- 最后一个项目
|
||
|
||
```
|
||
|
||
有序序列可由数字加上点 `.` 来实现
|
||
|
||
```md
|
||
1. 项目一
|
||
2. 项目二
|
||
3. 项目三
|
||
```
|
||
|
||
即使你的标签数字有误,Markdown 依旧会呈现出正确的序号,
|
||
不过这并不是一个好主意
|
||
|
||
```md
|
||
1. 项目一
|
||
1. 项目二
|
||
1. 项目三
|
||
```
|
||
(此段与上面一模一样)
|
||
|
||
你也可以使用子列表
|
||
|
||
```md
|
||
1. 项目一
|
||
2. 项目二
|
||
3. 项目三
|
||
* 子项目
|
||
* 子项目
|
||
4. 项目四
|
||
```
|
||
|
||
你甚至可以使用任务列表,它将会生成 HTML 的选择框(checkboxes)标签。
|
||
|
||
```md
|
||
下面方框里包含 'x' 的列表,将会生成选中效果的选择框。
|
||
- [ ] 任务一需要完成
|
||
- [ ] 任务二需要完成
|
||
下面这个选择框将会是选中状态
|
||
- [x] 这个任务已经完成
|
||
```
|
||
|
||
## 代码块
|
||
|
||
代码块(HTML中 <code>标签)可以由缩进四格(spaces)
|
||
或者一个制表符(tab)实现
|
||
|
||
```md
|
||
This is code
|
||
So is this
|
||
```
|
||
|
||
在你的代码中,你仍然使用tab(或者四个空格)可以进行缩进操作
|
||
|
||
```md
|
||
my_array.each do |item|
|
||
puts item
|
||
end
|
||
```
|
||
|
||
内联代码可由反引号 ` 实现
|
||
|
||
```md
|
||
John 甚至不知道 `go_to()` 方程是干嘛的!
|
||
```
|
||
|
||
在GitHub的 Markdown(GitHub Flavored Markdown)解析器中,你可以使用特殊的语法表示代码块
|
||
|
||
<pre>
|
||
<code class="highlight">```ruby
|
||
def foobar
|
||
puts "Hello world!"
|
||
end
|
||
```</code></pre>
|
||
|
||
以上代码不需要缩进,而且 GitHub 会根据\`\`\`后指定的语言来进行语法高亮显示
|
||
|
||
## 水平线分隔
|
||
|
||
Horizontal rules (`<hr/>`) are easily added with three or more asterisks or
|
||
hyphens, with or without spaces.
|
||
水平线可由三个或以上的星号或是减号创建,它们之间可以带或不带空格
|
||
|
||
```md
|
||
***
|
||
---
|
||
- - -
|
||
****************
|
||
```
|
||
|
||
## 链接
|
||
|
||
Markdown 最棒的地方就是便捷的书写链接。把链接文字放在中括号[]内,
|
||
在随后的括弧()内加入url就可以了。
|
||
|
||
```md
|
||
[点我点我!](http://test.com/)
|
||
|
||
```
|
||
You can also add a link title using quotes inside the parentheses.
|
||
你也可以为链接加入一个标题:在括弧号内使用引号
|
||
你也可以在小括号内使用引号,为链接加上一个标题(title)
|
||
|
||
```md
|
||
[点我点我!](http://test.com/ "连接到Test.com")
|
||
```
|
||
相对路径也可以有
|
||
|
||
```md
|
||
[去 music](/music/).
|
||
```
|
||
|
||
Markdown同样支持引用形式的链接
|
||
|
||
<pre><code class="highlight">[<span class="nv">点此链接</span>][<span class="ss">link1</span>] 以获取更多信息!
|
||
[<span class="nv">看一看这个链接</span>][<span class="ss">foobar</span>] 如果你愿意的话。
|
||
|
||
[<span class="nv">link1</span>]: <span class="sx">http://test.com/</span> <span class="nn">"Cool!"</span>
|
||
[<span class="nv">foobar</span>]: <span class="sx">http://foobar.biz/</span> <span class="nn">"Alright!"</span></code></pre>
|
||
|
||
对于引用形式,链接的标题可以处于单引号中,括弧中或是忽略。引用名可以在文档的任意何处,
|
||
并且可以随意命名,只要名称不重复。
|
||
|
||
“隐含式命名” 的功能可以让链接文字作为引用名
|
||
|
||
<pre><code class="highlight">[<span class="nv">This</span>][] is a link.
|
||
|
||
[<span class="nv">this</span>]: <span class="sx">http://thisisalink.com/</span></code></pre>
|
||
|
||
但这并不常用
|
||
|
||
## 图片
|
||
图片与链接相似,只需在前添加一个感叹号
|
||
|
||
```md
|
||
![这是我图片的悬停文本(alt text)](http://imgur.com/myimage.jpg "可选命名")
|
||
```
|
||
|
||
引用形式也同样起作用
|
||
|
||
<pre><code class="highlight">![<span class="nv">这是我的悬停文本.</span>][<span class="ss">myimage</span>]
|
||
|
||
[<span class="nv">myimage</span>]: <span class="sx">relative/urls/cool/image.jpg</span> <span class="nn">"在此输入标题"</span></code></pre>
|
||
|
||
## 杂项
|
||
### 自动链接
|
||
|
||
```md
|
||
<http://testwebsite.com/> 与
|
||
[http://testwebsite.com/](http://testwebsite.com/) 等同
|
||
```
|
||
|
||
### 电子邮件的自动链接
|
||
|
||
```md
|
||
<foo@bar.com>
|
||
```
|
||
|
||
### 转义字符
|
||
|
||
```md
|
||
我希望 *将这段文字置于星号之间* 但是我不希望它被
|
||
斜体化, 这么做: \*这段置文字于星号之间\*。
|
||
```
|
||
|
||
### 键盘上的功能键
|
||
|
||
In GitHub Flavored Markdown, you can use a `<kbd>` tag to represent keyboard
|
||
keys.
|
||
在 GitHub 的 Markdown中,你可以使用 `<kbd>` 标签来表示功能键。
|
||
|
||
```md
|
||
你的电脑死机了?试试
|
||
<kbd>Ctrl</kbd>+<kbd>Alt</kbd>+<kbd>Del</kbd>
|
||
```
|
||
|
||
### 表格
|
||
|
||
表格只被 GitHub 的 Markdown 支持,并且有一点笨重,但如果你真的要用的话: (译者注:其实现在大部分markdown都已经支持)
|
||
|
||
```md
|
||
| 第一列 | 第二列 | 第三列 |
|
||
| :--------- | :------: | ----------: |
|
||
| 左对齐 | 居个中 | 右对齐 |
|
||
| 某某某 | 某某某 | 某某某 |
|
||
```
|
||
|
||
或者, 同样的
|
||
|
||
```md
|
||
第一列 | 第二列 | 第三列
|
||
:-- | :-: | --:
|
||
这太丑了 | 药不能 | 停
|
||
```
|
||
|
||
更多信息, 请于[此处](http://daringfireball.net/projects/Markdown/syntax)参见 John Gruber 关于语法的官方帖子,及于[此处](https://github.com/adam-p/Markdown-here/wiki/Markdown-Cheatsheet) 参见 Adam Pritchard 的摘要笔记。
|