sublime text自动换行需手动配置:全局启用需在settings–user中设"word_wrap": true;按语法专属启用(如markdown)则修改对应syntax specific设置;wrap_width为0表示窗口自适应,80则硬截断至第80列。

Sublime Text 的自动换行必须手动开启,且默认只对当前文件临时生效;要真正“每次打开都折行”,得改用户配置或语法专属设置,否则 Alt+Z 一关就回原样。
全局启用自动换行:改 Preferences → Settings – User,不是 Default
Sublime 默认关闭 word_wrap,这是设计,不是 bug。菜单点 View → Word Wrap 或按 Alt+Z 只影响当前视图,关掉文件再重开就失效。
-
word_wrap必须设为true(布尔值,不是字符串"true"),写在右侧「Preferences → Settings – User」的 JSON 里 - 别动左侧 Settings – Default,升级时会被覆盖,且不生效
- 改完保存,新打开的文件立即生效;已打开的文件可切个 Tab 刷新视图
- 如果仍不换行,先看右下角状态栏是否显示
Wrap: Off——点它能强制切换,这个开关优先级高于配置
只对 Markdown / 日志开换行,Python 文件保持不换:用 Syntax Specific
代码文件(.py、.js、.json)一旦软换行,容易让 Ctrl+→ 跳词错乱、Home/End 键停在视觉行尾、LSP 行号判断偏移。但 .md、.log、.txt 这类纯文本又极度依赖折行阅读。
- 打开一个
.md文件,再选 Preferences → Settings – Syntax Specific - 右侧加载的是
Markdown.sublime-settings(首次为空),加两行:"word_wrap": true和"wrap_width": 0 - 保存后,所有 Markdown 文件自动启用,不影响 Python 文件
- 误配了 Python?删掉
Python.sublime-settings就行——它不会凭空生成
wrap_width 设成 80 还是 0?关键看用途
wrap_width 不是“自适应”,而是“硬截断”:设成 80,Sublime 会在第 80 列后、且最近一个空格/标点处折行;对英文文档、注释、邮件正文有用;对中文、URL、下划线变量名基本无效。
-
"wrap_width": 80:适合配合"rulers": [80]显示参考线,写文档或遵守 PEP8(Python 推荐 79) -
"wrap_width": 0:表示“按窗口宽度软换行”,随编辑器缩放实时调整,推荐用于 Markdown / 日志 - 不设
wrap_width:Sublime 用内置默认(约 120),但行为不透明,建议显式指定 - 注意:
wrap_width只在word_wrap为true时生效
为什么改了配置还不换行?几个真实干扰项
常见失效不是配置写错,而是被更高优先级规则压制或触发条件不满足:
- 当前视图被快捷键关闭:
Alt+Z(Win/Linux)或Cmd+Option+Z(macOS)会直接关掉,比配置还快 - Vintage 模式(Vim 模拟)下,
Esc后按z w也能切,容易误触 - 大文件(几十 MB 日志)时,Sublime 可能静默禁用软换行保性能,此时配置被忽略
- 插件冲突:Origami、TrailingSpaces 等旧版本会重置视图设置,可临时禁用验证
- 语法识别错误:比如日志文件被识别为 Plain text,而它的默认
word_wrap是false,得进 Settings – Syntax Specific 单独开
真正要小心的是:软换行只是显示层处理,复制粘贴、保存、运行都不受影响;如果需要插入真实 \n(比如整理日志字段),得靠正则替换或插件,不是开 word_wrap 能解决的。











