MarkDown Basics


[TOC]

标题

  • Setext形式: 以底线的形式
    • = 表示最高阶标题
    • - 表示次阶标题
  • Atx形式: 在行首插入1-6各#表示1-6阶标题

  • [TOC]可以生成标题链接目录(兼容性不好,不是标准实现)

段落

  • 类似html格式, md忽略文件中的换行符
  • 如果需要新开段落, 手动使用空行(可包含不可见<space> <tab>字符)

区块引用

  • 使用email形式的>标识
  • 可嵌套, 根据层次添加不同数量的>
  • 其中可使用其他形式的语法, 如: 标题, 列表, 代码区块
  • 也可以只给整个”段落”第一行加上>

修辞和强调

  • *_包裹输出为html标签<em>
  • **__包裹则是输出为html标签<strong>
  • ~~包裹输出<del>(删除线)
  • 符号两边如果有空格则会当作普通符号
  • 可以\*, \_转义的方式输出普通符号

列表

  • 无序列表: -, +, *都可以输出无序列表
  • 有序列表: 数字接半角句点.
  • 列表项目标记一般放在最左边, 也可以缩进, 最多3个空格, 项目 标记后面一定要<space><tab>
  • MD其实不关心有序列表中数字的顺序正确性, 只是单纯的输出为 <li>, 如果需要避免将1.类似输出为有序列表, 需要转义 1\.
  • 在列表项目增加空行, 会把列表内容用<p>包裹, 列表 项目可以包含多个段落, 此时列表内段落间也需要空行分隔, 且 项目下所有段落都需要缩进<tab>或4个<space> (这里的段落是指MD意义上的一段, 不是源文件的一段, 即缩进 也只是需要在MD意义上一段的第一行缩进, 当然所有行都缩进 比较美观)
  • 在列表项目内添加引用, >需要缩进, 而代码块本身就需要 缩进, 所以需要缩进2个<tab>或8个<space>

链接

  • 行内形式: 直接在链接内容之后用括号添加链接
       [link_content](link "title(optional)")
    
  • 参考形式: 为链接定义一个名称, 然后可以在其他地方给出地址
       [link_content][id]
       [id]: link "title(optional)"
       [id]: link 'title'
       [id]: link (title)
    

参考形式中

  • 三种定义title的方式都可以
  • id可以包括空格, 不区分大小写
  • 隐式链接标记功能可以省略id, 此时链接标记(id)视为等同 于链接内容

自动链接

  • <link>: 自动转换为链接, 内容就是链接地址
  • <email>: 自动转换为邮箱链接

图片

  • 行内形式: ![alt text](link "title(optional)")
  • 参考形式: ![alt text][id] [id]: link "title(optional)"

代码

  • 段落内代码: 使用`包裹回输出html标签<code>
  • 代码区块
    • 每行缩进<tab>或者4个<space>
    • 3个`包裹, 后面还可以接代码类型, 可能会有代码高亮
1
2
def fn():
print('hello markdown')
def fn():
    print('hello markdown')

表格

  • |: 纵向边界
  • -: 表头和内容边界, 可用于设置对齐
    • :----: 左对齐
    • -----: 默认左对齐
    • :---:: 居中对齐
    • ----:: 右对齐

特殊字符

对于html中特殊字符<(起始标签)和&(标记html实体)会自动 “智能”转义. 如果使用的&字符是html实体字符的一部分, 那么会 保留原状, 否则会转换为&amp

如: 输入©会被保留, 直接显示为copyright字符

分隔线

一行中3个以上的-, *, _可以建立分隔线, 符号之间可以有 空格, 不能有其他东西

其他

  • 注脚: 在注脚文字后接[^footer1]footer1, 然后在其他 地方[^footer1]: 注脚内容
Author

UBeaRLy

Posted on

2019-03-21

Updated on

2021-07-16

Licensed under

Comments