我在Vim中启用了自动(硬)包装。也就是说,无论何时写,线都会根据文本宽度自动换行。没关系。
现在,我的问题是:是否可以设置VIM,以便在它以特定字符(或一组字符)结尾时不包裹一行?
这里有一个例子。
让我们说我希望“%”成为我的“nowrap”角色。
现在,如果我输入:“abc abc abc abc%< enter> abc”
我目前正在接受:
abc abc abc abc % abc
虽然我想要:
abc abc abc abc %
abc
这些是我目前的(相关)设置:
textwidth=80
wrapmargin=0
formatoptions=a2tqcrl
nolinebreak
答案 0 :(得分:0)
内置任何东西;见:help fo-table
。我能想到的唯一解决方法是通过autocmd切换'formatoptions'
(或'textwidth'
):
:autocmd CursorMoved,CursorMovedI * execute 'setlocal fo' . (getline('.') =~# '%$' ? '-=' : '+=') . 'a'
答案 1 :(得分:0)