Беглец команды недоступны после открытия .vimrc для редактирования - PullRequest
3 голосов
/ 20 марта 2012

Моя система - OS X 10.6 с MacVim 7.3 (GUI) и Vim 7.2 (в iTerm).

В MacVim Fugitive вообще не работает.

В Vim все немного по-другому. Я установил сопоставление для открытия файла .vimrc следующим образом:

nmap <silent> <leader>ev :e $MYVIMRC<CR>

Сразу после открытия vim доступны все команды Fugitive, но после открытия файла .vimrc с использованием приведенного выше сопоставления я не могу выполнить ни одну из команд Fugitive :G*. Если я открою файл .vimrc нормально (т.е. с :e ~/.vimrc), то все в порядке.

Весь мой .vim dir (с .vimrc в качестве vimrc в корне) доступен здесь .

Что я могу сделать, чтобы это работало?

Ответы [ 2 ]

10 голосов
/ 22 марта 2012

Функции Fugitive доступны, только если рассматриваемый файл является частью репозитория Git.Вполне вероятно, что ваш .vimrc файл не находится под контролем версии Git, или, если это так, что вы отредактировали его по символьному пути, который Fugitive не обрабатывает на момент написания.

Есливаш .vimrc файл действительно находится под контролем версий, вы можете это исправить, вызвав :edit по каноническому пути к файлу, а не по каким-либо символическим ссылкам, что побудит Fugitive правильно найти .git подкаталог и метаданные внутри.

3 голосов
/ 07 марта 2013

Если ваша $MYVIMRC является символической ссылкой, попробуйте это сопоставление.

noremap <leader>ev :execute 'e ' . resolve(expand($MYVIMRC))<CR>

Откроется целевой файл vimrc, который находится в git-репо и, таким образом, может быть взят Fugitive..

...