热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[MarkDown]markdown语法小结

目录写在前面目录特殊字符自动转换段落和换行第一阶标题第二阶标题显示效果有下划线H1H2有下划线H

目录

  • 写在前面
  • 目录
  • 特殊字符自动转换
  • 段落和换行
  • 第一阶标题
    • 第二阶标题显示效果有下划线
  • H1
    • H2有下划线
      • H3
      • 区块引用
      • 列表
      • 代码区块
      • 分割线
      • 链接
      • 强调
      • 删除线
      • 代码
      • 图片
      • 反斜杠
      • 表格
    • github 特有的特性
      • 复选框列表
      • emoji表情
      • 有待补充
      • 参考

写在前面

最近没怎么写东西,精力全放在GTA5上面了。玩过头了,面壁思过...不过Android还在继续做的,周末再总结点东西出来。因为在弄github,要往readme里面写东西,发现是.md的格式,原来是要用markdown来写,索性看了看md的语法,发现蛮简单的,加上本来就会写html,所以理解起来很快,网上看了一点资料,就总结一下吧。我在ubuntu下使用的编辑器叫 haroopad,感觉不错。。这个也是我第一次用md写博客,排版渣就凑合看看吧。。另外上面的目录是js提的,下面的目录是md的。最后如果有错误的话给我指明一下,谢谢了。

本文链接:http://www.cnblogs.com/rossoneri/p/4446440.html


目录

输入`` 就能获得目录

[TOC]
额,这个目录没有生成,在haroopad是会有的。。可能博客园不支持吧

特殊字符自动转换

HTML中,© 可以写成©也可以直接输 ©

HTML中 <和 & 都要转码 但markdown不必,输入&& 都显示 &< 也一样

4 <5 输<后面最好加个空格,否则会当起始标签使用
4<5 输字符码<不用考虑这个问题


段落和换行

一个 Markdown 段落的前后要有一个以上的空行。普通段落不该用空格或制表符来缩进。如果想在段前加缩进 是一个中文字符 是半个中文字符  是1/4中文字符

标题有两种形式
1.用=或者-表示两阶标题,符号数量建议3个以上,紧挨着显示的标题下一行输入

第一阶标题
=======
第二阶标题显示效果有下划线
---

效果:

第一阶标题

第二阶标题显示效果有下划线

2.开头用#的数量表示1-6阶的标题,结尾可以以任意数量#结尾(包括0个)

H1

H2有下划线

H3

H4

H5
H6

H7 超过6个#就是这个样子


区块引用

在每行前面使用> 或者只在段落中第一行前加>

This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
id sem consectetuer libero luctus adipiscing.

区块引用也可以嵌套,在嵌套的地方加多个>>就好
这里空行可以不加 > 只要前后段落没有其他不加>的段落就不影响效果,自己可以试试

数据结构

二叉树

平衡二叉树

满二叉树

引用的区块内也可以使用其他的 Markdown 语法,包括标题、列表、代码区块等:

这是一个标题。

  1. 这是第一行列表项。
  2. 这是第二行列表项。

给出一些例子代码:

return shell_exec("echo $input | $markdown_script");

列表

支持有序列表和无序列表,就是列表项前面是数字还是点
无序可用 * + - 显示都是点
比如输入
* Red
+ Green
- Blue
显示为

  • Red
  • Green
  • Blue

有序用数字加英文. 数字是几无所谓的 生成的html代码是一样的

建议第一个项目最好还是从 1. 开始,因为 Markdown 未来可能会支持有序列表的 start 属性。

  1. Red
  2. Green
  3. Blue



列表项目标记通常是放在最左边,但是其实也可以缩进,最多 3 个空格,项目标记后面则一定要接着至少一个空格或制表符。每一项换行后前面不对齐也没关系,产生的效果还是好的

  • Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
    Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi,
    viverra nec, fringilla in, laoreet vitae, risus.
  • Donec sit amet nisl. Aliquam semper ipsum sit amet velit.
    Suspendisse id sem consectetuer libero luctus adipiscing.

如果列表项之间用空格隔开,输出html会给每一项加

标签

一个列表项也可以包含多个段落 每一项下的段落都必须缩进4个空格或者一个制表符

  1. This is a list item with two paragraphs. Lorem ipsum dolor
    sit amet, consectetuer adipiscing elit. Aliquam hendrerit
    mi posuere lectus.

    Vestibulum enim wisi, viverra nec, fringilla in, laoreet
    vitae, risus. Donec sit amet nisl. Aliquam semper ipsum
    sit amet velit.

  2. Suspendisse id sem consectetuer libero luctus adipiscing.

如果列表项内的引用需要缩进,在>前面加上缩进,引用就在列表项内显示

  • A list item with a blockquote:

    This is a blockquote
    inside a list item

如果要在list中放代码,该区块需要缩进2次 即8个空格或2个tab

  • a list item with a codeblock
    private void fun(int x){

      }

代码区块

开头加4个空格或一个tab即可,markdown会在生成的html代码包上 pre code 标签

这是代码区块

一个代码区块会一直持续到没有缩进的那一行(或是文件结尾)。

