A-A+

简单、流畅的写作体验:用Markdown来创作

2018年07月08日 软件技巧 阅读 433 views 次

Markdown的应用场景

我们常常会有灵光一闪的瞬间,需要赶紧记录下来,又或者常有一些比较常规的编辑整理工作需要做,这些工作可以用Markdown来完成。Markdown简单易学,可以用简单的语法进行漂亮的排版,10分钟掌握基本用法就能够完成90%以上的任务。因此,学习与使用Markdown是一件投入收益比很高的事情。国内的简书网就可以用Markdown来进行写作。很难说哪类工作一定要使用Markdown,因为类似的任务的要求也有差别,下面是几个适用Markdown的场景:

  • 需要随手记录一些东西,但是用记事本又不能突出重点和层次。
  • 有一些常规的文字编辑与整理工作,格式相对固定,不需要特别多样化的样式。Markdown可以对不同层次标题、正文运用不同的样式,也能够进行加粗、斜体、下划线等的标记,但不方便采用过于多样化的样式,除非你针对每部分单独写样式,但那样还不如直接用html
  • 有大量的数学公式需要输入。
  • 想快速画个简单流程图,或者要使用简单的表格。
  • 写博客,或者作业、论文(作为社科专业的学生,用Markdown做笔记确实方便。)

这些场景都是能明显体现Markdown优势的。当然,Markdown的应用不止这些,随着你对Markdown的日益熟练,很多工作也会越来越得心应手。

Markdown的优势

上述应用场景就是Markdown很好发挥优势的地方,那么相对于简单的记事本和常用的Word等文字编辑工具,Markdown的优势具体体现在哪里呢:

相对于Word

  • Markdown可以让你在写作的时候思路更加流畅。

用word之类的软件来进行文字编辑和整理工作的过程中就需要不时地停下来,拿起鼠标进行选中、调整格式等操作。这浪费了很多时间,有时排版花费的时间甚至快要跟写作的时间差不多了。更重要的是经常会打断写作思路。如果要写完再进行调整,调整之前看到的就是与记事本一样的没有格式的文本,容易找不到重点和层次。而Markdown是一种标记语言,它不需要作者过多的关注格式。例如,要输入新的一节,可以在输入节标题前顺手加上一个“#”,排版软件自动会用标题格式渲染该行。这样,在写作过程中就不需要关注排版,只要把自己的想法记录下来即可。

  • 文件交换不需要考虑文件格式问题

Markdown文件本质上就是纯文本,可以使用包括记事本在内的编辑器读写。在文件交换上就不需要考虑私有软件格式问题,例如WPS与微软Office的公式不一样导致的乱码等问题。如果只是编辑,实际上不需要专门的软件,用任意文本编辑器即可。我们所说的Markdown编辑器是包含诸如排版渲染、(实时与非实时)预览、导出多种格式等功能的。

  • 打开速度快。

Markdown文件打开速度基本相当于txt文件的打开速度,远远比Word要快。

相对于记事本

  • 能突出重点和层次性。
    记事本记录的是纯文本,没有格式,也不包含排版信息,当记录比较长时会造成人的视觉疲劳。阅读txt文档时要抓住重点也会比较耗费精力。Markdown则记录了文字的排版信息,使用多级标题、正文、粗体等标记突出重点和层次。
  • 通过css可以规定文字的大小、字体等样式,排版美观。
  • 支持图片、Latex公式、表格、流程图等,比txt能够更好的呈现丰富的信息。

最后,需要说明的是,Markdown不适合特别复杂多样的排版要求。这在某方面也可以说是优势,因为我们大多数人所需要的编辑功能并不多,正是有限但核心的功能使我们不需要记忆很多语法的同时能够完成基本文字编辑任务。我在刚开始用Markdown的时候只记住了下面五个语法,就能够顺利记录日常的课堂笔记了,直到我遇到了要输入很多公式的场景。学习公式的编辑需要多点时间,但输出漂亮的公式正好是Markdown的强项,好在使用过程中,可以随时学习其他语法。边使用边学习也是一个好办法。但如果你的编辑任务是非常复杂的,你也就需要更复杂的软件。

语法与排版

Markdown不是软件,它是一种简单的标记语言。它的核心思想是把排版的任务交给css,使用者只需要专注内容本身。下面我简单介绍一下css和Markdown的基本语法。

排版与css

Css是Markdown排版的基础,但多数人不用关注css。大多markdown软件自带的css通常就渲染得比较漂亮。但如果你需要特别的格式,就需要了解css了。

Markdown文件只是文本文档,本身并不提供样式的渲染。它给文字打上标记,然后把渲染交给css。我个人将github的格式添加了首行缩进两个字符,作为我的默认css,用于我的作业、报告和课堂笔记等场合。作为社会科学专业的学生,需要作大量的报告与笔记等。选择自己认为比较漂亮的格式,阅读时才会赏心悦目。如果感兴趣,可以到w3school学习css的语法。喜欢我的渲染效果的朋友,也可以点后面的链接下载我的css文件。(提取码:ps69)

下图是本文的源文件和使用自定义的css的预览效果对照(左边是源文件,右边是预览效果):

markdown文本及效果对照

markdown文本及效果对照

基本语法

