`
idning
  • 浏览: 139401 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

对标记语言的一个非常全的总结

 
阅读更多

 

突然发现:

这本书应该也不错:

 

http://www.worldhello.net/gotgithub/index.html

 

7. 附录:轻量级标记语言

没有标记语言就没有Web和丰富多彩的互联网,但创造了Web的HTML语言并非尽善尽美,存在诸如难读、难写、难以向其他格式转换的问题。究其根源是因为HTML语言是一种“重”标记语言,对机器友好而并非对人友好。

下面这段HTML源码,非技术控阅读起来会遇到困难。

<html>
<head>
  <meta content='application/xhtml+xml;charset=utf-8' http-equiv='Content-type' />
  <title>轻量级标记语言</title>
</head>
<body>
  <h1 id='id1'>轻量级标记语言</h1>

  <p><strong>轻量级标记语言</strong> 是一种 <em>语法简单</em> 的标记语言。
  它使用易于理解的格式标记,没有古怪的 <code>&lt;标签&gt;</code> 。</p>

  <ul>
  <li>可以使用最简单的文本编辑器编辑。</li>
  <li>所见即所得,非技术控亦可直接阅读源码。</li>
  <li>可版本控制。</li>
  <li>实现单一源文件出版。</li>
  </ul>
<body>
</html>

同样的信息如果换用轻量级标记语言来表达,就非常直观了。如下所示:

轻量级标记语言
==============

**轻量级标记语言** 是一种 *语法简单* 的标记语言。
它使用易于理解的格式标记,没有古怪的 `<标签>` 。

- 可以使用最简单的文本编辑器编辑。
- 所见即所得,非技术控亦可直接阅读源码。
- 可版本控制。
- 实现单一源文件出版。

GitHub另人着迷的一个因素就在于GitHub为用户提供更为便捷地创建UGC(用户生成内容)的方法,其奥秘就在于使用了轻量级标记语言。无论是代码提交说明、提交评注、问题描述、项目的README文件、维基页面、用户主页和项目主页都可以使用Markdown[8]等轻量级标记语言来撰写。轻量级标记语言如Markdown是对人友好的标记语言,一些语法参照了我们写电子邮件时的习惯,即使第一次接触用轻量级标记语言撰写的文件,也可以毫无障碍地理解其中的内容。

虽然GitHub更倾向于使用Markdown标记语言[9],但很多地方也提供对其他轻量级标记语言的支持。包括为Python程序员所熟悉的reStructedText[10],为Ruby程序员所熟悉的Textile[11]、RDoc[12],为Perl程序员所熟悉的POD[13],为Emacs用户所熟悉的Org-mode[14],为维基用户所熟悉的MediaWiki[15]和Creole[16],以及可作为DocBook[17]前端的颇有前途的AsciiDoc[18]标记语言。

下面通过一张表格对几种常用的轻量级标记语言加以对照,供有不同标记语言偏好的用户参考,便于在GitHub某些不能随意更换标记语言而只能使用GFM(GitHub风格的Markdown)的场合可以自如地转换。

在“表7-1:常用轻量级标记语言对照”中,为使表格更加紧凑使用代号表示各种标记语言。例如:md为Markdown,gfm是GitHub风格的Markdown,rst为reStructedText,ttl为Textile,asc为AsciiDoc,org为Org-mode。

表7-1:常用轻量级标记语言对照 类别 标记语言 代码示例 输出示例 MD RST TTL ASC ORG
标题 md        
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题

输出略。

注解

Atx风格标题后面可接匹配的井号。

  rst      
一级标题
========

二级标题
--------

三级标题
^^^^^^^^

输出略。

注解

reST标题可用下列符号标记: # * = - ^ ~ ` : . _ + ” 等。

    ttl    
h1. 一级标题
h2. 二级标题
h3. 三级标题
h4. 四级标题
h5. 五级标题
h6. 六级标题
输出略。
      asc  
AsciiDoc 提供两种风格的标题。

文档标题
========

一级标题
--------

二级标题
~~~~~~~~

三级标题
^^^^^^^^

四级标题
++++++++

或者使用下面单行标题风格进行定义。

= 文档标题 =
== 一级标题 ==
=== 二级标题 ===
==== 三级标题 ====
===== 四级标题 =====

输出略。

注解

除了两种不同风格的标题外,还支持以点开始的块标题,块标题不生成目录。如:

