如何在VSCode中自动硬换行?我的意思是,如果一行到达了指定的列,自动在最接近该列的单词边界处插入换行符,而不会越过。Vim有一个叫做textwidth的设置,我喜欢在编辑Markdown时使用它。据我所知,VSCode并没有这样做。它只是有办法控制软件。


当前回答

如果有人在运行时遇到问题,可能需要禁用辅助功能支持/屏幕阅读器。转到首选项>>文本编辑器>>可访问性支持,并将其关闭。

其他回答

编辑:(下面的答案可能是软包,软包和硬包的区别见这里:https://stackoverflow.com/a/319932/9481613) 在我的版本中,它是首选项->设置,然后向下滚动到“编辑器:自动换行”,其中有一个下拉框,我从其中选择了wordWrapColumn。在选择这个并关闭后,当我点击底部的“查看”时,它会显示“换行Alt+Z”。

你不需要任何扩展就可以做到这一点。你只需要使用两个正则表达式搜索和替换。

通过将要重新换行的行移动到单独的文件中来隔离它们。 把所有的线连接成一条线。例如,ctrl+h, "\n" ==> " "。注意:确保regex已启用(点星号图标) 将一条线分割成多条线。例如,ctrl+h, "(.{100})==> "$1\n"。注意圆括号后面的空格。 将这些行复制回原始文件。

这种技术有很多变种。例如,您可以使用逗号代替空格"(.{100})," ==> "$1,\n"。您可以使用Find in Selection alt+L而不是使用临时文件。

截至2020年,如果你使用的是Prettier - Code formatter插件:

转到插件-> Find Prettier -> Cog -> Extension Settings -> Prettier:在此行限制内打印宽度适合代码,并设置为任何您想要的。默认值是80。

当你保存文件时,pretty会自动格式化。

硬包装评论

使用Rewrap扩展。

软包装代码

添加以下设置(将列宽替换为您的首选项):"editor. "wordWrapColumn”:100

然后添加任何一个“编辑器”。“wordWrap”:“wordWrapColumn”(在列处换行)或“编辑器”。“bounded”(在列或视口处换行)。

硬包装注释和软包装代码

不幸的是,扩展和VSCode设置不能很好地发挥作用。

欢迎为这个功能请求投票。

目前在GitHub上的VS代码问题跟踪器中有一个开放的请求,你可以在这里找到它