一文了解文档写作利器 Markdown

一、前言

无论你是软件开发者,还是互联网写作者,为了使自己写的文档或作品更好的流通,便于在不同场合、不同环境、不同人群的查看,亟需寻求一种通用、便于扭转、留存的文档格式。

在这之前、现在或者今后,你可能会存在以下这些困扰:

  • 作为软件开发者、架构师,写的设计文档到底应该以什么样的格式来保存呢?是word、txt、pdf,还是html呢?这些文档格式,在不同情况下,可能都会存在。有时为了便于评审、修改,会采用word格式;有时为了防止文档篡改,会采用pdf格式;有时为了便于网页浏览(如:GitLib),会采用html格式。难道要针对不同格式进行不同的编写吗?
  • 作为互联网写作者,写的文章希望能够在不同的平台能够发表,分享给更多的人。而在不同互联网平台,如:微信公众号、CSND、知乎、有道云笔记等,文章的排版会花费你大量的时间,不同平台排版上也会存在一些差异性,甚至让你抓狂。难道不同平台要进行不同排版的调整吗?

办法总比困难多! 上述的这些困扰,Markdown就能很好的解决,接下来我们一起来了解下它吧。

二、Markdown是什么

Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。

Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表格、脚注、内嵌HTML等等),这些功能原初的Markdown尚不具备,它们能让Markdown转换成更多的格式,例如LaTeX,Docbook。Markdown增强版中比较有名的有Markdown Extra、MultiMarkdown、 Maruku等。这些衍生版本要么基于工具,如Pandoc;要么基于网站,如GitHub和Wikipedia,在语法上基本兼容,但在一些语法和渲染效果上有改动。

Markdown也是最受欢迎的写作"标记语言",它的简洁语法代替了排版,而不像一般我们用的字处理软件Word有大量的排版、字体设置等。它使我们更专心于码字,用"标记"语法,来替代常见的排版格式。

目前,支持Markdown语法的编辑器、平台、工具有很多,如:CSDN、简书、GitLab等,有的还支持了Markdown的导入、常见格式的导出,都十分的方便、高效。

优点

  • 专注你的文字内容而不是排版样式,安心写作。
  • 轻松的导出 HTML、PDF 和本身的 .md 文件。
  • 纯文本内容,兼容所有的文本编辑器与字处理软件。
  • 随时修改你的文章版本,不必像字处理软件生成若干文件版本导致混乱。
  • 可读、直观、学习成本低。

误区

We believe that writing is about content, about what you want to say – not about fancy formatting.

我们坚信写作写的是内容,所思所想,而不是花样格式。

Markdown旨在简洁、高效,也由于Markdown的易读易写,人们用不同的编程语言实现了多个版本的解析器和生成器,这就导致了目前不同的Markdown工具集成了不同的功能(基础功能大致相同),例如流程图与时序图,复杂表格与复杂公式的呈现,虽然功能的丰富并没有什么本质的缺点,但终归有些背离初衷,何况在编写的过程中很费神,不如使用专业的工具撰写来的更有效率,所以如果你需实现复杂功能,专业的图形界面工具会更加方便。当然,如果你对折腾这些不同客户端对 Markdown 的定制所带来高阶功能感到愉悦的话,那也是无可厚非的。

三、Markdown语法

下面介绍的是最常用的Markdown语法,包括语法说明、效果展示。其中,同一种类效果可能会有多种写法,第一种为标准语法,不同Markdown编辑器,会支持不同的特殊语法,并且展示效果上有细微差异。

1、标题

使用#标签表示标题,#和标题之间必须有空格。一级标题使用一个#,二级标题使用两个##,以此类推,共有六级标题。

语法如下:

# 标题H1
## 标题H2
### 标题H3
#### 标题H4
##### 标题H5
###### 标题H6

效果如下:

2、字符效果

  • 删除线:使用~~删除线~~或<s>删除线</s>标签
  • 斜体字:使用*斜体字*或_斜体字_标签
  • 粗体字:使用**粗体字**或__粗体字__标签
  • 上标:使用O<sup>2</sup>标签
  • 下标:使用X<sub>2</sub>标签
  • 缩写:使用HTML中的abbr标签,如:HTML

语法如下:

~~删除线1~~ <s>删除线2</s>
*斜体字1* _斜体字2_
**粗体字1** __粗体字2__
X<sub>2</sub>
O<sup>2</sup>
The <abbr title="Hyper Text Markup Language">HTML</abbr> specification is maintained by the <abbr title="World Wide Web Consortium">W3C</abbr>.