代码区块中的 &< > 符号会自动转成html应该显示的代码,输 & 就会转换成 &,显示为 & ,也就是输什么显示什么。

代码区块中 markdown 语法不会转换,比如
* Red
+ Green
- Blue


分割线

可以在一行用3个以上的 *,-,_来建立一条分割线,行内除了空格不能有其他东西,当然三条线效果是不同的,按顺序是很明显,不明显,一般。第二种不仔细看真看不到有线,我是换了暗色主题才看清。





链接

链接文字都是用 [方括号] 来标记。分为两种方式:(我直接用如何呢)

  1. 行内式

只要在方块括号后面紧接着圆括号并插入网址链接即可,如果你还想要加上链接的 title 文字,只要在网址后面,用双引号把 title 文字包起来即可,如:

This is an example inline link with title.
This link has no title.

  1. 参考式

是在链接文字的括号后面再接上另一个方括号,而在第二个方括号里面要填入用以辨识链接的标记,两个括号间可以最多加上一个空格:

This is [an example] id reference-style link.

接着,在文件的任意处,你可以把这个标记的链接内容定义出来:
[id]: http://www.cnblogs.com/rossoneri/ "我的博客园"
链接内容定义的形式为:

  • 方括号(前面可以选择性地加上至多三个空格来缩进),里面输入链接文字
  • 接着一个冒号
  • 接着一个以上的空格或制表符
  • 接着链接的网址
  • 选择性地接着 title 内容,可以用单引号、双引号或是括弧包着

下面这三种链接的定义都是相同的:
[foo]: http://example.com/ "Optional Title Here"
[foo]: http://example.com/ 'Optional Title Here'
[foo]: http://example.com/ (Optional Title Here)

请注意:有一个已知的问题是 Markdown.pl 1.0.1 会忽略单引号包起来的链接 title。

链接网址也可以用尖括号包起来,其中title属性可以换行:
id: http://example.com/ "Optional Title Here"

隐式链接标记功能让你可以省略指定链接标记,这种情形下,链接标记会视为等同于链接文字,要用隐式链接标记只要在链接文字后面加上一个空的方括号.
如果你要让 "Google" 链接到 google.com,你可以简化成:[Google co.][]
然后定义链接内容:[Google co.]: http://google.com/

效果如下:
[Google co.][]
[Google co.]: http://google.com/

下面列出三种写法,推荐参考式,链接放在段落最后写起来会比较清晰。

参考式1
I get 10 times more traffic from [Google] [1] than from [Yahoo] [2] or [MSN] [3].

[1]: http://google.com/        "Google"
[2]: http://search.yahoo.com/  "Yahoo Search"
[3]: http://search.msn.com/    "MSN Search"

参考式2
 get 10 times more traffic from [Google][] than from [Yahoo][] or [MSN][].
 
 [google]: http://google.com/        "Google"
 [yahoo]:  http://search.yahoo.com/  "Yahoo Search"
 [msn]:    http://search.msn.com/    "MSN Search"

