(Xee:我最近感觉nyfedit打开有点慢,数据库有点大,试想着用一些其他的方式记录一下学习的过程,才想起了遗忘了很长时间的Markdown,将其分类在HTML下,也是我原本意愿的...)

本文面向不了解 markdown 或刚准备上手的同学。

它是什么

首先,什么是 markdown?我们可以直接看一下 WIKI……不过 wiki
很长,让人没有耐心读下去。那么,简单来说,markdown 其实是一种轻量级的标记语言;
或者说,它规定了一些文本的书写格式,就像这样:

写上你的标题
============ 开始书写正文吧 当然也可以用 *列表* 的形式:
* 列表项目
* 还是列表项目

上面这一段东西就是 markdown 了——它看上去和普通的文本没什么两样,只不过文字“被一些

标记 格式化”了,所以看上去会感觉比较漂亮,书面化一点形容叫做 具备更高的可读性

这一段 markdown 给我们的直观感受是我们能够清楚地识别出其中的“标题”、“段落”以及“列表”,

对,就和我们熟知的 html 一样,用来格式化内容

为何使用

接下来的问题自然是,我们为什么要使用 markdown?

我们可以把这个问题进一步拆分为三个问题:

  • 使用 markdown 而不是 html 的好处在哪
  • 在哪些场景下使用?
  • 这个东西的普及度如何?(这意味着它的前途)

接下来一一回答:

  • 前文已说,markdown 和 html 都是一路的标记语言,用来格式化内容。而内容之所以要显得很

    格式化,是因为这样我们更容易阅读和理解。被渲染后的 html 是很可读的,但是 html 代码读起来

    就很糟糕,因为它夹杂着大量 <tag>;而 markdown 不管是写还是读,都很舒服

    有一点需要注意的是,markdown 并不是为了取代 Html,因为根本取代不了。Markdown 的理念是,

    能让文档更容易读、写和随意改。HTML 是一种发布的格式,Markdown 是一种书写的格式

    最后一点,markdown 可以被编译为 html,比如使用在线的 Pandoc

  • 我个人认为,我们在 txt 上写的文档或随手记之类的东西,就完全可以使用 markdown,简单且美观

    另外,最重要的一点,我们可以在 支持把 markdown 编译为 html 的地方书写 markdown,好处是

    显而易见的:书写简单、展现美观。典型的场景有:github 仓库的 README 描述文件、github 中的

    issue、评论框等。总而言之,把它用在要写文档的地方,妥妥的

  • 我们知道,这世界上还有很多类似于 markdown 的轻量级标记语言,比如形形色色的 wiki 语法。所以,

    我们凭什么使用 markdown 而不是 markup 或者 wikidown?

    答案很简单,因为它很流行。至少著名的程序员社区如 github 和 stackoverflow

    都提供了对它的大量支持

说了那么多,结论就是,学习并且使用 markdown,必须的!何况 markdown 学起来非常简单

语法简要介绍

接下来会非常简单地介绍一下语法,而详细的语法大全可以直接去 作者的官网 查看。

作者对语法的介绍富有条理且细致入微。

语法介绍之后会着重说一下几个比较给力的特性,这个部分是重点

