sublime text 默认不支持 restructuredtext 语法高亮,需安装官方 restructuredtext 插件;手动关联 .txt 文件应按需切换语法而非全局绑定;预览应依赖 sphinx 或命令行 rst2html,插件仅提供高亮与基础校验。

Sublime Text 默认不支持 reStructuredText 语法高亮
开箱即用的 Sublime Text(无论 3 还是 4)压根不认识 .rst 或 .txt 文件里的 reStructuredText 语法,打开后就是纯白底黑字,标题、字段列表、引用块全无颜色区分。这不是你配置错了,是它本来就没内置 —— 和 Markdown 不同,RST 不是 Sublime 的“一等公民”。
装 Package Control 后安装 “reStructuredText” 插件最稳妥
别搜“RST Highlight”或“rst-mode”这类名字模糊的包,容易装错或失效。唯一长期维护、适配 Sublime Text 4 且正确识别 .rst 扩展名的是官方命名的 reStructuredText 插件(作者:sublimelsp 团队维护,但实际发布者是 guillermooo,GitHub 仓库名也是 restructuredtext)。
操作步骤:
- 确保已安装
Package Control(没装就先按Ctrl+Shift+P→ 输入Install Package Control回车) - 按
Ctrl+Shift+P调出命令面板,输入Package Control: Install Package回车 - 等待列表加载完成,输入
reStructuredText(注意大小写和空格),选中后回车 - 重启 Sublime Text(部分版本需重启才生效)
装完后,打开任意 .rst 文件,状态栏右下角会显示 reStructuredText,且标题(=、- 下划线)、角色(:doc:`xxx`)、指令(.. note::)都会着色。
手动关联 .txt 文件为 RST 语法时要小心扩展名冲突
很多项目(尤其是 Sphinx 文档)把 RST 写在 .txt 文件里(比如 README.txt),但 Sublime 默认把 .txt 绑定到 Plain Text 语法。强行改成 RST 语法会导致普通文本文件也误着色。
安全做法是「按需切换」而非全局绑定:
- 打开
.txt文件 → 点击右下角语法名称(如Plain text)→ 选Open all with current extension as…→ 再选reStructuredText - 或者更推荐:用快捷键
Ctrl+Shift+P→ 输入Set Syntax: reStructuredText→ 回车(只对当前文件生效) - 如果真想永久绑定某个特定文件(如
conf.py旁的index.txt),可在该文件内右键 →Settings – Syntax Specific,加入:{ "syntax": "Packages/reStructuredText/reStructuredText.sublime-syntax" }
注意:Packages/reStructuredText/reStructuredText.sublime-syntax 是插件安装后的实际路径,别手敲错大小写或漏掉 sublime-syntax 后缀。
预览 RST 效果不能靠 Sublime 自带功能
别浪费时间找 Preview in Browser 或折腾 HTML 构建系统——Sublime 没有内置 RST 解析器,所谓“实时预览”插件(如 rst-preview)依赖本地 Python 环境和 docutils,极易因 Python 版本、PATH 或虚拟环境失效,错误信息常是 Unable to find 'rst2html' 或 ModuleNotFoundError: No module named 'docutils'。
真实工作流建议:
- 编辑时专注语法高亮 + 基础结构校验(插件会标红未闭合的指令)
- 预览统一交给 Sphinx:
make html后用浏览器打开_build/html/index.html - 如果非要轻量预览,用命令行:
rst2html.py --embed README.rst > preview.html(前提是pip install docutils成功且命令可用)
插件本身不提供构建能力,把它当成“看得清”的编辑器就好,别指望它替代 sphinx-build。