.BlockTitle
        org
* 一级标题
** 二级标题
*** 三级标题

输出略。

注解

为支持更多标题级别需要设置 #+OPTIONS:H:6

段落 空行分段 md rst ttl* asc org
一个回车不分段,
本行续上行。

空行开始新段落。

一个回车不分段,°本行续上行。

空行开始新段落。

无空白续行   rst      
行尾转义字符让\
续行之间无空格。
行尾转义字符让续行之间无空格。
插入换行 md        
行尾两空格°°
保持换行。
行尾两空格
保持换行。
gfm   ttl    
GFM、Textile等
保持段落内换行符。
GFM、Textile等
保持段落内换行符。
  rst      
| 保持换行符,
| 本行不续行。
保持换行符,
本行不续行。
  rst      
.. role:: raw-html(raw)
   :format: html

用新定义的role插入换行,
:raw-html:`<br />`
本行不再续行。
用新定义的role插入换行, 
本行不再续行。
      asc  
行尾的空格和加号 +
保持换行。
行尾的空格和加号
保持换行。
        org*
行尾两个反斜线\\
保持段落内换行符。
行尾两个反斜线
保持段落内换行符。
        org
#+BEGIN_VERSE
 保持换行符,
 本行不续行。
#+END_VERSE
保持换行符,
本行不续行。
段落缩进 md rst      
邮件体段落缩进:

> 第一级段落缩进。
>
> > 第二级段落缩进。
>
> 返回一级段落缩进。

邮件体段落缩进:

第一级段落缩进。

第二级段落缩进。

返回一级段落缩进。

  rst      
Python式段落缩进:

  第一级段落缩进。

    第二级段落缩进。

  返回一级段落缩进。

Python式段落缩进:

第一级段落缩进。

第二级段落缩进。

返回一级段落缩进。

    ttl    
Textile式段落缩进:

bq. 本段缩进。

正常段落。

bq.. 注意缩进关键字后有两个点。

后续段落持续缩进,
直至遇到 p. 定义的段落。

p. 正常段落不再缩进。

Textile式段落缩进:

本段缩进。

正常段落。

注意缩进关键字后有两个点。

后续段落持续缩进,
直至遇到 p. 定义的段落。

正常段落不再缩进。

      asc  
四个或以上的下划线括起的区域为引言缩进。

[quote, author, source]
______________________________
引言...
______________________________

四个或以上的下划线括起的区域为引言缩进。

引言...

source

—— author

        org
Org-mode式段落缩进:

#+BEGIN_QUOTE
 段落缩进。
#+END_QUOTE

Org-mode式段落缩进:

段落缩进。
代码块 md        
四个空格缩进是代码块:

    $ printf "Hello, world.\n"

四个空格缩进是代码块:

$ printf "Hello, world.\n"
gfm        
三个连续的`或~等符号界定代码块。

```ruby
require 'redcarpet'
md = Redcarpet.new("Hello, world.")
puts md.to_html
```

三个连续的`或~等符号界定代码块。

require 'redcarpet'
md = Redcarpet.new("Hello, world.")
puts md.to_html
  rst      
双冒号后缩进为代码块。

::

  $ printf "Hello, world.\n"

还可声明语言类型实现语法加量。

.. code-block:: sh

   $ printf "Hello, world.\n"

双冒号后缩进为代码块。

$ printf "Hello, world.\n"

还可声明语言类型实现语法加量。

$ printf "Hello, world.\n"
    ttl    
以bc.或bc..指令开头的是代码块。

bc.. $ git init

$ git commit --allow-empty

p. 本段不再是代码块。

以bc.或bc..指令开头的是代码块。

$ git init

$ git commit --allow-empty

本段不再是代码块。

    ttl    
原样格式输出,相当于<PRE>标签。

pre..
           更上一层楼
欲穷千里目

p. 恢复正常段落。

原样格式输出,相当于<PRE>标签。

           更上一层楼
欲穷千里目

恢复正常段落。

      asc  
四个或更多减号括起代码块,
还可声明语言种类。

[source, c]
-----------------------------
#include <stdio.h>

int main() {
   printf("Hello World!\n");
   exit(0);
}
-----------------------------

四个或更多减号括起代码块, 还可声明语言种类。

#include <stdio.h>

int main() {
   printf("Hello World!\n");
   exit(0);
}
      asc  
