Markdown语法与入门
Markdown语法与入门
Markdown 是一种轻量级的「标记语言」,它的优点很多,目前也被越来越多的写作爱好者,撰稿者广泛使用。看到这里请不要被「标记」、「语言」所迷惑,Markdown 的语法十分简单。常用的标记符号也不超过十个,这种相对于更为复杂的HTML 标记语言来说,Markdown 可谓是十分轻量的,学习成本也不需要太多,且一旦熟悉这种语法规则,会有一劳永逸的效果。
认识 Markdown
在刚才的导语里提到,Markdown 是一种用来写作的轻量级「标记语言」,它用简洁的语法代替排版,而不像一般我们用的字处理软件 Word 或 Pages 有大量的排版、字体设置。它使我们专心于码字,用「标记」语法,来代替常见的排版格式。例如此文从内容到格式,甚至插图,键盘就可以通通搞定了。目前来看,支持 Markdown 语法的编辑器有很多,包括很多网站(例如简书)也支持了 Markdown 的文字录入。Markdown 从写作到完成,导出格式随心所欲,你可以导出 HTML 格式的文件用来网站发布,也可以十分方便的导出 PDF 格式,这种格式写出的简历更能得到 HR 的好感。甚至可以利用 CloudApp 这种云服务工具直接上传至网页用来分享你的文章,全球最大的轻博客平台 Tumblr,也支持使用 Mou 这类 Markdown 工具进行编辑并直接上传。
Markdown 官方文档
这里可以看到官方的 Markdown 语法规则文档,当然,后文我也会用自己的方式,阐述这些语法在实际使用中的用法。
使用 Markdown 的优点
- 专注你的文字内容而不是排版样式。
 - 轻松的导出 HTML、PDF 和本身的 .md 文件。
 - 纯文本内容,兼容所有的文本编辑器与字处理软件。
 - 可读,直观。适合所有人的写作语言。
 
我该用什么工具?

Mac 平台
- 在 Mac OS X 上,我强烈建议你用 Mou 这款免费且十分好用的 Markdown 编辑器,它支持实时预览,既左边是你编辑 Markdown 语言,右边会实时的生成预览效果,笔者文章就是 Mou 这款应用写出来的。
 

其次还有很多同类选择。如果你是个编辑作者,我强烈建议你购买 Ulysses Ⅲ,这款应用入围了苹果去年 Mac App Store 的 The Best of 2013,相比 Mou 它支持更多的写作格式、多文档的支持。Mou、iA Writer 这些应用都是基于单文档的管理方式,而 Ulysses Ⅲ 支持 Folder、Filter 的管理,一个 Folder 里面可以创建多个 Sheet,Sheet 之间还可以进行 Combine 处理。

Windows、iOS、Web 平台
笔者并未使用过 Windows 下的 Markdown 工具,但经朋友介绍,有两款还算不错,一款叫 MarkdownPad ,另一款叫 MarkPad。
iOS 端已有相当多的 app 支持 Markdown 语法编辑,例如 Drafts、Day One、iA Writer 等。
Web 端上,我强烈推荐 简书 这款产品,上面有无数热爱文字的人在不停的创造、分享。在 Web 端使用 Markdown 没有比简书更舒服的地方了,它同样支持左右两栏的实时预览,字体优雅、简洁。

- 同样是 Web 端,Draftin 这款在线 MD 编辑器也近乎完美。
 
Markdown 语法的简要规则
标题

标题是每篇文章都需要也是最常用的格式,在 Markdown 中,如果一段文字被定义为标题,只要在这段文字前加 # 号即可。
# 一级标题
## 二级标题
### 三级标题
以此类推,总共六级标题,建议在井号后加一个空格,这是最标准的 Markdown 语法。
列表
熟悉 HTML 的同学肯定知道有序列表与无序列表的区别,在 Markdown 下,列表的显示只需要在文字前加上 - 或 * 即可变为无序列表,有序列表则直接在文字前加 1. 2. 3. 符号要和文字之间加上一个字符的空格。

引用
如果你需要引用一小段别处的句子,那么就要用引用的格式。
> 例如这样
只需要在文本前加入 > 这种尖括号(大于号)即可

图片与链接
插入链接与插入图片的语法很像,区别在一个 !号
插入图片的地址需要图床,这里推荐 CloudApp 的服务,生成URL地址即可。