部分语法如下:

  • 使用一个或多个空行分隔内容段来生成段落 <p>

  • 标题(h1~h6)格式为使用相应个数的“#”作前缀,比如以下代码表示 h3:

    ### this is a level-3 header ###
  • 使用“>”作为段落前缀来标识引用文字段落。这其实是 email 中标记引用文字的标准方式:

    >   引用的内容
    > 这个记号直接借鉴的邮件标准
  • 使用“*”“+”“-”来表示无序列表;使用数字加“.”表示有序列表。如:

    1.  I am ordered list item 1...
    2. So I should be item 2!?
  • 使用 4 个以上 空格或 1 个以上 的 tab 来标记代码段落,它们将被

    <pre><code> 包裹,这意味着代码段内的字体会是 monospace

    家族的,并且特殊符号不会被转义。

    1. 使用 [test](http://example.net "optional title") 来标记普通链接。

    2. 使用 ![img](http://example.net/img.png "optional title") 来标记图片。

    引号内的 title 文字是可选的,链接也可以使用相对路径。

  • 使用 * 或 _ 包裹文本产生 strong 效果:

    _语气很重的文本_ 以及 **语气更重的文本**

给力的特性

  • 普通换行并不产生新的段落或 <br>,但是产生空格。

    其实这个和 html 对 line-break 换行 的处理方式是一致的。为了使文本良好地展示在视野内,

    我们会选择 手动地 将文字折行,但是并不意味着这两行在逻辑上不是一个段落。

    我们也可以插入真正的手动换行符 <br>,如果要问 <br> 在什么时候有用,下面是一个例子:



    其实

    是一首

    诗……

    楼上

    这一段

    说得漂亮!

  • 支持 setext-style 的 header 定义:

    1. 定义 h1:

      THIS IS THE MAIN TITLE
      ======================
    2. 定义 h2:

      This is the subtitle
      --------------------

    更低级别的 header 就无法使用这种方式定义了。我们不用管 setext-style 是什么意思,只需要知道

    这种标记方式更能凸显文章标题

  • 在 blockquote(“>”标记的段落) 之内可以嵌套使用其他标签,甚至可以再嵌套

    blockquote——

    上古神书《商古》写道:
    > 今有一鼎,镌以奇文:
    > > 吾乃鼎,非杯具也。
  • 支持引用式的链接格式。什么叫做“引用式”的链接呢,举例来说,

    对于本文中的一段文字,相应的 mkd 代码是:

    首先,什么是 markdown?我们可以直接看一下 [WIKI][1]……
    另外,markdown 可以被编译为 html,比如使用在线的 [Pandoc][2] [1]: http://en.wikipedia.org/wiki/Markdown "wiki_markdown"
    [2]: http://johnmacfarlane.net/pandoc/try "pandoc online"

    看上去就好像是“引用文献”的格式一样。好处非常易见:

    • 正文文本中不会出现 url 链接这种读者不关心的信息,从而不影响读者的阅读;
    • 链接地址可以当做一个变量,进行复用 ;
  • 支持快捷链接。一般来说,我们如果要显示一段 url 文本,最好也希望这个 url本身能够点击。比如 http://ued.taobao.org

    如果使用 html,则要写作

    <a href="http://ued.taobao.org">http://ued.taobao.org</a>

    包含了冗余信息且可读性很差,而在 mkd 中,只要写

    <http://ued.taobao.org>

    就 OK 了,非常方便。

结尾

以上便是对 markdown 的一个简要介绍了,需要了解进一步内容的,请移步

<参考:http://ued.taobao.org/blog/2012/07/getting-started-with-markdown/>

开始使用 Markdown的更多相关文章

  1. NiceMark——我的Markdown编辑器

    NiceMark--我的Markdown编辑器 闲来无事,写了一个Markdown编辑器.基于electron,完全采用Web前段技术(Html,css,JavaScript)实现.代码已托管在Git ...

  2. Markdown 图片助手-MarkdownPicPicker

    title: Markdown 图片助手 v0.1 toc: true comments: true date: 2016-06-04 16:40:06 tags: [Python, Markdown ...

  3. 前端学Markdown

    前面的话   我个人理解,Markdown就是一个富文本编辑器语言,类似于sass对于css的功能,Markdown也可以叫做HTML预处理器,只不过它是一门轻量级的标记语言,可以更简单的实现HTML ...

  4. 好用的Markdown编辑器一览 readme.md 编辑查看

    https://github.com/pandao/editor.md https://pandao.github.io/editor.md/examples/index.html Editor.md ...

  5. mac好用的markdown编辑器

    在刚开始接触markdown的时候,就被吸引了.此后一直在找贴心的好用的markdown编辑器.印象笔记和马克飞象配合着用也是挺好的,唯一的缺点就是比较封闭,发个笔记的链接给同学,还得注册才能看,导致 ...

  6. Markdown学习笔记

    分为两步: 1.阅读Markdown中文官网的文档 2.下载MarkdownPad2将中文官网中文档的例子敲一遍,其中Markdownpad2为官网中推荐的编辑器 备注: 如果只看中文官网文档,不边看 ...

  7. Linux 中优秀的文本化编辑思想大碰撞(Markdown、LaTeX、MathJax)

    这样一个标题可能不太准确,因为确实无法准确地解释什么叫"文本化编辑思想".其实我这篇随笔主要是想探讨 Markdown.LaTeX.MathJax,有兴趣的朋友可以继续往下看,同时 ...

  8. Markdown是怎样接管我的各种的写作工作的

    对于一个程序猿来说,没有什么比单纯的写代码更能让人兴奋了.如果能让你像写代码一样写文档,不用再面对那些繁琐的样式,你会怎么看?它就是Markdown!即使博客园已经有不少介绍的文章了,但是我依然还是不 ...

  9. markdown常用语法总结

    转自markdown示例[模板] 1.1.段落标题 根据原文中的文档标题可以对应设置标题. # 一级标题## 二级标题### 三级标题 效果 => 一级标题 二级标题 三级标题 1.2.斜体.加 ...

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

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

随机推荐

  1. [NOIP2012] 普及组

    寻宝 大模拟 #include<iostream> #include<cmath> #include<algorithm> using namespace std; ...

  2. CSS 命名管理 之 BEM

    好吧,将 BEM 简单的解释为 “Block-Element-Modifier“, 其实是个不负责任的做法.鬼知道 Block 是什么啊?所以,看了一些似懂非懂的中文解释之后,自己还是得去找些英文来读 ...

  3. POJ2456 Aggressive cows

    Aggressive cows 二分,关键是转化为二分! #include <cstdio> #include <algorithm> ; ; int N, C; int a[ ...

  4. 计算机图形学 - 图形变换(opengl版)

    作业题目: 图形变换:实现一个图形绕任意直线旋转的程序. 要求:把一个三维图形绕任意一条直线旋转,需要有初始图形,和旋转后的图形,最好也可以实时控制旋转. 最少要做出绕z轴旋转. 原理:http:// ...

  5. ECMAScript严格模式简介

    写在前面 大家都知道使用"use strict"表示使用ECMAScript进行严格模式,使用"use strict"有两种方式 在文件头部写上它(使得整个脚本 ...

  6. w3m常用快捷键

    H    显示帮助 q    退出,会有提示的 j,k,l,h  移动光标 J/K   向下/向上滚屏 T     打开一个新标签页 Esc-t 打开所有标签页,供你选择,使用jk来上下移动 U    ...

  7. f.lux for Linux安装

    1.安装f.luxsudo add-apt-repository ppa:kilian/f.lux sudo apt-get update sudo apt-get install fluxgui 2 ...

  8. auto dock

    http://mgltools.scripps.edu/ http://mgltools.scripps.edu/downloads/previous-releases/mgltools-1-5.4/ ...

  9. SQL Server编程(03)自定义存储过程

    存储过程是一组预编译的SQL语句,它可以包含数据操纵语句.变量.逻辑控制语句等. 存储过程允许带参数: 输入参数:可以在调用时向存储过程传递参数,此类参数可用来向存储过程中传入值(可以有默认值) 输出 ...

  10. nginx 学习笔记(9) 配置HTTPS服务器--转载

    HTTPS服务器优化SSL证书链合并HTTP/HTTPS主机基于名字的HTTPS主机带有多个主机名的SSL证书主机名指示兼容性 配置HTTPS主机,必须在server配置块中打开SSL协议,还需要指定 ...