use :tjump instead of :tag vim on pressing ctrl-]

2019-02-13 12:51发布

问题:

in vim,
when i press ctrl-]

1) the usual behavior:
it goes to the first matching tag with the word under the cursor, after that we need to do :tjump separately to see a list of all matching tags and then jump to the desired tag.

2) what i want is:
vim should search the tag file,
if there are multiple matches, show me a list of all the matching tags
if there is one match, simply jump to the matching tag
(just like :tjump does)

this behavior(2) already happens when we use g-ctrl-], but i want it to happen with ctrl-]
i have seen behavior(2) using ctrl-] in some vims in some linuses.

please tell me how i can obtain behavior(2). in other words,
please tell me how i can make ctrl-] to behave like g-ctrl-] using .vimrc or whatever

回答1:

This will map <c-]> to g<c-]> for both normal and visual modes.

nnoremap <c-]> g<c-]>
vnoremap <c-]> g<c-]>

I suggest you map g<c-]> to <c-]>. In other words just swap the commands.

nnoremap g<c-]> <c-]>
vnoremap g<c-]> <c-]>