前言

  以前经常在 github 中看到 .md 格式的文件,一直没有注意,也不明白为什么文本文档的后缀不是 .txt ,后来无意中看到了 Markdown,看到了用这个东西写得一些web界面等特别的规整漂亮,顿时不明觉厉。后来自己学习了一下,感觉这个语言确实简洁、美观,现推荐出来供大家学习和玩玩,希望能对你有用。

  本文图文并茂,避免了单纯看语法的枯燥和繁琐,其实,学习一门新东西真的其乐无穷!

简介  

Markdown 是一种用来文本处理的轻量级 「标记语言」,它用简洁的语法代替排版,而无需像Microsoft的Word一样需要花费大量的时间进行排版、字体设置。它使我们专心于码字,用「标记」语法,来代替常见的排版格式。Markdown不止可以处理文本,使得文字更美观,还支持图像、表格等的插入,大大方便了我们的写作。例如此文从内容到格式,甚至插图,一个键盘可以搞定了,无需鼠标!

  目前来看,支持 Markdown 语法的编辑器有很多,包括很多网站(例如简书)也支持了 Markdown 的文字录入。Markdown 从写作到完成,导出格式随心所欲,你可以导出 HTML 格式的文件用来网站发布,也可以十分方便的导出 PDF 格式,甚至可以利用 CloudApp 这种云服务工具直接上传至网页用来分享你的文章,全球最大的轻博客平台 Tumblr,也支持 Mou 这类 Markdown 工具的直接上传。

  目前,我们的 博客园 同样支持了Markdown文本的编辑,具体如何设置请往下看!

Markdown特点

  • 专注你的文字内容而不是排版样式;
  • 轻松的导出 HTML、PDF 和本身的 .md 文件;
  • 纯文本内容,兼容所有的文本编辑器与字处理软件;
  • 可读,直观。适合所有人的写作语言。

教程

简明教程:

详细教程

博客园配置Markdown编辑器

  1. 进入博客后台
  2. 点击“设置默认编辑器”
  3. 选中 Markdown并保存
  4. 回到随笔界面点击“添加随笔”
  5. 在“Markdown编辑器”中输入相应的代码


语法

1. 标题

标题通过 # 的个数来进行区分,Mardown总共支持6级标题。

2. 段落 & 换行

2.1. 首行缩进/空格:

  •  : 英文空格(半角)
  •  : 中文空格(全角)
  • 输入法切换至全角,双击 空格 「推荐」
  • 半方大的空白  &#8194
  • 全方大的空白 &#8195
  • 不断行的空白格  &#160

2.2. 强制换行

  连续的字符串,如果你想要换行,往往打“Enter”是不管用的,正确的换行方法为在 「在需要换行的地方插入 >=2 个 空格」

2.3. 空行

两种方式:

  • 在markdown中加入 >=2 个空行.
  • 使用<br> 【推荐】
      

3. 列表

在Markdown下,有四种列表:有序和无序;

  • 有序列表:采用 1. 2. 3.的形式
  • 无序列表:采用前面加 * - + 的方式,支持多级嵌套
  • 未完成列表:- [ ],每个符号间均有空格
  • 已完成列表:- [x],注意空格使用
    PS: 符号与文字之间必须有 空格


4. 引用 (Quote)

若需要引入有出处的一段话等,可以采用引用的方式实现,实现方式为在行开始处加入>,如下所示:

5. 字体设置

  • 粗体
    字符串前后均加上 **
  • 斜体
    字符串前后均加上 *
  • 删除线
    字符串前后各加 ~~
  • ++下划线++
    字符串前后各加 ++
  • == 字体背景色 ==
    字符串前后各加 ==
  • 标记
    字体前后加上 ` (Esc下方的那个键)

6. 分割带

当上下文不属于同一模块或者无甚关联时刻,可以使用分隔符进行隔开;分隔符的格式如下:

  • 连续多个-(>=3)
  • 连续多个*(>=3)
  • 连续多个下划线 _ (>=3)
  • PS:以上,分隔符中间可以有空格,但分割行不可有其它字符存在

7. 图片和链接

  • 图片
    ![]() : [图片名称] (图片网络地址)
  • 链接
    []() : [链接名称(可自定义)] (链接地址)

8. 代码块

和程序相关的写作或是标签语言原始码通常会有已经排版好的代码区块,通常这些区块我们并不希望它以一般段落文件的方式去排版,而是照原来的样子显示,Markdown 会用制表符来将代码包起来。
代码块一直持续到没有缩进的那一行(或是文件的结尾)

    #include <iostrem>
using namespace std;
int main(int argc, char **argv)
{
cout << "hello,world!";
}

9. 网址自动转换

Markdown 支持以比较简短的自动链接形式来处理网址和电子邮件信箱,只要是<>包起来, Markdown 就会自动把它转成链接。一般网址的链接文字就和链接地址一样,例如:

这个是我的博客地址:https://home.cnblogs.com/u/Jimmy1988/
我的邮箱地址是:JimmyNie2017@163.com

10. 转义

Markdown 可以利用反斜杠来插入一些在语法中有其它意义的符号,例如:如果你想要用星号加在文字旁边的方式来做出强调效果,你可以在星号的前面加上反斜杠:

*literal asterisks*

Markdown 支持以下这些符号前面加上反斜杠来帮助插入普通的符号:

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

11. 生成目录

  • 前提条件:

    标题的建立是采用MD格式实现的,目录的生成建议放在文本最开始部分(当然也可以嵌入在文中)。

  • 语法

    [TOC],中间不要有空格

  • 注意事项

    目录的生成并不是每个编辑器都支持的,至今我用过的编辑器 有道云笔记是支持的。

12. 表格


表格的做法通常为:

header 1 | header 2
--- |---
row 1 col 1 | row 1 col 2
row 2 col 1 | row 2 col 2

可用`<br>进行单元格内换行; 但是暂时不支持合并单元格


