讲真,Markdown有啥魅力,竟让如此多人入迷!

数据管道

共 5360字,需浏览 11分钟

 ·

2020-11-15 07:46

出品:Python数据之道

作者:Peter

编辑:Lemon

一文入门Markdown

今天给大家带来的一篇文章是关于Markdown的。当我正在写这篇文章的时候,我其实也是在使用Markdown,所以这是一种很奇妙的感受:用Markdown写关于Markdown的文章?。

接下来,我将从以下6个方面对Markdown做一个详细的介绍,不仅帮大家快速了解Markdown,同时也能够帮助大家快速上手Markdown,不仅仅是入门而已。

我和Markdown的故事

2018年硕士毕业后,步入社会参加了工作。因为第一份工作的原因,机缘巧合地进入了互联网这个大环境,也进入了数据这个大行业,我开始自学Python、Linux、pandas、numpy,数据分析及可视化、数据挖掘算法,以及机器学习的入门知识。

经过两年多的不断学习和工作,我成长收获了很多,也爱上了数据这个充满前景的行业。在学习的过程中,我一直在寻找适合自己的方法和工具来记录学习的过程和成果。

一开始我在有道笔记、印象笔记等工具上进行记录,后来我转到了知乎、CSDN、掘金等平台上。当初写作的时候,我使用的都是纯文本类似Word编辑的格式进行文档撰写。

但是那样真的是太丑,太low?了。完全没有任何的特色,还不如在office中直接进行编辑。因为这些平台和工具,单纯的写作是拼不过Word这个利器的。毕竟Word就是专门为写作而生。

后来到了2019年的2月份,我在网上知道了Markdown这个语言,慢慢地去了解它,经常去使用,从此我便爱上了Markdown

从接触Markdown到现在1年半多的时间,我几乎每天都在使用Markdown,可以说对它掌握到了炉火纯青的地步(吹?牛?),毕竟熟能生巧。到现在,如果不是工作上面的特殊需求,我都是Markdown的写作,技术文档、博客、做笔记等都是用Markdown,越用越熟,越用越爱❤️

这便是我与Markdown的故事

什么是Markdown

Markdown是一种纯文本、轻量级的文本标记语言

它不是一款软件!它不是一款软件!它不是一款软件

通过Markdown的简单标记语法,我们能够以纯文本的形式编写文档,而且几乎所有的文本编辑器都能够对其进行再次编辑。

Markdown的优势

和其他我们常见的文本编辑器,比如office中的word、记事本、notepad++,还有一些开发者IDE的编辑工具相比,markdown有着自己强大的优势:

  1. 标记语言

Markdown是单纯地依靠特定的符号来标记的语言,比如-、+、*、=

通过这些标记的符号我们就能够实现特定的功能,它们能够让我们专注于写作,不用花费太多的时间和精力在排版上。

  1. 轻量级

Markdown的轻量级体现在两个方面:

一是它的语法非常容易被记住,结构易上手,一个使用者能够很快地上手Markdown;

二是通过Markdown写作的文档占据的内存大小非常低,大家看下这篇文章通过 md、PDF、Word、HTML 这4种格式保存的效果来进行对比就知道Markdown到底有多么轻:

还有自己曾经写过的另一篇文章,对比Markdown和其他格式文件的大小:

非一般的轻!!!

  1. 书写流畅

在利用Markdown进行编写的过程中,我们只需要将视线固定在光标处,在输入的时候使用不同的字符,也就是两种字符:文本字符和标记字符,我们就能同时完成文本和格式编辑。

这就是Markdown的神奇之处

这就是**Markdown**的神奇之处   # 上面的书写方式

通过上面的例子,我们可以同时完成Markdown的输入和格式编排?

  1. 格式固定

同一篇Word的文章,在2003、2007或者WPS中很有可能打开的时候看到的效果是不一样的,甚至可能出现乱码。相信很多人碰到过这种情形。但是md的文章不一样:

只要能够打开Markdown文章的编辑器,看到效果都是相同的

  1. 导出方便

Markdown的格式导出是非常方便的,除了常见的PDF、HTML等格式,还能够直接复制到微信公众号、知乎、掘金等平台上,例如笔者的Typora(笔者认为最厉害的书写Markdown的工具)中导出的格式如此多样化:

