1

Я использую Windows XP и установил gVIM ... и мне это нравится.

Обычно я просто запускаю gVIM и позволяю оконному приложению делать всю свою магию, но в последнее время я также использовал стандартный vim в консоли.

У меня проблема с просмотром каталогов.

В окне gVIM я могу напечатать: редактировать. и он перечислит мой текущий каталог с файлами для выбора.

Однако в VIM (в командной строке) введите:edit. только выходы "." является каталогом и не перечисляет текущий рабочий каталог, как в gVIM.

Есть ли другой способ сделать то, что я хотел бы?

** редактировать **

заметил, что причина, по которой я получаю другое поведение, заключается в том, что когда я запускаю vim из командной строки, он запускается из c:\windows\system32, но когда я запускаю gvim, он приходит из c:\program files\vim .. ..и версия в system32 не имеет указателя на файл _vimrc

3 ответа3

3

Просмотр каталогов обеспечивается (устанавливается стандартно) плагином netrw. Вероятно, у вашего gvim есть доступ к этому плагину, а у консоли vim - нет. Предполагая, что вы установили vim в C:\vim и используете vim 7.2, плагин, вероятно, будет находиться в c:\vim\vim72\plugins. Убедитесь, что вы запускаете vim из C:\vim\vim72 (добавив этот каталог в начало вашего пути).

Если нет файла c:\vim\vim72\vim.exe, скопируйте файл gvim.exe в тот же каталог, но переименуйте его в vim.exe, и все остальное должно быть отсортировано.

2

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

Это поддерживается функцией TAB для дополнения имени.

Вот небольшая шпаргалка для VIM

http://www.tuxfiles.org/linuxhelp/vimcheat.html

Я надеюсь, что это полезно!

0

Поскольку вы запускаете vim.exe вместо gvim.exe из разных мест, возможно, что ваш VIMRUNTIME отличается (:echo $VIMRUNTIME когда он находится внутри vim или gvim). Кроме того, может случиться так, что у вас есть .vimrc или _vimrc, на который указывает gvim (следовательно, ваш gvim будет в несовместимом режиме), но ваш vim не получает этого преимущества (и netrw не работает, если ваш vim работает в vi-совместимом режиме).

Попробуйте :echo &cp too: получите 1 , он совместим с vi, 0 нет. Вы хотите 0 .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .