历史

Markdown是一种轻量级标记语言,创始人为约翰·格鲁伯(英语:John Gruber)。它允许人们“使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文档”,

自从GitHub流行以来,Markdown作为一种轻量级标记语言就深受程序员的喜爱,上手也是非常简单,接下来我们就来分析一下为什么markdown为什么能被一向挑剔的程序员们爱不释手呢?

语法

(注:Markdown发展至今衍生出一些细节上有些许差异的版本,这里以GitHub 的Flavored Markdown(同样在标准Markdown语法上有一些修改) 语法为标准讨论,谁叫咱是程序员呢..)


head


Markdown支持多级标题对应不同的字体大小,例如:

# Markdown
## Markdown
### Markdown
#### Markdown
##### Markdown
###### Markdown

所对应的显示内容为:

Markdown

Markdown

Markdown

Markdown

Markdown
Markdown

最多可以支持6个,而且需要注意的是,这里的#开头的文字或标题必须另起一行,#和文字中间必须有空格,不然GitHub的README无法识别。

同时,有些爱思考的同学就会说,要是我用七个#,会不会将前六个#作为字体符号,最后一个在文本中显示呢。例如:

####### Markdown

而结果是:

####### Markdown

显然,Markdown并没有对其进行转化。


除了用#标识字体(标题)大小,还有一种方法:

Markdown
=========
Markdown
---------

所对应的显示内容为:

Markdown

Markdown


这里的字体只分为两级,大号的字体下一行用"="号隔开,略小一号的字体用"-"(短横线)隔开,"="或"-"的数量最好是三个以上,但是有些版本可以为一个,通常的习惯为与字体等长。


2、段落和换行


分隔线

在实际的文本显示中,为了使文本更加清晰明了,可以适当地加入一些分隔线

***
---

分隔线由***或者---表示,一般是三个连续的符号,单行开头,也可以多于三个


换行

换行可以使用一个或者多个空行来另起一个段落,注意是一个空行,而不是简单地用回车来另换一行,示例:

第一行

第二行
第三行

所对应的显示内容为:

第一行
第二行第三行

很明显,第二行和第三行连到了一起,那如果我就是不喜欢隔一个空行,非要以回车来换行呢,考虑到部分强迫症晚期患者,Markdown有另一种换行的方法:

在上一行的行尾添加两个空格,然后以回车来换行,建议用空行换行


插入文本引用

如果我需要将一段文本与正文文本相区分,比如示例,引用文章之类的,怎么做呢?

答案是先换行(隔一个或者多个空行),然后新行以tab键开头,键入文本,示例:

正文

    引用文本示例

所对应的显示内容为:

正文

引用文本示例。

列表

无序列表

无序列表k而已使用* + -来标识,注意在字符之后要添加一个空格,示例:

* Markdown1
+ Markdown2
- Markdown3

所对应的显示内容为:

  • Markdown1
  • Markdown2
  • Markdown3

结果显示,这三种符号是可以交叉使用的


有序列表

有序列表需要添加一个相应的'数字'+'.'+'空格'来标识,示例:

1. Markdown1
2. Markdown2
3. Markdown3

所对应的显示内容为:

  1. Markdown1
  2. Markdown2
  3. Markdown3

代码