Markdown的使用场景

上面介绍了Markdown的诸多优势,那到底什么时候我们该使用它?

网络环境下的写作

首先我们要明白:Markdown是基于HTML开发出来的,它的目的就是创造一个更容易读写的语言,从而用于网络上面的写作。写作即排版

所以,没有什么语言比Markdown更适合在网络环境写的书写

现在很多的平台都是支持Markdown写作的:

  • 知乎
  • 微信公众号
  • 掘金
  • 简书
  • CSDN

国外的一些网站,比如:Ghost、Typecho等平台仅仅支持Markdown格式的.md文件

所以,Markdown能够让我们使用专注于写作,而非排版

文档协作

一份写好的Markdown文档是能够在任何系统的任何文本编辑软件中打开的,能够保证在不同的系统之间进行切换,这样的好处是:

  1. 项目团队的成员能够自由地选取自己喜欢的Markdown工具在自己的系统上进行写作,而不受团队其他成员的系统和编辑器的限制
  2. Markdown文章的展示不仅仅是在我们Markdown编辑器中,还能够转成HTML网页的内容,可以让读者在浏览器中直接打开观看

特殊领域应用

由于现在Markdown的流行,它已经被嵌入到了很多工具中,比如笔者也是每天在使用的jupyter notebook,一款用于机器学习和数据分析的强大利器。

在jupyter notebook中就能够直接使用Markdown进。这样使得我们在进行数据分析的同时,能够直接将我们的分析结论写在notebook中。

将Markdown编辑器和jupyter notebook地完美结合,极大地方便了笔者的工作,然而这时Word等传统的文本编辑工作无法做到的。

Markdown工具

现在有很多的平台和工具都能够进行Markdown的书写,Markdown文档在它们之间也是能够相互编辑的。常见的有:

  • 工具类的有:Typora、Typed、Ulysses、Falcon、MacDown、Mou,笔者使用的就是Typora,目前它是免费的,而且有多种主题可以进行选择
  • 平台类的有:微信公众号、知乎、CSDN、掘金、腾讯云社区等,笔者在每个平台都有尝试过。目前在掘金和腾讯云社区比较多
  • 手机APPMWeb、马克文档等,这个笔者几乎不使用

强烈建议使用Typora?,这篇文章就是在Typora中完成的。

Markdown语法

终于来到了介绍语法的部分,通过下面语法部分的讲解,保证能够掌握95%的Markdown语法。

标题

在Markdown中进行编写的时候,标题也是有等级的,目前最多的是6级,是通过#的个数来实现的:

# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题

实际的效果为:


引用

如果我们想在文中引用一段话,或者我们自己想将某段话当做引用的文字,可以通过下面的方式来实现:在文字的前面加一个>符号,同时要和后面的文字隔开;

> 路漫漫其修远兮,吾将上下而求索

实际效果为:

路漫漫其修远兮,吾将上下而求索

当然也是分等级的,我们通过>的个数来实现多层引用,也就是嵌套引用:

> 本篇文章讲解的是Markdown,分为如下几个方面:
>> 1.我和Markdown的故事
>> 2.什么是Markdown
>> 3.Markdown的优势

本篇文章讲解的是Markdown,分为如下几个方面:

1.我和Markdown的故事

2.什么是Markdown

3.Markdown的优势


分割线

分割线的作用就是将上下的内容分割开来,使用的3个或者3个以上的-、+、*(3个符号中的一个)

比如在上面已经使用了华丽丽的分割线

字体颜色

在实际的写作过程中,我们或许想给字体加上不同的颜色进行标注,这个时候颜色标注就是最好的功能,通过一个例子来说明:

夏天是的,秋天是

实际的源码是:

夏天是$\color{red}{红色}$的,秋天是$\color{yellow}{黄色}$的

实现的方式为:$\color{指定颜色}{文本内容}$

字体高亮

有了字体的颜色设置,我们看看字体的高亮,其功能也是想突出强调某些文本,下面的内容实现了文本的高亮:

夏天是==红色==的,秋天是==黄色==的

具体的实现方式为:用一对==将文字包裹起来即可

夏天是==红色==的,秋天是==黄色==的

字体加粗

有时候我们会向对某些字体加粗处理,下面的字体实现加粗:

我是中国人,我在中国

