为什么我不能阻止 Vim 包装我的代码?

我不能阻止 vim 包装我的 Python 代码。

我可以点击 J来联合分割的代码行,这样看起来就像是插入了一个真正的回车。我只是不明白为什么或者怎么阻止它。

102591 次浏览

Vim 可能在 Vi 兼容模式

'textwidth' 'tw'        number  (default 0)
local to buffer
{not in Vi}
Maximum width of text that is being inserted.  A longer line will be
broken after white space to get this width.  A zero value disables
this.  'textwidth' is set to 0 when the 'paste' option is set.  When
'textwidth' is zero, 'wrapmargin' may be used.  See also
'formatoptions' and |ins-textwidth|.
When 'formatexpr' is set it will be used to break the line.
NOTE: This option is set to 0 when 'compatible' is set.




'wrapmargin' 'wm'       number  (default 0)
local to buffer
Number of characters from the right window border where wrapping
starts.  When typing text beyond this limit, an <EOL> will be inserted
and inserting continues on the next line.
Options that add a margin, such as 'number' and 'foldcolumn', cause
the text width to be further reduced.  This is Vi compatible.
When 'textwidth' is non-zero, this option is not used.
See also 'formatoptions' and |ins-textwidth|.  {Vi: works differently
and less usefully}

如果您参考自动包装的长线发送到下一个,尝试

:set textwidth=0
:set wrapmargin=0

也许是设置的文本宽度,当它到达一定长度时,它会自动分割行 试试看

:set tw=0

如果失败了,就玩玩例如。

:set wrap linebreak textwidth=0

还有

:set virtualedit=insert

set formatoptions-=t应该可以做到这一点。 set formatoptions+=t将打开自动包装回来。

有关如何使用 formatoptions的更多信息,请参见 那些文件

没有其他的答案为我工作(IDK 为什么)。

:set wrap! 帮了我大忙(使用 GVim for Windows)。

打开 vimrc _ example. vim (是的,这是 Vim74中的文件)并设置 texttwidth = 0。

为了防止 vim 包装长线,我在我的 .vimrc中使用了以下两条线:

set nowrap           " do not automatically wrap on load
set formatoptions-=t " do not automatically wrap text when typing

若要禁用换行,可以输入 或者将此命令附加到 ~/.vimrc

在 macbook pro 中,我在.vimrc 中的行中输出了注释

autocmd FileType text setlocal textwidth=78

所以就变成了

"  autocmd FileType text setlocal textwidth=78

.

(我通过自制软件安装了一个版本的 vim。) 这对所有.txt 文件都有帮助。