vim ctags 在从定义列表中选择后打开分屏

vim ctags open split screen after choosing from list of definitions

我想模仿"pycharm"在vim中选择多个定义的效果。我正在使用 ctags,在我的 .vimrc 中有两个选项,但不知道如何绑定它们

1) 映射默认的 ctrl+] 组合以显示定义列表

map <C-]> g<C-]> 

2) 从列表中选择定义后,我按回车,此时我想在当前缓冲区下面打开分屏

map <C-]> :rightbelow vsplit <CR> :exec("tag ".expand("<cword>"))<CR>

但是函数定义在新标签页中打开...

g<c-]>等同于:tjump:stjump:tjump.

的拆分变体
nnoremap <c-]> :<c-u>rightbelow vertical stjump <c-r><c-w><cr>

一般经验法则:

  • 为您的映射提供一种模式。 n 在这种情况下是正常的。
  • 使用 noremap 而不是 map 除非您使用 <Plug> 映射。

如需更多帮助,请参阅:

:h :vert
:h :stjump
:h c_CTRL-R_CTRL-W