zoukankan      html  css  js  c++  java
  • GitHub支持的Markdown语法 GitHub Flavored Markdown

    GitHub支持的Markdown语法,简称GFM。相比标准的Markdown(SM)语法,有少数几个区别,并添加了新的功能。
    本位参考 GitHub Flavored Markdown 撰写。有兴趣的话可以看原文。

    与标准Markdown的区别

    对文本中下划线的处理方式不同

    标准Markdown语法会把两个下划线 _ 之间的文本转换为斜体。GFM中会忽略这种语法设置。如果需要设置斜体,建议使用 * 实现。注意仅仅是单个下划线的情况下,多个下划线的语法还是正常的。比如下面单词:

    wow_great_stuff
    do_this_and_do_that_and_another_thing

    URL自动链接

    GFM中支持标准URL的自动链接,不需要使用标准Markdown的URL超链接语法。比如,输入下面URL

    http://example.com

    自动显示为
    http://example.com

    支持删除线

    GFM中添加了支持删除文本的语法,使用两个波浪线包含的文本,会自动添加删除线。(波浪线在键盘中没有直接输入的符号,所以慎用!)
    比如,输入下面文本:

    Strike Through

    显示效果如下:
    Strike Through

    代码块包含语法

    标准Markdown语法使用行开始四个空格表示引用代码块。GFM添见了新的代码块引用语法。只要使用 ```包含对应的代码块就可以实现代码引用。(相比标准的用法,这样可以避免代码对齐和空格输入的麻烦。)
    比如,

    ```
    int test(void)
    {
    int m = 0;
    }
    ```

    效果如下:

        int test(void)
        {
        	int m = 0;
        }
    

    支持语法高亮

    GFM的代码块支持语法高亮,只需要在 ```c++(代码块起始后面加上语言名称即可)。比如下面效果是可以实现的。

    #include <iostream>
    int main(int argc, char * argv[])
    {
    	int i = 0;
    	std::cout << i << std::endl;
    
    	return 0;
    }
    

    表格创建

    可以使用连字符 -来表示表格的第一行,可以用管道符 |表示表格的列。如下语法:

    First Header Second Header
    content cell content cell
    content cell content cell

    显示效果如下:

    First Header Second Header
    content cell content cell
    content cell content cell

    当然,实际使用中可以不用考虑表格每一行的字符对齐的要求。
    比如下面这种语法也是可以的:

    Name Description
    Help Display the help window.
    Close Closes a window

    效果如下:

    Name Description
    Help Display the help window.
    Close Closes a window

    表格单元项中也可以包含其他模块,比如超链接、斜体、加粗、删除线等。
    也可以使用冒号 : 表示表格中单元格的对齐方式。如下语法:

    Left-Aligned Center Aligned Right Aligned
    col 3 is some wordy text $1600
    col 2 is centered $12
    zebra stripes are neat $1

    显示效果如下:

    Left-Aligned Center Aligned Right Aligned
    col 3 is some wordy text $1600
    col 2 is centered $12
    zebra stripes are neat $1

    冒号位于左边表示当前列左对齐显示,冒号位于右边表示当前列右对齐显示,冒号在两边各一个,表示居中显示。

    任务列表

    任务列表是在列表上添加[]、[x](分别表示未完成、完成状态)。输入下面文本:

    - [x] @mentions, #refs, [links](), **formatting**, and <del>tags</del> are supported
    - [x] list syntax is required (any unordered or ordered list supported)
    - [x] this is a complete item
    - [ ] this is an incomplete item
    

    显示效果是这样的:

    • [x] @mentions, #refs, links, formatting, and tags are supported
    • [x] list syntax is required (any unordered or ordered list supported)
    • [x] this is a complete item
    • [ ] this is an incomplete item

    任务列表支持嵌套,但建议嵌套层数不超过2层。

    参考资料

    1. GitHub Flavored Markdown
    2. Writing on GitHub
    3. Mastering Markdown

    附件说明

    鉴于博客园的markdown客户端渲染效果比较差,有兴趣的可以直接到参考资料中查看实际渲染效果。

  • 相关阅读:
    堆栈学习
    需要阅读的书籍
    Rust Book Lang Ch.19 Fully Qualified Syntax, Supertraits, Newtype Pattern, type aliases, never type, dynamic sized type
    Rust Lang Book Ch.19 Placeholder type, Default generic type parameter, operator overloading
    Rust Lang Book Ch.19 Unsafe
    Rust Lang Book Ch.18 Patterns and Matching
    Rust Lang Book Ch.17 OOP
    Rust Lang Book Ch.16 Concurrency
    Rust Lang Book Ch.15 Smart Pointers
    HDU3966-Aragorn's Story-树链剖分-点权
  • 原文地址:https://www.cnblogs.com/tocy/p/github-flavored-markdown.html
Copyright © 2011-2022 走看看