vim中的python:';gf';在进口线上

vim中的python:';gf';在进口线上,python,vim,editor,Python,Vim,Editor,在vim中,按gf打开光标下的文件。在python中, 导入模块时,模块所在的文件名之间带有“” 路径名将包含“/”。因此,仅凭suffexedad是不够的。 在Vim中获得gf功能的最佳解决方案是什么 在python中的导入行上,例如 import hwut.auxiliary.file_system as fs 我想将光标设置为“辅助”,键入“gf”并获取 文件已打开。请确保 filetype plugin on 在你的vimrc里。那么python导入上的gf应该会自动工作 更新OP的

在vim中,按
gf
打开光标下的文件。在python中, 导入模块时,模块所在的文件名之间带有“
” 路径名将包含“
/
”。因此,仅凭
suffexedad
是不够的。 在Vim中获得
gf
功能的最佳解决方案是什么 在python中的导入行上,例如

import hwut.auxiliary.file_system as fs
我想将光标设置为“辅助”,键入“gf”并获取 文件已打开。

请确保

filetype plugin on
在你的vimrc里。那么python导入上的
gf
应该会自动工作

更新OP的评论 如果启用了
filetype插件
,将加载默认的
python.vim
ftplugin。在那里,
fname
中的点
将替换为
/

setlocal include=^\\s*\\(from\\\|import\\)
setlocal includeexpr=substitute(v:fname,'\\.','/','g')
您可以检查python文件是否没有正确设置ft,或者您没有在vim中启用filetype

在我的带有vim80的Archlinux发行版上,python.vim位于:

/usr/share/vim/vim80/ftplugin
您可以通过检查vim中的
$VIMRUNTIME
var来获取路径。

确保

filetype plugin on
在你的vimrc里。那么python导入上的
gf
应该会自动工作

更新OP的评论 如果启用了
filetype插件
,将加载默认的
python.vim
ftplugin。在那里,
fname
中的点
将替换为
/

setlocal include=^\\s*\\(from\\\|import\\)
setlocal includeexpr=substitute(v:fname,'\\.','/','g')
您可以检查python文件是否没有正确设置ft,或者您没有在vim中启用filetype

在我的带有vim80的Archlinux发行版上,python.vim位于:

/usr/share/vim/vim80/ftplugin

您可以通过检查vim中的
$VIMRUNTIME
var来获取路径。

它没有,因为它试图加载一个包含点的文件名,该点实际上应该是斜杠。@Frank ReneSchäfer好的,在这里可以,没有加载额外的插件。如果没有上的
插件,它将无法工作。好的,需要注意的是,在激活“python.vim”之前,“filetype plugin on”必须处于活动状态。然后一切顺利。谢谢。它没有,因为它正试图加载一个包含点的文件名,而实际上应该是斜杠。@Frank ReneSchäfer好的,它在这里加载,而不加载额外的插件。如果没有上的
插件,它将无法工作。好的,需要注意的是,在激活“python.vim”之前,“filetype plugin on”必须处于活动状态。然后一切顺利。谢谢