如何把代码贴上去呢?很简单,将代码用两个`包含起来,这个符号不是单引号,而是反引号,键盘左上角那个

`print "hello world" `

所对应的显示内容为

print "hello world"

同时也可以用上面提到的引用文本的方法来贴代码


链接

添加链接的方法为:

[博客](https://www.cnblogs.com/downey-blog/)

所对应的显示内容为:

博客

,点击高亮字体即可进入相应链接


设置跳转

在写文档时,经常会需要在某段文本上设置链接,跳转到另一段文本中,最常见的是注脚,对于这些注脚,并不方便写在正文中,但是写在文档末尾又没头没尾的,我们就可以设置一个连接跳转。它的语法是这样的:

在需要跳转的文本处添加:

    [跳转到末尾](#jump1)

在跳转目的地添加:

    <span id="jump1">测试跳转的文本</span>

所对应的效果为:跳转到末尾

注意[]中包含显示的说明文本,而(#jump1)相当于定义一个匹配对象。

在跳转目的地则是XXX的格式,jump1对应上述的匹配对象,而XXX是需要添加的文本。

插入图片

插入图片的方法与插入链接相比仅仅在前面多了一个 "!",即:

![pic](https://raw.githubusercontent.com/linux-downey/bloc_test/master/picture/Makedown/Makedown.png)

所对应的显示内容为:

值得注意的是,目前还并没有一种兼容性比较好的方法将图片内嵌到文本中,一般的做法是在文本内引用图片的链接,但是在这种做法下,如果图片资源一旦迁移,将会额外增加修改成本


修改图片大小

如果要修改图片大小,可以使用HTML的处理方式来插入图片,并设置固定大小

<img src="https://raw.githubusercontent.com/linux-downey/bloc_test/master/picture/Makedown/Makedown.png" width=100 height=60 />

所对应的显示内容为:

同时,也可以按照比例来设置图片大小

<img src="https://raw.githubusercontent.com/linux-downey/bloc_test/master/picture/Makedown/Makedown.png" width="%50" height="%50" />

所对应的显示内容为:


测试跳转的文本


好了,关于markdown的基本语法和使用介绍就到此为止啦,如果朋友们对于这个有什么疑问或者发现有文章中有什么错误,欢迎留言

原创博客,转载请注明出处!

祝各位早日实现项目丛中过,bug不沾身.

(完)

github markdown语法及使用的更多相关文章

  1. Github readme语法-- markdown

    README 该文件用来测试和展示书写README的各种markdown语法.GitHub的markdown语法在标准的markdown语法基础上做了扩充,称之为GitHub Flavored Mar ...

  2. GitHub上Markdown语法的高级应用

    高级语法格式 本篇的内容来源于Github使用高级格式写作.如果在观看时有什么问题,可以直接查阅源文件.另外需要说明的是Git对Markdown的支持增加了一些扩展功能,因此在Git上可以渲染的Mar ...

  3. GitHub支持的Markdown语法 GitHub Flavored Markdown

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

  4. Markdown github 风格语法

    某些效果cnblog无法支持,见 https://github.com/tanghammer/note/blob/master/Markdown%20github%E9%A3%8E%E6%A0%BC% ...

  5. GitHub上README写法暨markdown语法解读

    原文: GitHub上README写法暨markdown语法解读 自从开始玩GitHub以来,就 越来越 感觉它有爱.最近对它的 README.md 文件颇为感兴趣.便写下这贴,帮助更多的还不会编写R ...

  6. 【03】github的markdown语法

    [03]github的markdown语法 https://guides.github.com/features/mastering-markdown/(下图)(魔芋:已录入)   http://ma ...

  7. GitHub 风格的 Markdown 语法

    GitHub 风格的 Markdown 语法 [译] GitHub 风格的 Markdown 语法 Original: GitHub Flavored Markdown - GitHub Help T ...

  8. 2015年12月03日 GitHub入门学习(五)Markdown语法简介

    Markdown一种标记语言,语法简洁,不像Word或Pages有大量排版.字体设置.常用的标记符号不超过十个.被大量写作爱好者.撰稿人.作家所青睐. 一.Markdown的优点 专注你的文字内容而不 ...

  9. 基于 Cmd MarkDown 的 markdown 语法学习

    首先我要打一个属于干货的广告:CmdMarkDown 是非常好用的markdown编辑器软件,支持全平台,由作业部落出品,分为客户端与WEB端两种使用场景. 本篇博客学习的markdown语法都是基于 ...

随机推荐

  1. win10找不到hosts文件(设置显示隐藏文件也找不到)解决方法

    Win10系统中的Hosts文件有很多作用,屏蔽网址,指定解析,跳转等等,所以我们经常会通过编辑Hosts文件来达成一些目的,一般来说hosts文件是隐藏的,我们需要显示受保护的文件才可以,但是有一些 ...

  2. OutOfMemoryError异常——Java堆溢出。

    https://blog.csdn.net/en_joker/article/details/79726975 (将堆的最小值-Xms参数与最大值-Xmx参数设置为一样即可避免堆自动扩展),通过参数- ...

  3. 采用EasyDSS视频点播服务器搭建企业私有化的音视频多媒体、短视频、视频服务网站与管理后台

    最近有越来越多的用户咨询关于视频点播的功能,主要需求就是集中于如何搭建专属的私有化视频点播平台: 实现的功能类似于,对应自身拥有的视频文件,需要发布到一个网站,其他用户都可以实现点播观看. 针对于类似 ...

  4. [简短问答]SET_PRINT_STYLEA相关简短问答

    常见1:SET_PRINT_STYLEA(0,.....)放在那里参考官网下载中心的LODOP技术手册SET_PRINT_STYLEA篇,0代表前面紧跟着的打印项,放在需要该样式的打印项后面紧跟着. ...

  5. C/C++ 面试-面向对象的特性

    面向对象的三大特性 此文只是简单介绍一下三大特性   详细介绍在: 封装:http://www.cnblogs.com/52why/p/7631381.html 继承:http://www.cnblo ...

  6. javascript添加到收藏夹写法

    javascript添加到收藏夹写法 <pre>function addFavorite2() { var url = window.location; var title = docum ...

  7. TemplateDoesNotExist

    路径问题,可能是没有配置这一行:

  8. 在 Visual Studio 中部署 ASP.NET Core 应用

    另一篇:在 Docker 中手工部署 ASP.NET Core 应用 操作步骤 1. 安装 Docker For Windows(安装之前 Windows 需要 开启 Hyper-V 虚拟机功能 ) ...

  9. linux初识1

    linux 操作系统 概念性的理解 1.Linux内置解释器bash 相当于pyhon解释器 2.Linux的内部大多是使用python去书写 云计算 1.只需要 花钱,买腾讯,阿里云服务器 2.专人 ...

  10. Django最全思维导图

    思维导图传送门