软换行仅改变显示不修改文件内容,硬换行插入真实\n字符并永久改变文本结构;前者用于临时浏览,后者影响Git、语法和格式校验。

软换行是纯显示行为,不改变文件内容;硬换行是真实插入 \n 字符,会永久修改文本结构。
软换行(Word Wrap)只是视觉折行
启用后,长行在编辑器里自动“看起来”断成多行,但实际文件里仍是单行,复制粘贴、正则匹配、Git diff、代码执行都不受影响。它只改渲染,不改内容。
- 开关路径:
View → Word Wrap(或快捷键Alt+Z/Cmd+Alt+Q) - 适合场景:读日志、看宽表格、写 Markdown 预览、临时浏览超长 URL
- 注意:导出为 PDF 或打印时,软换行默认不生效,除非额外配置
word_wrap_pdf插件
硬换行需要手动或命令插入 \n
这是真正的换行——你按 Enter、用 Ctrl+Shift+Q(Reindent)、或运行 wrap_lines 命令,都会往文件里写入换行符。
- 常见触发方式:
Enter键、Edit → Line → Wrap Lines at Ruler、插件如Text Pastry或Wrap Plus - 影响明显:Git 会记录新增的
\n,Python 会因缩进错乱报IndentationError,JSON 格式校验可能失败 - 参数关键:
wrap_width设置决定每行多少字符后硬换行(默认 78,可在Preferences → Settings中改)
混淆点:Sublime 的 “Wrap Lines” 命令其实是硬换行
名字带 “Wrap”,但它不是软换行——它会扫描当前选区或全文,在达到列宽限制处插入 \n。很多人误以为它是“智能软折”,结果提交了大量无意义换行。
- 确认是否已执行硬换行:打开
View → Syntax → Plain Text,再按Ctrl+Shift+P输入show_scope_name,光标停在换行处,若看到meta.line分段,说明已是硬换行 - 撤销硬换行:用
Ctrl+Z最快;批量恢复可用正则替换\n→(空格),但需谨慎处理缩进和语义 - 性能提示:对 >10MB 的日志文件开软换行几乎无压力;但用
Wrap Lines处理同样文件可能卡死,因要遍历并写入新字符
{
"wrap_width": 80,
"word_wrap": true,
"auto_wrap": false
}
真正容易被忽略的是:软换行开启后,Find in Files 仍按原始行匹配,而 Wrap Lines 命令一旦运行,就再也无法靠设置“撤回”软/硬状态——它已经把换行符刻进文件里了。










