Это контролируется formatoptions
настройкой; от :help fo-table
:
Вы можете использовать эту 'formatoptions'
опцию, чтобы повлиять на форматирование текста в Vim.
'formatoptions'
это строка, которая может содержать любую из букв ниже. По умолчанию установлено tcq
. Вы можете разделить буквы опции запятыми для удобства чтения.
Обратите внимание, что утверждение о «значениях по умолчанию» несколько вводит в заблуждение, так как многие типы файлов изменяют форматирование в соответствии с типом файла; например в /usr/share/vim/vim74/ftplugin/vim.vim
:
" Set 'formatoptions' to break comment lines but not other lines,
" and insert the comment leader when hitting <CR> or using "o".
setlocal fo-=t fo+=croql
Вы можете просмотреть текущий formatoptions
с:
:set fo?
formatoptions=jcroql
И посмотри, где они были установлены так:
:verbose set fo?
formatoptions=jcroql
Last set from /usr/share/vim/vim74/ftplugin/vim.vim
В этом случае вы хотите удалить r
флаг, но, возможно, также c
и o
флаги:
r Automatically insert the current comment leader after hitting
<Enter> in Insert mode.
c Auto-wrap comments using textwidth, inserting the current comment
leader automatically.
o Automatically insert the current comment leader after hitting 'o' or
'O' in Normal mode.
Это можно сделать так:
:set formatoptions-=r formatoptions-=c formatoptions-=o
Обратите внимание, что использование :set formatoptions-=cro
не будет работать должным образом (так как это строка, она будет искать строку cro
в том порядке, который часто не будет работать.).
Чтобы установить изменения только для текущего буфера, используйте :setlocal
вместо :set
. Если вы хотите всегда иметь эти параметры, вероятно, лучше использовать autocmd
в вашем vimrc; например:
au FileType vim setlocal fo-=c fo-=r fo-=o
Это установит параметры только для типа файла 'vim' и не будет мешать другим типам файлов.
Если вы хотите всегда устанавливать его, используйте:
au FileType * set fo-=c fo-=r fo-=o
Просто использование set fo-=cro
не будет работать, так как многие типы файлов установлены / расширены formatoption
(как показано выше); FileType autocmd выполняется после загрузки файлов типов файлов.
au FileType * set fo-=o
в мой .vimrc не сработало. Я нажимаюo
в комментируемой строке, и это все еще комментирует это также.formatoptions
были упакованы мой текстовый файл. Я ломал голову вокругtextwidth
и ,wrapmargin
но ничего не получалось. Даже понизил мой vim с 8.1 до 8.0, думая, что это ошибка. Это решило мою проблему, спасибо.Добавьте это в ваш vimrc:
Использование
FileType
не будет работать, так как другие плагины установленыformatoption
.источник