行内代码:用反引号包起来

在一段话里提到函数名、变量、命令时,用一对反引号 ` 把它包起来,就会渲染成等宽、带底色的行内代码:

用 `git status` 查看当前改动,函数 `render()` 负责渲染。

行内代码和周围文字有明显区分,读者一眼就能看出「这是一段代码」。建议在文档里提到任何命令、标识符时都用上。

代码块:三个反引号围起来

整段代码用三个反引号 ``` 上下一包,就是一个代码块,会保留缩进和换行:

```
function add(a, b) {
  return a + b;
}
```

代码块里的内容会原样显示,不会被当成 Markdown 语法解析——这点很重要,意味着你可以在里面放心写 #*[] 这些符号。

语言标注:触发语法高亮

在开头的三个反引号后面写上语言名,渲染器就会给代码加上对应语言的语法高亮(关键字、字符串、注释用不同颜色):

```javascript
function greet(name) {
  console.log("你好," + name);
}
```

常用的语言标注:js / javascriptpython / pyhtmlcssjsonbash / shrust / rssqljavago 等等。

mdview 的语法高亮:mdview 支持代码块语法高亮,首次用到时按需下载约 120KB 的渲染库,之后离线也能用(v1.0.76 起)。不标语言也能显示代码,只是没有颜色。

当代码里有反引号:用更多反引号或波浪线

如果代码内容本身包含三个反引号(比如你要展示一段 Markdown 教程),用三个反引号围起来就会提前结束。解决办法有两个:

方法一:用四个(或更多)反引号当围栏,只要比内容里的反引号多就行:

````
围栏里可以放心写 ``` 三个反引号
````

方法二:用三个波浪线 ~~~ 当围栏,效果和反引号一样:

~~~
这里写 ``` 也不会冲突
~~~

行内代码也一样:如果内容里有一个反引号,就用两个反引号包起来;内容两端紧贴反引号时,加个空格再闭合。

缩进式代码块(了解即可)

除了围栏式,Markdown 还支持「缩进式」代码块:在行首缩进 4 个空格的段落会被当成代码。但这种写法不直观、也没法标语言,现在基本都被围栏式取代了。新文档建议统一用 ``` 围栏。

几个实用小习惯

  • 总是标语言:哪怕只是示意,标上 bashtext 也比不标强,高亮后可读性好得多;
  • 命令前别加 $:除非你要强调「这是终端输入」,否则直接写命令,方便读者复制;
  • 代码块前后留空行:紧贴正文有时会导致渲染异常,前后各空一行最稳妥。

速查小结

需求怎么写
行内代码`代码`
代码块``` 上下一包
带语法高亮```语言名
内容含 ```````~~~

一句话:行内用单反引号,整段用三反引号围栏并标语言,遇到冲突就把围栏「加码」或换成波浪线。