Python code auto complete in vim by ropevim

Posted by – 2009/12/12

ropevim introduce a one stop python code auto complete, auto import and other features to vim.
refs: http://rope.sourceforge.net/ropevim.html

I did this:

$ mkdir /home/liwen/install/rope
$ cd /home/liwen/install/rope
$ hg clone http://bitbucket.org/agr/rope/
$ cd rope
$ python setup.py install
$ cd ..
$ hg clone http://bitbucket.org/agr/ropevim/
$ cd ropevim
$ hg clone http://bitbucket.org/agr/ropemode/
$ mv ropemode/ropemode/* ropemode/
$ python setup.py install

And added some code in my .vimrc:


let $PYTHONPATH .= ":/home/liwen/install/rope/rope:/home/liwen/install/rope/ropevim"
source /home/liwen/install/rope/ropevim/ropevim.vim

let ropevim_codeassist_maxfixes=10
let ropevim_guess_project=1
let ropevim_vim_completion=1
let ropevim_enable_autoimport=1
let ropevim_extended_complete=1

function! CustomCodeAssistInsertMode()
    call RopeCodeAssistInsertMode()
    if pumvisible()
        return "\<C-L>\<Down>"
    else
        return ''
    endif
endfunction

function! TabWrapperComplete()
    let cursyn = synID(line('.'), col('.') - 1, 1)
    if pumvisible()
        return "\<C-Y>"
    endif
    if strpart(getline('.'), 0, col('.')-1) =~ '^\s*$' || cursyn != 0
        return "\<Tab>"
    else
        return "\<C-R>=CustomCodeAssistInsertMode()\<CR>"
    endif
endfunction

inoremap <buffer><silent><expr> <Tab> TabWrapperComplete()

Then auto complete should work automatically. But RopeRename not work, which will fill up my cpu, I think it’s ok for a beginning.

PS: hg is mercurial

0 Comments on Python code auto complete in vim by ropevim

Respond | Trackback

Respond

Comments

Comments