如何在 Vim 上使用 Ctags 搜索损坏的符号?

How to search across mangled symbols with Ctags on Vim?

我正在处理一个大型混合 C/Asm 项目,我有很多变量和符号在 ASM 端被破坏了。所以在 Vim 上我不能只在 _foo 上做 <C-]> 因为 Ctags 不能在 C 命名空间上 link 到 foo

我如何告诉 Vim 或 Ctags 扩展对损坏符号的搜索?

Vim 默认执行全词搜索,但您可以通过在标签名称前加上斜杠来强制执行正则表达式搜索:

:tag /foo

不幸的是,没有选项可以更改该行为或 "regex" <C-]> 的替代方法,但您可以很容易地创建一个:

nnoremap <key> :tjump /<C-r><C-w><CR>

注意:我使用 :tjump 是因为我发现它比 :tag 更有用。 YMMV.