Есть ли способ, чтобы получить IdeaVIM в честь сопоставления с моим.файл vimrc?


Я недавно попал в vim в большой путь (снова), и теперь у меня есть тонна настройки в моем . Я понимаю, что не все там будет иметь смысл в контексте плагина идеи, но я бы действительно нравится, если такие вещи, как переназначение jj to Esc были подобраны и удостоены. Есть ли способ сделать это? То есть без необходимости вручную настраивать все это в keymap IDEA.

спасибо.

8   51  

8 ответов:

Обновление: Да! См. ответ ниже.

короткий ответ: нет.

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

в любом случае, есть обходной путь (вроде). Настройки IdeaVim хранятся в файле с именем vim.xml на .IntelliJIdea10/config/keymaps папка внутри вашей домашней папки (C:\Users\<user_name> в Windows). Вы можете редактировать XML, чтобы добавить материал, который вы хотите. Например, я добавил следующие строки, чтобы сохранить файл, нажав F2 вместо ввода :w!:

<action id="SaveAll">
<keyboard-shortcut first-keystroke="F2"/>
</action>

однако я не вижу, как мы можем добавлять такие вещи, как функции или настройки vim (что я обычно использую .vimrc for).

П. С. это может объяснить, почему .vimrc не используется (акцент мой):

для любопытных, плагин в настоящее время написано без какой-либо ссылки на Исходный код VIM (за исключением обработка регулярных выражений). Я в принципе, используя превосходный ВИМ документации и самого Vim в качестве ссылка для проверки правильного поведения.
Источник: http://ideavim.sourceforge.net/

обновленный ответ: IdeaVim версии 0.35 (выпущен 2014-05-15) считывает настройки и привязки клавиш из ~/.ideavimrc. Вы можете поставить source ~/.vimrc в этот файл, если вы хотите включить отображение ~/.vimrc.

0.33 и 0.34 читать ~/.vimrc напрямую.

0.33 (выпущен 2014-04-28) была первая версия для реализации VIM-288, в том числе такие вещи как отображение jj до ESC. Он отлично работает, и есть новый Эмуляция Vim раздел в настройках идеи, в котором перечислены все конфликты между ~/.vimrc сопоставления и сопоставления Intellij, а также позволяет разрешать конфликты, назначая ключи либо IDEA, либо IdeaVim. Вот это объявление о выпуске на Twitter.

(примечание: Я не автор, просто довольный пользователь.)

это выглядит проблема IdeaVIM # VIM-288 (edit, update: see jbyler это, VIM-288 теперь исправлено) решит вашу проблему, когда это будет исправлено. Я тоже искал способ иметь " jk " выход из режима вставки вместо использования клавиши Escape. Я не эксперт по плагинам IntelliJ, но мне удалось изменить исходный код IdeaVIM, чтобы ярлык " jk " был жестко закодирован там. Все, что мне нужно было сделать, это повторно развернуть плагин и использовать его вместо официальной версии. Вот как я сделал это:

  1. возьмите исходный код IdeaVIM.

    https://github.com/JetBrains/ideavim

  2. Вы можете следовать инструкциям в разделе "Развитие" на этой странице, чтобы настроить среду разработки для плагина.

  3. теперь, когда ваш проект IdeaVIM полностью настроен, откройте этот файл: com.мэддихом.идея.напор.ключ.Зарегистрируйся.java

  4. Кажется этот файл содержит все команды Visual/Insert/Normal mode и соответствующие им привязки клавиш. Для моего примера изменения привязки ключа " выход из режима вставки "найдите"VimInsertExitMode". Вам нужно будет добавить строку в этот блок кода для вашего нового ярлыка.

  5. вот как выглядел раздел кода после того, как я его отредактировал:

  6. теперь разверните проект (сделать .jar) и добавьте его в папку плагинов; я следовал этим инструкциям для ссылка:

    http://confluence.jetbrains.com/display/IDEADEV/Getting+Started+with+Plugin+Development#GettingStartedwithPluginDevelopment-anchor5

  7. возможно, вам придется сохранить Vim.xml-файл из вашей папки keymaps, я не уверен. Я удалил свой, а затем он был повторно сделан, когда я перезапустил IntelliJ.

  8. дать ему шанс! Теперь вы можете использовать " jk " в качестве ярлыка режима вставки выхода!

вы знаете, у меня был некоторый успех.vimrc в моей домашней папке на Windows, поэтому обычно C:\Users\yourLogin . Казалось бы, это нарочно. Олег упоминает, что IdeaVIM использует здесь подмножество команд VIm.

http://youtrack.jetbrains.com/issue/VIM-134#tab=Comments

Похоже, вам нужно войти в систему, чтобы увидеть комментарии к системе youtrack.

Олег Александрович 15 авг 2011 18: 12

плагин IdeaVIM загружает некоторые данные конфигурации из .файл vimrc, однако поддержка плагинов vim нет и не будет доступно, потому что требуется переписать всю среду выполнения VIM внутри Плагин IdeaVim.

обратите внимание, что вы должны назвать файл .vimrc, а не _vimrc, если вы находитесь в Windows, где вы можете ожидать последнего.

работает с set ignorecase по крайней мере!

согласно описанию в репозитории плагина (https://github.com/JetBrains/ideavim), Вы можете достичь этого, создав файл"~/.ideavimrc" с содержимым:

source ~/.vimrc

IdeaVim теперь (по крайней мере, уже 0.35) поддерживает a ограниченное количество набор команд, а также карта и ее вариации. Чтобы они были получены автоматически, поместите свои настройки в~/.ideavimrc.

чтобы заставить его работать на Windows 7 создать .ideavimrc в C:\Users[имя пользователя]

работал для меня.

Я только вчера понял, как это сделать. Я смог символически связать мое .vimrc в Мои настройки ideavim, выполнив следующую команду:

ln -s $HOME/.vimrc $HOME/.ideavim