PhpStorm — переход в конец строки (IdeaVim)

В IdeaVim есть эта ошибка, из-за которой вы не можете перейти в конец строки, набрав знак доллара ($). Вы можете увидеть, как это продемонстрировано здесь, что происходит, когда я пытаюсь:

Демонстрация ошибки IdeaVim

А вот (эта гифка слишком большая, поэтому мне пришлось связать ее).

Поскольку я использую IdeaVim, мои пальцы находятся далеко от клавиш со стрелками, поэтому Cmd- не подходит для того, что я использую так много раз в течение дня. .

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

--Дополнение 1 Я работаю на Mac, поэтому у меня нет клавиши "Конец".

--Дополнение 2 Думал либо что-то подложить в файл .ideavimrc - либо фикс в PhpStorm-настройках. Но все, что приведет меня к концу линии, на которой я нахожусь (не визуальной линии из-за мягкой обертки, а реальной линии), будет служить ответом.

Я тут один с этой проблемой? Могут ли другие воспроизвести его (установив плагин IdeaVim, включение мягкого переноса, а затем переход к очень длинной строке (которая занимает более одной визуальной строки) и нажмите $)?


person Zeth    schedule 24.10.2017    source источник
comment
какая версия PhpStorm? У меня PhpStorm 2016.1.2 Build #PS-145.1616, built on May 24, 2016 JRE: 1.8.0_76-release-b198 x86_64 JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o и я не могу воспроизвести   -  person Tarun Lalwani    schedule 21.11.2017
comment
У меня PhpStorm 2017.2.1 built #PS-172.3544.41, built on August 2, 2017. JRE: 1.8.0_152-release 915-b6 x86_64. JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.0. Странно, что вы не можете это воспроизвести. Вы на Mac или Windows?   -  person Zeth    schedule 21.11.2017
comment
Я на Mac, только что обновился до PhpStorm 2017.2.4 Build #PS-172.4155.41, built on September 15, 2017 JRE: 1.8.0_152-release-915-b11 x86_64 JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o Mac OS X 10.12.6, и он все еще работает. Вероятно, у вас есть что-то .ideavimrc, вызывающее эту проблему? Я пробовал с программными средствами и без них, и в обоих случаях это работает.   -  person Tarun Lalwani    schedule 21.11.2017


Ответы (2)


Попробуйте использовать g_. Это движение похоже на $, оно перемещает курсор к последнему непробельному символу в строке.

Описанная ошибка, по-видимому, имитирует поведение g$, которая перемещает курсор в конец строки screen, а не на фактический разрыв строки. , когда на линии с мягким переносом. Я не могу воспроизвести эту ошибку в последних версиях IDE JetBrains (отчет об ошибке относится к 2014 году), поэтому, возможно, стоит проверить возможное повторное сопоставление в файле ~/.ideavimrc.

Мы можем попытаться сбросить сопоставление $. Запустите команду :noremap $ $ и повторите попытку перемещения в проблемном файле (IdeaVim не поддерживает :unmap). Если это сработает, мы можем добавить команду в ~/.ideavimrc или попытаться найти источник переназначения.

Если описанное выше не решает проблему, и g_ ведет себя так, как ожидалось, мы можем переназначить движение $ на g< /kbd>_ с помощью :noremap $ g_ .

person Cy Rossignol    schedule 21.11.2017
comment
:noremap $ $ решил эту проблему, поэтому я добавил это в свой .ideavimrc-файл: noremap $ $ и теперь он работает всякий раз, когда я запускаю PhpStorm. Огромное спасибо! - person Zeth; 26.11.2017

Как насчет использования клавиши «Конец» на клавиатуре? Это должно идти до конца текущей строки.

В случае, если одна длинная строка разбита на несколько подстрок, нажатие клавиши «Конец» из любого места подстроки приведет к переходу к концу этой подстроки.

Чтобы добраться до самого конца такой строки, я предлагаю нажимать клавишу «Конец» столько раз, сколько нужно, или удерживать клавишу до тех пор, пока она не будет достигнута.

person Bryan Lee    schedule 24.10.2017
comment
Извините, но я на Mac, поэтому у меня нет клавиши «Конец». И не быть ярым фанатиком, но в любом случае это будет не по-Вимовски. :-/ - person Zeth; 24.10.2017