1.5 代码

学习 Markdown 行内代码、代码块、嵌套写法与 diff 高亮。

字数 806 字

代码语法概览

Markdown 中常用的代码相关语法有 4 类:

  1. 行内代码:反引号包裹
  2. 围栏代码块:使用 ```~~~
  3. 缩进代码块:每行前 4 个空格(或 1 个 Tab)
  4. diff 代码块:```diff 用于展示增删改

行内代码

在段落中表示函数名、变量名、命令时,使用单反引号 ` 包裹。

1
请调用 `printf()` 输出结果。

渲染效果:
请调用 printf() 输出结果。

行内代码中包含反引号

原则:内容里有几个连续反引号,外层就用更多个反引号包裹。

1
``使用 `反引号` 包裹代码``

渲染效果:
使用 `反引号` 包裹代码

1
```这里包含 `` 双反引号 ```

渲染效果:
这里包含 `` 双反引号

代码块

缩进式代码块

每行前添加 4 个空格(或 1 个 Tab)即可形成代码块。

1
2
3
4
5
6
7
正常文本段落

    这是缩进式代码块
    每行前面有四个空格
    保持原始缩进格式

继续正常文本

渲染效果:
正常文本段落

这是缩进式代码块
每行前面有四个空格
保持原始缩进格式

继续正常文本

围栏代码块(三反引号)

推荐写法:使用三反引号,并在首行声明语言类型,方便语法高亮。

1
2
3
4
5
```javascript
document.addEventListener("DOMContentLoaded", () => {
  console.log("Hello Markdown");
});
```

渲染效果:

1
2
3
document.addEventListener("DOMContentLoaded", () => {
  console.log("Hello Markdown");
});

代码块嵌套

在文档里讲解 Markdown 语法时,常常需要“在代码块里展示代码块”。

核心原则:外层围栏符号数量要大于内层。

外层使用更多反引号

1
2
3
4
5
````markdown
```javascript
console.log("nested block");
```
````

渲染效果:

1
2
3
```javascript
console.log("nested block");
```

外层使用波浪号 ~~~

1
2
3
4
5
~~~markdown
```javascript
console.log("nested block");
```
~~~

渲染效果:

1
2
3
```javascript
console.log("nested block");
```

代码差异对比(diff)

diff 代码块用于展示版本变更:
+ 表示新增,- 表示删除。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
```diff
function calculateTotal(items) {
-  let total = 0;
+  let total = 0.0;

  for (const item of items) {
-    total += item.price;
+    total += Number(item.price);
  }

+  // 保留两位小数
+  total = Math.round(total * 100) / 100;
  return total;
}
```

渲染效果:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
function calculateTotal(items) {
-  let total = 0;
+  let total = 0.0;

  for (const item of items) {
-    total += item.price;
+    total += Number(item.price);
  }

+  // 保留两位小数
+  total = Math.round(total * 100) / 100;
  return total;
}

常见错误

  1. 行内代码分隔符数量不够,导致反引号提前闭合。
  2. 代码块前后缺少空行,影响渲染稳定性(不同解析器表现可能不同)。
  3. 外层与内层都用三反引号,造成嵌套代码块断裂。
  4. 混用 Tab 和空格,导致缩进式代码块格式错乱。
使用 Hugo 构建
主题 StackJimmy 设计 由 Hobin 魔改
载入天数...载入时分秒...
发表了 0 篇文章 · 发表了 46 篇笔记 · 总计 2 万 5 千字(其中笔记 25104 字)