Вопрос

Я пытаюсь получить Edit with Vim контекстное меню для открытия файлов на новой вкладке ранее открытого экземпляра Gvim (если таковой имеется).

В настоящее время используя Regedit Я изменил этот ключ:

\HKEY-LOCAL-MACHINE\SOFTWARE\Vim\Gvim\path = "C:\Programs\Vim\vim72\gvim.exe" -p --remote-tab-silent "%*"

Тип ключа реестра REG_SZ.

Это почти работает...В настоящее время он открывает файл на новой вкладке, но также открывает другую вкладку (активную вкладку), вкладка помечена как \W\S\--literal и файл, похоже, пытается открыть следующий файл.

C:\Windows\System32\--literal

Я думаю, проблема в том, "%*" - Я попробовал изменить это на "%1" но если я это сделаю, у меня появится дополнительная вкладка под названием %1.

Затронутая версия

  • Vim версии 7.2 (то же поведение и в версии 7.1)
  • Windows Vista домашняя премиум

Спасибо за любую помощь.

Дэйвид.

Это было полезно?

Решение

Попробуйте установить его так:"C:\Programs\Vim \vim72\gvim.exe" -p --remote-tab-silent "%1" "%*"

Видеть: http://www.vim.org/tips/tip.php?tip_id=1314

РЕДАКТИРОВАТЬ:Как отметил Томас, советы vim.org переехали на: http://vim.wikia.com/

Видеть: http://vim.wikia.com/wiki/Add_open-in-tabs_context_menu_for_Windows

Другие советы

Вы были на правильном пути:

HKEY-LOCAL-MACHINE\SOFTWARE\Vim\Gvim\path = "C:\Programs\Vim \vim72\gvim.exe" -p

было достаточно...оно работает!!

Я нашел ответ...Ссылка на крем дала мне дополнительные области для поиска.

от http://genotrance.wordpress.com/2008/02/04/my-vim-customization/ существует файл реестра vim.reg, который содержит следующее

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\Edit with Vim]
@=""

[HKEY_CLASSES_ROOT\*\shell\Edit with Vim\command]
@="\"C:\\Programs\\vim\\vim72\\gvim.exe\" -p --remote-tab-silent \"%1\" \"%*\""

[HKEY_CLASSES_ROOT\Applications\gvim.exe\shell\open\command]
@="\"C:\\Programs\\vim\\vim72\\gvim.exe\" -p --remote-tab-silent \"%1\" \"%*\""

это дает мне поведение, которое я хочу.

Поэтому я думаю, что мой первоначальный план редактирования HKEY_LOCAL_MACHINE был неправильным.

Также было бы неплохо узнать, что именно означают/означают «%1» и «%*».

Сейчас...следует ли мне отредактировать свой первоначальный вопрос, чтобы показать, что я начал не с той области реестра?

Я бы рекомендовал попробовать Крем.

Cream — это набор скриптов и надстроек, которые работают поверх gVim.Cream не меняет внешний вид gVim, но меняет его поведение.

Одним из таких вариантов поведения является интерфейс документа с вкладками.Другие варианты поведения перечислены здесь.Страница загрузок находится здесь.

Есть еще более чистое решение, используя ваш _vimrc.Добавьте следующую строку:
autocmd BufReadPost * tab ball
от http://www.vim.org/scripts/script.php?script_id=1720

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top