
С моими настройками по умолчанию formatoptions
флаг tcq
для текстовых файлов и croql
для C++. Мне не нравится, что он автоматически переносит текст, поэтому я вставляю это в свой vimrc:
autocmd FileType text set formatoptions-=t
Пока что это работает так, как и ожидалось. Теперь я хочу включить присоединение комментариев в C++, поэтому я добавляю следующую строку в свой vimrc сразу после строки выше:
autocmd FileType c,cpp set formatoptions+=j
Теперь formatoptions
становится croqlj
для каждого файла, не только C/C++, но и для текста. Почему это?
решение1
'formatoptions'
этобуфер-локальныйвариант; следует использовать :setlocal
вместо :set
.
В последнем случае вы не только меняете параметр для текущего буфера, но и изменяете глобальное значение по умолчанию для любого будущего буфера, который будет открыт.