Markdown是一种用于很多博客、评论区的标记语言,最常见的用处是 Github 中的 README.md。
本站评论支持 Markdown,采用 Parsedown 作为解析器。此外,在本站还有这些地方会用到 Markdown:
- 大多数授权普通用户编辑的文章中
- 试卷的解答题区域中(目前没有发布过试卷)
图标含义:
属于Markdown标准
在代码块中仍然起作用(因此危险),并且不能用 \
字符屏蔽。
仅适用于此处(多以短码形式体现)
无法使用“只使用HTML”功能屏蔽
警告:误区
有的人一看到支持Markdown就打 [url=https://www.baidu.com/]百度一下[/url]
。注意,这是 BBCode 而不是 Markdown,因此在此处不工作。
说明:这不是Markdown。Markdown超链接格式是 [链接文字](https://example.com/ "悬停提示")
。
分段与换行
第一段
第二段.1
第二段.2
在Markdown中,空一行代表分段。
段内回车会造成不分段的换行。(注意,Markdown 标准中并非如此)
段落的内容不可使用Tab或空格缩进。
第一段
第二段.1
第二段.2
标题
一级标题
一级标题2
二级标题
二级标题2
三级标题
四级标题
五级标题
六级标题
行首的 #
表示此行是标题,标题级别等于 #
的数量。在 #
之后,需要加一个空格。
在一行文字下方加上 ---
(数量可以更多) 也可以表示二级标题,加上 ===
(数量可以更多) 也可以表示一级标题。
一般来说,标题从二级标题开始用,即始终不使用一级标题。
# 一级标题
一级标题2
===
## 二级标题
二级标题2
---
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题
粗体、斜体和删除线
粗体
斜体
粗斜体
混合语法test
删除线
混合语法test
一对 **
之间的文本是粗体,一对 *
之间的文本是斜体,一对 ~~
表示删除线。
**粗体**
*斜体*
***粗斜体***
*混合**语法**test*
~~删除线~~
~~*混合**语法**test*~~
如果需要在文章中使用 *
~
_
等字符,则需要在这些字符前面添加 \
。
*这不是斜体*
**这不是加粗**
*这不是斜体\*
\*\*这不是加粗\*\*
分割线
三个或以上连续(或中间有换行符)的 -
或 *
表示分割线。
****
---
同样,通过在每个字符前加上 \
可以避免被转换为分割线。-
和 *
混用不表示分割线。
---
****
-*-
-\-\-
\*\*\*\*
-*-
列表与列表嵌套
- 无序表
- 二
- 三
- 有序表
- 二
- 三
- 嵌套无序表
- 二
- 嵌套项1
- 嵌套项2
- 三
- 嵌套有序表
- 二
- 嵌套项1
- 嵌套项2
- 三
可以用 -
+
*
作为无序表符号,符号后要有空格。同一个无序表中使用的符号要统一。
在数字编号后加一个句点,然后空格,会自动生成有序表。嵌套的有序表会自动设定能够体现嵌套的序号。
有序表的数字编号如果是错的,会被自动更正。
以上两者均可以用缩进法实现嵌套(缩进为2个空格)。有序表嵌套和无序表相同。
- 无序表
- 二
- 三
1. 有序表
2. 二
3. 三
- 嵌套无序表
- 二
- 嵌套项1
- 嵌套项2
- 三
1. 嵌套有序表
4. 二
1. 嵌套项1
2. 嵌套项2
3. 三
如果不希望内容被识别为有序或无需列表,可以妥善使用 \
符号。
- 这不是列表
- 这也不是列表
- 这还是不是列表
1. 这不是列表
2. 这也不是列表
3. 这还是不是列表
- 这不是列表
\- 这也不是列表
\- 这还是不是列表
1\. 这不是列表
2\. 这也不是列表
3\. 这还是不是列表
引用
引用文本1.2
引用文本2.1
引用
引用的引用或引用中的引用。(禁止套娃)
Markdown基础语法仍然可以用于引用内容。但是其样式可能会有不同。
> 引用文本1.1
> 引用文本1.2
> 引用文本2.1
> 引用
> > 引用的引用或引用中的引用。(禁止套娃)
> **Markdown**基础语法**仍然可以**用于引用内容。
> ### 但是其样式可能会有不同。
链接与图片
链接语法为 [链接文字](https://example.com/ "悬停提示")
。
图片语法类似 ![替代文本](https://vjudge.net/static/images/beiju.jpg "悬停提示")
。(图片无法加载时会以“替代文本”来取代图片;悬停提示并非必须)
注意网址一定要加上 https://
等协议标志。如果不加上,将会引用相对资源,即如果文章页面是 https://ak-ioi.com/114514-a-cup-of-null-juice/
,你给出的网址是 www.baidu.com/favicon.ico
,那么引用的图片将是 https://ak-ioi.com/114514-a-cup-of-null-juice/www.baidu.com/favicon.ico
,当然无法加载。
[百度一下](https://www.baidu.com/?from=toxic2018.ml "百度一下")
![替代文本](https://vjudge.net/static/images/beiju.jpg "vjudge的卧槽")
注意,本站不会自动将直接打出的网址转换为可点击的链接。
http://vjudge.net/problem/description
https://vjudge.net/problem/description
插入简单HTML
这是一个图标:
有时候 Markdown 并无法满足你的编辑要求。此时允许直接插入简单的 HTML 代码。
评论和文章编辑(如果用户被授权)仅支持极少的 HTML,其余 HTML 标签将被直接删除。请尽量避免这种情况。
这是一个图标:<span class="fa fa-home"></span>
不使用 Markdown
如果你只希望使用 HTML,或者不希望 Markdown 解析器介入,在文章或评论的任意位置加入 <!--PARSEDOWN_DO_NOT_PARSE-->
即可。
插入代码
这是一段行内代码:print("Hello, world!")
这是一长串代码:
//请勿尝试运行。若运行后果自负
#include<bits/stdc++.h>
#include<windows.h>
#include<winable.h>
using namespace std;
int main(){
cout<<"你自由了!"<<endl;
FreeConsole();
while(1){
BlockInput(1);
}
}
在行内贴代码时,在代码两端加上 "`" 符号。
长串代码切忌直接粘贴(这甚至会导致“用标题行强调头文件重要性”的局面),应当在前后各加三个 "`"。如果需要代码高亮,请在代码前的符号后面直接跟上语言。如"cpp"。
这是一段行内代码:`print("Hello, world!")`
这是一长串代码:
```cpp
//请勿尝试运行。若运行后果自负
#include<bits/stdc++.h>
#include<windows.h>
#include<winable.h>
using namespace std;
int main(){
cout<<"你自由了!"<<endl;
FreeConsole();
while(1){
BlockInput(1);
}
}
```
表格
姓名 | 语文 | 数学 | 总分 |
---|---|---|---|
A | 82 | 100 | 182 |
B | 10 | 3 | 13 |
C | 99 | 95 | 194 |
表格不需要对齐。
| 姓名 | 语文 | 数学 | 总分 |
| ------- | ---- | ---- | ---- |
| A | 82 | 100 | 182 |
| B | 10 | 3 | 13 |
| C | 99 | 95 | 194 |
LaTeX / 数学公式
将 LaTeX 代码包含在两个 $
字符中,可创建行内公式。
将 LaTeX 代码包含在左右各两个 $
中,并且独立成行,会生成多行公式并居中。
这是一个公式:a^2 + b^2 = c^2
这是一个多行居中公式:
I\ AK\ IOI
这是一个公式:$a^2 + b^2 = c^2$
这是一个多行居中公式:
$$I\ AK\ IOI$$
利用 LaTeX,甚至可以做出超出公式范围的、有趣而有害的排版。
要使用 LaTeX,必须在评论开头加上 <!--edit:markdown-->
。
提示框
本文介绍的不是以下内容:
- 设置端口转发实现外网对内网的访问。
- 利用移动热点实现访问。
- 向运营商申请公网 IP。
- 使用付费的组网服务。
本文所述方法具有一定风险,且未经过反复验证,请谨慎对待。
若修改扩展名后无法双击运行,请检查文件管理器是否已开启扩展名显示。
不要尝试在真机上不加隔离地运行这些程序!这可能会对系统造成难以恢复的破坏。
提示框可以有效引起读者的注意。颜色的选择应当与内容相关。
[FMTinfo]
本文介绍的不是以下内容:
- 设置端口转发实现外网对内网的访问。
- 利用移动热点实现访问。
- 向运营商申请公网 IP。
- 使用付费的组网服务。
[/FMTinfo]
[FMTwarn]
本文所述方法具有一定风险,且未经过反复验证,请谨慎对待。
[/FMTwarn]
[FMTsuccess]
若修改扩展名后无法双击运行,请检查文件管理器是否已开启扩展名显示。
[/FMTsuccess]
[FMTerror]
不要尝试在真机上不加隔离地运行这些程序!这可能会对系统造成难以恢复的破坏。
[/FMTerror]
特殊格式
有颜色的文字
标记文本
不可告人的东西
// 注释文本
黑板文本
这些格式是本站特有的,在其他网站不会起作用。
[FMTcolor=red]有颜色[/FMTcolor][FMTcolor=blue]的文字[/FMTcolor]
[FMTbcolor=yellow]标记文本[/FMTbcolor]
[FMTredacted]不可告人的东西[/FMTredacted]
[FMTmeta]元数据行[/FMTmeta]
[FMTcmt]*// 注释文本*[/FMTcmt]
[FMTblackboard]黑板文本[/FMTblackboard]
注意:只能使用 red blue green 等基本单词作为颜色,不支持颜色代码。
提示:形如 [/FMTxxx]
的标签均可以 [/]
代替,但是不建议这么做。
屏蔽器[blank]
下面是一些危险的代码:
<!--PARSEDOWN_DO_NOT_PARSE-->
——不能直接打出,否则Markdown会失效(见“只使用HTML”章节)
[FMTcolor=red]示例文字[/FMTcolor] ——不能直接打出,否则会被理解成是文字颜色(见“文字颜色”章节)
### 标题行 ——不能直接打出,否则会变成标题。
[blank] ——不能直接打出,否则会被清除。
实际上,这些代码的打法大同小异。在本站,如果使用 Markdown,那么系统会自动清除文档中的 [blank]
。因此,在想打出“有活性”(即,会被Markdown和本站系统处理的代码)时,可以在这个代码中插入一个 [blank]
,使其失去活性。而输入的 [blank]
则会自动清除,不会影响视觉效果。实际上,本站上利用中括号处理的代码都是不能直接放进代码块的,此时也要用 [blank]
分隔。
下面是一些危险的代码:
`<!--PARSEDOWN[blank]_DO_NOT_PARSE-->` ——不能直接打出,否则Markdown会失效(见“只使用HTML”章节)
[FMTcol[blank]or=red]示例文字[/FMTc[blank]olor] ——不能直接打出,否则会被理解成是文字颜色(见“文字颜色”章节)
[blank]### 标题行 ——不能直接打出,否则会变成标题。
[bla[blank]nk] ——不能直接打出,否则会被清除。
授权编辑注意事项
如果你不在参与任何文章的编辑,则无需继续往下看。
有的用户可能会被授权编辑某一文章。请在编辑时遵循以下规则。
不要搞破坏
不要破坏文章。
提示:文章每次编辑都会生成历史版本。要还原被破坏的文章非常容易。
不要修改文章属性
除非必须,不要修改文章的标题、别名、分类目录、标签、形式、自定义字段、可见性等属性。你不懂这些东西,会搞错的。
不要乱删 HTML 注释
对于 Markdown 格式的文章,开头的 <!--edit:markdown-->
用于标记该文章的格式,请不要将其删除。
若不慎删除该注释并保存(这会导致进入 Gutenberg 编辑器),请不要试图在 Gutenberg 编辑器中修复问题(这会损坏文章)。正确的做法是,在地址栏末尾追加 &editormd
以强制进入 Markdown 编辑器,然后补加该注释并保存。
如果可能,不要使用搜狗输入法
搜狗输入法在某些情况下会触发编辑器故障,造成更改丢失,甚至文章损坏。建议使用 Windows 10 系统自带的输入法。
如果你的系统中存在搜狗输入法,请在每次点击或聚焦到浏览器窗口后都检查一次输入法是否正确。搜狗输入法未能正确处理 Meta
+ 空格
的输入法切换快捷键(引入于 Windows 8),因此改变窗口焦点后输入法可能切换回搜狗输入法。
统一粗体和斜体的写法
除特别说明外,粗体和斜体均用 *
表示。
例外:
- 记载名场面时,场景提示语和旁白语句的斜体使用
_
使用。
统一标题的表示
不得在文章中使用一级标题。标题级别应当逐级增加,不可跳级(网站的外观已经足以用来区分所有不同级别的标题)。
所有标题应当用 #
字符表示。
不要用整体缩进的方法表示多行代码
请始终使用 ``` 表示代码块,并且必须标明代码的语言。语言不清楚,或不在下面列表中的,按纯文本对待。
- plain = 纯文本
- cpp = C/C++
- csharp = C#
- java = Java
- javascript = JvavSpcirt
- python = Python
- pascal = Pascal
- markdown = Markdown
- html = HTML
- json = JSON
- jsonc = 允许注释和多余逗号的 JSON
- toml = TOML
- css = CSS
- yaml = YAML
- php = PHP
规范使用行内代码
行内代码不是当引号用的。如果行内代码的内容不是代码、哈希值、元素指代、字符串、字符、按键或标识符,应当按照语言规范使用引号。
表示组合键时,每个键单独一个行内代码块。比如,应该写 Ctrl
+ C
而不是 Ctrl + C
。多步组合键应当形如 Ctrl
+ K
| Ctrl
+ D
。
某些按键应当规范表示:
- PageUp =>
PageUp
- PageDown =>
PageDn
- Ins =>
Insert
- Delete =>
Delete
- NumLock =>
NumLock
- CapsLock =>
CapsLock
- 从 0 向右数的第三个键 =>
=
- 小键盘符号 =>
NUMPAD+
NUMPAD/
NUMPAD_ENTER
... - 小键盘数字 =>
NUMPAD0
~NUMPAD9
- 上下文菜单 =>
Menu
- 笔记本功能切换键(一般不写出) =>
Fn
- Windows 徽标键 =>
Meta
统一缩进的表示
多行代码块中的缩进应当一律使用 Tab;其余情况下,一律使用两个空格表示缩进。
不要使用全角空格
若创造与中文字等宽的间隔,请勿直接在 Markdown 编辑器中使用全角空格( )。输入两个连续的半角空格,系统会将其转化为全角空格。
不要同时编辑
如果文章页显示有人正在编辑,请不要贸然接管编辑权。同时编辑可能造成问题。
若需要接管编辑权,请先通过其他方式与页面上显示的用户取得联系,并使其停止编辑。
不要闲置编辑页面
停止编辑或较长时间暂停编辑的用户应当关闭编辑页面,防止一直占用编辑权。
Comments | NOTHING