正常段落。

  缩进段落相当于添加<pre>标签,
  等宽字体,原样输出。

缩进会和其他语法如列表相混淆,
可用 `[literal]` 显示声明。

[literal]
原样输出,
显示为等宽字体。

或用四个以上点组成的定界符标记。

..............................
原样输出,
显示为等宽字体。
..............................

正常段落。

缩进段落相当于添加<pre>标签,
等宽字体,原样输出。

缩进会和其他语法如列表相混淆, 可用[literal] 显示声明。

原样输出,
显示为等宽字体。

或用四个以上点组成的定界符标记。

原样输出,
显示为等宽字体。
        org
下面是代码块。

#+BEGIN_SRC ruby
  require 'redcarpet'
  md = Redcarpet.new("Hello, world.")
  puts md.to_html
#+END_SRC

下面是代码块。

require 'redcarpet'
md = Redcarpet.new("Hello, world.")
puts md.to_html
列表 无序列表 md rst      
* 星号、减号、加号开始列表。

  - 列表层级和缩进有关。

    + 和具体符号无关。

* 返回一级列表。
  • 星号、减号、加号开始列表。
    • 列表层级和缩进有关。
      • 和具体符号无关。
  • 返回一级列表。
    ttl    
* 星号开始无序列表。
** 更多星号代表不同层级。
*** 三级列表。
* 返回一级列表。
  • 星号开始无序列表。
    • 更多星号代表不同层级。
      • 三级列表。
  • 返回一级列表。
      asc  
- 1个减号开始列表。
* 或1到5个星号开始列表。
** 三级列表。
- 返回一级列表。
  • 1个减号开始列表。
    • 或1到5个星号开始列表。
      • 三级列表。
  • 返回一级列表。
        org
列表语法和Markdown、reST类似。
星号和列表语法冲突需缩进,不建议使用。

  - 减号、加号开始列表。

    + 列表层级和缩进有关。

      - 和具体符号无关。

  - 返回一级列表。

列表语法和Markdown、reST类似。 星号和列表语法冲突需缩进,不建议使用。

  • 减号、加号开始列表。
    • 列表层级和缩进有关。
      • 和具体符号无关。
  • 返回一级列表。
有序列表 md        
1. 数字和点开始有序列表。

   1. 注意子列表的缩进位置。

      1. 三级列表。
      1. 编号会自动更正。

   1. 二级列表,编号自动更正为2。

2. 返回一级列表。
  1. 数字和点开始有序列表。
    1. 注意子列表的缩进位置。
      1. 三级列表。
      2. 编号会自动更正。
    2. 二级列表,编号自动更正为2。
  2. 返回一级列表。
  rst      
1. 数字和点是一种编号方式。

   A. 大写字母编号。

      a. 小写字母编号。

2. 继续一级列表。

   (I) 大写罗马编号。

       i) 小写罗马编号。
  1. 数字和点是一种编号方式。
    1. 大写字母编号。
      1. 小写字母编号。
  2. 继续一级列表。
    1. 大写罗马编号。
      1. 小写罗马编号。
    ttl    
# 井号开始有序列表。
# 有序列表自动编号。
## 更多井号代表不同层级。
### 三级列表。
# 返回一级列表。
  1. 井号开始有序列表。
  2. 有序列表自动编号。
    1. 更多井号代表不同层级。
      1. 三级列表。
  3. 返回一级列表。
      asc  
1. 和reST一样支持多种编号方式。
a. 层级靠列表风格决定,而非缩进。
A. 三级列表。
b. 返回二级列表。
i) 罗马数字列表。
IX)  大写罗马。编号自动纠正。
2. 返回一级列表。

注解

还可以用1到5个点开始有序列表, 自动按数字、字母方式编号。如:

. 数字一级列表。
.. 字母二级列表。
... 罗马数字三级列表。
.... 大写字母四级列表。
..... 大写罗马五级列表。
  1. 和reST一样支持多种编号方式。
    1. 层级靠列表风格决定,而非缩进。
      1. 三级列表。
    2. 返回二级列表。
      1. 罗马数字列表。
        1. 大写罗马。编号自动纠正。
  2. 返回一级列表。
        org
1. 数字和点或右括号开始有序列表。

   1) 缩进即为子列表。

      1. 三级列表。
      1. 编号会自动更正。

   2) 二级列表。