工具推荐

windows平台

Linux平台

Mac平台

浏览器插件

在线编辑器

  • 麻花:支持在线编辑,关键支持VIM命令

高级应用

更多工具


转载链接:http://www.cnblogs.com/Jimmy1988/p/7053875.html

Markdown 使用教程的更多相关文章

  1. CSDN Markdown简明教程5-高速上手

    0.文件夹 文件夹 前言 CSDN Markdown特点 CSDN Markdown高速上手 1 使用快捷键 粗体斜体 引用 链接 高亮代码块 图片 标题 列表 切割线 撤销反复 2 使用离线写作 3 ...

  2. CSDN Markdown简明教程3-表格和公式

    0. 文件夹 文件夹 前言 表格 1 表格 2 表格对齐方式 公式 1 行内公式 2 陈列公式displayed formulas 3 MathJax语法 深入 声明 1. 前言 Markdown是一 ...

  3. CSDN Markdown简明教程4-UML画画

    0.文件夹 文件夹 前言 序列图 1 序列图演示样例 2 序列图语法 流程图 1 流程图演示样例 2 流程图语法 节点定义 节点连接 Gravizo 声明 1. 前言 Markdown是一种轻量级的标 ...

  4. cmd markdown 使用教程

    cmd markdown 使用教程 tags: 自制教程 李卓伦 目录: [TOC] 一.简介与安装 我们理解您需要更便捷更高效的工具记录思想,整理笔记.知识,并将其中承载的价值传播给他人,Cmd M ...

  5. MarkDown系列教程

    编辑了一个Markdown的系列教程,前一部分是摘编自 菜鸟教程 网站 目录 第一篇 Markdown 使用教程 入门

  6. GitHub官方Markdown语法教程

    说明:Markdown随着编译器不一样,语法也都不一样,但这份GitHub提供的官方教程,基本学会这份就够了. https://guides.github.com/features/mastering ...

  7. 2017.5.15 markdown简明教程

    0.说明 markdown是一种书写格式,html是一种发布格式.markdown的语法种类只对应html标记的一小部分(只涵盖纯文本). 不在markdown涵盖范围的标签,都可以直接在文档里用ht ...

  8. Markdown进阶教程

      Markdown是很好用的轻量级标记语言,许多开发人员喜欢使用Markdown来记录学习心得和写博客.本篇博客主要介绍Markdown的高级技巧教程,Markdown的基础教程已经在上篇介绍过了. ...

  9. Markdown实用教程

    Markdown 是用来编写结构化文档的一种纯文本格式,它使我们在双手不离开键盘的情况下,可以对文本进行一定程度的格式排版.markdown语法是通用的,很多写作平台都是支持markdown的,比如简 ...

随机推荐

  1. Swift 2.x 升为 swift 3后语法不兼容问题适配

    [解决方法]设置 Build Settings —-> Use Legacy Swift Language Version —-> 改为YES

  2. javascript编程思想

    javascript编程开发修炼之道   提要文摘附注: 本文的核心内容是围绕javascript前端开发的编程技术要素,来深入地探讨编写高质量的javascript代码的方法.技巧.规范和最佳实践, ...

  3. JS实现拖动(2)

    getBoundingClientRect() 来获取页面元素的位置 document.documentElement.getBoundingClientRect 该方法返回一个对象,从而获得页面中某 ...

  4. 深度学习-Caffe中启用MatlabSupport编译出错的解决方案

    一.如果编译前打算生成支持Matlab的库,则设置MatlabSupport为true之后. 二.记得添加Matlab的安装路径.我的是:D:\Application\DevTools\Matlab ...

  5. 字符串匹配算法——BF、KMP、Sunday

    一:Brute force 从源串的第一个字符开始扫描,逐一与模式串的对应字符进行匹配,若该组字符匹配,则检测下一组字符,如遇失配,则退回到源串的第二个字符,重复上述步骤,直到整个模式串在源串中找到匹 ...

  6. Struts2学习笔记二:开发流程

    一:创建项目,添加依赖包 二:在web.xml配置核心控制器 <filter> <filter-name>struts2</filter-name> <fil ...

  7. Knockout学习之控制流绑定器

    控制流绑定器 “foreach”绑定 顾名思义,通过该绑定我们就可以将监控数组循环输出到页面中去了,当然我们还是先来段简单的示例,仅仅只是输出监控数组: <ul data-bind=" ...

  8. 基于py3和pymysql的数据库查询,查询某几列的数据

    #python3 #xiaodeng #基于py3和pymysql的数据库查询,查询某几列的数据 import pymysql conn=pymysql.connect(....) cur=conn. ...

  9. AJAX的同步返回结果值

    function makeJQGridDataFromList(url) {     var rowData;     var viewPage = 0;     var viewTotal = 0; ...

  10. nmake构建Geos库

    1.下载源码包 下载地址 http://download.osgeo.org/geos/geos-3.6.1.tar.bz2 下载之后解压即可. 2.编译 geos源码包中自带了makefile.vc ...