2015-08-02 2 views
1

у меня есть следующие строки в моем vimrc:Vim пустые строки после выхода

silent !mkdir ~/.vim/.backup >/dev/null 2>&1

Если открыть новый терминал и открыть что-то с Vim, а затем бросить Vim, некоторые пустые строки будут вставлены до конца мое окно терминала, поэтому приглашение станет последней строкой в ​​терминале.

Я использую iTerm и OS X, но я пробовал то же самое на ubuntu, и он ведет себя точно так же. Я также пытался запустить vim без плагинов, поэтому я уверен, что проблема в описанной выше команде. Если я прокомментирую это, все будет хорошо.

Как предотвратить такое поведение?

Моя ВИМ версия:

VIM - Vi IMproved 7.4 (2013 10 августа, составленный 10 июл 2015 4:05:27) MacOS X (UNIX) версия Включенные патчи: 1-712

ответ

3

Используйте функцию mkdir() вместо вызова команды оболочки.

if !isdirectory($HOME . '/.vim/.backup') 
    call mkdir($HOME . '/.vim/.backup', 'p') 
endif 

Проверка isdirectory необходимо, так mkdir() ошибки, если каталог уже существует.

+0

Спасибо, что решил мою проблему! –

Смежные вопросы