Vim 是否有任何命令来切换启用自动文本换行?

Vim 是否有任何命令来切换启用自动文本换行?,vim,Vim,默认情况下,我认为vimrc设置启用自动包装。但是,有时,我希望看到文本行没有包装。是否有任何命令我切换文本换行启用和禁用?这将避免我退出和更改设置 :set nowrap 还有一个linebreak选项,用于控制换行文本是否在单词边界处换行。建议(否)在vimrc中换行,创建如下函数: :function ToggleWrap() : if (&wrap == 1) : set nowrap : else : set wrap : endif :endfunction 然后

默认情况下,我认为vimrc设置启用自动包装。但是,有时,我希望看到文本行没有包装。是否有任何命令我切换文本换行启用和禁用?这将避免我退出和更改设置

:set nowrap

还有一个
linebreak
选项,用于控制换行文本是否在单词边界处换行。

建议(否)在vimrc中换行,创建如下函数:

:function ToggleWrap()
: if (&wrap == 1)
:   set nowrap
: else
:   set wrap
: endif
:endfunction
然后映射一个键(如F9)来调用此函数,如下所示:

map <F9> :call ToggleWrap()<CR>
map! <F9> ^[:call ToggleWrap()<CR>
map:calltogglewrap()调用
地图^[:调用ToggleWrap()

无论何时按F9,它都会打开和关闭包装。

我想您需要的是:

:set wrap!
这将切换换行

有关使用!(bang)更改命令的更多信息,请访问:

:help :_!

添加以下内容以使CTRL+W切换换行。如果不想使用
W
,可以将其更改为其他键

map <C-w> :set wrap!<CR>
map:set wrap!

我碰巧喜欢tpope的未损坏插件,其中
yow
将切换换行设置。

如果你喜欢我的建议,那么你知道你必须做什么…wink-wink-nudge-nudge-nudge(提示:我的答案如下所列)你可以使用:set-wrap!或:set-invwrap'as{option}!和inv{option}是反转值的同义词,但是!正如@jeremy cantrell所指出的,操作符在这上面有功能。完美。我甚至不需要写函数!