效果如下:

3、引用

使用>标签表示引用,>>标签表示引用里面再套一层引用,依次类推。

语法如下:

>这是一级引用文本内容
>>这是二级引用文本内容
>>>这是三级引用文本内容

效果如下:

4、代码高亮

代码块:

使用3个连续的` 标签包围起来。

语法如下:

效果如下:

行内代码:

使用``标签表示行内代码。

语法如下:

执行命令:`npm install marked`

效果如下:

5、链接

使用[](link)标签表示链接。其中,[]内的内容为要添加链接的文字,link为链接地址。

语法如下:

[普通链接](https://blog.csdn.net/xcbeyond)
[普通链接带标题](https://blog.csdn.net/xcbeyond "普通链接带标题")
直接链接:https://blog.csdn.net/xcbeyond

效果如下:

6、图片

使用![Alt text](/path/to/img.jpg)标签导入图片。其中,Alt text为如果图片无法显示时显示的文字,/path/to/img.jpg为图片所在路径。

语法如下:

![](https://www.mdeditor.com/images/logos/markdown.png)

效果如下:

7、列表

列表分为有序列表、无序列表,如下:

  • 有序列表:使用1. 2. 3.标签表示,其中.后面有一个空格的。
  • 无序列表:使用*-+标签表示。

有序列表:

语法如下:

1. 第一行
2. 第二行
3. 第三行

效果如下:

无序列表:

语法如下:

+ 列表一
+ 列表二
  + 列表二-1
  + 列表二-2
  + 列表二-3
* 列表三
  * 列表三-1
  * 列表三-2
  * 列表三-3

效果如下:

8、分割线

使用---***或者* * *标签表示水平分割线,其中大于三个。

语法如下:

---
***
* * *

效果如下:

9、表格

语法如下:

| Heading | Heading | Heading |
| ------- | ------- | ------- |
|  Cell |  Cell |  Cell |
|  Cell |  Cell |  Cell |

| Heading | Heading | Heading |
| :----- | :----: | ------: |
| 左对齐 | 居中 | 右对齐 |
| 左对齐 | 居中 | 右对齐 |

效果如下:

10、流程图

流程图常用的有一般流程图、序列图,不同Markdown编辑器,语法也是不同的。如下分别说明了其中一种写法,其他写法可自行具体查阅相关资料。

(注:个别编辑器可能无法正常显示效果。)

流程图:

语法如下:

效果如下:

序列图:

语法如下:

效果如下:

四、Markdown常用编辑器及工具

如何更好的使用Markdown,工具必不可少,在此介绍我用过的几款工具,分享给大家,以满足不同使用场景。

对于工具而言,只要自己用着顺手,就是最好的

1、Typora

Typora是一款轻便简洁的Markdown编辑器,支持即时渲染技术,这也是与其他Markdown编辑器最显著的区别。即时渲染使得你写Markdown就想是写Word文档一样流畅自如,不像其他编辑器的有编辑栏和显示栏。并且支持多种主题以供选择,如:GitHub、Newsprint等,如下图所示。

官方地址:https://www.typora.io/

2、MarkdownPad2

MarkdownPad2是一个windows上的Markdown编辑器,需下载安装,便于离线使用,如下图所示。

官方地址:http://markdownpad.com/

3、Mou

Mou是Mac上的Markdown编辑器,两栏界面,直观清爽,功能简洁到位,而且免费,如小图所示。

不仅如此,Mou还有一些有趣的偏好设置(Preference),例如主题(Themes)与样式(CSS),它们可以配置出定制化的文本编辑效果与导出效果,如果你对自带的主题与样式不满意还可以到 GitHub上搜索其它爱好者为Mou编写的更多主题样式,导入的方式可以在偏好设置的Themes或CSS选项中选择reload。

官方地址:http://25.io/mou/

4、MdEditor

mdeditor是一个在线编辑markdown的工具,无需本地安装,在线随时编辑、直接预览、随时导出,还提供对应标签的图标快捷操作,如下图所示。

在线编辑完后,可导出保存到本地.md文件即可。

官方地址:https://www.mdeditor.com/

5、coolaf md

我姑且就叫它为coolaf md,它是一款在线Markdown编辑、各种格式导出的工具,支持导出Word、HTML、PDF格式的文档,非常好用,强烈推荐使用,如下图所示。

官方地址:http://coolaf.com/tool/md

6、Md2All

Md2All是一款在线Markdown编辑,方便复制粘贴,一键排版,自定义CSS,80多种代码高亮,所有的样式渲染非常完美,包括图片加字也有方案支持。无需作任何调整就能一键复制到微信公众号、博客园、掘金、知乎、csdn、51cto等平台,如下图所示。

官方地址:http://md.aclickall.com/

参考文章:

https://zhuanlan.zhihu.com/p/92312642https://www.jianshu.com/p/1e402922ee32http://markdownpad.com/http://25.io/mou/

到此这篇关于一文了解文档写作利器 Markdown 的文章就介绍到这了,更多相关Markdown 写作利器内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • CommonMark 使用教程:将 Markdown 语法转成 Html

    Markdown写作 从 2016年 开始写博客,我的写作方式一直在改变,准确的说一直在进步,因为效率越来越高. 最初在 CSDN 上写东西时非常蹩脚,在他们编辑器上写点然后调整格式,再写,碰到图片还得将图片插入进去,调整图片大小位置等等,调整完继续写. 效率非常低. 后面了解到 Markdown ,改用 MD 写东西,效率快很多.后面在 Markdown 基础上慢慢优化找到自己的写作方式. 一般我用 MD 语法写完后,得到的是一堆带 MD 符号的文字,以下简称 MD文本. 然后会通过工具转成对

  • 如何使用Gitblog和Markdown建自己的博客

    下面给大家分享下如何使用Gitblog和Markdown建自己的博客,如何大家拥有服务器或者云平台提供的云主机,我推荐大家使用Linux+ Nginx 来运行Gitblog,如果大家目前只有Apache环境也可以. 域名解析 将你准备好的域名解析到你的主机IP,推荐使用 dnspod 来管理和监控你的域名,具体的使用方法参考dnspod官方说明文档,非常简单. Nginx+PHP运行环境 首先安装好你的Nginx和PHP环境,PHP版本要求5.3以上.如果你没有安装过,可Google搜索相关教程

  • markdown简介和语法介绍

    一.前言 之前有了解过markdown,但一直没实际使用,今天试用了下,感觉很爽,推荐给大家,特别是在编写规范.接口文档等方面非常适合,因为其简单易用也有很多人用来写网络小说. 二.介绍 Markdown 的目标是实现易读易写,可以直接在问编辑器书写和保存,除本身具有非常好的可读写外,还可以生存格式非常好看的html代码发布在互联网中. 如链接:我们,其书写格式为: [我们](http://www.jb51.net/) Markdown 不是想要取代 HTML,甚至也没有要和它相近,它的语法种类

  • Markdown语法备忘

    Markdown编辑器 Windows:   1. MarkdownPad   2. MarkPad Mac:   *Mou Linux:   * ReText Markdown语法 1.标题 复制代码 代码如下: # H1 <一级标题> ## H2<二级标题> 依次类推,直到 ###### H6<六级标题> 注意:#号和文字之间要有一个空格 2.文字格式 复制代码 代码如下: **文字粗体格式** --->在要加粗的文字左右各加两个*(星号) *文字斜体格式*-

  • 一文了解文档写作利器 Markdown

    一.前言 无论你是软件开发者,还是互联网写作者,为了使自己写的文档或作品更好的流通,便于在不同场合.不同环境.不同人群的查看,亟需寻求一种通用.便于扭转.留存的文档格式. 在这之前.现在或者今后,你可能会存在以下这些困扰: 作为软件开发者.架构师,写的设计文档到底应该以什么样的格式来保存呢?是word.txt.pdf,还是html呢?这些文档格式,在不同情况下,可能都会存在.有时为了便于评审.修改,会采用word格式:有时为了防止文档篡改,会采用pdf格式:有时为了便于网页浏览(如:GitLib

  • 可能是最通俗的一篇介绍markdown的文章

    这些日子一直在简书上使用markdown写作,已经渐渐的痴迷于这种简洁纯粹的写作方式了.不过就我逐渐入门markdown的写作过程来看,目前我看到的各种介绍markdown写作方式的文章都还略显"极客",对于大多数像我一样没有基础的普通人来说,可能内容上的可接受性没有那么强. 于是诞生了写这篇文章的初衷,让更多普通的人理解并爱上这种写作方式.所以全文应该不会出现什么生僻的词汇,大家可以放心的看下去.(好吧其实原因是那些生僻词汇我也不懂啊哈哈) markdown是什么? markdown

  • python 自动化将markdown文件转成html文件的方法

    一.背景 我们项目开发人员写的文档都是markdown文件.对于其它组的同学要进行阅读不是很方便.每次编辑完markdown文件,我都是用软件将md文件转成html文件.刚开始转的时候,还没啥,转得次数多了,就觉得不能继续这样下去了.作为一名开发人员,还是让机器去做这些琐碎的事情吧.故写了两个脚本将md文件转成html文件,并将其放置在web服务器下,方便其他人员阅读. 主要有两个脚本和一个定时任务: •一个python脚本,主要将md文件转成html文件: •一个shell脚本,主要用于管理逻

  • VueJs路由跳转——vue-router的使用详解

    对于单页应用,官方提供了vue-router进行路由跳转的处理,本篇主要也是基于其官方文档写作而成. 安装 基于传统,我更喜欢采用npm包的形式进行安装. npm install vue-router --save 当然,官方采用了多种方式进行安装,包括bower,cdn等. 基本用法 在HTML文档中使用,只需要利用v-link这个directive就行了,如: <a v-link="{path: '/view-a'}">Go to view-a</a> ​p

  • python和ruby,我选谁?

    最近在考虑学习一门后端语言,在ruby和python直接犹豫,然后自己做了一些对比,希望能帮到有同样问题的你. 一.异同对比选择 1.Python和ruby的相同点: •都强调语法简单,都具有更一般的表达方式.python是缩进,ruby是类basic的表达.都大量减少了符号. •都是动态数据类型.都是有丰富的数据结构. •都具有C语言扩展能力,都具有可移植性,比perl的可移植性更好.也都可以作为嵌入语言. •都是面向对象的语言,都可以作为大项目的开发工具. •都有丰富的库支持. •也有最宽松

  • Python ConfigParser模块的使用示例

    前言 在做项目的时候一些配置文件都会写在settings配置文件中,今天在研究"州的先生"开源文档写作系统-MrDoc的时候,发现部分配置文件写在config.ini中,并利用configparser进行相关配置文件的读取及修改. 一.ConfigParser模块简介 该模块适用于配置文件的格式与windows ini文件类似,是用来读取配置文件的包.配置文件的格式如下:中括号"[ ]"内包含的为section.section 下面为类似于key-value 的配置

  • Vue router安装及使用方法解析

    对于单页应用,官方提供了vue-router进行路由跳转的处理,本篇主要也是基于其官方文档写作而成. 安装 基于传统,我更喜欢采用npm包的形式进行安装. npm install vue-router --save 当然,官方采用了多种方式进行安装,包括bower,cdn等. 基本用法 在HTML文档中使用,只需要利用v-link这个directive就行了,如: <a v-link="{path: '/view-a'}">Go to view-a</a> ps

  • SpringBoot整合Swagger2的步骤详解

    简介 swagger是一个流行的API开发框架,这个框架以"开放API声明"(OpenAPI Specification,OAS)为基础, 对整个API的开发周期都提供了相应的解决方案,是一个非常庞大的项目(包括设计.编码和测试,几乎支持所有语言). springfox大致原理: springfox的大致原理就是,在项目启动的过种中,spring上下文在初始化的过程, 框架自动跟据配置加载一些swagger相关的bean到当前的上下文中,并自动扫描系统中可能需要生成api文档那些类,

  • Java基础之SpringBoot整合knife4j

    插件的特点 1.非常简洁清爽的UI设计,接口的快速搜索. 2.支持个性化设置,个性化设置包含: 请求参数缓存 动态请求参数 RequestMapping接口过滤 HOST代理设置 3.全局参数设置,可以很方便的设置Token等权限认证参数. 4.离线API文档下载: Markdown(已支持) Html(已支持) Word(已支持) OpenApi(已支持) 5.对 json 格式的数据有更好的支持,可以折叠展开等. knife4j官方文档地址 : https://doc.xiaominfo.c

  • ChatGPT Notion AI 从注册到体验及免费使用过程

    目录 1. Notion AI 介绍 1.1 Notion AI 简介 1.2 Notion AI 的核心能力 1.3 Notion AI 与 ChatGPT 的比较 2. Notion AI 国内用户注册 2.1 PC 端用户注册 2.2 移动端用户注册 3. Notion AI 快速体验 3.1 Notion AI 的基本功能 3.2 体验 Notion AI 写作 3.3 写作中调用 AI 的方法 4. AI 面板的功能与使用 4.1 AI 面板的功能 4.2 AI 面板选项 4.3 内容

随机推荐