一文全面掌握Markdown语法,轻松开启写作之旅

发布时间:2023-03-27 09:30

总第008篇

这一篇也是对专栏 深入理解机器学习方法及Python实现 的写作做一些准备工作,全面掌握Markdown语法在编辑写作过程中的应用,从而大大提升写作效率。通过阅读本文,你将比较系统地掌握Markdown的编辑技巧,从而轻松开启你的写作之旅。

Markdown是一种轻量级的【标记语言】,语法比较简单,允许人们以纯文本的形式编辑文档。用Markdown编辑的文档,其文件后缀为.md、.markdown,也可以轻松导出为HTML、Word、PDF、图片、Epub等多种文档格式。Markdown可用来撰写电子书,如Gitbook,但目前更多的是用来撰写在线文档 。

1.MarkDown 语法

Markdown的语法简单,学习成本是比较低的。在掌握语法的情况下,多多练习就可以信手拈来。这里是提供一下Markdown创始人的语法文档说明:Markdown语法官方文档 。

  • Markdown 标题语法

Markdown支持两种方式的标题:Stextatx

第一种方式时,在内容文字下方输入等号线标记一级标题,在内容下方输入点划线标记二级标题。画线的个数可以任意个,都可以生效。如下所示:

        This is an H1
=============

This is an H2
-------------
      

第二种方式时,在内容首部加#后并加上空格来设定标题,1-6个分别表示一到六级标题。

  • Markdown 段落语法

Markdown段落没有特殊的格式,直接在内容的末尾加上两个空格回车即可。 当然,也可以在段落后使用一个空行来重新开启一个段落。

可以在一个空行中用三个以上的*-_来建立一个分割线, 符号间可以插入空格。

可以在文字两端分别添加~~,即可在文字上显示删除线。

  • Markdown 脚注语法

Markdown脚注的格式为[^要注明的文本] ,其实际用法如下:

        这是一个创建脚注的例子[^武三郎]
[^武三郎]:https://www.zhihu.com/people/wujitao 
      
  • Markdown 字体语法

Markdown有以下几种设置字体的形式,如下示例:

        *斜体文本*
_斜体文本_
**粗体文本**
__粗体文本__
***粗斜体文本***
___粗斜体文本___
      
  • Markdown 列表语法

可以在内容前使用*+- 并加上空格的形式创建无序列表。 有序列表直接使用数字加上.并加上空格来表示。

列表的嵌套只需要在子列表的选项中添加四个空格即可实现。有序列表与无序列表均嵌套。

  • Markdown 区块语法

Markdown区块引用是在段落开头用>并加上空格来实现的, 用>>表示第二层嵌套,依次类推。在区块中也可以使用列表等其它特性,语法是一致的。在列表中放区块时,也要有首部有四个空格的缩进。

  • Markdown 代码语法

若要在文字段落内添加一个一句代码,可以使用反引号` 将其包围。

对于代码区域,可以用四个空格一个制表符(Tab键) 来实现,也可以用``` 包围一段代码,并可以选择性的指定一门语言。如下示例:

        ```python    # 这里也可以不指定语言
plt.plot(x_points, real_func(x_points), label=\'real\')
plt.plot(x_points, fit_func(p_lsq[0], x_points), label=\"fitted curve\")
plt.plot(x_points, fit_func(p_lsq_regularization[0], x_points), label=\"regularization\")
plt.plot(x, y, \'bo\', label=\'noise\')
plt.legend()
```
      
  • Markdown 链接语法

Markdown链接的使用方法有两种:[链接名称](链接地址)<链接地址>。也可以使用更高级的链接方式,即链接地址用变量代替,在文章末尾处为变量赋值即可。示例如下:

        这是一个高级的链接方式:[武三郎][wu],用这种方式可以更高效。

[wu]:https://www.zhihu.com/people/wujitao

      
  • Markdown 图片语法

