Как сделать vim print подсказку о сохранении несохраненного файла перед компиляцией? - PullRequest
5 голосов
/ 20 декабря 2011

Я всегда забываю сохранить все файлы в буфере перед компиляцией с помощью команды компиляции vim build * in :make.Так можно ли заставить vim выводить подсказку о сохранении файла так же, как это делается, когда мы завершаем работу перед сохранением файлов?

Ответы [ 2 ]

5 голосов
/ 20 декабря 2011

Просто создайте простое отображение типа:

nnoremap <leader>m :wa <BAR> :make<CR>
  • :wa, чтобы записать все буферы
  • :make, чтобы построить
  • | междудва для выполнения команд в последовательности.
4 голосов
/ 21 декабря 2011

Редактировать Re:

Я обнаружил, что опция "autowrite" может решить эту проблему в некотором аспекте, но я также буду автоматически писать при вводе следующего, предыдущего тега.Я ищу лучшее решение

Вы можете использовать QuickFixCmdPre:

:au QuickFixCmdPre * write

В этом примере сохраняются файлы при выполнении make.Для получения дополнительной информации см. :he autocmd.

Конечно, это будет работать, только если вы используете vim's

:make

Если вы используете другие программы, не используйтенапример, :!scons -C src, но вместо этого используйте :se makeprg=scons\ -C\ src и обычный :make для запуска всех встроенных функций быстрого исправления .

Для более гибкой автоматической записи см .:


`autowrite`

Я просто использую

:set autoread autowrite

в моем .vimrc;На самом деле это довольно безопасно, вы будете предупреждены всякий раз, когда рискуете потерять изменения в буфере или на диске.

Это также довольно приятно при работе с окнами, когда один и тот же файл открыт в другой программе.(скажем, Visual Studio или Notepad ++; оба могут быть настроены на автоматическую перезагрузку файлов также при изменении).

Самое приятное в этом то, что он будет автоматически сохраняться и при сворачивании, поэтому всякий раз, когда вы нажимаете Cz , чтобы свести к минимуму, файл будет записан (при условии, что он также не был изменен на диске), и когда вы восстановите окно (или передний план в терминальном контексте), вы автоматически получите максимально возможнуюсодержимое файла даты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...