Какое самое короткое нажатие клавиши для вызова идентификатора ac / c ++ в vim? - PullRequest
1 голос
/ 26 мая 2011

Vim имеет команду * (звездочка), которая ищет следующий (или [считать], если указан), вхождение слова под курсором.Используя эту команду для word, можно получить \<word\> в регистре "/ (который содержит самый последний шаблон поиска).

Разница между поиском word и \<word\> заключается в том, что первыйшаблон соответствует word в wordfoo, bar_word и т. д., а второй - нет.Это потому, что \< и \> соответствуют началу и концу слова, соответственно.

Я хочу знать, как лучше всего извлечь слово, как * делает (или #, обратная версия)), но без изменения позиции курсора.

Ответы [ 4 ]

3 голосов
/ 27 мая 2011

Если вы хотите соединить \<, \> и слово под курсором, чтобы сделать шаблон поиска в реестре, почему бы не сделать это явно?

:let @/ = '\<'.expand('<cword>').'\>'

(при необходимости измените @/ на ссылку на любой другой регистр.)

Если это необходимо в вашем случае, вы можете сопоставить эту строку с одним или двумя ключами длина ярлыка.

:noremap <silent> ,/ :let @/ = '\<'.expand('<cword>').'\>'<cr>
1 голос
/ 27 мая 2011

* будет искать идентификатор, а также помещать поисковый запрос в регистр /. Вы можете получить к нему доступ, нажав <Ctrl-R>/ в режиме ввода или "/p в обычном режиме.

Это, к сожалению, переместит курсор к следующему совпадению. Вы можете сохранить текущую позицию, используя метки. Сохраните текущую позицию с помощью ma и восстановите ее с помощью 'a.

Последняя команда ma*'a.

1 голос
/ 26 мая 2011

Я думаю, что вы попали не в ту сторону, просматривая параметры янки, я думаю, вам нужно написать быстрый макрос, который ищет слово в регистре и добавляет туда маркеры границы слова.Затем вы можете использовать yiw, yaw, yw и все другие стандартные команды yank, и ваш макрос будет иметь дело с добавлением границ в поиск.

0 голосов
/ 26 мая 2011

Команда yw восстанавливает позицию курсора до end слова.Используя текстовые объекты Vim , команда yaw возвращает все слово, на котором находится курсор, даже если курсор не расположен в начале слова.

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