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
支持删除线
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
tagsare supported - [x] list syntax is required (any unordered or ordered list supported)
- [x] this is a complete item
- [ ] this is an incomplete item
任务列表支持嵌套,但建议嵌套层数不超过2层。
参考资料
附件说明
鉴于博客园的markdown客户端渲染效果比较差,有兴趣的可以直接到参考资料中查看实际渲染效果。
GitHub支持的Markdown语法 GitHub Flavored Markdown的更多相关文章
- 基于MarkDown和Github图床以及SourceTree的一站式文章编辑和发布
标题: 基于MarkDown和Github图床以及SourceTree的一站式文章编辑和发布 作者: 梦幻之心星 sky-seeker@qq.com 标签: [MarkDown,Github,图床,S ...
- 记录下 Markdown 语法
github上常用markdown语法:Mastering Markdown 目录 0. 目录 1. 锚点 2.标题 3.超链接 3.1.行内式 3.2.自动链接 4.列表 4.1.有序列表 4.2. ...
- 使用 java 实现一个简单的 markdown 语法解析器
1. 什么是 markdown Markdown 是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛使用.看到这里请不要被「标记」.「语言」所迷惑,Markdown 的 ...
- Markdown语法及html内嵌
目录 1.Markdown介绍 2.Markdown语法介绍 3.内嵌html语法 之前看到很多大佬博客写的特别漂亮,非常羡慕,他们是怎么排版的呢?作为一个小白,学习使我快乐....终于在不断摸索 ...
- Markdown语法与入门
Markdown语法与入门 Markdown 是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛使用.看到这里请不要被「标记」.「语言」所迷惑,Markdown 的 ...
- Pandoc中的Markdown语法
概述 Pandoc中支持扩展修订版本的Markdown语法 使用pandoc中支持的Markdown语法用 -f markdown 使用标准Markdown语法用 -f markdown_strict ...
- markdown 语法规则
markdown 语法规则 参考Markdown--入门指南 也可以参考这篇 Markdown: Basics (快速入门) 一级标题 二级标题 三级标题 列表 无序 1 2 3 有序 1 2 3 需 ...
- 最全的Markdown语法
目录 Markdown语法 多级标题 引用与注释 插入代码 行内代码 代码段 图片 超链接 行内超链接 参数式超链接 字体 表格 分割线 多级列表 无序列表 有序列表 多选框 LaTeX公式 行内La ...
- Markdown 语法和代码高亮
安装 Python Markdown 安装命令 pip install markdown 视图中渲染 Markdown blog/views.py import markdown from djang ...
随机推荐
- Python实现鸢尾花数据集分类问题——基于skearn的SVM
Python实现鸢尾花数据集分类问题——基于skearn的SVM 代码如下: # !/usr/bin/env python # encoding: utf-8 __author__ = 'Xiaoli ...
- NFS安装及优化过程--centos6.6
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...
- DHCP工作过程的六个主要步骤
对于学习DHCP来说,很重要的一部分就是对于DHCP工作过程的理解. DHCP分为两个部分:一个是服务器端,另一个是客户端. 所有客户机的IP地址设定资料都由DHCP服务器集中管理,并负责处理客户端的 ...
- 老男孩linux实战培训初级班第三次课课前考试题
################################################################ 本文内容摘录于老男孩linux实战运维培训中心考试题 如有转载,请务必 ...
- MySQL高可用性大杀器之MHA
MySQL高可用性大杀器之MHA 提到MySQL高可用性,很多人会想到MySQL Cluster,亦或者Heartbeat+DRBD,不过这些方案的复杂性常常让人望而却步,与之相对,利用MySQL ...
- Yslow---一款很实用的web性能测试插件
YSlow可以对网站的页面进行分析,并告诉你为了提高网站性能,如何基于某些规则而进行优化. YSlow可以分析任何网站,并为每一个规则产生一个整体报告,如果页面可以进行优化,则YSlow会列出具体的修 ...
- 自由是有代价的:聊聊这几年尝试的道路 要想生活好,别看哲学书和思想书。简单看看可以,看多了问题就大了。还是要去研究研究些具体的问题。别jb坐在屋子里,嘴里念着海子的诗,脑袋里想康德想的事情,兜里屁都没有,幻想自己是大国总理,去想影帝是怎么炼成的。
自由是有代价的:聊聊这几年尝试的道路 现在不愿意写过多的技术文章了,一点是现在做的技术比较偏,写出来看的人也不多,二来是家庭事务比较繁多,没以前那么有时间写了.最近,园子里多了一些写经历的文章,我也将 ...
- C++下的命名空间
转自:http://blog.chinaunix.net/uid-24219701-id-2105573.html 实例: #include <iostream> using namesp ...
- hibernate的findByExample 外键参数查询解决方案
用了这么长时间的hibernate/spring,如果不是今天用的findByExample方法到现在还不知道findByExample的机制.惭愧 Class User{String usernam ...
- SQL Server中临时表与表变量的区别
我们在数据库中使用表的时候,经常会遇到两种使用表的方法,分别就是使用临时表及表变量.在实际使用的时候,我们如何灵活的在存储过程中运用它们,虽然它们实现的功能基本上是一样的,可如何在一个存储过程中有时候 ...