Обычно используется или camelCase или snake_case для разделения нескольких слов, которые образуют идентификатор. Было бы неплохо , если бы «слово» движение ( b, w, e) обнаружит эти границы внутреннего идентификатора.
Как можно добиться такого поведения? (Plugin / vimrc / ...?)
cursor-movement
letter-case
Джаспер
источник
источник
snake_case
iskeyword
настройкой, но я боюсь, что у этого будет много дополнительных побочных эффектов ... (см.:help word
).snake_case
. Кажется, что нет, включил его в вопрос.f
иt
ключи для управления внутренних движений слов.Ответы:
Плагин CamelCaseMotion делает то, что вы хотите. По умолчанию он отображает на клавиши
,w
,,b
,,e
которые эквивалентны нормальнымw
,b
,e
. Он работает как для CamelCase, так и для snake_case:Пример:
Использование
d,w
удалитcamel
; использование его снова удалитCase
.Или со случаем змеи:
d,w
удалитsnake_
, а во второй раз удалитcase_
.«Внутренние» движения (такие как
diw
) также должны работать как положено (какdi,w
).Если вы предпочитаете, вы можете также переопределить значение по умолчанию
w
,b
иe
с:источник
,
команду (повторить последнееf
/t
/F
/T
движение), означая, что если вы хотите использовать эту команду, вам придется ждать задержки (настраивается'timeoutlen'
). К счастью, плагин позволяет вам использовать альтернативные отображения по вашему выбору.dw
на, key);
когда курсор находится ,k
кажется , чтобы удалить всю строку (включая символ новой строки), в то время как я ожидал толькоkey
быть удален ...camel
а потомCase
, нетWord
?