粗体与斜体
Markdown 的粗体和斜体也非常简单,用两个 * 包含一段文本就是粗体的语法,用一个 * 包含一段文本就是斜体的语法。
例如:这里是粗体 这里是斜体
表格
表格是我觉得 Markdown 比较累人的地方,例子如下:
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |
这种语法生成的表格如下:
| Tables | Are | Cool | 
|---|---|---|
| col 3 is | right-aligned | $1600 | 
| col 2 is | centered | $12 | 
| zebra stripes | are neat | $1 | 
代码框
如果你是个程序猿,需要在文章里优雅的引用代码框,在 Markdown 下实现也非常简单,只需要用两个 ` 把中间的代码包裹起来,如 `code`。图例:

使用 tab 键即可缩进。
分割线
分割线的语法只需要另起一行,连续输入三个星号 *** 即可。
小结
到这里,Markdown 的基本语法在日常的使用中基本就没什么大问题了,只要多加练习,配合好用的工具,写起东西来肯定会行云流水。更多的语法规则,其实 Mou 的 Help 文档例子很好,当你第一次使用 Mou 时,就会显示该文档,其次,你也可在撰写过程中,使用 CMD+R 快捷键来快速打开文档,以随时查阅和学习语法。

与 Markdown 相关的一些推荐
可配套使用的工具
相关文章阅读
Markdown语法与入门的更多相关文章
- Markdown 语法快速入门手册
		
Markdown 是一种轻量级标记语言,能将文本换成有效的XHTML(或者HTML)文档,它的目标是实现易读易写,成为一种适用于网络的书写语言. Markdown 语法简洁明了,易于掌握,所以用它来写 ...
 - Markdown:认识&入门
		
来源:http://sspai.com/25137 一.认识 Markdown 在刚才的导语里提到,Markdown 是一种用来写作的轻量级「标记语言」,它用简洁的语法代替排版,而不像一般我们用的字处 ...
 - 常用markdown语法入门
		
入门markdown常用基本语法,简单到让你怀疑人生~~ 不说废话,直接上图(如果图片显示不清晰,建议选中图片右键——在新标签页中打开图片,妥妥的呢!!) (左侧黑色背景为markdown语法,右侧为 ...
 - Markdown学习——Typora入门之常用操作语法及其快捷键
		
Markdown 学习--Typora入门 Markdown是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文档. 由于Markdown的轻 ...
 - 2015年12月03日 GitHub入门学习(五)Markdown语法简介
		
Markdown一种标记语言,语法简洁,不像Word或Pages有大量排版.字体设置.常用的标记符号不超过十个.被大量写作爱好者.撰稿人.作家所青睐. 一.Markdown的优点 专注你的文字内容而不 ...
 - Markdown语法入门
		
本文内容参考与这里,本篇文档,用Markdown语法写成. 概述 宗旨 Markdown 的目标是实现「易读易写」. 可读性,无论如何,都是最重要的.一份使用 Markdown 格式撰写的文件应该可以 ...
 - Markdown 语法说明
		
Markdown 语法说明 (简体中文版) / (点击查看快速入门) 概述 宗旨 Markdown 的目标是实现「易读易写」. 可读性,无论如何,都是最重要的.一份使用 Markdown 格式撰写的文 ...
 - markdown语法学习源码
		
__注: 结合markdown官方文档 其中大部分例子和说明文字都摘自官方文档__官方链接:[Markdown: Basics (快速入门)](http://wowubuntu.com/markdow ...
 - markdown语法学习效果预览
		
注: 结合markdown官方文档 其中大部分例子和说明文字都摘自官方文档 官方链接:Markdown: Basics (快速入门). 一 段落.标题.区块代码 Markdown 支持两种标题的语法, ...
 
随机推荐
- Struts2(九)OGNL标签一与Struts2标签
			
一.什么是OGNL Object Graph Navigation Language对象图导航语言. 是Struts2默认的表达式语言,开源,功能更强大.和EL表达式有点相似 存取对象的属性,调用对 ...
 - Spring Boot 之  RESTfull API简单项目的快速搭建(一)
			
1.创建项目 2.创建 controller IndexController.java package com.roncoo.example.controller; import java.util. ...
 - Qt 立体水晶按键实现
			
一直对 Qt 怎样实现富有立体感的按键很好奇,做过很多尝试,最后用的图片,但是图片终究不够灵活,而且占内存. 今天偶然发现,使用下面的代码,作出的 QPushButton 效果还算不错.代码共享之: ...
 - ES6学习笔记五:Promise异步任务
			
一:Promise对象 Promise对象代表一个异步操作,有三种状态:Pending(进行中).Resolved(已完成,又称 Fulfilled)和Rejected(已失败). 二:创建与使用 v ...
 - Java通过wait()和notifyAll()方法实现线程间的通信
			
Java代码(使用了2个内部类): package Threads; import java.util.LinkedList; /** * Created by Frank */ public cla ...
 - 使用OpenNI 2获取RGBD摄像头深度信息
			
NiViewer 安装好摄像头驱动和OpenNI后,在Tools文件夹中可以找到一个程序NiViewer.NiViewer的一些基本控制方法如下: 1. ESC关闭NiViewer程序 2. 右键可以 ...
 - Memcacher win7 安装测试
			
1.下载memcache 的windows 稳定版,解压放某个盘下面,比如在H:/wamp/www/php api/memcache: 2.在终端(即cmd 命令界面)下,输入安装命令 :H:/wam ...
 - 开源通用型渲染工具-SwiftShader--OpenGL的替代者
			
SwiftShader 是一款用于在 CPU 上进行高性能图形渲染的软件库.Google 已经在很多产品中使用该内容库,包括 Chrome.Android 开发工具和云服务.Swiftshader 从 ...
 - 微软的在线文档存储OneDrive使用帮助
			
onedrive默认空间5G,对于一般的文档存储够用的,很方便不限速!!! ###官方介绍 https://support.office.com/zh-cn/article/%E4%BA%86%E8% ...
 - js代码实现购物车效果
			
页面分上下两部分,上部分是所有的数据,下部分是购物车.通过在上面选择需要处理的数据添加进到购物车,实现对购物车数据的统一处理. 需要注意的有两点:①购物车数据可删除,且不能重复添加 ②响应时间考虑,购 ...