Отключить предупреждение в VIM?
есть ли способ отключить предупреждения в VIM?
в частности, я хочу отключить предупреждение 12, когда файл переходит из режима только для чтения в режим записи. У меня есть скрипт, который открывает файл для редактирования в perforce, но vim думает, что файл изменился и выдает предупреждение.
спасибо
3 ответов
добавьте следующую строку в ваш .файл vimrc :
набор autoread
Это отключит предупреждения" только для чтения"
у меня есть следующая в моем .vimrc; вам нужен только второй. Он повторяет сообщение в строке состояния вместо того, чтобы выскакивать диалоговое окно.
autocmd FileChangedRO * echohl WarningMsg | echo "File changed RO." | echohl None
autocmd FileChangedShell * echohl WarningMsg | echo "File changed shell." | echohl None
попробовать :help FileChangedShell
для получения дополнительной информации.
Я использую FileChangedRO
некоторое время, чтобы автоматически проверять файлы при запуске их редактирования и обнаружил, что предупреждение W12 также раздражает. Проблема в том, что P4 edit обновляет атрибуты файла, чтобы удалить флаг только для чтения. Если в рамках первоначального редактирования вы также изменяете файл, Vim видит это как конфликт, так как он больше не только для чтения. Вот решение, которое я использую, которое немного более консервативно в использовании FileChangedShell
в случае, если файл был изменен извне для некоторых других причина.
let s:IgnoreChange=0
autocmd! FileChangedRO * nested
\ let s:IgnoreChange=1 |
\ call system("p4 edit " . expand("%")) |
\ set noreadonly
autocmd! FileChangedShell *
\ if 1 == s:IgnoreChange |
\ let v:fcs_choice="" |
\ let s:IgnoreChange=0 |
\ else |
\ let v:fcs_choice="ask" |
\ endif