Skip to content

第 44 课:Markdown 与科研写作

🎯 核心实操目标

本课目标:建立"内容创作与格式渲染相分离"的写作工作流。本课你将理解纯文本写作为何天然契合版本控制与多格式转换,掌握 Markdown 的 12 条核心语法,并学会用 Pandoc 把同一份 .md 源文件转换为 DOCX / PDF / HTML 等多种格式,从而把写作时被"调字号、看预览"反复打断的注意力,交还给研究本身。

本课位于工具链模块的"排版生产"阶段:上一课(第 43 课)用 Git 解决了"版本如何被追踪",本课解决"用什么格式去写,才能既利于版本追踪、又能一次写作多处投递"。它也是第 45 课 DOCX 高级排版、第 46 课 LaTeX 的共同前置——三者背后是同一条主线:让内容与样式解耦

📋 课前准备(5 分钟自检)

工具/环境

  • [ ] VS Code(免费):code.visualstudio.com
  • [ ] VS Code 扩展:Markdown All in One + Markdown Preview Enhanced(在插件市场搜索安装)
  • [ ] Pandoc(命令行格式转换器):pandoc.org/installing.html
  • [ ] 可选:Typora(所见即所得 Markdown 编辑器,付费但好用)

数据/素材

  • [ ] 自己之前写过的任意一份学术草稿(Word 或文本均可,用于练习改写为 Markdown)
  • [ ] 一份目标投稿期刊的 DOCX 参考模板(如有,用于 Pandoc reference-doc 参数)

配置验证

bash
# 确认 Pandoc 安装成功
pandoc --version
# 应输出版本号(如 pandoc 3.x),无报错即成功

应急通道

  • 不想装 Pandoc → 用 Pandoc 在线版 临时演示
  • VS Code 预览不工作 → 检查扩展是否启用,或重启编辑器
  • 中文字体乱码 → Pandoc 转 PDF 时加 --pdf-engine=xelatex 参数

场景导入:你是研究者,不是排版人员

"交稿前一晚,很多人通宵不睡,不是在打磨研究内容,而是在反复按空格键对齐文本。 因为在 Word 里改动了一个编号,导致后面几十个自动编号全部错位; 图表稍一移动,整页排版就断层。 把精力耗在'用三号还是小四号'的纠缠上,是对研究时间的浪费。 内容创作与渲染表现,应当用一道清晰的边界隔开。"

学术写作的本质是"组织有逻辑的论证",而非"调整排版样式"。问题在于,所见即所得(WYSIWYG)的字处理软件(Word、WPS 等)把"写什么"和"长什么样"耦合在了同一个界面里:你每写一段,屏幕上立刻呈现某种字体字号,于是忍不住去调它、去看预览——写作注意力被样式细节反复打断

Markdown 提出的解法是把二者拆开:写作时只用极少数纯文本符号标注结构# 标记标题层级、**...** 标记强调、> 标记引用),完全不关心字体字号;等内容定稿后,再用 Pandoc 这类工具把结构"翻译"成 DOCX、PDF 或 HTML 的具体样式。下面先讲清楚这套"内容—样式解耦"为什么对科研特别有价值,再进入语法与命令的实操。

原理:纯文本写作为何对科研格外重要

Markdown 的好处常被简化为"语法简单",但真正让它成为科研写作底层格式的,是它以纯文本(plain text)为载体这一根本属性。理解了纯文本带来的三项结构性优势,你就能判断什么场合该用 Markdown、什么场合不该用,而不必死记结论。

  1. 纯文本可被版本控制系统逐行追踪(与第 43 课直接打通)。 Git 这类版本控制工具是按"行"来计算差异(diff)的:两次提交之间,它能精确标出哪一行被增、被删、被改。Markdown 文件就是纯文本,因此一次次提交后,你能清楚看到"这一稿相比上一稿,究竟改了哪句话"。而 .docx 本质是一个压缩包(内部是 XML 加样式、图片等二进制资源),Git 只能把它当作"一坨二进制"整体替换,无法给出可读的逐行差异——这正是上一课"版本灾难"在文档层面的延续。用纯文本写作,论文修改史才真正变得可追溯、可比较。

  2. 一份源文件可渲染为多种格式(一次写作,多处投递)。 因为 Markdown 只记录"结构"而不绑定某一种排版,所以同一份 .md 可以经 Pandoc 转成投稿用的 PDF、提交学校系统用的 DOCX、发布用的 HTML——内容只维护一处,格式按需生成。相比之下,若用 Word 维护,每换一种交付格式往往要重排一遍,且各版本极易失同步。

  3. 纯文本几乎不会"过时"或"打不开",利于长期可复现(reproducibility)。 纯文本不依赖特定软件版本:十年前的 .md 用任何文本编辑器都能原样打开,而老版本字处理软件存下的专有格式,可能因软件升级而出现排版错乱甚至无法打开。对需要长期保存、供他人复核的科研材料而言,"始终能被原样读取"本身就是可复现性的一部分。