行内式
I get 10 times more traffic from [Google (http://google.com/ "Google") than from [Yahoo](http://search.yahoo.com/ "Yahoo Search") or [MSN](http://search.msn.com/ "MSN Search").

效果:
I get 10 times more traffic from [Google] 1 than from [Yahoo] 2 or [MSN] 3.


强调

两端一个 *或者 _包起来是斜体,两个包起来是粗体:
single asterisks
single underscores
double asterisks
double underscores

如果符号两边都是空白,没有紧贴着文字,将会当普通符号。
如果就是要输出符号则要反斜杠\* 或者 \_


删除线

文本两端加上两个~~即可
删除我


代码

要标记一小段行内代码,用反引号包起来 ` ` Use theprintf()` function.

如果要在代码区段内插入反引号,你可以用多个反引号来开启和结束代码区段
像这样输入 ``There is a literal backtick (`) here.``
效果为 There is a literal backtick (`) here.

代码区段起始前和结束后都可以放一个空格,方便代码段隔开
比如可以输入 `` `foo` ``
就显示为 `foo`

代码内可以直接放入 < > & 符号

另外还可以设置代码高亮,根据代码类型来选择,输入格式为:

```java (type)
    code here
```

几种代码效果如下:

public static void main(String[]args){} //Java
int main(int argc, char *argv[]) //C
echo "hello GitHub"#Bash
document.getElementById("myH1").innerHTML="Welcome to my Homepage"; //javascipt
string &operator+(const string& A,const string& B) //cpp

图片

也分为行内式和链接式

  • 行内式格式:! + [替代图片的文字,可空] + (路径 title)
  • 链接式格式:! + [替代图片的文字,可空] + [id]
                          [id]: 路径 title

反斜杠

反斜杠可以输出显示一些符号,支持的有

\   反斜线
`   反引号
*   星号
_   底线
{}  花括号
[]  方括号
()  括弧
#   井字号
+   加号
-   减号
.   英文句点
!   惊叹号

表格

表头1  | 表头2
------------- | -------------
Content Cell  | Content Cell
Content Cell  | Content Cell

| 表头1  | 表头2|
| ------------- | ------------- |
| Content Cell  | Content Cell  |
| Content Cell  | Content Cell  |

| 名字 | 描述          |
| ------------- | ----------- |
| Help      | Display the help window.|
| Close     | Closes a window     |

表格中也可以使用普通文本的删除线,斜体等效果

| 名字 | 描述          |
| ------------- | ----------- |
| Help      | ~~Display the~~ help window.|
| Close     | _Closes_ a window     |

表格可以指定对齐方式

| 左对齐 | 居中  | 右对齐 |
| :------------ |:---------------:| -----:|
| col 3 is      | some wordy text | $1600 |
| col 2 is      | centered        |   $12 |
| zebra stripes | are neat        |    $1 |

效果:
表格效果
___

github 特有的特性

复选框列表

在列表符号后面加上[]或者[x]代表选中或者未选中情况

  • [x] C
  • [x] C++
  • [x] Java
  • [x] Qt
  • [x] Android
  • [ ] C#
  • [ ] .NET

效果如图:
复选框列表

emoji表情

Github的Markdown语法支持添加emoji表情,输入不同的符号码(两个冒号包围的字符)可以显示出不同的表情。

比如:blush:,可以显示blush

更多表情符号可以从这里找。
1: https://github.com/guodongxiaren/README/blob/master/emoji.md

有待补充

其实在haroopad左侧有一个 Quick Markdown 的选项,里面还有不少没用过的命令,看名字大概能猜出意思,这个往后慢慢研究再补充吧。
待补充

参考

Markdown 语法说明
某人的Github


推荐阅读
  • 如何在HTML中获取鼠标的当前位置
    本文介绍了在HTML中获取鼠标当前位置的三种方法,分别是相对于屏幕的位置、相对于窗口的位置以及考虑了页面滚动因素的位置。通过这些方法可以准确获取鼠标的坐标信息。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • PDO MySQL
    PDOMySQL如果文章有成千上万篇,该怎样保存?数据保存有多种方式,比如单机文件、单机数据库(SQLite)、网络数据库(MySQL、MariaDB)等等。根据项目来选择,做We ... [详细]
  • 本文介绍了在iOS开发中使用UITextField实现字符限制的方法,包括利用代理方法和使用BNTextField-Limit库的实现策略。通过这些方法,开发者可以方便地限制UITextField的字符个数和输入规则。 ... [详细]
  • JavaScript和HTML之间的交互是经由过程事宜完成的。事宜:文档或浏览器窗口中发作的一些特定的交互霎时。能够运用侦听器(或处置惩罚递次来预订事宜),以便事宜发作时实行相应的 ... [详细]
  • C语言常量与变量的深入理解及其影响
    本文深入讲解了C语言中常量与变量的概念及其深入实质,强调了对常量和变量的理解对于学习指针等后续内容的重要性。详细介绍了常量的分类和特点,以及变量的定义和分类。同时指出了常量和变量在程序中的作用及其对内存空间的影响,类似于const关键字的只读属性。此外,还提及了常量和变量在实际应用中可能出现的问题,如段错误和野指针。 ... [详细]
  • 用Vue实现的Demo商品管理效果图及实现代码
    本文介绍了一个使用Vue实现的Demo商品管理的效果图及实现代码。 ... [详细]
  • 本文介绍了基于c语言的mcs51单片机定时器计数器的应用教程,包括定时器的设置和计数方法,以及中断函数的使用。同时介绍了定时器应用的举例,包括定时器中断函数的编写和频率值的计算方法。主函数中设置了T0模式和T1计数的初值,并开启了T0和T1的中断,最后启动了CPU中断。 ... [详细]
  • 猜字母游戏
    猜字母游戏猜字母游戏——设计数据结构猜字母游戏——设计程序结构猜字母游戏——实现字母生成方法猜字母游戏——实现字母检测方法猜字母游戏——实现主方法1猜字母游戏——设计数据结构1.1 ... [详细]
  • 本文介绍了一个题目的解法,通过二分答案来解决问题,但困难在于如何进行检查。文章提供了一种逃逸方式,通过移动最慢的宿管来锁门时跑到更居中的位置,从而使所有合格的寝室都居中。文章还提到可以分开判断两边的情况,并使用前缀和的方式来求出在任意时刻能够到达宿管即将锁门的寝室的人数。最后,文章提到可以改成O(n)的直接枚举来解决问题。 ... [详细]
  • 深入理解CSS中的margin属性及其应用场景
    本文主要介绍了CSS中的margin属性及其应用场景,包括垂直外边距合并、padding的使用时机、行内替换元素与费替换元素的区别、margin的基线、盒子的物理大小、显示大小、逻辑大小等知识点。通过深入理解这些概念,读者可以更好地掌握margin的用法和原理。同时,文中提供了一些相关的文档和规范供读者参考。 ... [详细]
  • 本文详细介绍了如何使用MySQL来显示SQL语句的执行时间,并通过MySQL Query Profiler获取CPU和内存使用量以及系统锁和表锁的时间。同时介绍了效能分析的三种方法:瓶颈分析、工作负载分析和基于比率的分析。 ... [详细]
author-avatar
鸣丸子圓的睿哥
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有