ctags: предотвратить переход к первому результату для ctrl +]

Я хотел предотвратить переход к первому результату без вмешательства пользователя при ctrl +] (или щелчке левой кнопкой мыши) в vim. По сути, когда я нажимаю (ctrl +]) на идентификаторе, он должен перечислить все вхождения (например, поиск по тегу) и должен перейти к выбору (1,2 ..) при вводе пользователем 1,2 и т. д. Я помню, как использовал его, установив параметр в .vimrc (что-то вроде режима cscope), но сейчас не мог вспомнить.


person bsr    schedule 25.03.2011    source источник


Ответы (3)


Вы ищете список соответствия тегов?

person Rumple Stiltskin    schedule 25.03.2011
comment
поведение щелчка левой кнопкой мыши и ctrl+] должно быть таким же, как g] (из документации по списку совпадений тегов. Раньше я делал это с настройкой в ​​​​.vimrc, а не с картой клавиш. Возможно, я также установил cscope и использовал их вместе . - person bsr; 25.03.2011

Похоже, вы хотите g]. Он показывает совпадающие теги.

Хотя я не думаю, что есть возможность заставить Ctrl+] показывать список, если есть только один результат, если вы установите cscopetag и set cscopetagorder=0, вы будете искать в своей базе данных cscope, которая, вероятно, покажет больше результатов, чем ваши теги. (Особенно, если вы используете C++ и имеете параметр --c++-kinds=+p, который будет включать прототипы функций и реализации — у вас почти всегда будет два одинаковых элемента. Я использую этот параметр, потому что он требуется для omnicppcomplete.)

Вы все равно не получите список, если у вас есть только один результат. Для этого вам нужно будет сделать карты, чтобы поменять местами Ctrl+] и g].

person idbrii    schedule 18.01.2013

Вы можете добавить следующую строку в .vimrc

map <C-]> g]
person Laks    schedule 26.08.2013