洛谷 Markdown 格式手册
Markdown 的目标是实现「易读易写」,成为一种适用于网络的书写语言。因此洛谷使用 Markdown 发布内容。
请仔细阅读下列文档,如果没有按照要求正确使用格式,将可能无法发出讨论,或者被删除。
段落和换行
一个 Markdown 段落是由一个或多个连续的文本行组成,它的前后要有一个以上的空行。普通的 Markdown 段落不可以用空格或制表符来缩进。
空行:一行之内只包含回车换行、空格、制表符。
例如:
这是第一段话
这是第二段话
显示的效果如下:
这是第一段话
这是第二段话
如果两段之间不空一行,则无法正确分段。反面例子:
这是第一段话
这是第二段话
显示的效果如下:
这是第一段话 这是第二段话
段落内部换行
在行末输入两个空格可以达到比分段更加紧凑的换行的效果。
例如:
这是第一行
这是第二行
(请注意“这是第一行”后的两个空格,可以用鼠标拖动选中它们)
显示的效果如下:
这是第一行
这是第二行
提及(at)他人
要在洛谷讨论区回复中提及其他用户(即“at”该用户),可以使用符号 @ 后面紧跟该用户的用户名,再紧跟空格。
例如:
洛谷网的站长是 @kkksc03 ,网站于 2013 年开始运营。
(请注意“@kkksc03
”后的空格,由于用户名中不会有空格,它起到分隔用户名和后面的内容的作用)
显示的效果如下:
洛谷网的站长是 @kkksc03 ,网站于 2013 年开始运营。
本功能仅适用于洛谷讨论区的回复中,在其他使用 Markdown 的地方无效。
只有使用此方式才能让被提及的用户收到系统通知,获知是在什么时间、哪篇帖子内的回复、被哪位用户提及了。
标题
Markdown 的标题是在行首插入 1 到 6 个 #
,#
和标题文字之间使用一个或多个空格,对应到标题 到 级。
例如:
# 这是 H1
## 这是 H2
### 这是 H3
这是正文
显示的效果如下:
不要全文使用标题,或者用标题强调特别多的文字。这会让读者觉得困扰。
强调
Markdown 使用星号(*
)和底线(_
)作为标记强调字词的符号,被 *
或 _
包围的字词会被转成用 <em>
标签包围(即斜体),用两个 *
或 _
包起来的话,则会被转成 <strong>
(即粗体)。
例如:
*单星号斜体*
_单下划线斜体_
**双星号加粗**
__双下划线加粗__
~~删除线~~
显示的效果如下:
单星号斜体
单下划线斜体
双星号加粗
双下划线加粗
删除线
但是如果 *
或 _
的两边都有空白的话,它们就只会被当成普通的符号。如果要在文字前后直接插入普通的星号或底线,可以用反斜线(\
)(参见下面的“反斜杠”部分)。
例如:
\*使用反斜线开头的\*被当做是普通的字符\*
显示的效果如下:
*使用反斜线开头的*被当做是普通的字符*
代码块
如果要发送代码,但没有按照下面的方式进行格式化,将不能发送成功。
大段代码
Markdown 建立代码块的方法:将 ``` 置于这段代码的首行和末行,独立成一行。第一行的 ``` 后面可以加上语言名称,例如 cpp、java、c、pascal 等(不要写成 c++)。
例如:
#include<iostream>
小段代码
需要引用代码时,如果引用的语句只有一段,不分行,可以用 ` 将语句包起来。
注:如果真的要打 ` 这个字符的话,可以仿照和 * 这个字符一样的处理方式,在 ` 前加一个反斜杠。
区块引用
Markdown 标记区块引用的方法是在行的最前面加 >
,也可以只在整个段落的第一行最前面加上 >
,区块引用内部可以嵌套,只要根据层次加上不同数量的 >
即可,引用的区块内也可以使用其他的 Markdown 语法,包括标题、列表、代码区块等。
例如:
> Markdown 标记区块引用的方法是在行的最前面加 `>`。
>
> 也可以只在整个段落的第一行最前面加上 `>`。
> > 区块引用内部可以嵌套,只要根据层次加上不同数量的 `>` 即可。
> >
> > *我是内部嵌套区块,我可以使用其他 Markdown 语法哦。*
> >
> > ### 我是引用区块内使用 3 级标题语法。
> >
> > ```java
> > //在引用区块内可以加入代码块
> > import java.net.URL;
> > import java.util.Arrays;
> > import java.util.Date;
> > import java.util.Set;
> > ```
显示的效果如下:
Markdown 标记区块引用的方法是在行的最前面加
>
。也可以只在整个段落的第一行最前面加上
>
。区块引用内部可以嵌套,只要根据层次加上不同数量的
>
即可。我是内部嵌套区块,我可以使用其他 Markdown 语法哦。
我是引用区块内使用 3 级标题语法
//在引用区块内可以加入代码块
import java.net.URL;
import java.util.Arrays;
import java.util.Date;
import java.util.Set;
列表
Markdown 支持有序列表和无序列表,无序列表使用星号、加号或是减号作为列表标记,有序列表则使用数字接着一个英文句点。两种列表方式格式都是:列表标记 + 空格 + 列表项,即列表项目标记通常是放在最左边,也可以缩进最多 个空格,项目标记后面则一定要接着至少一个空格或制表符。
1 无序列表
星号、加号或是减号三种列表方式效果等同。
例如:
* Red
* Green
* Blue
+ Red
+ Green
+ Blue
- Red
- Green
- Blue
它们的显示效果均为:
- Red
- Green
- Blue
2 有序列表
有序列表则使用数字接着一个英文句点。
例如:
1. Red
2. Green
3. Blue
显示效果为:
- Red
- Green
- Blue
链接
在方块括号后面紧接着圆括号并插入网址链接即可,如果还想要加上链接的 title 文字,只要在网址后面,用双引号把 title 文字包起来即可,例如:
[行内式链接标题](http://www.luogu.org/)
显示效果:这是 行内式链接标题 内联方式。
图片
Markdown 使用一种和链接很相似的语法来标记图片。在互联网上发表含有图片的内容时,需要将该图片上传至可公开访问的存储空间内(也就是俗称的图床),在洛谷内可以使用图床上传图片后复制图片引用地址来使用该图片,具体使用说明可查看操作说明
行内式的图片语法如下:
![图片下方文字](图片相对路径或绝对路径)
![图片下方文字](图片相对路径或绝对路径 "可选标题")
详细叙述如下:一个惊叹号 !
,接着一个方括号,里面放上图片的替代文字(这些文字将在图片加载失败的时候显示),接着一个普通括号,里面放上图片的网址,最后还可以用引号包住并加上选择性的 'title' 文字。
例如:
![logo](https://cdn.class.luogu.com.cn/fe/logo-full.png?27925f707b34b1472e135b1a2dd848e5)
将会显示图片:
自动链接
Markdown 支持以比较简短的自动链接形式来处理网址和电子邮件信箱,只要是用尖括号包起来,Markdown 就会自动把它转成链接。一般网址的链接文字就和链接地址一样,例如:
<https://www.luogu.com.cn/>
显示效果为:
分隔线
可以在一行中用三个以上的星号、减号、底线来建立一个分隔线,行内不能有其他内容。也可以在星号或是减号中间插入空格。下面每种写法都可以建立分隔线:
* * *
***
*****
- - -
---------------------------------------
显示的效果如下:
反斜杠
Markdown 可以利用反斜杠来插入一些在语法中有其它意义的符号,例如:如果想要用星号加在文字旁边的方式来做出强调效果(但不用 <em>
标签),可以在星号的前面加上反斜杠。
Markdown 支持以下这些符号前面加上反斜杠来帮助插入普通的符号(加上反斜杠后,这些符号都会以原来的方式显示):
\ 反斜线
` 反引号
* 星号
_ 底线
{} 花括号
[] 方括号
() 括弧
# 井字号
+ 加号
- 减号
. 英文句点
! 惊叹号
插入 Bilibili 视频
见 https://www.luogu.com.cn/paste/okqcziz9。
LaTeX 公式支持
见 LaTeX 说明。