Как настроить vim, чтобы команды движения включали символы подчеркивания и CamelCase, но их завершение будет игнорировать?
Например, у меня есть это:
set iskeyword-=_
Это приводит к выполнению этой работы:
foo_bar
Если курсор находится на "f", нажатие w перемещает курсор на символ подчеркивания. Повторное нажатие переместится в полосу "b". Это желаемый эффект для движения, но имеет нежелательный побочный эффект разрушения. Такая же история с маркерами CamelCase. Например,
Если у меня есть это:
foo_bar
и я печатаю foo_<CTRL+N>
Я не получаю "foo_bar" в качестве опции завершения.
Ответы
Ответ 1
Установите плагин camelcase и следуйте примеру на странице, чтобы переопределить сопоставление по умолчанию w
с CamelCase. Это заставит движения следовать за CamelCase, но не потребует изменений в iskeyword
. В качестве альтернативы вы можете использовать альтернативные сопоставления с запятыми (мои предпочтения), ,w
, ,e
и т.д., Чтобы делать движения CamelCase.