sublime text 的 markdown 功能需三类插件协同:markdownediting 负责语法高亮与自动补全(需手动绑定 markdown 语法并配置 extensions)、table editor 实现表格对齐(要求光标在合规表格内且语法正确)、omnimarkuppreviewer 提供预览(依赖系统 python 的 markdown 包)。

Sublime Text 本身不带 Markdown 格式化能力,必须靠插件实现;核心格式化分三类:基础文本(加粗/标题/列表)、表格对齐、实时预览——每类依赖不同插件,不能混用。
如何让 MarkdownEditing 正确启用并避免黑屏纯文本
常见错误现象:readme.md 打开后是黑底白字、无语法高亮、右下角显示 Plain Text——这不是插件没装,而是语言模式没绑定。
- 点右下角当前语法名(如
Plain Text),搜索Markdown并选中Markdown(不是Markdown GFM或其它变体) - 要永久生效:菜单
Preferences → Settings – Syntax Specific,在右侧加一行:"extensions": ["md", "markdown"] - 注意:
extensions少个s(写成extension)就完全失效;别加.txt或.log这类干扰后缀 - 如果已装
MarkdownEditing但标题不自动补全#,检查其设置里"auto_match_enabled"是否为true
Table Editor 表格自动对齐失败的典型原因
装完插件后按 Ctrl+Shift+P 搜 Align Table 没反应,或表格列歪斜没变化——大概率是光标位置或语法识别出了问题。
- 光标必须落在表格内部(任意单元格内),不能在表格外或空行上
- 确保该文件当前语法是
Markdown(右下角确认),不是Plain Text或Text - 表格必须符合基本 Markdown 表格结构:至少含一行表头(用
|分隔)、一行分隔线(如|---|---|),否则插件无法解析 - 单元格内若含未转义的竖线
|(比如想写 “a | b”),必须写成a \| b,否则被误判为列边界
为什么 OmniMarkupPreviewer 预览空白或报错
按 Ctrl+Alt+O 后浏览器打开但页面为空白,或控制台报 ImportError: No module named markdown——这不是插件装错了,而是 Python 环境缺失依赖。
-
OmniMarkupPreviewer依赖系统 Python 的markdown包,Sublime 自带的 Python 不包含它 - Windows/macOS 用户需在终端执行:
pip install markdown(确保对应的是 Sublime 调用的 Python 版本) - Linux 用户若用系统 Python,可能需加
sudo;若用 pyenv,得切换到全局版本再装 - 插件默认用系统默认浏览器预览,如需换 Chrome,可在
Preferences → Package Settings → OmniMarkupPreviewer → Settings中加:"browser": "chrome"
真正麻烦的不是装插件,而是三类功能(文本格式化 / 表格对齐 / 浏览器预览)各自依赖不同底层机制:一个靠 Sublime 语法定义,一个靠光标上下文解析,一个靠外部 Python 环境。配置时任何一环断开,表现都是“好像没起作用”,但原因完全不同。











