Markdown 教程

作者: p4n | 来源:发表于2018-01-23 17:25 被阅读31次

    什么是 Markdown

    Markdown 是一种轻量级标记语言,它由 Aaron SwartzJohn Gruber 共同设计。它允许人们“使用易读易写的纯文本格式编写文档,然后转换成有效的 XHTML(或者 HTML)文档”。

    为什么要用 Markdown

    1. 干净的纯文本,简单易学,可读性强,让使用者可以更好地专注于文字创作本身。
    2. 跨平台;越来越多的网站支持 Markdown 语法,历史进程不可阻挡。
    3. 兼容 HTML 语法。

    基础语法

    标题

    n 级标题,以 n 个 # 号开头,支持一到六级标题。

    # 一级标题 test
    ## 二级标题 test
    ### 三级标题 test
    #### 四级标题 test
    

    实际效果:

    一级标题 test

    二级标题 test

    三级标题 test

    四级标题 test

    水平分割线

    连续三个或以上的中划线 - 或星号 * 或下划线 _(当前后都有段落时,前后最好都空出一行)。

    ---
    

    实际效果:


    换行

    在行尾输入两个或以上的空格,然后回车。

    引用块

    右尖括号('>') + 空格。根据排版渲染出来的实际效果,可以选择只在开头加一个或者每行前面都加一个。引用可以嵌套,根据嵌套层次加相应数量的符号即可。

    > 外层引用的第一行
    外层引用的第二行
    >> 内层嵌套引用的第一行
    内层嵌套引用的第二行
    > 
    > 外层引用的第三行。上面需要一个空行表示内层嵌套引用的结束,空行前面的('>')可有可无
    

    实际效果:

    外层引用的第一行
    外层引用的第二行

    内层嵌套引用的第一行
    内层嵌套引用的第二行

    外层引用的第三行。上面需要一个空行表示内层嵌套引用的结束,空行前面的('>')可有可无

    强调

    两侧各加上一个星号:*斜体*
    两侧各加上两个星号:**粗体**
    两侧各加上三个星号:***粗斜体***
    两侧各加上一个反引号:`高亮`
    两侧各加上两个波浪号:~~删除线~~
    

    实际效果:

    两侧各加上一个星号:斜体
    两侧各加上两个星号:粗体
    两侧各加上三个星号:粗斜体
    两侧各加上一个反引号:高亮
    两侧各加上两个波浪号:删除线

    列表

    有序列表

    1. 有序列表 1(数字 + . + 空格)
    2. 有序列表 2
    8. 有序列表 3(数字不对也没关系,渲染时会自动变成正确的序号)

    实际效果:

    1. 有序列表 1(数字 + . + 空格)
    2. 有序列表 2
    3. 有序列表 3(数字不对也没关系,渲染时会自动变成正确的序号)

    无序列表

    - 无序列表 1(中划线 + 空格)
      - 嵌套无序列表 1(前面加空格或一个 Tab)
        - 嵌套无序列表 2(前面加空格或一个 Tab)
    + 无序列表 2(加号 + 空格)
    * 无序列表 3(星号 + 空格)
    

    实际效果:

    • 无序列表 1(中划线 + 空格)
      • 嵌套无序列表 1(前面加空格或一个 Tab)
        • 嵌套无序列表 2(前面加空格或一个 Tab)
    • 无序列表 2(加号 + 空格)
    • 无序列表 3(星号 + 空格)

    链接

    行内式链接(推荐!易读,一眼就能看穿要跳到的链接地址):[Inline-style link](https://github.com/)
    参考式链接 1:[Reference-style link 1][777]
    参考式链接 2:[Reference-style link 2][Reference-Text]
    // 参考式链接的实际链接地址一般都放在文档最后的脚注再赋值,前面放上链接引用标签区分
    [777]: https://zh.wikipedia.org/wiki/Markdown
    [Reference-Text]: https://en.wikipedia.org/wiki/Markdown
    

    实际效果:

    行内式链接(推荐!易读,一眼就能看穿要跳到的链接地址):Inline-style link
    参考式链接 1:Reference-style link 1
    参考式链接 2:Reference-style link 2

    图片

    和链接相似,在链接的基础上,前方加一个感叹号 即可。

    ![图片名称](https:https://img.haomeiwen.com/i2457926/55f6d36f163899ce.png)
    

    实际效果:


    图片名称

    进阶语法

    表格

    | name | age | hobby |
    | :--- | ---: | :---: |
    | :--- 表示左对齐 | ---: 表示右对齐 | :---: 表示居中 |
    | Li lei  | 4 | sports |
    | Han Meimei | 55 | music |
    | Jack Ma | 666 | money |
    

    实际效果:

    name age hobby
    :--- 表示左对齐 ---: 表示右对齐 :---: 表示居中
    Li lei 4 sports
    Han Meimei 55 music
    Jack Ma 666 money

    代码块高亮

    开始和结束各使用三个反引号 ``` 包裹一段代码,并在开始的三个反引号 ``` 后指定一种语言(不同平台的代码高亮样式会有所不同)。

    ```Go
    package main

    import "fmt"

    func main() {
    fmt.Println("Hello, World!")
    }
    ```

    ``` javascript(部分平台可能需要先加一个空格再指定语言)
    var s = "JavaScript";
    console.log(s);
    ```

    实际效果:

    package main
    
    import "fmt"
    
    func main() {
      fmt.Println("Hello, World!")
    }
    
    var s = "JavaScript";
    console.log(s);
    

    复选框(简书貌似不支持渲染复选框,故不能展示实际效果)

    可用来实现 Todo List 功能。

    - [x] 已完成事项 1
    - [x] 已完成事项 2
    - [ ] 待办事项 1
    - [ ] 待办事项 2
    - [ ] 待办事项 3
    

    转义符

    反斜杠 \。当在文档中需要使用到 Markdown 的符号(比如 - # *),不想它被转义,则在符号前加上反斜杠即可。

    \*\*不想加粗\*\*
    

    实际效果:

    **不想加粗**

    特殊语法

    以下特殊语法考虑到不同平台的支持限制,故只说明语法,不再展示效果(实际效果可以在支持该语法的平台中测试)。

    脚注

    脚注[^keyword]
    // 脚注和参考式链接的赋值类似,一般都推荐放在文档的最后再赋值
    [^keyword]: 这是一个示例脚注。
    

    LaTeX 公式

    行内公式:$E=mc^2$
    块级公式:
    $$E=mc^2$$
    

    流程图

    ```flow
    st=>start: Start
    op=>operation: Your Operation
    cond=>condition: Yes or No?
    e=>end

    st->op->cond
    cond(yes)->e
    cond(no)->op
    ```

    更详细的流程图语法

    时序图

    ```sequence
    Alice->Bob: Hello Bob, how are you?
    Note right of Bob: Bob thinks
    Bob-->Alice: I am good thanks!
    ```

    更详细的时序图语法

    温馨提示

    • 各个平台对 Markdown 个别语法的支持可能会有其局限性(比如 LaTeX 公式),但基础语法都是通用的。
    • 不同平台实际渲染出来的效果会有细节上的差异,请根据实际情况稍作调整。
    • 调整样式的三大独门技巧:
      • 空格
      • 缩进
      • 换行

    工具

    推荐阅读

    (本文原载 PerfectForNi's Blog

    相关文章

      网友评论

        本文标题:Markdown 教程

        本文链接:https://www.haomeiwen.com/subject/tynsaxtx.html