#phpstorm #webstorm #ideavim
#phpstorm #webstorm #ideavim
Вопрос:
Nifty CTRL-G
на Mac, который выбирает следующее вхождение слова, не работает при активации IdeaVim. Итак, довольно долгое время я просто жил с отключением IdeaVim каждый раз, когда я хочу сделать множественный выбор как таковой. Но я использую его все чаще и чаще. Есть ли обходной путь, чтобы заставить его работать?
… Или я могу как-то сделать это в стиле VIM?
Конкретный пример
Если у меня есть что-то вроде этого:
$foo = 123
if( isset( $foo ) ){
echo $foo;
} // if( isset( $foo ) ){
И я хочу выбрать все $foo
и заменить его на $bar
.
Если бы я не использовал IdeaVim, то я смог бы выбрать первое $foo
и нажать CTRL-G
4 раза (или нажать CTRL-CMD-G
, если я хочу выбрать их все), а затем написать $bar
.
… В настоящее время я просто деактивирую IdeaVim и делаю это.
Дополнительные примечания
Я попытался очистить свой .ideavimrc
-файл, чтобы убедиться, что там нет чего-то, что с ним сталкивается. И результат тот же.
Ответ №1:
Вы можете выбрать IDE
обработчик для конфликтующего сопоставления, если хотите выполнить действие idea вместо действия vim.
Комментарии:
1. Ах! Я не знал об этом. Спасибо. Однако, функциональность multicursor не так хороша при использовании IdeaVim. Если я сделаю множественный выбор и нажму
SHIFT-i
, тогда я смогу печатать, а когда я закончу, тогда я смогу нажать escape, и только тогда это будет применяться ко всем местам, которые были выбраны. Я знаю, что это сложная задача, но знаете ли вы о каком-либо исправлении этого (чтобы можно было видеть ввод по мере его ввода при использовании режима с несколькими курсорами в IdeaVim)?2. @Zeth Сам не использую IdeaVim, но проверяю комментарии в youtrack.jetbrains.com/issue/VIM-780 или другие заявки — youtrack.jetbrains.com/issues/VIM?q=multi caret
3. @Zeth да, я смог воспроизвести эту ошибку. Я вижу, что IdeaVim работает как vimdoc.sourceforge.net/htmldoc/visual.html#v_b_I (что, очевидно, неправильно). Вы можете создать проблему здесь: youtrack.jetbrains.com/issues/VIM (или я создам его в понедельник).