Loading

VSCode中文折行问题修复

VSCode中正确设置了wordwrap为视口宽度或者一定字符数之后,如果文件中存在中文,依然容易存在无法正确折行、右侧留有一定数目的字符超出可视范围的问题。搜寻资料[1]之后,发现问题可能出在使用的中文字体实际上并不是等宽字体、编辑器无法正确计算每行的宽度上面。

摘抄知乎博主晚饭[1:1]对问题原因分析及解决问题的方式如下:

原因是默认的wrapping strategy是simple,是一种快速算法,适用于等宽字体和某些字形宽度相等的字体。

方法1:设置中找到editor: wrapping strategy,把simple改成advanced

方法2:说明你现在用的字体不是等宽字体(被 Maple Mono 坑了,可恶),所以改成等宽字体(本文注:真正的等宽字体,比如Sarasa Gothic 更纱黑体),simple模式就可以正常工作了。

我最终采用了第一种方式解决了问题。防止后面切换设备的时候配置文件没有同步之类导致需要重新解决这个问题,留下文章备用。

本文注:Maple Font 的作者并非没有察觉到这个问题,在 Issue #173 [2]以及Issue #44中作者已经处理并定位了该问题,最终给出的解决方案即是修改VSCode中默认的折行策略为advanced。这是前端实现上存在的瑕疵,需要等待vscode进行修复,广泛出现该问题的原因是VSCode本身默认采用simple折行计算策略。


  1. 知乎:晚饭-解决VsCode中文行折行不正常的问题 ↩︎ ↩︎

  2. GitHub_Issue:VSCode中文自动换行问题#173 ↩︎

posted @ 2025-10-21 15:18  kozumi  阅读(10)  评论(0)    收藏  举报