💡 一句话把握本课定位

Markdown 解决的不是"排版好不好看",而是"写作过程能不能被追踪、内容能不能一次产出多种格式、文件十年后还打不打得开"。 最终的精美排版交给 Pandoc 与下游工具(DOCX/LaTeX)完成——这与第 43 课的版本控制、第 46 课的 LaTeX 是同一条"内容与样式解耦"的主线。

📘 关键术语(首次出现,先对齐定义)
  • 纯文本(plain text):只包含字符本身、不附带字体/字号/颜色等样式信息的文件(如 .txt.md)。与之相对的是"富文本/二进制格式"(如 .docx),后者把样式与内容一并编码进文件。纯文本可被任意文本编辑器打开,也能被 Git 逐行比对。
  • Markdown:一种轻量级标记语言(lightweight markup language),用少量纯文本符号(#*>| 等)标注文档结构,由约翰·格鲁伯(John Gruber)于 2004 年提出。它本身是纯文本,可由渲染器或转换器再呈现为带样式的输出。
  • 标记语言(markup language):用特定符号在文本中"标注"结构或语义的语言(如 HTML、LaTeX、Markdown)。Markdown 属于其中语法最简、最贴近自然书写的一种。
  • Pandoc:由约翰·麦克法兰(John MacFarlane)开发的开源文档格式转换器(document converter),被称为"文档界的瑞士军刀",可在 Markdown、DOCX、PDF、HTML、LaTeX、EPUB 等数十种格式之间互转。本课用它把 .md 转为多种交付格式。
  • 所见即所得(WYSIWYG,What You See Is What You Get):编辑时屏幕显示即最终呈现效果的编辑方式(如 Word)。其优点是直观,代价是内容与样式耦合、文件为二进制、不利于版本比对。
  • 可复现性(reproducibility):他人依据你提供的材料(数据、脚本、文档)能重新得到相同结果的性质。纯文本格式因"始终可被原样打开、可逐行追踪",是科研可复现的基础环节之一(详见第 47 课 Jupyter)。
  • 渲染(render):把结构化的源文件(如 Markdown)转换为带具体样式的可读输出(如 PDF、网页)的过程。本课的口号"一次写作,到处渲染"即指此。

🗺️ 架构重组:一次写作,到处渲染(Write Once, Render Anywhere)

内容创作区VS Code / Typora.MD 纯文本(零样式)Pandoc渲染引擎PDF 学术出版级DOCX 投稿格式HTML 博客/网页

一次写作,到处渲染。同一份 .md 源文件可以同时产出 PDF(投递学术期刊)+ DOCX(提交学校系统)+ HTML(发表博客)。这就是"Write Once, Render Anywhere"。


🚀 拆解实战 A:Markdown 12 条核心语法

绝大多数学术写作只会用到下面这 12 条语法。它们覆盖了标题层级、强调、列表、链接、图片、引用、表格、数学公式与代码块——足以写完一篇结构完整的研究草稿。建议把它们当作"键盘快捷键"练到不假思索,写作时手不离键盘、思路不被排版打断。

markdown
# 一级标题(文章主标题)
## 二级标题(章节)
### 三级标题(小节)

**加粗** *斜体* ~~删除线~~ `行内代码`

- 无序列表项 1
- 无序列表项 2
1. 有序列表项 1
2. 有序列表项 2

[链接文本](https://example.com)
![图片说明](path/to/image.png)

> 引用块(适合摘录文献或他人观点)

| 列1 | 列2 | 列3 |
|---|---|---|
| 数据 | 数据 | 数据 |

行内数学公式: $E = mc^2$
独立公式块:
$$\bar{x} = \frac{1}{n}\sum_{i=1}^{n} x_i$$

代码块自动语法高亮:
```python
import pandas as pd
df = pd.read_csv("data.csv")
```

---
(三个减号表示水平分隔线)

💡 学术写作的 Markdown 工作流(实战推荐顺序)

  1. 用 VS Code 打开 .md 文件,按 Ctrl/Cmd + Shift + V 启动右侧实时预览
  2. 写作时完全无视样式——只关心标题层级和段落逻辑
  3. 写完后用 Pandoc 一键转 DOCX / PDF
  4. 在 DOCX 里做最后的精排(图表交叉引用、参考文献编号等)

⚠️ 不要在 Markdown 阶段塞 HTML 样式标签——那是把样式焦虑带回写作区,违背初衷。

🚀 拆解实战 B:用 Pandoc 把 Markdown 转为多种格式

内容写完后,进入"渲染"环节。Pandoc 的基本调用范式是 pandoc 输入文件 -o 输出文件 [选项]:输入与输出的格式由文件扩展名自动推断(.md 视为 Markdown,.docx 视为 Word,依此类推),-o 指定输出文件名,后面的 -- 选项用于微调。打开终端,准备好你的 paper.md,运行以下命令:

bash
# Markdown → DOCX (最常用)
pandoc paper.md -o paper.docx

# Markdown → PDF (需 LaTeX 环境)
pandoc paper.md -o paper.pdf --pdf-engine=xelatex

# Markdown → HTML (适合发博客/网页)
pandoc paper.md -o paper.html --standalone

# Markdown → DOCX 并应用目标期刊参考样式
pandoc paper.md --reference-doc=journal_template.docx -o paper_styled.docx

# 含数学公式的 Markdown → DOCX (启用 MathML)
pandoc paper.md -o paper.docx --mathml

# 带目录的 PDF
pandoc paper.md -o paper.pdf --toc --pdf-engine=xelatex

逐条说明这几个选项的作用与前提,避免照抄而不知所以:

选项作用前提 / 注意
-o 文件名指定输出文件;格式由扩展名推断.docx/.html 开箱即用
--pdf-engine=xelatex用 XeLaTeX 引擎排版 PDF,对中文友好需本机装有 LaTeX 发行版(如 TeX Live / MiKTeX),否则报错
--standalone(可简写 -s生成含 <head> 等完整结构的独立 HTML不加则只输出片段,不能单独成页
--reference-doc=模板.docx套用指定 Word 模板的样式模板需用 Word 样式(Heading 1 等命名样式) 而非手动格式
--mathml公式以 MathML 写入 DOCX,可在 Word 里编辑仅对 DOCX 等支持 MathML 的目标有意义
--toc依标题层级自动生成目录配合 --pdf-engine 用于 PDF;HTML 同样可用

其中 --reference-doc 是面向投稿的关键功能:把目标期刊提供的 Word 模板当作"样式参考",Pandoc 会把 Markdown 的结构元素逐一映射到该模板里的同名样式——# 一级标题套用模板的 Heading 1、正文套用 Normal,等等——从而自动继承模板设定的字体、字号、行距与段落间距。这里有一个常被忽略的前提:模板必须是用 Word 命名样式排版的,若模板里的标题只是"手动加粗放大"而非真正应用了"标题 1"样式,Pandoc 就无从对应。前提满足时,一行命令即可完成投稿格式适配。

⚠️ PDF 路线为何会报错:Pandoc ≠ 自带排版引擎

pandoc paper.md -o paper.pdf 之所以可能失败,是因为 Pandoc 本身不直接生成 PDF:它先把 Markdown 转成 LaTeX,再调用本机的 LaTeX 引擎排版成 PDF。所以转 PDF 必须先安装 LaTeX 发行版(Windows 推荐 MiKTeX,跨平台用 TeX Live),并用 --pdf-engine=xelatex 指定支持中文的引擎;缺少 LaTeX 时会报 pdflatex not found 之类的错误(排查见本课后文"出错排查")。若只是临时要个 PDF,也可先转 DOCX 再用 Word"另存为 PDF"。

🚀 拆解实战 C:把已有 Word 草稿迁移回 Markdown

转换是双向的。如果你已经积累了大量 Word 草稿、想迁入 Markdown 工作流,Pandoc 同样能反向转换:

bash
# DOCX → Markdown
pandoc paper.docx -o paper.md --wrap=none

# 提取图片到独立文件夹
pandoc paper.docx -o paper.md --extract-media=./images

两个选项的含义:--wrap=none 让输出不在固定列宽处硬折行,每个自然段保持为一整行——这对后续 Git 逐行比对更友好(一句话的改动只动一行,而非整段重排);--extract-media=./images 把原 Word 内嵌的图片导出到指定文件夹,并在 Markdown 里改成图片链接,避免图片丢失。

需要提醒:Word 反向转出的 Markdown 往往不够干净——复杂表格、文本框、域代码、手动编号可能被转成杂乱的 HTML 残留或丢失结构,通常需要人工再清理一遍。这类"机器转换后的格式清理"正适合交给 AI:把转换结果(或直接把 Word 复制出的纯文本)粘给模型,让它整理成规范 Markdown。下面这条提示词可直接复用:

markdown
【Role】你是一位精通 Markdown 与 Pandoc 工作流的技术写作顾问。
【任务】我把一份 Word 论文章节的纯文本粘贴在下方。请帮我:
1. 转换为标准 Markdown 格式(标题层级用 # / ## / ###)
2. 识别原文中的列表、引用、表格,正确转换为 Markdown 语法
3. 数学公式转为 LaTeX 行内 $...$ 或块状 $$...$$ 格式
4. 不要改动我的文字内容,只调整格式

【源文本】[在此粘贴 Word 复制出的纯文本]

🚀 拆解实战 D:第二个 Worked Example——用 Markdown 写一段可复现的分析记录(Case A)

前面的命令演示了"怎么转格式",但 Markdown 在科研里最能体现价值的场景,是把数据分析过程写成既可读、又能逐行追踪、还能一稿多渲染的笔记。下面以 Case A(心理问卷:N=500,AI 焦虑 → 学习策略 → 自我效能感) 为例,演示一段规范的 Markdown 分析记录该怎么写——它综合用到了 12 条语法里的标题、列表、表格、数学公式与代码块。

把下面这段内容存为 case_a_analysis.md,它是合法的 Markdown,可直接用 Pandoc 转 DOCX/PDF:

markdown
## 描述统计与相关分析

本节报告三个核心变量的描述统计与两两相关。样本量 $N = 500$。

### 变量说明

- **AI 焦虑(Anxiety)**:12 题,其中 `Anxiety_4_R` 为反向计分题,已重编码。
- **学习策略(Strategy)**:8 题。
- **自我效能感(Efficacy)**:7 题。

### 相关矩阵

| 变量 | M | SD | 1 | 2 | 3 |
|---|---|---|---|---|---|
| 1. AI 焦虑 | 3.21 | 0.78 | — | | |
| 2. 学习策略 | 3.85 | 0.65 | -.34** | — | |
| 3. 自我效能 | 3.92 | 0.70 | -.41** | .52** | — |

> 注:$N = 500$;**p < .01。相关系数下三角呈现。

各变量的标准化均值按下式计算:

$$\bar{x} = \frac{1}{n}\sum_{i=1}^{n} x_i$$

复现上述描述统计的代码:

```python
import pandas as pd
df = pd.read_csv("case_a.csv")
print(df[["Anxiety", "Strategy", "Efficacy"]].describe())
```

这段记录的价值在于:文字解释、数据表格、计算公式、可运行代码被组织在同一份纯文本里——审稿人既能读懂你做了什么,又能复制代码块自行复现,而整份文件还能被 Git 逐行追踪、被 Pandoc 转成投稿格式。这正是第 47 课 Jupyter Notebook"代码+文字+图表一体化"理念的纯文本前身。

🔁 迁移要点

换学科只换内容、不换骨架:把 Case A 的变量表换成 Case B(经管面板:30 省 × 10 年) 的回归结果表、或 Case C(300 篇 × 3 模型评分,基准 Claude 4.7 / GPT-5 / Gemini 2.5) 的质量评分对比表,同一套"标题 + 列表 + 表格 + 公式 + 代码块"语法照样适用。先用纯文本把分析说清楚,再交给 Pandoc 渲染——这条工作流对任何数据驱动的研究都成立。


写好 vs 写砸:同一份 Markdown 的逐项对照

同样写 Markdown,有人写出的源文件干净、可转换、利于版本比对,有人却把它写成"夹带样式的半成品"。下表把最常见的失分点逐项并排——左列是初学者高频写法,右列是把同一处"拧紧"后的写法。

维度写砸 ❌写好 ✅为什么
标题层级用加粗 **摘要** 假装标题## 摘要 标记真正的标题层级假标题不会进目录、不被 Pandoc 识别为结构;真层级才能自动生成目录与正确样式
混入样式.md 里塞 <font color="red"> 等 HTML 标签只标结构,颜色字号留给渲染阶段混入样式即把样式焦虑带回写作区,且未必能转进 DOCX,违背解耦初衷
手动对齐用空格 / 制表符把表格"敲齐"用 `---` 写标准表格语法
公式写法把公式截图贴进文档$...$ / $$...$$ 写 LaTeX 公式截图不可搜索、不可编辑、缩放即糊;LaTeX 公式可被 --mathml 转为可编辑公式
段落折行每行手动回车断句一个自然段写成一整行(或用 --wrap=none手动硬折行会让 Git diff 满屏乱跳,一句改动牵动整段
代码标注直接粘代码不加围栏``` 代码块并标注语言不加围栏的代码会被当普通文字、缩进错乱;标注语言才有语法高亮
文件命名论文最终版2.md 含空格/中文混排paper_v2.md 等无空格 ASCII 名命令行与 Pandoc 处理含空格/特殊字符的文件名易出错,规范命名更稳

💡 一句话判据

检验一份 Markdown 写得好不好,问三件事:它能不能被 Pandoc 干净地转成 DOCX?两次提交的 diff 是不是只动了真正改过的句子?把它交给别人,对方不装任何专有软件能不能原样读懂? 三项都过,才算用对了 Markdown。


常见误区与纠正

学员上手 Markdown 时的问题高度集中,下表对号入座即可:

常见误区症状纠正方法
当成 Word 用.md 里反复调字体颜色、塞 HTML 样式Markdown 只管结构;样式留到 Pandoc / DOCX 阶段,写作时一律无视外观
加粗冒充标题**标题** 代替 ##,导致无目录、转换后层级丢失标题一律用 #/##/###,让结构可被识别
表格敲空格对齐渲染后表格塌陷错位用 `
直接 -o paper.pdf 报错提示找不到 pdflatex/xelatex先装 LaTeX 发行版并加 --pdf-engine=xelatex;或先转 DOCX 再"另存为 PDF"
中文 PDF 乱码 / 缺字转出的 PDF 中文变方框或丢失--pdf-engine=xelatex(XeLaTeX 支持系统中文字体),必要时指定中文字体
Word 反向转换照单全收DOCX→MD 后表格/编号一团乱也不清理反向转换结果须人工(或借 AI)清理;复杂排版本就难无损还原
指望 Markdown 做精排想在 .md 里实现分栏、页眉页脚、精确版式这些超出 Markdown 表达力,交给 DOCX(第 45 课)/ LaTeX(第 46 课)

出错排查:Pandoc 报错了怎么办

命令行工具报错很正常,关键是会读错误信息、按来源定位。下面是本课最高频的几类报错与排查路径:

报错 / 现象最可能的原因排查与解决
pdflatex not found / xelatex not found转 PDF 但本机没装 LaTeX 引擎安装 TeX Live 或 MiKTeX;命令加 --pdf-engine=xelatex。临时方案:先转 DOCX,再用 Word 导出 PDF
PDF 中文显示为方框 / 丢字用了不含中文字体的引擎(如默认 pdflatex)改用 --pdf-engine=xelatex;仍缺字时显式指定中文字体(如 -V mainfont="SimSun"
pandoc: 文件名: openBinaryFile: does not exist输入文件名拼错,或不在当前目录确认当前目录(ls/dir)下确有该文件;含空格的文件名用引号括起
--reference-doc 套用后样式没变模板用的是手动格式而非命名样式用应用了"标题 1/正文"等命名样式的模板;可用 Word 自带模板做基底
表格 / 公式没正确渲染Markdown 语法写错(如表头下少了 --- 分隔行)在 VS Code 预览里先确认结构正确,再转换;表格必须有分隔行
command not found: pandocPandoc 没装或不在 PATH重装 Pandoc 并重开终端;用 pandoc --version 验证(见课前"配置验证")

🧭 通用排查心法

读到报错先问三句:它在抱怨哪个环节(找不到文件?找不到引擎?语法不对?)→ 是 Pandoc 自身的问题还是它调用的下游(LaTeX)的问题 → 最小复现(拿一行 # 标题 的极简 .md 单独转一次,看是文件问题还是命令问题)。 把完整报错原文贴给 AI 协助诊断,比反复盲试高效得多。


边界与局限:Markdown 能做什么、不能做什么

Markdown 是优秀的"内容载体",但它有意保持简单,因此存在明确的能力边界。把下面几条记牢,才能在该用它时用、不该用时果断换工具,而不是硬掰。

边界 / 失效场景为什么你应该怎么做
复杂排版做不了Markdown 只表达"结构",原生不支持分栏、精确页边距、页眉页脚、图文环绕、精细的浮动定位这类精排交给 DOCX(第 45 课)或 LaTeX(第 46 课);Markdown 负责到"内容定稿"为止
方言不统一Markdown 无单一官方标准,存在 CommonMark、GitHub Flavored Markdown(GFM)、Pandoc Markdown 等变体,表格/脚注/公式等扩展语法各有差异明确目标渲染器(VS Code 预览?GitHub?Pandoc?),按其支持的语法写;本课以 Pandoc 口径为准
复杂表格力不从心合并单元格、跨行跨列、嵌套表格超出基础表格语法简单表用 Markdown;复杂三线表/合并表交给 Word(第 38、45 课)
不负责"好不好看"Markdown 不绑定样式,最终美观度取决于下游渲染(模板 / LaTeX 类 / CSS)投稿前用 --reference-doc 或目标格式工具完成版式打磨,别期待 .md 直接出"成品稿"
二进制内容不进纯文本图片、字体等二进制资源不能内联进纯文本,只能以链接/路径引用图片随文件夹一并管理(参见 --extract-media);迁移时注意相对路径不要断

🚧 别把 Markdown 用成"什么都干"

Markdown 的定位是写作与版本控制阶段的内容格式,不是排版终点。一篇论文的合理分工是:用 Markdown(或 LaTeX)完成可追踪的内容写作 → 用 Pandoc 渲染到目标格式 → 在 DOCX / LaTeX 里做最后精排。试图在 .md 里硬抠分栏、页眉、复杂版式,等于把后两个阶段的活提前塞进第一个阶段,既别扭又容易失败——这恰恰违背了本课"内容与样式解耦"的初衷。


📦 本课交付物

按本节实操任务完成并提交以下内容,提交 AI 初审,按 Module_Rubrics.md 对应维度评分:

  • [ ] Markdown 写作样例:用 Markdown 写一篇 2 页研究笔记(含标题层级、列表、数学公式、表格至少各 1 个)
  • [ ] Pandoc 转换截图:把上述 .md 文件用 Pandoc 转为 DOCX 与 PDF,提交对照截图
  • [ ] VS Code 工作流截图:左侧编辑器 + 右侧实时预览的并排视图
  • [ ] 个人 Markdown 速查卡:把 12 条核心语法整理为 1 页参考卡,加入个人工具箱

🏁 本章小结

把本课凝练成可据以复习的几条要点:

  1. 核心意识:把"写什么"(内容/结构)与"长什么样"(样式/版式)解耦——写作时只标结构,样式留到渲染阶段。这与第 43 课版本控制、第 46 课 LaTeX 是同一条主线。
  2. 为什么用纯文本:Markdown 以纯文本为载体,因而能被 Git 逐行追踪修改史、能由一份源文件渲染为多种格式、并因不依赖专有软件而利于长期可复现——这三点才是它成为科研写作底层格式的根本原因,而非"语法简单"。
  3. 12 条核心语法:标题层级、强调、列表、链接、图片、引用、表格、行内/块状数学公式、代码块——覆盖绝大多数学术写作;标题用 # 而非加粗冒充,公式用 $...$ 而非截图。
  4. Pandoc 转换pandoc 输入 -o 输出 [选项];常用 --pdf-engine=xelatex(中文 PDF,需 LaTeX)、--standalone(完整 HTML)、--reference-doc(套用期刊模板的命名样式)、--mathml(可编辑公式)、--toc(自动目录);反向用 --wrap=none + --extract-media 把 Word 转回 Markdown。
  5. 边界要诚实:Markdown 不做复杂排版(分栏/页眉/精确版式)、存在方言差异、不负责"好不好看";这些交给 DOCX(第 45 课)与 LaTeX(第 46 课)。它的职责到"内容定稿"为止。
  6. 出错会排查:转 PDF 报错多半是缺 LaTeX 引擎,中文乱码多半是引擎不支持中文;读懂报错指向哪个环节、最小复现、必要时把报错原文交给 AI 诊断。

自测清单(可保留逐项打勾)

  • [ ] 我能说清"内容与样式解耦"的含义,写作时不再在 .md 里纠结字体颜色。
  • [ ] 我能讲出纯文本写作的三项科研价值(可逐行版本追踪 / 一稿多渲染 / 利于长期可复现),且技术陈述准确。
  • [ ] 我掌握了 Markdown 12 条核心语法,能用纯文本写完一份含标题层级、列表、表格、公式、代码块的研究草稿。
  • [ ] 我会用 Pandoc 把 .md 转为 DOCX/PDF/HTML,知道 --pdf-engine=xelatex 的用途与"转 PDF 需先装 LaTeX"这一前提,并能用 --reference-doc 套用期刊模板。
  • [ ] 我能用 Pandoc + AI 协作把已有 Word 草稿迁移为干净的 Markdown,并知道反向转换后需人工清理。
  • [ ] 我已在 VS Code 配好 Markdown 实时预览,能并排查看源码与渲染效果。
  • [ ] 我能说出 Markdown 至少两条边界(复杂排版做不了 / 方言不统一),并知道对应该换什么工具。

✍️ 思考与练习

下列练习用于把本节概念用起来(区别于"本课交付物"里的任务),建议写在你的本地笔记中。

练习 1(原理辨析)。 有同学说"Markdown 不就是个简单的记事本写法吗,用 Word 一样能写论文,何必折腾"。请用本课原理,从版本追踪多格式渲染两个角度,说明为什么科研写作仍值得用纯文本的 Markdown,而不是直接用 Word。

好答案要点:① Word 的 .docx 是二进制压缩包,Git 只能整体替换、给不出可读的逐行 diff,论文修改史无法精确比对;Markdown 是纯文本,可逐行追踪"这一稿改了哪句"。② 一份 .md 可经 Pandoc 转 PDF/DOCX/HTML,内容只维护一处;Word 每换交付格式常要重排且易失同步。能点出"解耦"的是结构与样式即更佳。

练习 2(命令与排查)。 你运行 pandoc paper.md -o paper.pdf,终端报 xelatex not found;换了命令后 PDF 能生成,但中文全是方框。请分别说明这两个问题的原因正确命令 / 做法

好答案要点:① 报错是因为 Pandoc 本身不直接生成 PDF,要调用本机 LaTeX 引擎,而本机没装 LaTeX——应安装 TeX Live / MiKTeX,并用 --pdf-engine=xelatex。② 中文方框是因为引擎未使用中文字体——XeLaTeX 支持系统字体,确保用 --pdf-engine=xelatex,必要时显式指定中文字体(如 -V mainfont="SimSun")。能补充"临时可先转 DOCX 再另存 PDF"更好。

练习 3(写好 vs 写砸)。 给定一段写砸的 Markdown:标题用 **研究方法** 加粗冒充,表格用空格手动对齐,公式 $\bar{x}=\frac{1}{n}\sum x_i$ 是截图贴进去的,正文每行手动回车断句。请逐项指出问题并改写为规范写法,并说明各自会在"转换"或"版本比对"时引发什么后果。

好答案要点:标题改 ## 研究方法(加粗不进目录、不被识别为结构);表格改 |+--- 标准语法(手动空格渲染后塌陷、转不进 Word 表格);公式改 $$\bar{x}=\frac{1}{n}\sum x_i$$(截图不可搜索/编辑、缩放即糊,LaTeX 公式可 --mathml 转可编辑公式);段落写成整行或用 --wrap=none(手动硬折行让 Git diff 满屏乱跳)。

练习 4(边界判断)。 你要写的稿件需要:双栏排版、首页脚注、复杂的合并单元格表格、精确控制图片在页面上的浮动位置。请判断这几项里哪些超出了 Markdown 的能力边界,并说明你会把它们交给本模块的哪一课所讲的工具去完成。

好答案要点:双栏、首页脚注、合并单元格表格、图片精确浮动定位都超出 Markdown 原生表达力——Markdown 只管结构、不做精排。合理分工是:用 Markdown 完成可追踪的内容写作,复杂表格与一般精排交给 DOCX(第 45 课),双栏/脚注/精确版式等国际期刊式排版交给 LaTeX(第 46 课)。能点明"Markdown 的职责到内容定稿为止"即达标。

助力学者在 AI 时代极速产出高质量学术成果 · 55 课时双轨制 · plan v3.3