vim создает временные файлы в текущем рабочем каталоге

Обычно я настраиваю свой резервный каталог в своем vimrc следующим образом.

set backupdir=~/vimtmp,/tmp,.
set directory=~/vimtmp,/tmp,.

Это работает, так как все *.*~ помещаются в папку vimtmp.

Однако некоторые плагины, такие как NERDTree, Tagbar, создают свои временные файлы в моем текущем рабочем каталоге. Например, при запуске этих плагинов создаются следующие файлы.

  [[buffergator-buffers]]
  __Tagbar__
  NERD_tree_3

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

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

Большое спасибо.


person Validus Oculus    schedule 06.12.2015    source источник
comment
Нет, эти файлы не создаются этими плагинами. Это делаете вы или один из ваших полубесполезных плагинов.   -  person romainl    schedule 06.12.2015
comment
Я удаляю эти файлы, затем открываю vim, затем открываю панель тегов, и создается файл __TagBar__. Теперь, что вы подразумеваете под полубесполезными плагинами, создающими эти файлы?   -  person Validus Oculus    schedule 06.12.2015
comment
Три плагина никогда не создают файлы, временные или нет. Один из ваших других плагинов или какая-то команда где-то в вашей конфигурации проходит через ваши окна и создает эти файлы по какой-то неизвестной причине.   -  person romainl    schedule 06.12.2015
comment
Хорошо, теперь понял, позвольте мне проверить это.   -  person Validus Oculus    schedule 06.12.2015
comment
autocmd BufNewFile * :write с вашей подсказкой я нашел эту злую команду в своем vimrc :) спасибо, чувак.   -  person Validus Oculus    schedule 06.12.2015
comment
Если вы решили свою собственную проблему, вам следует подумать о том, чтобы превратить решение в ответ на свой собственный вопрос. Через пару дней система позволит вам также отметить свой ответ как принятый.   -  person Dan Lowe    schedule 06.12.2015


Ответы (1)


Изучив свой собственный файл vimrc, я обнаружил, что следующая команда auto вызывает проблему. Я использовал эту команду для автоматического сохранения файла при его создании. Однако побочным эффектом этой команды было то, что она также сохраняет все буферы (даже NERDTree, TagBar и т. д.). Поэтому он загромождал мой рабочий каталог. Итак, отключив следующую команду, я решил проблему.

" evil command
" autocmd BufNewFile * :write
person Validus Oculus    schedule 12.12.2015