未找到Vim Omnicomplete模式(Python)

时间:2013-02-17 02:27:29

标签: python vim omnicomplete

我读到omnicompletion应该“开箱即用”,但它没有,我想知道我做错了什么。

我编译了最新版本的vim,它显示了“+ python”:

user$ vim --version
VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Feb 16 2013 11:22:56)
MacOS X (unix) version
Compiled by user@computer.local
Normal version without GUI.  Features included (+) or not (-):
-arabic +autocmd -balloon_eval -browse +builtin_terms +byte_offset +cindent 
-clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments 
-conceal +cryptv -cscope +cursorbind +cursorshape +dialog_con +diff +digraphs 
-dnd -ebcdic -emacs_tags +eval +ex_extra +extra_search -farsi +file_in_path 
+find_in_path +float +folding -footer +fork() -gettext -hangul_input -iconv 
+insert_expand +jumplist -keymap -langmap +libcall +linebreak +lispindent 
+listcmds +localmap -lua +menu +mksession +modify_fname +mouse -mouseshape 
-mouse_dec -mouse_gpm -mouse_jsbterm -mouse_netterm -mouse_sysmouse 
+mouse_xterm -multi_byte +multi_lang -mzscheme +netbeans_intg -osfiletype 
+path_extra -perl +persistent_undo +postscript +printer -profile +python 
-python3 +quickfix +reltime -rightleft -ruby +scrollbind +signs +smartindent 
-sniff +startuptime +statusline -sun_workshop +syntax +tag_binary 
+tag_old_static -tag_any_white -tcl +terminfo +termresponse +textobjects +title
 -toolbar +user_commands +vertsplit +virtualedit +visual +visualextra +viminfo 
+vreplace +wildignore +wildmenu +windows +writebackup -X11 -xfontset -xim -xsmp
 -xterm_clipboard -xterm_save 
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
      user exrc file: "$HOME/.exrc"
  fall-back for $VIM: "/Users/user/Software/vim/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H   -DMACOS_X_UNIX -no-cpp-precomp  -g -O2 -D_FORTIFY_SOURCE=1      
Linking: gcc   -L/usr/local/lib -o vim       -lm -lncurses  -framework Cocoa     -framework Python

我清除了我的.vimrc离开:

" Automatic reloading of .vimrc
autocmd! bufwritepost .vimrc source %

filetype plugin on

和我的〜/ .vim /目录只是

autoload/pythoncomplete.vim

我是从http://www.vim.org/scripts/script.php?script_id=1542

下载的

并返回以下命令:

:echo &omnifunc
pythoncomplete#Complete

似乎很好。但每次我在下面的test.py文件中执行control-xo:

#! /usr/bin/env python
import numpy
numpy.r
输入“num”或“numpy.r”之后

我得到了

Omni completion (^O^N^P) Pattern not found

我的安装有问题吗?任何想法都非常感谢。谢谢。

编辑:根据TankorSmash关于安装python-mode的建议,我可以让“num”完成“numpy”而不是“numpy.r”来完成任何事情。

这是我的新.vimrc文件:

" Automatic reloading of .vimrc
autocmd! bufwritepost .vimrc source %

" Pathogen load
filetype off

call pathogen#infect()
call pathogen#helptags()

filetype plugin indent on
syntax on

和我的.vim目录树:

.vim
    autoload
        pathogen.vim
        pythoncomplete.vim
    bundle
        python-mode

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您不需要 任何第三方完成脚本才能完成Python。

我没有(我唯一的Python特定脚本是一个简短的ftplugin)这些是我在<C-x><C-o>numpy.之后点击numpy.arc时得到的建议...

numpy.

numpy.arc

由于你似乎是在Mac OS X上,你真的不应该自己编译Vim。安装最新的MacVim快照是在Mac上运行Vim的最佳方式,我相当肯定你会得到与开箱即用的这台Linux机器相同的建议。

<强> 修改

我刚刚在我妻子的骨干iMac(python 2.5)上测试了旧MacVim(快照53)上的相同代码,我得到了或多或少相同的建议(485 vs 551)。