Markdown的语法比较简单,从上图你也可以看出一些基本的语法。下面我将介绍五个Markdown的基本的语法。

标题

Markdown使用一行开头的“#”号表示标题,在“#”和标题内容之间最好空一格。如:

1
2
3
# 标题
## 二级标题
### 三级标题

得到的效果参照本文的标题效果。

加粗

加粗是左右分别用两个星号”**”包裹住内容。如:

1
我是**加粗**的文字

显示出来的效果是这样的:

我是加粗的文字

斜体

左右分别用一个星号”*”包裹住内容就是斜体。如:

1
我是*斜体*的文字

显示出来的效果是这样的:

我是斜体的文字

代码框

在文本的前一行和后一行分别用”`“将内容包裹起来,就会显示代码框的样式。本文上面部分的代码示例就是这种格式。注意:这个符号是反引号而不是单引号,一般在Tab的上方,感叹号(数字1)的左边。如:

{```}
去掉两个大括号(这个浅色的框就是代码框。)
{```}

引用

行首加上”>”(小于号),这一行就显示引用的格式,本文上面部分的显示效果就是用的这种格式。

更多的语法可以查看文末参考文献。

基本语法对照表

基本语法对照表

有了这几个语法,平常的课堂笔记、作业、论文都可以顺畅地书写了。在使用过程中,如果碰到其他需求,可以使用百度等查询这些语法。学习了几个简单语法之后,你或许迫不及待地想练习一下这个新技能。不妨点击下面的链接体验一下在线编辑器

Markdown编辑器

上文提到,Markdown文件其实可以用任意文本编辑器编辑,我们所说的Markdown编辑器准确的说是Markdown排版软件,软件功能其实主要是页面渲染及一些附加功能。Windows、Mac、Linux平台下都有很多支持Markdown的编辑器,比如有道云笔记就支持Markdown语法。由于我平时使用Linux系统,所以我需要的是跨平台或Linux版本的软件。在使用过程中又需要数学公式的支持和比较灵活的导出功能,在尝试了多款软件后,最终选择了ReText。下面我将简单对比几款软件。

ReText

ReText是我目前在用的软件,你在本文的第一张图中看到的就是它了。它打开速度快,设置灵活,是一款优秀的Markdown编辑器。ReText的界面并不漂亮,而且有些功能需要进行一些设置才能使用,很多人安装之后就像我一样不知道怎么使用,所以不久就卸载了。但后来在网上看到说我想要的那些功能它实际是支持的,我就又一次安装了这个软件,终于发现了它的优秀之处。ReText也有一些缺点,比如默认导出的pdf页边距过小,需要手动设置。ReText的有如下特点:

  • 支持数学公式(需要开启mathjax插件)
  • 支持自定义样式表
  • 支持多种格式导出(需要pandoc)
  • 启动快,占用低
  • 支持语法扩展
  • 可以在实时预览与编辑/预览模式之间切换
  • 不具有专注模式
  • 支持Linux、Windows和Mac平台。

安装与方法可以参考官方说明(英文版),也可以通过百度搜索别人的安装方式安装配置。

Moeditor

Moeditor是非常漂亮的一款Markdown编辑器,它默认导出的pdf边距合理,这比ReText要好。Moeditor的特点官方网站

  • 支持数学公式
  • 支持自定义样式表(但可能是我设置错误,自定义的样式并没有起作用)
  • 支持导出为pdf和html
  • 启动稍慢,界面炫酷
  • 不支持语法扩展
  • 支持在预览/编辑、实时预览模式的切换
  • 具有专注模式
  • 支持Linux、Windows和Mac平台。

Typora

Typora也是一款漂亮的Markdown编辑器,可以支持数学公式和多种格式导出。但是似乎除了已经安装的样式表之外,不方便自定义样式表。另外,Typora打开稍微慢。官方网站

  • 支持数学公式
  • 不支持自定义样式表
  • 支持多种格式导出(需要pandoc)
  • 启动慢,界面炫酷
  • 不支持语法扩展
  • 可以在源码模式和预览模式之间切换,但似乎无法实时预览
  • 具有专注模式、打字机模式等
  • 支持Linux、Windows和Mac平台。

最后的说明

实际上,Linux上支持Markdown的工具远不止这些,emacs、Atom、Sublime等编辑器都可以安装Markdown插件,还有Haroopad、Remarkable等软件。对于我来说,最方便定义css的ReText是我的首选。像Remarkable定义的css首行缩进会把标题也缩进,这对于中文来说是不可以的,但对于英文国家来说却是无所谓的。本文介绍的软件只供参考,其他软件也有非常好的功能,可能更加适合您的需要。

另外,Markdown并不是完美的语言。它支持的语法有限。为了实现更加丰富的效果,不同的编辑器对它做了不同的扩展,这使得部分语法之间不通用。不过markdown还是很优秀的语言,并且它还是github等网站的Readme文档默认的,有很广泛的应用。

声明:

本文为KDE控原创,以微尘的名字在自己的博客发布过原文链接,不存在版权问题。

本文与原文一致遵循 知识共享 署名 - 非商业性 - 相同方式共享 4.0 国际协议

参考资料

评论已关闭!

Copyright © 薄荷开源网 保留所有权利.   Theme  Ality

用户登录

分享到: