vim python 导航到导入的文件

8 投票
1 回答
2484 浏览
提问于 2025-04-18 17:31

这个问题可能听起来有点傻,但我卡住了。 我在某个Python文件里写了gnuradio应用。 在VIM里,我尝试打开一个被导入的文件,比如:

from gnuradio import audio

假设我使用了这个函数:

audio.sink()

在VIM里,有没有办法快速获取

sink()

这个函数的内容?就像用CTRL-]命令在ctags中那样。

补充一下,使用Ctags导航到audio.sink()时,返回的错误是:找不到标签:sink。使用Ctags我只能导航到本地定义的内容(而不是导入的)。我检查了

ctags --list-kinds=python

导入选项是启用的。 在tags文件里我看到了:

audio   fm_receiver.py  /^from gnuradio import audio$/;"    i

1 个回答

5

这个方法运行得挺快,但可能不是你想要的那样。你需要在你的 .vimrc 文件中添加这一行:

nnoremap <C-k> :!ctags -aR /usr/lib/python*/site-packages/<cword><cr>

然后你可以把鼠标放在包名 gnuradio 上,按下 CTRL+K,这样就会执行一个命令,把这个包的源文件添加到你本地的标签文件中(这也是 vim 的默认设置)。接着,你可以在 sink 这个关键词上按 CTRL+] 来查看这个函数。

撰写回答