#创作计划#Markdown 排版教学
2025-08-28 22:37:09
发布于:江西
前言
我发现在 ACGO 几乎没有人会正确使用 Markdown。
如果是因为不会,那么这篇文章一定会帮到你!
本文不可代替官方排版规范,仅作为基本语法的教学!
注:为了演示某种 Markdown 的显示效果,本文会出现滥用的现象。
注2:本文的措辞可能有一定问题,若找出请反馈。
正文
Markdown 综合来看其实只有以下几种东西:
-
正文文字
-
标题
-
文字效果
-
代码块
-
引用块
-
列表
-
公式
-
链接
-
表格
-
图片
我们将逐个讲解它们的使用方法。
当然,本文给出的很多都只是建议,你可以在任何需要的地方使用任何合适的排版方式。例如,代码块包裹的不一定是代码。
正文文字
正文文字很简单,你在阅读的大部分文字都是正文文字。它几乎唯一的语法在于换行。
请注意!ACGO 编辑器不同于其他 Markdown 编辑器,它们的换行识别不同!本文以其他 Markdown 编辑器为准!
硬换行
如果你希望的显示效果为:
第一行内容
第二行内容
那么在换行时,请连续按两次回车键,也就是在中间空一行。
大部分地方使用这种换行方式!
软换行
如果你希望的显示效果为:
第一行内容
第二行内容
那么请在打完第一行内容后再键入两个空格符,然后按一次回车键。
ACGO 编辑器的换行识别
ACGO 编辑器即使不在末尾额外输入空格,也会将换行识别为软换行显示。并且即使使用换行的地方不完全是正文(例如是无序列表)它的换行渲染也与其他编辑器有很大不同。
请注意这一点造成的影响。
注意事项
- 在同时使用英文字母、符号与中文时,在英文字母、符号与中文间空格。如:这道题考察的是 DFS 算法。
- Markdown 存在部分特殊字符,它们有特定的语法功能。如果需要在正文文字中使用这些字符,应使用 \ 进行转义。如:
\*1\*
实际显示为 *1*。如果不使用 \ 转义,它会被识别为斜体。 - 除数学相关内容外,不要混用中英文标点符号。
标题
标题的格式如下:
# 标题内容
前面的井号的个数就是这个标题的级别。级别越大,标题越小,最小可达六级。后面的文字则是标题内容。
一到六级的标题显示效果如下:
一级标题
二级标题
三级标题
四级标题
五级标题
六级标题
如果使用了超出六级的标题,它会退化为正文文字,比如:
####### 七级标题
有关它的语法,请注意,标题必须独占一行。
注意事项
- 不要滥用标题行!用标题功能把某些字弄得特别大或者别的效果以此达到任何目的都是不明智乃至***的。
- 标题等级应保持合理的架构。你不应该让一个二级标题作为四级标题的子标题。
文字效果
有关各种文字效果就不详细介绍了,想必各位能从它的名字和接下来的演示中明白。
加粗
加粗的格式如下:
**需要加粗的文字**
它的显示效果为:需要加粗的文字
请注意,加粗效果是不可叠加的。
斜体
斜体的格式如下:
*需要变为斜体的文字*
它的显示效果为:需要变为斜体的文字
删除线
删除线的格式如下:
~~需要附着删除线的文字~~
它的显示效果为:需要附着删除线的文字
下标
下标的格式如下:
~需要作为下标的文字~
它的显示效果为:需要作为下标的文字
文字效果在排版中的引用
- 加粗效果可以被用于强调突出。如:请注意
upper_bound()
函数的返回值是迭代器。 - 斜体可以作为旁注。如:注:请不要把计数排序与基数排序混淆。
- 删除线可以用于玩梗。如:
不是哥们,这道题是人写的吗? - 下标请根据实际情况使用。
注意事项
- 不要滥用任何一种文字效果。
- 使用删除线玩梗不应当过多。
- 不要将下标的文字效果用于 公式中的下标。
代码块
行内代码块
行内代码块一般负责将编程风格的写法写在文段中。它的格式如下:
`需要使用行内代码块的文字`
显示效果如下:需要使用行内代码块的文字
请注意,如果你希望贴出一大段程序源代码,请不要使用这种代码块。
行间代码块
行间代码块一般负责显示大段程序源代码。它的格式如下:
```需要使用的编程语言
需要使用行间代码块的文字
```
显示效果不展示,之前所有格式示范都使用了行间代码块。
注:由于 Markdown 渲染原因,无法(至少我无法)将行间代码块的写法写在行间代码块中显示。
一般而言,“需要使用的编程语言”部分可以直接填写java
,python
,c
等,但请注意,C++ 的写法是cpp
而非c++
。如果无法识别输入的编程语言,那么代码块会以纯文本格式显示。
代码块在排版中的引用
- 行内代码块通常被用于部分不适合使用正文文字的内容与编程语言风格的写法。如:本题的状态转移方程为
dp[i][j]=min({dp[i-1][j],dp[i][j-1],dp[i-1][j-1]})+1
。 - 行间代码块通常被用于显示大段代码。如:
本题的 AC 代码如下:
#include<bits/stdc++.h>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout<<"\o/\o/\o/\o/\o/\o/\o/\o/\o/\o/";
return 0;
}
当然,你也可以把它当成文本框。
注意事项
- 行间代码块的开头、结尾部分无论如何必须必须处于空行。
- 不要滥用代码块。
后记
目前本文未完,该部分只是告诉你看到了结尾。
这里空空如也
有帮助,赞一个