为什么在调用python的标记完成时tcl和c中的关键字会弹出?

2024-04-28 15:27:52 发布

您现在位置:Python中文网/ 问答频道 /正文

E环境:debian8+vim8。
filetype在.vimrc和vim/runtime/ftplugin中处于on状态/python.vim.

cat   .vimrc
execute pathogen#infect()
execute pathogen#helptags()
syntax on
filetype plugin indent on

cat vim/runtime/ftplugin/python.vim
setlocal omnifunc=pythoncomplete#Complete
filetype plugin indent on
"other lines omitted.

有些问题使我困惑。
1.在全面完成时
1.1模块中的类名
模块中的类或方法可以完成。
enter image description here

1.2内置函数名称

^{pr2}$

要按ctrlxctrlo,不弹出^{cd1>}, 为什么无法使用ctrlxctrlo

2.标签完成
没有为python文件准备的标记文件,没有为任何python文件执行^{{cd2>}。
vim在编辑^{cd3>}时从何处获得这些关键字?

输入^{cd4>}in测试.py然后使用ctrlxctrlo,调用omni completion,无全向完成菜单弹出。
输入^{cd4>}in测试.py然后,使用ctrlxctrl],弹出标记完成菜单。

enter image description here 对于匹配的关键字^{cd6>}

^{pr3}$

对于marched keyowrd^{cd7>}

^{pr4}$

keyowrd^{cd7>}位于c文件中。
2.1 tcl关键词弹出
为什么tcl中的关键字在何时调用python的标记完成?

2.2 c关键词弹出
为什么c文件中的关键字在何时调用python的标记完成?

3.哪个文件控制标签完成的行为?
此处的文件/vim/runtime/autoload/PytonComplete.vim,控制omni完成的行为。
哪个文件控制标签完成的行为?
为什么没有任何python文件的标记文件,按ctrlxctrl]输出标记完成菜单?


Tags: 文件标记executeon菜单关键字标签vim