Может ли vim удалять слова в именах переменных? - PullRequest
0 голосов
/ 17 ноября 2010

Если у меня есть имя переменной / функции с именем SqlDatabaseConnection, и я поместил курсор на первое «S», есть ли способ удалить «слова», как определено заглавными буквами («Sql» и «База данных»)

Ответы [ 4 ]

8 голосов
/ 17 ноября 2010

Я полагаю, что вы можете использовать camelcasemotion в качестве команды перемещения в вашем удалении (d,w).Для записи я бы использовал dtD или dtC.

5 голосов
/ 17 ноября 2010

Это может работать ( удалить до ):

dt<letter>

Итак, в вашем примере dtD удалит "Sql".

Еще один вариант:

d/[A-Z]

Вы можете повторить удаление, нажав «.»

1 голос
/ 17 ноября 2010

Как сказал icecrime, плагин camelcasemotion делает это точно.

Если вы не хотите устанавливать плагин, вы можете создать такой макрос:

дс

v

/ [A-Z] \ | \ </ е-1 </p>

( нажмите ENTER )

х

д

Я разделил другую часть макроса, но вы должны ввести их без пробелов и возврата каретки, кроме ( нажмите Enter ), что означает, что вы должны нажать Enter на этом шаге макроса создание.

После этого просто поместите курсор на первую букву переменной camelcase, и @c удалит слова одно за другим верблюжьим путем.

0 голосов
/ 17 ноября 2010

Не то, что я знаю. Я обычно подсчитываю или оцениваю количество букв, которые хочу удалить, и использую 'nx', где n - это количество букв для удаления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...