2. 返回一级列表。
  1. 数字和点或右括号开始有序列表。
    1. 缩进即为子列表。
      1. 三级列表。
      2. 编号会自动更正。
    2. 二级列表。
  2. 返回一级列表。
列表续行、段落和代码块 md        
1. 列表项可以折行,
   对齐则自动续行。

2. 列表项可包含多个段落。

    空行开始的新段落必须缩进四个空格,
    段落才属于列表项。

3. 列表中的代码块要缩进8个空格。

        $ printf "Hello, world.\n"
  1. 列表项可以折行, 对齐则自动续行。

  2. 列表项可包含多个段落。

    空行开始的新段落必须缩进四个空格, 段落才属于列表项。

  3. 列表中的代码块要缩进8个空格。

    $ printf "Hello, world.\n"
    
  rst      
1. 列表项可以折行,
   对齐则自动续行。

2. 列表项可包含多个段落。

   空行开始的新段落,
   新段落要和列表项内容对齐。

3. 列表下的代码段注意对齐即可。

   ::

     $ printf "Hello, world.\n"
  1. 列表项可以折行, 对齐则自动续行。

  2. 列表项可包含多个段落。

    空行开始的新段落, 新段落要和列表项内容对齐。

  3. 列表下的代码段注意对齐即可。

    $ printf "Hello, world.\n"
    
      asc  
1. 列表项可以折行,
   对齐则自动续行。

2. 列表项可包含多个段落。
+
加号代表本段落属于列表。
+
--
两个减号包裹的块作为一整体
属于列表。

其中分段无需再使用加号。
--

3. 注意列表项内代码段前空行用加号替换。
+
--------
$ printf "Hello, world.\n"
--------
  1. 列表项可以折行, 对齐则自动续行。

  2. 列表项可包含多个段落。

    加号代表本段落属于列表。

    两个减号包裹的块作为一整体 属于列表。

    其中分段无需再使用加号。

  3. 注意列表项内代码段前空行用加号替换。

    $ printf "Hello, world.\n"
    
        org
1. 列表项可以折行,
   对齐则自动续行。

2. 列表项可包含多个段落。

   空行开始的新段落,
   新段落要和列表项内容对齐。

3. 列表下的代码段注意对齐即可。

   #+BEGIN_SRC bash
     $ printf "Hello, world.\n"
   #+END_SRC
  1. 列表项可以折行, 对齐则自动续行。

  2. 列表项可包含多个段落。

    空行开始的新段落, 新段落要和列表项内容对齐。

  3. 列表下的代码段注意对齐即可。

    $ printf "Hello, world.\n"
    
定义   rst      
git
  Simple and beautiful.

hg
  Another DVCS.

subversion
  VCS with many constrains.

  Why not Git?
git
Simple and beautiful.
hg
Another DVCS.
subversion

VCS with many constrains.

Why not Git?

    ttl    
- git := Simple and beautiful.
- hg := Another DVCS.
- subversion :=
VCS with many constrains.

Why not Git? =:
git
Simple and beautiful.
hg
Another DVCS.
subversion

VCS with many constrains.

Why not Git?

      asc  
git ::
    Simple and beautiful.
hg :: Another DVCS.
subversion :: VCS with many constrains.
              +
              Why not Git?
git
Simple and beautiful.
hg
Another DVCS.
subversion

VCS with many constrains.

Why not Git?

        org
- git :: Simple and beautiful.
- hg :: Another DVCS.
- subversion :: VCS with many constrains.

                Why not Git?
git
Simple and beautiful.
hg
Another DVCS.
subversion

VCS with many constrains.

Why not Git?

分隔线 md   ttl    
三条短线或以上显示为分隔线。

---
输出略。
  rst      
四条短线或以上显示为分隔线。

----
输出略。
      asc  
三个或更多的单引号作为分割线。