具体的实现方式为:用一对**将文字包裹起来

我是**中国人**,我爱**中国**

字体斜体

有时候我们想对字体实现斜体,也是想强调某些文本内容:

斜体也是起到了强调的作用

上面的斜体两字就是实现了斜体的效果,具体实现方式为:用一对*将文本包裹

*斜体*也是起到了强调的作用

无序列表

比如笔者正在的这篇文章,分为好几个子版块,我们使用无序列表:

  • 我和Markdown的故事
  • 什么是Markdown
  • Markdown的优势

实现的具体方式:在文字的前面加上-、+、*(3个中的一个),符号和文本之间必须要有空格(实现加粗)

- 我和Markdown的故事
+ 什么是Markdown
* Markdown的优势

有序列表

有序列表是通过数字来体现的,还是上面?的例子,我们使用有序列表来看看效果:

  1. 我和Markdown的故事
  2. 什么是Markdown
  3. Markdown的优势

实现的具体方式为:文字的前面加上数字即可,同时要有空格

1. 我和Markdown的故事
2. 什么是Markdown
3. Markdown的优势

注意:数字后面的点必须和之后的文字有空格

删除线

有时候在书写的过程中,我们想删除某些文字,比如经常听到的广告语:

例子:不要199,只要19

在上面的例子中199就是使用了删除线,具体的实现方式:通过一对~~(两个波浪线)将需要删除的内容包裹起来,源码为:

不要~~199~~,只要99

下划线

下划线也是经常使用的一种字体修饰方式,我们还是通过一个例子来讲解:

例子:李白是一位唐代的诗人

上面例子中的唐代就是使用了下划线,具体实现的方式:通过一队标签将内容包裹起来,实现的源码为:

李白是一位唐代的诗人

段内代码

如果我们的代码只有一行,我们使用段内代码,比如我学习的第一行代码是:print("hello world")

具体实现方式:通过一对反引号将代码包裹起来。不是单引号,不是单引号,不是单引号,具体实现的源码是:

`print("hello world")`

段外代码

段外代码其实就是代码的量比较大,我们需要使用代码块的形式,比如:

def add(x,y):  # 定义一个求和函数
  return x+y

使用的具体源码为:

图片

如果我们想在Markdown中插入图片,首先我们需要使用一个图床工具,获取到对应的Markdown链接,才能放到Markdown中。

比如:笔者在自己的macOS中使用的是ipic图床工具,将图片上床到ipic之后,获取到了链接:

# 这个就是图片的引用格式:![](链接)
![银杏树-图片注释](https://tva1.sinaimg.cn/large/0081Kckwgy1gkceimnuonj30u01401iv.jpg)
银杏树

链接

在Markdown中我们经常会使用链接,即当点击某写文字的时候,会自动跳转到文字指定的链接中,比如:我去年学习了python官网

在这里点击python官网几个字就会自动跳转到python的官网中去,实现的方式为:

[python官网](https://www.python.org/)  # 只是比图片少了个感叹号!

表格

在Markdown中也会经常使用表格,比如一个简单的学生成绩表:


地址语文数学英语
小明广东省深圳市南山区
向阳花园25栋
999089
小红湖南省长沙市岳麓区洋湖湿地公园909495
小芳福建省漳州市平和县939190

具体实现的源码为:

邮箱

使用一对<>将你的邮箱括起来即可:123456@qq.com,具体源码为:

<123456@qq.com>

脚注

今天讲解了很多关于Markdown^1的内容,希望对大家有所帮助,同时也给大家强力安利一下Typora^2这款Markdown写作神器,你一定会爱上Markdown的

脚注会显示在文章的最后面

使用的中括号[^],让我们看看实现的源码(通过图片的形式看如何实现)

总结

本文中讲解了很多关于Markdown的知识,从它的特点、使用场景到常用语法,只有掌握了基本语法,经常使用它们进行文档书写,才能达到熟练生巧的底部,相信你一定会爱上Markdown❤️。


作者简介

Peter,硕士毕业僧一枚,从电子专业自学Python入门数据行业,擅长数据分析及可视化。喜欢数据,坚持跑步,热爱阅读,乐观生活。个人格言:不浮于世,不负于己

个人站点:www.renpeter.cn,欢迎常来小屋逛逛

浏览 19
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报