Markdown的图片语法格式也有两种:![Alt 属性文本](图片地址)![Alt 属性文本](图片地址 \"可先标题\")。其中,属性文本用来放图片的替代文字 。

目前,Markdown还不能指定图片的尺寸大小,若有需要,可以使用普通的标签,示例如下:

        
      
  • Markdown 表格语法

Markdown使用|来分隔不同的单元格,使用-来分隔 表头和其它行。在分隔表头和单元格的行处设置对齐方式,默认是左对齐的。对齐方式有:左对齐:-、右对齐-:、居中对齐:-:。 其示例如下:

        | 左对齐 | 右对齐 | 居中对齐 |
| :-----| ----: | :----: |
| 单元格 | 单元格 | 单元格 |
| 单元格 | 单元格 | 单元格 |
      

其效果为:

\"一文全面掌握Markdown语法,轻松开启写作之旅_第1张图片\"

2.Markdown 高级应用

  • 支持HTML元素

对于不在Markdown范围之内的标签,可以直接在文档中写HTML标签。目前支持的HTML标签有:
等 。如下示例:

        使用 Ctrl+Alt+Del 打开任务管理器
      

其显示结果为:

\"v2-0be0cde67d3ed041896c4e68496492df_b.png\"
  • 字符的转义

Markdown中很多的字符用来表示特定的意义,若要显示这些符号,要用反斜杠\\来转义。下表列出了需要转义的字符:

\"一文全面掌握Markdown语法,轻松开启写作之旅_第2张图片\"
  • 插入公式

若想插入公式,可以用两个$$包围LaTex格式的公式来实现,具体的LaTex插入公式的方法可参考文章:用LaTex语法快速编辑数学公式及好用的在线编辑工具 。

下面列举一个插入公式的例子:

        $$
\\mathbf{V}_1 \\times \\mathbf{V}_2 =  \\begin{vmatrix} 
\\mathbf{i} & \\mathbf{j} & \\mathbf{k} \\\\
\\frac{\\partial X}{\\partial u} &  \\frac{\\partial Y}{\\partial u} & 0 \\\\
\\frac{\\partial X}{\\partial v} &  \\frac{\\partial Y}{\\partial v} & 0 \\\\
\\end{vmatrix}
$$
      

其输出显示结果为:

\"\\mathbf{V}_1

3. Markdown 编辑工具

Typora是一款良好的Markdown编辑工具,支持MacOS、Windows、Linux平台,内部包含多种主题,编辑后直接渲染出效果,并且支持导出多种文件格式。Typora的下载地址为:Markdown编辑工具 。

在Typora中插入代码块,在里在写入代码并选择相应的语言,可以快速地画出各种流程图,这个比Visio要简单很多。下面举几个例子。

  • 横向流程图的书写
        ```mermaid
graph LR
A[方形] -->B(圆角)
    B --> C{条件a}
    C -->|a=1| D[结果1]
    C -->|a=2| E[结果2]
    F[横向流程图]
```
      

其显示结果为:

\"一文全面掌握Markdown语法,轻松开启写作之旅_第3张图片\"
  • 标准流程图的书写
        ```flow
st=>start: 开始框
op=>operation: 处理框
cond=>condition: 判断框(是或否?)
sub1=>subroutine: 子流程
io=>inputoutput: 输入输出框
e=>end: 结束框
st->op->cond
cond(yes)->io->e
cond(no)->sub1(right)->op
```
      

其显示结果为:

\"一文全面掌握Markdown语法,轻松开启写作之旅_第4张图片\"
  • UML时序图的书写
        ```sequence
Title: 标题:复杂使用
对象A->对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->对象A: 我很好(响应)
对象B->小三: 你好吗
小三-->>对象A: 对象B找我了
对象A->对象B: 你真的好吗?
Note over 小三,对象B: 我们是朋友
participant C
Note right of C: 没人陪我玩
```
      

其显示结果为:

\"一文全面掌握Markdown语法,轻松开启写作之旅_第5张图片\"
        ```mermaid
%% 时序图例子,-> 直线,-->虚线,->>实线箭头
  sequenceDiagram
    participant 张三
    participant 李四
    张三->王五: 王五你好吗?
    loop 健康检查
        王五->王五: 与疾病战斗
    end
    Note right of 王五: 合理 食物 
看医生... 李四-->>张三: 很好! 王五->李四: 你怎么样? 李四-->王五: 很好! ```

其显示结果为:

\"一文全面掌握Markdown语法,轻松开启写作之旅_第6张图片\"
  • 甘特图的书写
        ```mermaid
%% 语法示例
        gantt
        dateFormat  YYYY-MM-DD
        title 软件开发甘特图
        section 设计
        需求                      :done,    des1, 2019-01-06,2019-01-08
        原型                      :active,  des2, 2019-01-09, 3d
        UI设计                     :         des3, after des2, 5d
    未来任务                     :         des4, after des3, 5d
        section 开发
        学习准备理解需求                      :crit, done, 2019-01-06,24h
        设计框架                             :crit, done, after des2, 2d
        开发                                 :crit, active, 3d
        未来任务                              :crit, 5d
        耍                                   :2d
        section 测试
        功能测试                              :active, a1, after des3, 3d
        压力测试                               :after a1  , 20h
        测试报告                               : 48h
```
      

其显示结果为:

\"一文全面掌握Markdown语法,轻松开启写作之旅_第7张图片\"

对于Typora工具使用起来非常方便,特别是在画流程图时,只要掌握了语法,用起来简直是得心应手。希望大家多多练习使用,从而能为自己的工作和学习提高效率。

本文到此结束!

=======================================================

欢迎【关注作者、私信作者】。我们一起交流一起进步。

=======================================================

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号