有个苏联笑话,大概是说:[数据删除]展示了如何治理国家,[数据删除]展示了如何不治理国家,而[数据删除]则展示了国家是不需要治理的。同盟已经有不少大佬教大家怎么排版了,今天呢,我想跟大家聊聊怎么不排版,或者说聊聊我们是如何不需要排版的。
当然不是说真就不排版了,而是打算安利一个尽可能能自动化排版的工具——Markdown。肯定有很多人知道甚至在用Markdown,嘛,这篇文章不是给会用Markdown的人准备的,就是一个安利罢了。反正看安利不要钱,你买不了吃亏买不了上当,要是看不会或者觉得垃圾,还可以来一起水贴啊(不是
下面是本文的正文部分,后附本文的Markdown源代码供参阅。
Markdown简介
众所周知,论坛里有不少高端大气并且上档次的排版方式,主要都是基于表格的,可以用一些十分酷炫的操作实现一些十分酷炫的效果,相关内容可以参考新手保护区教学的排版部分以及表格魔法教室,其实笔者也不太会(笑),在此不再赘述了。现在问题来了,有什么能拯救像笔者这样就是学不会表格的笨比兼懒癌晚期呢?
Markdown: 我来!
看来Markdown朋友已经自告奋勇想要出战了,那么请你先介绍介绍自己吧其实还不是笔者我自己写的介绍
1 什么是Markdown
可能已经有很多人听说过Markdown了,但是对于那些第一次听说这个东西的人,这里就先介绍一下什么是Markdown。知道怎么用的人干什么读本文嘛
说人话就是,Markdown提供了一种方法来标注文档的各个组件,这样就能用合适的方法自动渲染出来以完成排版。比如说,想告知电脑这一行是个标题,就在行首打几个#号就好(当然这串#后面实际上要跟一个空格)。翻译Markdown的排版程序一看见行首的这串#,就知道这一行是个标题,然后就自动套用上正确的格式了。
这一切都是自动化的,你不必费心去菜单里点来点去,甚至都不用去拿鼠标。双手留在键盘上,格式就标注好了。这样写文档时的思绪就不会中断,还能得到一个看上去不算丑的排版效果。只要把注意力放在文档本身上就好,是不是很吸引人呢?
2 怎么用Markdown
当然了,Markdown本身只是一套表示文档结构的语言,就是说只是规定了不同的文档元素用什么符号表示罢了,实际渲染还是要靠专门的程序加以渲染的。而同样的文档元素,不同的渲染程序渲染上的格式也不尽相同,有的效果很好看很美观,而有的只是显示了文档的结构。
最推荐的编辑器当然还是VS code。VScode的一些扩展还允许将排版结果输出成HTML文件,从而用word或浏览器打开,或者打印。
不想安装软件?试试在线Markdown编辑器,如这个CMD在线编辑器等等,甚至腾讯文档也支持Markdown。
甚至还有一些编辑Markdown浏览器插件,如markdown here等。特别的,你在markdown here的官网上也可以找到一个Markdown的沙盒,可以进行编辑。
总的来说,markdown有很多不同平台上的编辑器产品,它们各具特色。
当然了,论坛里是不支持Markdown的。读者可以找一个编辑器渲染出来,拷贝到编辑框里发布即可。当然,记得看一下预览,有一些特殊的格式论坛的编辑框不兼容。
如果觉得某种编辑器的效果不美观,可以换一个编辑器试试看!
3 怎么写Markdown
这是今天的重点。Markdown姑且是一种语言,它的核心当然是语法。闲话不多说,比起说它有多简单,不如展示给各位看,我们直接开始吧。
段落
最基本的,文档少不了一段一段的话。正文是不需要标注的,任何没有标注的文本都会视作正文。
正文可以分段。两个段落之间空一行即可。如果只是想像一个回车那样换行而不是分成泾渭分明的两段,那就在回车前面加上两个空格。这样,回车前后就分成了两小段。
像这样。本文的源代码那里,上面那一句的句号后面有两个空格,而不是空了一整行。
可以对文本做加粗、倾斜、删除线等等处理。在要倾斜的文本两侧加一个*号,在粗体文本周围加两个*号。用下划线_,也有同样的效果。但是,它俩不能混用。删除线则是在文本周围用两个波浪线~~围起来。
什么,又加粗又倾斜怎么办?1+2=3,所以要用3个*号或_号。
*示例:斜体* -> 示例:斜体 **示例:粗体** -> 示例:粗体 ***示例:粗斜体*** -> 示例:斜体+粗体 ~~示例:删除线~~ -> 示例:删除线
标题
标题前面简单介绍过了,这里再重复一遍。标题需要另起一行,有6级。想打出几级标题就输入几个#号,然后敲一个空格,输入你的标题。
语法: #### 示例:四级标题
示例:四级标题
一至三级标题想必各位已经见过了,不再一一举例。
引用
引用是整段整段标注的。在段首输入一个>即可。输入几个>,就表示这是几级引用。
语法: >>>>>>引用套娃
分割线
另起一段输入至少三个-即可。记得跟上一段要空一行,否则上一段会变成标题。
语法: ---
效果↓
超链接
这个格式就有点复杂了,它长这样:
[A](B)
由两部分组成:方括号括起来的A和圆括号括起来的B。A是显示出来的文本,B是超链接指向的地方。这个可以是本机的一个文件,或者一个网址。
示例:[同盟首页](https://sstm.moe)
效果:同盟首页
列表
列表由两种:有序列表和无序列表。先介绍有序列表。列表项的语法是数字+.+空格+内容,如
1. 内容 456. 内容
前面的数字是多少并不重要,只要是个数字就行,Markdown会自动修改成正确的数字。但一般来说,建议用全是1.或按次序从1开始,逐项加一。上面列表的效果是
内容
内容
无序列表相比有序列表,仅仅是.前面从数字换成了特定的符号-而已。如
- 内容 - 内容
效果是
内容
内容
利用列表还可以管理待办事项。看例子:
- [ ] 待办事项1 - [x] 待办事项2
1. [ ] 待办事项1 2. [x] 待办事项2
注意空格。上面这些空格都是必要的,缺少会导致格式判定失败。上面两种用法的效果都是:
待办事项1
待办事项2
注意到,不论是有序列表还是无序列表,变成待办事项的形式之后都一样。但是,如果没有列表,就不会进行待办事项的判定。
表格
表格的语法也稍复杂,不过比超链接的好懂。我先上一个例子,这是另一个文档的一个数据表,随便拿来一用:
|语言|运行1|运行2|运行3|运行4|运行5|平均值| |:-:|:-:|:-:|:-:|:-:|:-:|:-:| |C|109|110|125|125|109|115.6| |Java|130|124|124|120|124|124.4| |Python|12488|10812|11393|12041|12116|11770.0| |Haskell|20859|17500|19859|18328|16875|18684.2|
这是效果:
语言
运行1
运行2
运行3
运行4
运行5
平均值
C
109
110
125
125
109
115.6
Java
130
124
124
120
124
124.4
Python
12488
10812
11393
12041
12116
11770.0
Haskell
20859
17500
19859
18328
16875
18684.2
(我也不知道为什么这个Haskell跑的这么慢,别问,问就是写出了bug)
简单说就是三部分:表头,分割线和数据行。表头跟数据行的格式一样,就是相邻的列用|隔开即可。分割线是很重要的,它一可以像渲染器说明这是一个表格,二可以指明这一列的对其方式。这个方式是通过冒号指明的,左侧有就是左端对齐,右侧有是右端对其,两侧都有就是居中。默认情况,就是两端都没有冒号,是左对齐。另外,分割线中的横杠-,个数具体是多少都行,没必要非得是一个。看例子:
|无冒号|左侧|右侧|两侧| |-----|:---|---:|:--:| 1111111111|11111111|11111111|111111111111
无冒号
左侧
右侧
两侧
1111111111
11111111
11111111
111111111111
上例中,通过适当地增减横杠的个数,可以让列分割线尽可能整齐一点,看上去更美观。
以上这些内容,应该可以应付大多数文档编辑的情况了。实际上Markdown还有更多功能这里没有写出来,如插入图片、数学公式、代码片段(猜猜看我在本文是如何展示源代码的?)、流程图等等。有兴趣的读者可以自行搜索markdown语法。
以上!
以上是本文的全部内容。下面附上本文的源代码。