'''
输出略。
        org
五条短线或以上显示为分隔线。

-----
输出略。
字体 粗体和斜体 md        
这些都是 **粗体** 或 __粗体__ ,
这写都是 *斜体* 或 _斜体_ 。
这些都是 粗体 或 粗体 , 这些都是 斜体 或斜体 。
  rst      
这是 **粗体** ,这是 *斜体* 。

不留白的\ **粗体**\ 和\ *斜体*\ 效果。

这是 粗体 ,这是 斜体 。

不留白的粗体斜体效果。

    ttl    
这些都是 *粗体* 或 **粗体** ,
这些都是 _斜体_ 或 __斜体__ 。
这些都是 粗体 或 粗体 , 这些都是 斜体 或斜体 。
      asc  
这是 *粗体* ,
这是 _斜体_ 或 '斜体' 。

不留白的**粗体**和__斜体__效果。

这是 粗体 , 这是 斜体 或 斜体 。

不留白的粗体斜体效果。

        org
这是 *粗体* ,这是 /斜体/ 。
这是 粗体 ,这是 斜体 。
删除线 gfm        
~~删除线~~ 效果
删除线 效果
  rst      
.. role:: strike
   :class: strike

:strike:`删除线` 效果

不留白的\ :strike:`删除线`\ 效果

删除线 效果

不留白的删除线效果

    ttl    
-删除线- 效果
删除线 效果
      asc  
[line-through]#删除线# 效果

不留白的[line-through]##删除线##效果

删除线 效果

不留白的删除线效果

        org
+删除线+ 效果
删除线 效果
下划线 md        
<u>下划线</u> 效果
下划线 效果
  rst      
.. role:: ul
   :class: underline

:ul:`下划线` 效果

不留白的\ :ul:`下划线`\ 效果

下划线 效果

不留白的下划线效果

    ttl    
+下划线+ 效果
下划线 效果
      asc  
[underline]#下划线# 效果

不留白的[underline]##下划线##效果

下划线 效果

不留白的下划线效果

        org
_下划线_ 效果
下划线 效果
上标、下标 md        
* Water: H<sub>2</sub>O
* E = mc<sup>2</sup>
  • Water: H2O
  • E = mc2

注解

通过直接嵌入HTML代码实现。

  rst      
* Water: H\ :sub:`2`\ O
* E = mc\ :sup:`2`
  • Water: H2O
  • E = mc2
    ttl    
* Water: H ~2~ O
* E = mc ^2^
  • Water: H 2 O
  • E = mc 2
      asc  
* Water: H~2~O
* E = mc^2^
  • Water: H2O
  • E = mc2
        org
* Water: H_2 O
* E = mc^2
  • Water: H2 O
  • E = mc2
等宽字体 md     asc  
行内反引号嵌入代码,如: `git status` 。
行内反引号嵌入代码,如: git status 。
  rst      
两个连续反引号嵌入代码,如: ``git status`` 。

两个连续反引号嵌入代码,如: git status

注解

相当于 :literal:`git status` 。 只用一个反引号则相当于 :title-reference:`引言` 。

    ttl    
行内用字符@嵌入代码,如: @git status@ 。
行内用字符@嵌入代码,如: git status 。
      asc  
行内用字符+标识等宽字体,如: +git status+ 。
行内用字符+标识等宽字,如: git status
        org
行内用字符=或~嵌入代码,如:
=git status= 和 ~git st~ 。
行内用字符=或~嵌入代码,如: git status和 git st 。
引言   rst      
`Got GitHub` by Jiang Xin.
Got GitHub by Jiang Xin.
    ttl    
??Got GitHub?? by Jiang Xin.
Got GitHub by Jiang Xin.
清除标记空白   rst      
标记符号前后空白\
用\ **反斜线**\ 消除
标记符号前后空白用反斜线消除
链接 URL自动链接 gfm rst   asc org
* 网址 http://github.com/
* 邮件 me@foo.bar
文字链接 md        
* 访问 [Google](http://google.com "Search")
* 访问 [GitHub][1]
* 访问 [WorldHello][]

 [1]: http://github.com "Git host"
 [worldhello]: http://www.worldhello.net
  rst      
* 访问 `Google <http://google.com/>`_ 。
* 上面已定义,直接引用 google_ 链接。
* 链接地址在后面定义,如: GitHub_ 。
* 反引号括起多个单词的链接。如 `my blog`_ 。

.. _GitHub: http://github.com
.. _my blog: http://www.worldhello.net
  • 访问 Google
  • 上面已定义,直接引用 google 链接。
  • 链接地址在后面定义,如: GitHub
  • 反引号括起多个单词的链接。如 my blog
    ttl    
* 访问 "Google (Search)":https://google.com
* 访问 "GitHub (Git host)":github
* 访问 "WorldHello":wh

[github]http://github.com
[wh]http://www.worldhello.net
      asc  
* 访问 http://google.com[Google]
* 访问 link:/index.html[首页]
        org
* 访问 [[http://google.com][Google]]
内部跳转 md        
<a name="md-anchor" id="md-anchor"></a>

跳转至 [文内链接](#md-anchor) 。

跳转至 文内链接 。

  rst      
.. _fig1:

.. figure:: /images/github.png

   内部跳转图例

上面定义的位置,可以:

* 通过 fig1_ 跳转。
* 或者 `点击这里 <#fig1>`__ 跳转。
* 或者参见 :ref:`fig1`\ 。
../images/github.png

内部跳转图例

上面定义的位置,可以:

    ttl    
<a name="ttl-anchor" id="ttl-anchor"></a>

跳转至 "文内链接":#ttl-anchor 。

跳转至 文内链接 。

      asc  
两种方式在这儿定义内部链接。

[[alink1,链接标题1]]
anchor:alink2[链接标题2]

指向位置:

- 跳转至 <<alink1,内部链接1>>
- 跳转至 xref:alink2[]

两种方式在这儿定义内部链接。

指向位置:

        org
# <<org-anchor>>

跳转至 [[#org-anchor][文内链接]]

跳转至 文内链接 。

GitHub提交和问题链接 gfm        
* SHA: cea00609ca8441c82bc9760ae5eea...
* User@SHA ref: mojombo@cea00609ca84...
* User/Project@SHA:
  mojombo/god@cea00609ca8441c82bc976...
* \#Num: #1
* User/#Num: mojombo#1
* User/Project#Num: mojombo/god#1
  • SHA: cea00609ca8441c82bc...
  • User@SHA ref: mojombo@cea00609ca8...
  • User/Project@SHA: mojombo/god@cea0060... [19]
  • #Num: #1
  • User/#Num: mojombo#1
  • User/Project#Num: mojombo/god#1 [20]
脚注   rst      
reST脚注的多种表示法:

* 脚注即可以手动分配数字 [1]_ ,
  也可以使用井号自动分配 [#]_ 。

* 自动分配脚注 [#label]_ 也可以用
  添加标签形式 [#label]_ 多次引用。

* 还支持用星号嵌入符号式脚注,
  如这个 [*]_ 和 这个 [*]_ 。

* 使用单词做标识亦可 [CIT2012]_ 。


.. [1] 数字编号脚注。
.. [#] 井号自动编号。
.. [#label] 井号添加标签以便多次引用。
.. [*] 星号自动用符号做脚注标记。
.. [*] 星号自动用符号做脚注标记。
.. [CIT2012] 单词或其他规定格式。

reST脚注的多种表示法:

  • 脚注即可以手动分配数字[1], 也可以使用井号自动分配[2]
  • 自动分配脚注[3]也可以用添加标签形式[3]多次引用。
  • 还支持用星号嵌入符号式脚注, 如这个[*]和 这个[†]
  • 使用单词做标识亦可[CIT2012]
[1] 数字编号脚注。
[2] 井号自动编号。
[3] (12) 井号添加标签以便多次引用。
[*] 星号自动用符号做脚注标记。
[†] 星号自动用符号做脚注标记。
[CIT2012] 单词或其他规定格式。
    ttl    
Textile是Redmine [4] 内置的标记语言。

fn4. http://goo.gl/rGyvs

Textile是Redmine [4] 内置的标记语言。

[4] http://goo.gl/rGyvs
      asc  
- 内联方式 footnote:[此处定义] 定义的脚注。
- 定义脚注时可用一个ID标记
  footnoteref:[note6, 可多次引用] 。
- 引用已定义的脚注 footnoteref:[note6] 。
  • 内联方式 [5] 定义的脚注。
  • 定义脚注时可用一个ID标记 [6] 。
  • 引用已定义的脚注 [6] 。
[5] 此处定义
[6] (12) 可多次引用
        org
Twitter widget in Org homepage[fn:org]
cannot be accessed in Mainland China, which
caused the homepage load very slowly. >:[

[fn:org] The link is: http://orgmode.org

Twitter widget in Org homepage [7]cannot be accessed in Mainland China, which caused the homepage load very slowly. >:[

[7] The link is: http://orgmode.org
图片 md        
![GitHub](/images/github.png "Logo")

GitHub Logo: ![GitHub][logo]

[logo]: /images/github.png "Logo"
../images/github.png

GitHub Logo: logo

  rst      
.. figure:: /images/github.png
   :width: 32

   图:GitHub Octocat

* GitHub Logo: |octocat|
* 带链接的图片:
  |imglink|_
* 下图向右浮动。
   .. image:: /images/github.png
      :align: right

.. |octocat| image:: /images/github.png
.. |imglink| image:: /images/github.png
.. _imglink: https://github.com/
../images/github.png

图:GitHub Octocat

  • GitHub Logo: octocat

  • 带链接的图片: imglink

  • 下图向右浮动。
    ../images/github.png
    ttl    
* GitHub Logo: !/images/github.png(Logo)!
* 带链接的图片:
  !/images/github.png!:https://github.com/
* 下图向右浮动。
  !>/images/github.png!
  • GitHub Logo: icon

  • 带链接的图片: imglink2

  • 下图向右浮动。
    ../images/github.png
      asc  
.GitHub Octocat
image::/images/github.png["Logo",width=32]

- GitHub Logo:
  image:/images/github.png["Logo"]
../images/github.png

图:GitHub Octocat

  • GitHub Logo: ascimg
        org
* GitHub Logo: [[file:/images/github.png]]
* 带链接的图片:
  [[https://github.com/][file:/images/...]]
  • GitHub Logo: orgimg
  • 带链接的图片: orgimglink
表格 gfm        
head1 | head2  | head2
------|:------:|------:
left  | center | right
left  | center | right
head1 head2 head3
left center right
left center right
  rst      
.. table:: 示例表格
   :class: classic

   +---------+--------+--------+
   | head1   | head2  | head3  |
   +=========+========+========+
   |         | cell   | cell   |
   | rowspan +--------+--------+
   |         | * colspan       |
   |         | * another line  |
   +---------+-----------------+
示例表格 head1 head2 head3
rowspan cell cell
  • colspan
  • another line
    ttl    
|_. head1 |_. head2 |_. head3 |
|/3. rowspan | cell  | cell |
|\2. colspan |
| cell | cell |
示例表格 head1 head2 head3
rowspan cell cell
colspan
cell | cell
      asc  
[width="50%"]
|============================
|1 |2 |3 |4
|5 2.2+|6 .3+|7
|8
|9 2+|10
|============================
1 2 3 4
5 6 7
8
9 10
        org
#+CAPTION: 示例表格
#+LABEL: tblref
   | head1 | head2 | head3 |
   |-------+-------+-------|
   | cell  | cell  | cell  |
   | cell  | cell  | cell  |
示例表格 head1 head2 head3
cell cell cell
cell cell cell
其他 混用HTML md        
<div style="background:#bbb;">
  HTML块中不能混用 **标记语法**
</div>
输出略。
      ttl    
<div style="background:#bbb;">
  HTML块中可以混用 **标记语法**
</div>
输出略。
禁止语法解析   rst      
反斜线作为转义字符,\
禁止对后面 \*字符\* 做语法解析。
反斜线作为转义字符,禁止对后面 *字符* 做语法解析。
    ttl    
用 notextile 标记的段落不进行语法解析。

notextile. 不进行 *语法解析* 。

用 notextile 标记的段落不进行语法解析。

不进行 *语法解析* 。

注释   rst      
.. 注释

..
   缩进内容也是注释
无输出。
      asc  
/////////////////
四个或更多的斜线包围起来的
文字块是注释,被忽略。
/////////////////
无输出。
        org
# 行首井号是注释。

  #+ 缩进行首用 ``#+`` 标记为注释。


  #+BEGIN_COMMENT
   块注释
   ...
  #+END_COMMENT
无输出。

注解

部分标记语言代号后添加了星标,代表该标记语言相应的语法实现稍有区别,或者GitHub的具体实现和标准有出入。

分享到:
评论
1 楼 carvink 2016-09-18  
引用
你好

相关推荐

    wap标记语言规范

    总结来说,WAP标记语言规范为移动开发者提供了一种在资源有限的环境下构建交互式应用的途径。理解和熟练运用WML和WMLScript,将有助于开发出更加贴近用户需求的移动应用,提升用户体验。随着技术的发展,尽管现代...

    可扩展标记语言(XML)

    - **历史**: XML是在1996年由W3C的XML工作组开发出来的,它实际上是SGML(Standard Generalized Markup Language,标准通用标记语言)的一个简化版本。SGML自1986年以来已成为国际标准。 - **特性**: - **便携性**:...

    无线标记语言(WML)基础之WMLScript基础

    WMLScript作为WML的一个组成部分,是一种脚本语言,它基于ECMAScript标准,并扩展了特定于无线环境的功能。 WMLScript在WML中的作用是提供动态内容处理能力,使开发者能够编写更复杂的交互式应用和服务。通过结合...

    XML(可扩展标记语言)基本应用[总结].pdf

    XML,即可扩展标记语言(Extensible Markup Language),是一种用于描述数据的语言,它不是预定义的,而是允许用户自定义标记来表示数据。XML源于SGML(Standard Generalized Markup Language,通用标识语言标准),...

    HTML(HyperText Mark-up Language)即超文本标记语言

    `&lt;body&gt;` 和 `&lt;/body&gt;` 定义了网页主体的内容,其中包括一个一级标题 `&lt;h1&gt;`。 #### 三、HTML常用标签详解 - **标题标签** (`&lt;h1&gt;` 至 `&lt;h6&gt;`): 这些标签用于定义不同级别的标题,`&lt;h1&gt;` 代表最重要的标题,而 `...

    HTML标签大全,HTML标记语言

    * 链接到锚点:*"&gt;,如果锚点在另一个档案 * 链接到目的视框:*"&gt; * 设定锚点:*"&gt; * 图形: * 图形看齐方式:|BOTTOM|MIDDLE&gt; * 取代文字:*"&gt;,如果没有办法显示图形则显示此文字 * 点选图:,需要 CGI 程式 * ...

    即用即查—XML数据标记语言参考手册 .pdf

    ### XML数据标记语言核心知识点概览 #### 一、XML基础知识 **XML**(Extensible Markup Language,可扩展标记语言)是一种标记语言,类似于HTML,但更加强调数据的结构和内容,主要用于存储和传输数据。 ##### 1.1...

    asn.1抽象标记语言总结(per和oer编码规则)

    ASN.1:抽象标记语言 PER:压缩编码规则(Packed Encoding Rules),ASN.1编码规则之一 OER: 八位字节编码规则(Specification of Octet Encoding Rules),ASN.1编码规则之一

    html标记总结

    - **`&lt;form&gt;`**:定义一个用户可以输入数据并提交到服务器的区域。 - **`&lt;input&gt;`**:定义输入字段,如文本框、复选框、按钮等。 - **`&lt;textarea&gt;`**:多行文本输入区域。 - **`&lt;select&gt;`** 和 **`&lt;option&gt;`**:下拉...

    网络游戏-标记语言文档的处理方法及浏览器和网络操作系统.zip

    总结起来,"标记语言文档的处理方法及浏览器和网络操作系统.pdf"文档很可能是关于如何在现代网络环境中高效、安全地处理和显示标记语言内容的深入探讨,涵盖了从基本的HTML解析到复杂的网络操作系统集成的各种技术...

    WAP建站进阶-WML标记语言和WMLScript脚本语言

    ### WAP建站进阶——WML标记语言与WMLScript脚本语言 #### 一、WAP工具包概述 WAP(Wireless Application Protocol,无线应用协议)是一种为移动设备提供互联网服务的标准协议,其目的在于使手机和其他移动设备...

    html5 超文本标记语言

    HTML5是超文本标记语言的最新版本,它在20世纪末HTML4的基础上引入了许多创新元素,以适应网络技术的发展和提升网页应用的体验。HTML5不仅关注文档的呈现,更强调网页的结构性和交互性,旨在提高文档质量和普及科技...

    ### 这是一篇对HTML(超文本标记语言)的详细概述

    HTML,全称为HyperText Markup Language,即超文本标记语言,是一种用于创建网页的标准标记语言。它由一系列的标签(tag)组成,每个标签都有特定的功能,用于描述网页上的不同部分或内容,并告诉浏览器如何显示这些...

    HTML知识点总结(脑图)

    HTML 指的是超文本标记语言 (Hyper Text Markup Language)。是用来描述网页的一种语言。 - HTML 不是一种编程语言,而是一种标记语言,该脑图总结了HTML基础的知识点

    wml标记及语法.doc

    总结来说,WML 是一种专为无线设备设计的标记语言,它基于 XML 并具有自己的语法规则。WML 文件由卡片组成,每个卡片包含各种元素,如文本、链接和表单,用于构建无线应用的用户界面。理解 WML 的基本结构和语法规则...

Global site tag (gtag.js) - Google Analytics