历史

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. xmlns:amq="http://activemq.apache.org/schema/core"报错

    如题,项目集成ActiveMQ是配置文件报错 原因是:Spring命名空间配置错误,缺少相应的spring-bean.很显然,引用不到就是没有jar包啊. 我的解决办法,早pom.xml引用依赖 &l ...

  2. post 发送方式

    /** * post 方式 解码 */ public static String getWebContentByPost(String urlString, String data, final St ...

  3. IDEA 如何搭建maven 安装、下载、配置(图文)

    1.下载 maven 压缩包 输入网址 www.apache.org 会看到以下界面 住下划看到以下界面 然后看到这个界面 选择下载这个版本 下载后 解压 maven 压缩包 (文件路径不建议用有中文 ...

  4. PP篇11 增、改生产订单组件BAPI

    增.改生产订单组件BAPI BAPI_ALM_ORDER_MAINTAIN USE BAPI_ALM_ORDER_MAINTAIN TO CREATE OR CHANGE PM WORK ORDER ...

  5. 【linux学习笔记六】压缩 解压缩命令

    所有的压缩文件一定要写压缩格式的扩展名 .zip格式压缩 #压缩文件 zip 压缩文件名 源文件 #压缩目录 zip -r 压缩文件名 源目录 #解压缩 unzip 压缩文件 .gz格式压缩 #压缩为 ...

  6. [LeetCode] 97. Interleaving String 交织相错的字符串

    Given s1, s2, s3, find whether s3 is formed by the interleaving of s1and s2. Example 1: Input: s1 = ...

  7. ajax提交json数据到后端C#解析

    本文链接:https://blog.csdn.net/qq_22103321/article/details/78015920 前端提交json数据 $.ajax({ type: "post ...

  8. mysql查询之部门工资最高的员工

    最近发现一个网站 力扣 查看 上面有很多算法和数据库的题目,做了一下,发现自己平时都疏忽了,因此边做边记录下来 Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 de ...

  9. H2数据库介绍

    H2数据库是一个开源的关系型数据库. H2是一个采用java语言编写的嵌入式数据库引擎,只是一个类库(即只有一个 jar 文件),可以直接嵌入到应用项目中,不受平台的限制 应用场景: 可以同应用程序打 ...

  10. web基础---->session的使用

    前几天在博问中,看到有人提到了有关session的问题,决定自己整理写一下有关session的原理!说起session,cookie必须是要谈的! 目录 Cookie的介绍 Cookie的使用 Ses ...