Using the jedi autocompletion library for VIM.

Overview

jedi-vim - awesome Python autocompletion with VIM

Travis-CI build status

jedi-vim is a VIM binding to the autocompletion library Jedi.

Here are some pictures:

https://github.com/davidhalter/jedi/raw/master/docs/_screenshots/screenshot_complete.png

Completion for almost anything (Ctrl+Space).

https://github.com/davidhalter/jedi/raw/master/docs/_screenshots/screenshot_function.png

Display of function/class bodies, docstrings.

https://github.com/davidhalter/jedi/raw/master/docs/_screenshots/screenshot_pydoc.png

Documentation (Pydoc) support (with highlighting, Shift+k).

There is also support for goto and renaming.

Get the latest from github.

Documentation

Documentation is available in your vim: :help jedi-vim. You can also look it up on github.

You can read the Jedi library documentation here.

If you want to report issues, just use the github issue tracker. In case of questions about the software, please use stackoverflow and tag your question with jedi-vim.

Contributing

We love Pull Requests! Read the instructions in CONTRIBUTING.md.

Features

The Jedi library understands most of Python's core features. From decorators to generators, there is broad support.

Apart from that, jedi-vim supports the following commands

  • Completion <C-Space>
  • Goto assignment <leader>g (typical goto function)
  • Goto definition <leader>d (follow identifier as far as possible, includes imports and statements)
  • Goto (typing) stub <leader>s
  • Show Documentation/Pydoc K (shows a popup with assignments)
  • Renaming <leader>r
  • Usages <leader>n (shows all the usages of a name)
  • Open module, e.g. :Pyimport os (opens the os module)

Installation

Requirements

You need a VIM version that was compiled with Python 2.7 or later (+python or +python3). You can check this from within VIM using :python3 import sys; print(sys.version) (use :python for Python 2).

Manual installation

You might want to use pathogen or Vundle to install jedi-vim.

The first thing you need after that is an up-to-date version of Jedi. Install git submodule update --init --recursive in your jedi-vim repository.

Example installation command using Pathogen:

git clone --recursive https://github.com/davidhalter/jedi-vim.git ~/.vim/bundle/jedi-vim

Example installation using Vundle:

Add the following line in your ~/.vimrc

Plugin 'davidhalter/jedi-vim'

For installing Jedi, pip install jedi will also work, but you might run into issues when working in virtual environments. Please use git submodules.

Installation with your distribution

On Arch Linux, you can also install jedi-vim from official repositories as vim-jedi. It is also available on Debian (≥8) and Ubuntu (≥14.04) as vim-python-jedi. On Fedora Linux, it is available as vim-jedi.

Please note that this version might be quite old compared to using jedi-vim from Git.

Caveats

Note that the python-mode VIM plugin seems to conflict with jedi-vim, therefore you should disable it before enabling jedi-vim.

To enjoy the full features of jedi-vim, you should have VIM >= 7.3, compiled with +conceal (which is not the case on some platforms, including OS X). If your VIM does not meet these requirements, the parameter recommendation list may not appear when you type an open bracket after a function name. Please read the documentation for details.

Settings

Jedi is by default automatically initialized. If you don't want that I suggest you disable the auto-initialization in your .vimrc:

let g:jedi#auto_initialization = 0

There are also some VIM options (like completeopt and key defaults) which are automatically initialized, but you can skip this:

let g:jedi#auto_vim_configuration = 0

You can make jedi-vim use tabs when going to a definition etc:

let g:jedi#use_tabs_not_buffers = 1

If you are a person who likes to use VIM-splits, you might want to put this in your .vimrc:

let g:jedi#use_splits_not_buffers = "left"

This options could be "left", "right", "top", "bottom" or "winwidth". It will decide the direction where the split open.

Jedi automatically starts the completion, if you type a dot, e.g. str., if you don't want this:

let g:jedi#popup_on_dot = 0

Jedi selects the first line of the completion menu: for a better typing-flow and usually saves one keypress.

let g:jedi#popup_select_first = 0

Jedi displays function call signatures in insert mode in real-time, highlighting the current argument. The call signatures can be displayed as a pop-up in the buffer (set to 1 by default (with the conceal feature), 2 otherwise), which has the advantage of being easier to refer to (but is a hack with many drawbacks since it changes the buffer's contents), or in Vim's command line aligned with the function call (set to 2), which can improve the integrity of Vim's undo history.

let g:jedi#show_call_signatures = "1"

Here are a few more defaults for actions, read the docs (:help jedi-vim) to get more information. If you set them to "", they are not assigned.

NOTE: subject to change!

let g:jedi#goto_command = "<leader>d"
let g:jedi#goto_assignments_command = "<leader>g"
let g:jedi#goto_stubs_command = "<leader>s"
let g:jedi#goto_definitions_command = ""
let g:jedi#documentation_command = "K"
let g:jedi#usages_command = "<leader>n"
let g:jedi#completions_command = "<C-Space>"
let g:jedi#rename_command = "<leader>r"

An example for setting up your project:

let g:jedi#environment_path = "/usr/bin/python3.9"

jedi-vim tries its best to guess your virtual env. If you want to work with a specific virtual environment however, you can point jedi-vim towards it:

let g:jedi#environment_path = "venv"

Finally, if you don't want completion, but all the other features, use:

let g:jedi#completions_enabled = 0

FAQ

I don't want the docstring window to popup during completion

This depends on the completeopt option. Jedi initializes it in its ftplugin. Add the following line to your .vimrc to disable it:

autocmd FileType python setlocal completeopt-=preview

I want <Tab> to do autocompletion

Don't even think about changing the Jedi command to <Tab>, use supertab!

The completion is too slow!

  1. Completion of complex libraries (like Numpy) should only be slow the first time you complete them. After that the results should be cached and very fast.

  2. If it is still slow after the initial completion and you have installed the python-mode Vim plugin, try disabling its rope mode:

    let g:pymode_rope = 0

    See issue #163.

  3. You can also use deoplete-jedi for completions, which uses Jedi, but does completions asynchronously (requires Neovim). It makes sense to use both jedi-vim and deoplete-jedi, but you should disable jedi-vim's completions then:

    let g:jedi#completions_enabled = 0

Testing

jedi-vim is being tested with a combination of vspec and py.test.

The tests are in the test subdirectory, you can run them calling:

py.test

The tests are automatically run with travis.

Comments
  • sys.executable might be Vim itself with embedded Python (UnpicklingError)

    sys.executable might be Vim itself with embedded Python (UnpicklingError)

    (sorry for miss spellings, I'm french and I'll try my best to explain my issue)

    Issue

    When I try to or when jedi-vim want to help me, a new window of gvim pop-up with main.py oppened from jedi's file instead of the list of propositions and sometimes, when I go back to the previews window, gvim stop working...

    Steps to reproduce

    here is my _vimrc ::

    source $VIMRUNTIME/vimrc_example.vim
    
    let python_highlight_all=1
    syntax on
    
    "Enable folding + space to fold
    set foldmethod=indent
    set foldlevel=99
    nnoremap <space> za
    
    set diffexpr=MyDiff()
    function MyDiff()
      let opt = '-a --binary '
      if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
      if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
      let arg1 = v:fname_in
      if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
      let arg1 = substitute(arg1, '!', '\!', 'g')
      let arg2 = v:fname_new
      if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
      let arg2 = substitute(arg2, '!', '\!', 'g')
      let arg3 = v:fname_out
      if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
      let arg3 = substitute(arg3, '!', '\!', 'g')
      if $VIMRUNTIME =~ ' '
        if &sh =~ '\<cmd'
          if empty(&shellxquote)
            let l:shxq_sav = ''
            set shellxquote&
          endif
          let cmd = '"' . $VIMRUNTIME . '\diff"'
        else
          let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
        endif
      else
        let cmd = $VIMRUNTIME . '\diff'
      endif
      let cmd = substitute(cmd, '!', '\!', 'g')
      silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3
      if exists('l:shxq_sav')
        let &shellxquote=l:shxq_sav
      endif
    endfunction
    
    set nu
    set guifont=Courier_new:h11
    set encoding=utf-8
    set nocompatible
    color desert
    
    filetype off
    set rtp+=%USERPROFILE%/vim/bundle/Vundle.vim/
    call vundle#begin('%USERPROFILE%/vim/bundle/')
    
    Plugin 'vundleVim/Vundle.vim'
    Plugin 'scrooloose/nerdtree'
    Plugin 'itchyny/lightline.vim'
    Plugin 'mattn/emmet-vim'
    Plugin 'Xuyuanp/nerdtree-git-plugin'
    Plugin 'altercation/vim-colors-solarized'
    Plugin 'jiangmiao/auto-pairs'
    Plugin 'kien/rainbow_parentheses.vim'
    Plugin 'vim-syntastic/syntastic'
    Plugin 'nvie/vim-flake8'
    Plugin 'tpope/vim-dispatch'
    Plugin 'https://github.com/StanAngeloff/php.vim.git'
    Plugin 'joonty/vim-phpqa'
    Plugin 'davidhalter/jedi-vim'
    
    call vundle#end()
    filetype plugin indent on
    
    "if has('gui_running')
    "	set background=dark
    "	colorscheme solarized
    "else
    "	colorscheme zenburn
    "endif
    
    filetype plugin on
    set omnifunc=syntaxcomplete#Complete
    

    Output of “:verbose JediDebugInfo”

    when I do this command, the same windows apear with

    import sys
    import os
    
    
    def _get_paths():
        # Get the path to jedi.
        _d = os.path.dirname
        _jedi_path = _d(_d(_d(_d(_d(__file__)))))
        _parso_path = sys.argv[1]
        # The paths are the directory that jedi and parso lie in.
        return {'jedi': _jedi_path, 'parso': _parso_path}
    
    
    # Remove the first entry, because it's simply a directory entry that equals
    # this directory.
    del sys.path[0]
    
    if sys.version_info > (3, 4):
        from importlib.machinery import PathFinder
    
        class _ExactImporter(object):
            def __init__(self, path_dct):
                self._path_dct = path_dct
    
            def find_module(self, fullname, path=None):
                if path is None and fullname in self._path_dct:
                    p = self._path_dct[fullname]
                    loader = PathFinder.find_module(fullname, path=[p])
                    return loader
                return None
    
        # Try to import jedi/parso.
        sys.meta_path.insert(0, _ExactImporter(_get_paths()))
        from jedi.evaluate.compiled import subprocess  # NOQA
        sys.meta_path.pop(0)
    else:
        import imp
    
        def load(name):
            paths = list(_get_paths().values())
            fp, pathname, description = imp.find_module(name, paths)
            return imp.load_module(name, fp, pathname, description)
    
        load('parso')
        load('jedi')
        from jedi.evaluate.compiled import subprocess  # NOQA
    
    # Retrieve the pickle protocol.
    pickle_protocol = int(sys.argv[2])
    # And finally start the client.
    subprocess.Listener(pickle_protocol).listen()
    
    bug 
    opened by tonitch 83
  • jedi-vim failed to initialize Python:

    jedi-vim failed to initialize Python: ":py/py3 import jedi" gives "ImportError: cannot import name 'settings'"

    I get the following error every time I start VIM

    Error: jedi-vim failed to initialize Python: jedi#setup_py_version: Vim(py3file):Traceback (most recent call last): (in function jedi#init_python[3]..<SNR>72_init_python[50]..jedi
    #setup_py_version, line 18)
    

    I am running on Mac OS X El Captain 10.11.2. Vim is version 7.4.1063, python is version 3.4.3. Jedi is 0.9.0. Both python and vim are installed using brew, vim is installed using --with-python3 flag. :py3 command works, but trying to do :py3 import jedi results in the following

    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/Users/wombat/.vim/bundle/jedi-vim/jedi/jedi/__init__.py", line 41, in <module>
        from jedi.api import Script, Interpreter, NotFoundError, set_debug_function
      File "/Users/wombat/.vim/bundle/jedi-vim/jedi/jedi/api/__init__.py", line 16, in <module>
        from jedi.parser import Parser, load_grammar
      File "/Users/wombat/.vim/bundle/jedi-vim/jedi/jedi/parser/__init__.py", line 21, in <module>
        from jedi.parser import tree as pt
      File "/Users/wombat/.vim/bundle/jedi-vim/jedi/jedi/parser/tree.py", line 39, in <module>
        from jedi import cache
      File "/Users/wombat/.vim/bundle/jedi-vim/jedi/jedi/cache.py", line 30, in <module>
        from jedi import settings
    ImportError: cannot import name 'settings'
    

    I tried reinstalling everything and re-installing vim with env vi_cv_path_python=/usr/local/bin/python3 brew install --force vim --with-python3 command as was suggested in a similar issue.

    Here is :version output for more info.

    :version
    VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Jan 13 2016 15:58:04)
    MacOS X (unix) version
    Included patches: 1-1063
    Compiled by Homebrew
    Huge version without GUI.  Features included (+) or not (-):
    +acl             +cmdline_info    +emacs_tags      -hangul_input    +menu            +mouse_xterm     +python3         +syntax          +virtualedit     -xsmp
    +arabic          +comments        +eval            +iconv           +mksession       +multi_byte      +quickfix        +tag_binary      +visual          -xterm_clipboard
    +autocmd         +conceal         +ex_extra        +insert_expand   +modify_fname    +multi_lang      +reltime         +tag_old_static  +visualextra     -xterm_save
    -balloon_eval    +cryptv          +extra_search    +jumplist        +mouse           -mzscheme        +rightleft       -tag_any_white   +viminfo         -xpm
    -browse          +cscope          +farsi           +keymap          -mouseshape      +netbeans_intg   +ruby            -tcl             +vreplace
    ++builtin_terms  +cursorbind      +file_in_path    +langmap         +mouse_dec       +path_extra      +scrollbind      +terminfo        +wildignore
    +byte_offset     +cursorshape     +find_in_path    +libcall         -mouse_gpm       +perl            +signs           +termresponse    +wildmenu
    +cindent         +dialog_con      +float           +linebreak       -mouse_jsbterm   +persistent_undo +smartindent     +textobjects     +windows
    -clientserver    +diff            +folding         +lispindent      +mouse_netterm   +postscript      -sniff           +title           +writebackup
    +clipboard       +digraphs        -footer          +listcmds        +mouse_sgr       +printer         +startuptime     -toolbar         -X11
    +cmdline_compl   -dnd             +fork()          +localmap        -mouse_sysmouse  +profile         +statusline      +user_commands   -xfontset
    +cmdline_hist    -ebcdic          -gettext         -lua             +mouse_urxvt     -python          -sun_workshop    +vertsplit       -xim
       system vimrc file: "$VIM/vimrc"
         user vimrc file: "$HOME/.vimrc"
     2nd user vimrc file: "~/.vim/vimrc"
          user exrc file: "$HOME/.exrc"
      fall-back for $VIM: "/usr/local/share/vim"
    Compilation: /usr/bin/clang -c -I. -Iproto -DHAVE_CONFIG_H   -F/usr/local/Frameworks -DMACOS_X_UNIX  -Os -w -pipe -march=native -mmacosx-version-min=10.11 -U_FORTIFY_SOURCE -D_FOR
    TIFY_SOURCE=1
    Linking: /usr/bin/clang   -L. -fstack-protector -L/usr/local/opt/libyaml/lib -L/usr/local/opt/openssl/lib -L/usr/local/opt/readline/lib  -L/usr/local/lib -F/usr/local/Frameworks -
    Wl,-headerpad_max_install_names -o vim        -lm  -lncurses -liconv -framework Cocoa   -fstack-protector  -L/System/Library/Perl/5.18/darwin-thread-multi-2level/CORE -lperl  -L/u
    sr/local/Cellar/python3/3.4.3_2/Frameworks/Python.framework/Versions/3.4/lib/python3.4/config-3.4m -lpython3.4m -framework CoreFoundation  -lruby.2.2.0 -lobjc -L/usr/local/Cellar/
    ruby/2.2.3/lib
    
    not-reproducible need-information 
    opened by MadWombat 53
  • How about joining up for Python code completion? (YouCompleteMe)

    How about joining up for Python code completion? (YouCompleteMe)

    [Replicating our private email discussion in a more public forum]

    I'm the author of a YouCompleteMe (YCM), a recently released (Feb 2013) OSS code completion system for Vim. It's become very popular very quickly (~1300 stars on GitHub).

    YCM comes with out-of-the box support for semantic completion for C-family languages like C/C++/Objective-C/Objective-C++ (using libclang as the engine) and also has a language-agnostic identifier completer. The GIF on the project page is a thousand words and there's also an extensive introduction there so I'll spare you the details that you can easily grab.

    Getting to the point, an external developer contributed a Jedi-based semantic completer for YCM today. YCM actually provides a generic framework for writing custom semantic completers (for any language) that can then take advantage of the code completion infrastructure that YCM provides (non-blocking operation that lets Vim continue to process events, a smart caching layer, the subsequence-based completion filtering system and the advanced completion ranking algorithm etc). You can see just how small the file for jedi-based semantic Python completion is in YCM.

    I see that Jedi (which is freaking awesome btw, congrats on that) also has other features too, like goto etc. Any chance on us teaming up to bring those features to YCM? I see that you have written the jedi-vim plugin. While I haven't tried it I'm sure it's awesome (hey, it's using Jedi) but I think it's sad that we have this duplication of work. I'd also like to see YCM become a common framework for code completion in Vim, much like Syntastic is the common framework for displaying compilation/lint errors.

    YCM will expand into more IDE features with go-to-definition/declaration. Basically all the useful features that one can build when one has an engine that provides a semantic understanding of the codebase. These features would be accessed through the new :YcmCompleter [completer sub-command] [sub-command arguments] interface that also recently landed. That command calls OnUserCommand on the Completer object with the arguments the user provided after the sub-command name. From then on, the Completer writer can do anything he wishes.

    So my idea is to expand the functionality of YCM's jedi_completer until it does everything jedi-vim can. That's it. I'll probably end up doing all this myself if no one else does but I'd love it if you could contribute pull-requests. Correct me if I'm wrong, but your goal is to build the best possible Python code completion system. You shouldn't have to spend time on the VimScript parts and other Vim plugin boilerplate. You should be able to focus on making Jedi, the library, even better.

    If you're not interested, that's perfectly fine. I just think it's sad that there's this duplication of efforts; I spent a ton of time writing the ycm_core library in C++ so that completions in Vim can be super-fast. I'd love to see others leverage that work to improve editing in Vim even more.

    discussion 
    opened by Valloric 47
  • Broken go-to command /

    Broken go-to command / "g:jedi#use_splits_not_buffers value is not correct"

    g:jedi#use_splits_not_buffers value is not correct, valid options are: winwidth,bottom,top,left,right

    I have this error, everything worked fine yesterday. I want jedi to open definitions in the current window, this is default behaviour according to docs.

    Ubuntu 14.04 NVIM 0.1.3-dev

    My jedi settings:

    let g:jedi#completions_enabled = 0
    let g:jedi#auto_initialization = 0
    let g:jedi#smart_auto_mappings = 0
    let g:jedi#auto_vim_configuration = 0
    nnoremap <silent> <leader>g :call jedi#goto()<CR>
    
    bug 
    opened by yevhen-m 44
  • jedi-vim is too too slow

    jedi-vim is too too slow

    $vim test.py
    
    import os, sys
    os.
    

    -- and then vim is fronzened for a few seconds.
    I found it's really very slow while trying auto-comple by jedi-vim.

    So, what can I do ?


    OS: 64bit Debian/testing Dist CPU: AMD IIx4 2.8GHz

    Installed jedi-vim by vundle

    Configured jedi-vim with: "For jedi-vim: "pip install jedi -- done let g:jedi#autocompletion_command = "< tab>"

    opened by fasterpython 44
  • python3/dyn support

    python3/dyn support

    Hi!

    Please add python3/dyn support.

    My vim (Vi IMproved 7.3 (2010 Aug 15, compiled Dec 16 2012 13:15:28)) compiled with '+python3/dyn -python' (Arch linux).

    It complains: "Error: Required vim compiled with +python".

    Thanks!

    feature need-information 
    opened by proft 35
  • Lines are overwritten above the currently edited line when popup appears

    Lines are overwritten above the currently edited line when popup appears

    Occasionally, when Jedi goes to autocomplete a element, it overwrites what seems like internal code onto the two lines above the line being edited. The text being overwritten is

    ≡jedi=0, ≡                                  (***new_kw*) ≡jedi≡
    ≡jedi=0, ≡                                  (***new_kw*) ≡jedi≡
    

    Where the first character is placed depends on the original lines, but if the original line is too long (80 chars minus the length of the evil text?), the original line is overwritten with the two lines above.

    I used to think that it was random, but I noticed something that may be the trigger. In the line being edited (shown in the screenshot below) there were two candidates for Jedi autocompletion, self.session.configure and self.engine. I think that it works correctly when only one item needs autocompletion in a line.

    screenshot from 2014-02-28 21 08 16

    discussion 
    opened by pauluap 32
  • Severe crashes on dot completion

    Severe crashes on dot completion

    Issue

    Lately, I noticed several crashes of vim (actually, even the whole terminal session). Finally, I found a situation where the problem was reproducible.

    On pressing the last dot, vim blocks. Even more severe (not exact same situation but same behavior), lately vim crashed like that on a server and after logging back in I forgot to explicitly kill the old vim session, after some days I noticed my orphaned vim process in htop using 500 GB RAM.

    Steps to reproduce

    import pandas as pd
    df = pd.read_csv('somefile.csv')
    
    y = df['Stance'].<ui block>
    

    Versions

    • jedi-vim: b885e10e0db39ee735475464cd5af0cd93ff4959 testing/start/jedi-vim (0.8.0-70-gb885e10)
    • Vim / Neovim: VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Jan 19 2017 13:44:53)
    • Python: Python 3.5.2

    In case you are not using jedi-vim from Git master, please test it there, too.

    Output of the "JediDebugInfo" command (in a Python buffer)

    Jedi-vim debug information

    Using Python version: 3

    • sys.version: 3.5.2 (default, Sep 14 2016, 11:28:32), [GCC 6.2.1 20160901 (Red Hat 6.2.1-1)]
    • site module: /usr/lib64/python3.5/site.py Jedi path: /home/lpag/.vim/pack/testing/start/jedi-vim/jedi/jedi/init.py
    • version: 0.10.0
    • sys_path:
      • /home/lpag/.vim/pack/testing/start/jedi-vim
      • /home/lpag/git/moving/Code/elastify
      • /usr/lib/python3.5/site-packages/pyaml-15.8.2-py3.5.egg
      • /usr/lib/python3.5/site-packages/nltk-3.2.1-py3.5.egg
      • /usr/lib/python3.5/site-packages/langdetect-1.0.6-py3.5.egg
      • /usr/lib64/python35.zip
      • /usr/lib64/python3.5
      • /usr/lib64/python3.5/plat-linux
      • /usr/lib64/python3.5/lib-dynload
      • /usr/lib64/python3.5/site-packages
      • /usr/lib/python3.5/site-packages
      • vim_path jedi-vim git version: 0.8.0-70-gb885e10 jedi git submodule status: 70200861661a921016563717487c1ced9993acdb jedi (v0.10.0)
    Settings
    g:show_call_signatures = 2 (default: 1)
    
      omnifunc=jedi#completions
            Last set from ~/.vim/pack/testing/start/jedi-vim/after/ftplugin/python/jedi.vim
      completeopt=menu,preview,menuone,noinsert,noselect
            Last set from ~/.vim/vimrc
    

    Output of the "messages" Vim command

    Messages maintainer: Bram Moolenaar [email protected] "detect.py" 79L, 2989C

    Output of "scriptnames" Vim command

    1: /etc/vimrc 2: /usr/share/vim/vim80/syntax/syntax.vim 3: /usr/share/vim/vim80/syntax/synload.vim 4: /usr/share/vim/vim80/syntax/syncolor.vim 5: /usr/share/vim/vim80/filetype.vim 6: ~/.vim/ftdetect/mail.vim 7: ~/.vim/ftdetect/muttrc.vim 8: /usr/share/vim/vimfiles/ftdetect/stp.vim 9: /usr/share/vim/vim80/ftplugin.vim 10: ~/.vim/vimrc 11: /usr/share/vim/vim80/indent.vim 12: /usr/share/vim/vim80/ftplugin/man.vim 13: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic/autoloclist.vim 14: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic/balloons.vim 15: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic/checker.vim 16: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic/cursor.vim 17: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic/highlighting.vim 18: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic/loclist.vim 19: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic/modemap.vim 20: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic/notifiers.vim 21: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic/registry.vim 22: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic/signs.vim 23: ~/.vim/pack/extra/opt/syntastic/plugin/syntastic.vim 24: ~/.vim/pack/extra/opt/syntastic/autoload/syntastic/util.vim 25: /usr/share/vim/vim80/pack/dist/opt/matchit/plugin/matchit.vim 26: /usr/share/vim/vim80/syntax/nosyntax.vim 27: ~/.vim/pack/extra/opt/gruvbox/colors/gruvbox.vim 28: /usr/share/vim/vimfiles/plugin/cctree.vim 29: /usr/share/vim/vim80/plugin/getscriptPlugin.vim 30: /usr/share/vim/vim80/plugin/gzip.vim 31: /usr/share/vim/vim80/plugin/logiPat.vim 32: /usr/share/vim/vim80/plugin/manpager.vim 33: /usr/share/vim/vim80/plugin/matchparen.vim 34: /usr/share/vim/vim80/plugin/netrwPlugin.vim 35: /usr/share/vim/vim80/plugin/rrhelper.vim 36: /usr/share/vim/vim80/plugin/spellfile.vim 37: /usr/share/vim/vim80/plugin/tarPlugin.vim 38: /usr/share/vim/vim80/plugin/tohtml.vim 39: /usr/share/vim/vim80/plugin/vimballPlugin.vim 40: /usr/share/vim/vim80/plugin/zipPlugin.vim 41: ~/.vim/pack/community/start/goyo.vim/plugin/goyo.vim 42: ~/.vim/pack/community/start/limelight.vim/plugin/limelight.vim 43: ~/.vim/pack/community/start/rainbow_parentheses.vim/plugin/rainbow_parentheses.vim 44: ~/.vim/pack/community/start/tagbar/plugin/tagbar.vim 45: ~/.vim/pack/community/start/vim-signify/plugin/signify.vim 46: ~/.vim/pack/core/start/FastFold/plugin/fastfold.vim 47: ~/.vim/pack/core/start/ctrlp.vim/plugin/ctrlp.vim 48: ~/.vim/pack/core/start/ctrlp.vim/autoload/ctrlp/mrufiles.vim 49: ~/.vim/pack/core/start/splitjoin.vim/plugin/splitjoin.vim 50: ~/.vim/pack/core/start/splitjoin.vim/autoload/sj/settings.vim 51: ~/.vim/pack/core/start/tabular/plugin/Tabular.vim 52: ~/.vim/pack/core/start/vim-abolish/plugin/abolish.vim 53: ~/.vim/pack/core/start/vim-argumentative/plugin/argumentative.vim 54: ~/.vim/pack/core/start/vim-commentary/plugin/commentary.vim 55: ~/.vim/pack/core/start/vim-dispatch/plugin/dispatch.vim 56: ~/.vim/pack/core/start/vim-fugitive/plugin/fugitive.vim 57: ~/.vim/pack/core/start/vim-indent-object/plugin/indent-object.vim 58: ~/.vim/pack/core/start/vim-liquid/ftdetect/liquid.vim 59: ~/.vim/pack/core/start/vim-sensible/plugin/sensible.vim 60: ~/.vim/pack/core/start/vim-sleuth/plugin/sleuth.vim 61: ~/.vim/pack/core/start/vim-sneak/plugin/sneak.vim 62: ~/.vim/pack/core/start/vim-speeddating/plugin/speeddating.vim 63: ~/.vim/pack/core/start/vim-surround/plugin/surround.vim 64: ~/.vim/pack/core/start/vim-unimpaired/plugin/unimpaired.vim 65: ~/.vim/pack/core/start/vim-vinegar/plugin/vinegar.vim 66: ~/.vim/pack/extra/start/FastFold/plugin/fastfold.vim 67: ~/.vim/pack/extra/start/SimpylFold/plugin/SimpylFold.vim 68: ~/.vim/pack/extra/start/ack.vim/plugin/ack.vim 69: ~/.vim/pack/extra/start/angular-cli.vim/plugin/angular-cli.vim 70: ~/.vim/pack/extra/start/tsuquyomi/plugin/tsuquyomi.vim 71: ~/.vim/pack/extra/start/tsuquyomi/ftdetect/typescript.vim 72: ~/.vim/pack/extra/start/typescript-vim/ftdetect/typescript.vim 73: ~/.vim/pack/extra/start/vim-endwise/plugin/endwise.vim 74: ~/.vim/pack/extra/start/vim-eunuch/plugin/eunuch.vim 75: ~/.vim/pack/extra/start/vim-flagship/plugin/flagship.vim 76: ~/.vim/pack/extra/start/vim-jdaddy/plugin/jdaddy.vim 77: ~/.vim/pack/extra/start/vim-js-pretty-template/plugin/jspretmpl.vim 78: ~/.vim/pack/extra/start/vim-pandoc/plugin/pandoc.vim 79: ~/.vim/pack/extra/start/vim-pandoc-syntax/plugin/pandoc-syntax-check.vim 80: ~/.vim/pack/extra/start/vim-projectionist/plugin/projectionist.vim 81: ~/.vim/pack/extra/start/vim-ragtag/plugin/ragtag.vim 82: ~/.vim/pack/extra/start/vim-scriptease/plugin/scriptease.vim 83: ~/.vim/pack/extra/start/vim-tbone/plugin/tbone.vim 84: ~/.vim/pack/extra/start/vimproc.vim/plugin/vimproc.vim
    85: ~/.vim/pack/testing/start/delimitMate/plugin/delimitMate.vim 86: ~/.vim/pack/testing/start/delimitMate/autoload/delimitMate.vim 87: ~/.vim/pack/testing/start/jedi-vim/plugin/jedi.vim 88: ~/.vim/pack/testing/start/vim-easy-align/plugin/easy_align.vim 89: ~/.vim/after/plugin/fugitive.vim

    Syntax additions in /after/syntax/python.vim

    syn keyword pythonBuiltinObj self     
                                         
    syn keyword linalgScalar a b c d e    
    syn keyword linalgVector u v w x y z 
    syn keyword linalgMatrix A B C D I E J H X Y Z 
     " I hope this is not a problem       
    syn keyword pythonInclude np pd tf sp                                                                                                                                                                       
                                         
                                         
    hi linalgScalar term=italic cterm=italic gui=italic
    hi linalgVector term=bold,italic cterm=bold,italic gui=bold,italic
    hi linalgMatrix term=bold,italic cterm=bold,italic gui=bold,italic
    

    Best Regards and Thanks in advance, Lukas

    speed jedi-issue 
    opened by lgalke 31
  • Jedi-vim not working, thinks Jedi is not installed

    Jedi-vim not working, thinks Jedi is not installed

    Issue

    Hi there, I've tried for a while to get this working and have gone through a number of solutions that I have found that have worked for others. However, whenever I try and run vim with jedi-vim installed I get:

    Please install Jedi if you want to use jedi-vim. The error was: /home/USER/anaconda3/lib/python3.6/lib-dynload/_posixsubprocess.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _Py_write_noraise Please install Jedi if you want to use jedi-vim. The error was: /home/USER/anaconda3/lib/python3.6/lib-dynload/_posixsubprocess.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _Py_write_noraise

    Steps to reproduce

    Open a .py file with vim

    Output of “:verbose JediDebugInfo”

    Jedi-vim debug information

    Using Python version: 3

    • global sys.version: 3.6.5 (default, May 11 2018, 04:00:52), [GCC 8.1.0]
    • global site module: /home/mattrbrousseau/anaconda3/lib/python3.6/site.py ERROR: could not import the "jedi" Python module. The error was: /home/mattrbrousseau/anaconda3/lib/python3.6/lib-dynload/_posixsubprocess.cpython-36m-x86_64-linux-gnu.so: u ndefined symbol: _Py_write_noraise
    • jedi-vim git version: 0.9.0-20-gd4006ab
    • jedi git submodule status: bd7c65d9639c2d451d44c6d135b4f6043a918950 pythonx/jedi (v0.12.0) 6f385bdba182059e0c46917a414981a6d0894527 pythonx/parso (v0.2.1)
    Settings
      omnifunc=jedi#completions
            Last set from ~/.vim/bundle/jedi-vim/autoload/jedi.vim
      completeopt=menuone,longest,preview
            Last set from ~/.vim/bundle/jedi-vim/plugin/jedi.vim
    

    :version

    VIM - Vi IMproved 8.0 (2016 Sep 12, compiled May 13 2018 19:35:54)
    Included patches: 1-1838
    Compiled by Arch Linux
    Huge version without GUI.  Features included (+) or not (-):
    +acl               +cursorshape       +job               -mouse_sysmouse    +scrollbind        +virtualedit
    +arabic            +dialog_con        +jumplist          +mouse_urxvt       +signs             +visual
    +autocmd           +diff              +keymap            +mouse_xterm       +smartindent       +visualextra
    -autoservername    +digraphs          +lambda            +multi_byte        +startuptime       +viminfo
    -balloon_eval      -dnd               +langmap           +multi_lang        +statusline        +vreplace
    +balloon_eval_term -ebcdic            +libcall           -mzscheme          -sun_workshop      +wildignore
    -browse            +emacs_tags        +linebreak         +netbeans_intg     +syntax            +wildmenu
    ++builtin_terms    +eval              +lispindent        +num64             +tag_binary        +windows
    +byte_offset       +ex_extra          +listcmds          +packages          +tag_old_static    +writebackup
    +channel           +extra_search      +localmap          +path_extra        -tag_any_white     -X11
    +cindent           +farsi             +lua/dyn           +perl/dyn          +tcl/dyn           -xfontset
    -clientserver      +file_in_path      +menu              +persistent_undo   +termguicolors     -xim
    -clipboard         +find_in_path      +mksession         +postscript        +terminal          -xpm
    +cmdline_compl     +float             +modify_fname      +printer           +terminfo          -xsmp
    +cmdline_hist      +folding           +mouse             +profile           +termresponse      -xterm_clipboard
    +cmdline_info      -footer            -mouseshape        +python/dyn        +textobjects       -xterm_save
    +comments          +fork()            +mouse_dec         +python3/dyn       +timers
    +conceal           +gettext           +mouse_gpm         +quickfix          +title
    +cryptv            -hangul_input      -mouse_jsbterm     +reltime           -toolbar
    +cscope            +iconv             +mouse_netterm     +rightleft         +user_commands
    +cursorbind        +insert_expand     +mouse_sgr         +ruby/dyn          +vertsplit
       system vimrc file: "/etc/vimrc"
         user vimrc file: "$HOME/.vimrc"
     2nd user vimrc file: "~/.vim/vimrc"
          user exrc file: "$HOME/.exrc"
           defaults file: "$VIMRUNTIME/defaults.vim"
      fall-back for $VIM: "/usr/share/vim"
    Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H   -D_FORTIFY_SOURCE=2  -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-st
    rong -fno-plt -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
    Linking: gcc   -L. -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-E -Wl,-r
    path,/usr/lib/perl5/5.26/core_perl/CORE  -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -L/usr/local/lib -Wl,--as-needed -o vim
            -lm -ltinfo -lelf -lnsl    -lacl -lattr -lgpm -ldl   -Wl,-E -Wl,-rpath,/usr/lib/perl5/5.26/core_perl/CORE -Wl,-O1,--sort-c
    ommon,--as-needed,-z,relro,-z,now -fstack-protector-strong -L/usr/local/lib  -L/usr/lib/perl5/5.26/core_perl/CORE -lperl -lpthread
     -lnsl -ldl -lm -lcrypt -lutil -lc   -L/usr/lib -ltclstub8.6 -ldl -lz -lpthread -lm
    
    #### :messages
    

    Messages maintainer: Bram Moolenaar [email protected] "ais2.py" 220L, 6313C Please install Jedi if you want to use jedi-vim. The error was: /home/mattrbrousseau/anaconda3/lib/python3.6/lib-dynload/_posixsubprocess.cpython-36m-x86_64-linux-gnu.so: undefine d symbol: _Py_write_noraise Please install Jedi if you want to use jedi-vim. The error was: /home/mattrbrousseau/anaconda3/lib/python3.6/lib-dynload/_posixsubprocess.cpython-36m-x86_64-linux-gnu.so: undefine d symbol: _Py_write_noraise VIM - Vi IMproved 8.0 (2016 Sep 12, compiled May 13 2018 19:35:54) E475: Invalid argument: @+> E492: Not an editor command: verboe JediDebugInfo VIM - Vi IMproved 8.0 (2016 Sep 12, compiled May 13 2018 19:35:54)

    :scriptnames
      1: /etc/vimrc
      2: /usr/share/vim/vimfiles/archlinux.vim
      3: ~/.vimrc
      4: /usr/share/vim/vim80/syntax/syntax.vim
      5: /usr/share/vim/vim80/syntax/synload.vim
      6: /usr/share/vim/vim80/syntax/syncolor.vim
      7: /usr/share/vim/vim80/filetype.vim
      8: /usr/share/vim/vimfiles/autoload/vundle.vim
      9: /usr/share/vim/vimfiles/autoload/vundle/config.vim
     10: ~/.vim/bundle/jedi-vim/plugin/jedi.vim
     11: /usr/share/vim/vim80/ftplugin.vim
     12: /usr/share/vim/vim80/plugin/getscriptPlugin.vim
     13: /usr/share/vim/vim80/plugin/gzip.vim
     14: /usr/share/vim/vim80/plugin/logiPat.vim
     15: /usr/share/vim/vim80/plugin/manpager.vim
     16: /usr/share/vim/vim80/plugin/matchparen.vim
     17: /usr/share/vim/vim80/plugin/netrwPlugin.vim
     18: /usr/share/vim/vim80/plugin/rrhelper.vim
     19: /usr/share/vim/vim80/plugin/spellfile.vim
     20: /usr/share/vim/vim80/plugin/tarPlugin.vim
     21: /usr/share/vim/vim80/plugin/tohtml.vim
     22: /usr/share/vim/vim80/plugin/vimballPlugin.vim
     23: /usr/share/vim/vim80/plugin/zipPlugin.vim
     24: /usr/share/vim/vim80/syntax/python.vim
     25: ~/.vim/bundle/jedi-vim/after/syntax/python.vim
     26: ~/.vim/bundle/jedi-vim/autoload/jedi.vim
     27: ~/.vim/bundle/jedi-vim/ftplugin/python/jedi.vim
     28: /usr/share/vim/vim80/ftplugin/python.vim
     29: ~/.vim/bundle/jedi-vim/after/ftplugin/python/jedi.vim
    
    
    opened by mattrbrousseau 29
  • jedi-vim fails even when auto_initialization = 0

    jedi-vim fails even when auto_initialization = 0

    Hi, on the top of .vimrc I have

    let g:jedi#auto_initialization = 0
    

    so I expect that jedi-vim will not try to start. It works, when jedi is installed, but when its not, then I got this error:

        "version.py" 8L, 59C
        Chyba při zpracování /home/frostyx/dotfiles/.vim/bundle/jedi-vim/autoload/jedi.vim:
    řádek  283:
        Traceback (most recent call last):
          File "<string>", line 1, in <module>
          File "/home/frostyx/dotfiles/.vim/bundle/jedi-vim/initialize.py", lin$
        <module>
            vim.command('echoerr "Please install Jedi if you want to use jedi_vim.")
        vim.error: Vim(echoerr):Please install Jedi if you want to use jedi_vim.
        E171: Chybí :endif
        Chyba při zpracování /home/frostyx/dotfiles/.vim/bundle/jedi-vim/ftplugin/python/jedi.vim:
        řádek    8:
        E121: Nedefinovaná proměnná: g:jedi#auto_initialization
        E171: Chybí :endif
    

    I am sorry for czech language in it, but I dont have english system here.

    discussion 
    opened by FrostyX 29
  • Migrating to an MIT License

    Migrating to an MIT License

    I want to migrate to an MIT License. Why? Because it's always easily possible to switch back and it's not quite as easy to switch to MIT.

    I'm switching all my projects over to MIT, because it's just easier to reuse code that way. We already did it with the Jedi license: https://github.com/davidhalter/jedi/issues/5 There you can also read a little bit of the arguments.

    @runiq, @tek, @heavenshell, @dbrgn, @mattn, @ricobl, @coot, @ming13, @andviro, @ganwell, @strycore, @todesschaf, @gpoulin, @hattya, @flupke, @mlmoses, @twymer, @artnez, @rogererens, @emilyst, @Tinche, @zekzekus, @ethinx, @lodagro
    Please answer that you're ok with re-licensing your jedi-vim contributions under an MIT license, or argue why you're not.

    discussion 
    opened by davidhalter 28
  • Why manual not found for jedi-vim?

    Why manual not found for jedi-vim?

    Issue

    When I try to execute :help jedi-vim I obtain E149: Sorry, no help for jedi-vim. I've installed this plugin via Git inside /home/emilyseville7cfg/.vim/pack/completion/start/jedi-vim.

    Steps to reproduce

    Output of “:verbose JediDebugInfo”

    opened by EmilySeville7cfg 4
  • How to get completions and signatures only when we press <c-space> and <s-tab>?

    How to get completions and signatures only when we press and ?

    Hello, newbie to jedi-vim here, first of all thanks for developing this, it is really helpful.

    When autocompletion is on it is taking sometime to load functions, and I could not able to type in meantime. And auto showing of signatures is also a bit distracting. Can you guys help me in this regard?. Thanks.

    opened by harishpvv 1
  • jedi-vim fails to start with `ModuleNotFoundError: No module named jedi-vim`

    jedi-vim fails to start with `ModuleNotFoundError: No module named jedi-vim`

    Issue

    Unable to launch jedi-vim. Error is:

    Error detected while processing BufRead Autocommands for "*.py"..FileType Autocommands for "*"..function <SNR>4_LoadFTPlugin[17]..script /c/Users/F720969/.vim/pack/plugins/start/jedi-vim/ftplugin/python/jedi.vim[1]../c/Users/F720969/.vim/pack/plugins/start/jedi-vim/autoload/jedi.vim[260]..function jedi#init_python[13]..BufRead Autocommands for "*.py"..FileType Autocommands for "*"..function <SNR>4_LoadFTPlugin[17]..script /c/Users/F720969/.vim/pack/plugins/start/jedi-vim/ftplugin/python/jedi.vim[1]../c/Users/F720969/.vim/pack/plugins/start/jedi-vim/autoload/jedi.vim[260]..function jedi#init_python[11]..<SNR>25_display_exception:
    line   19:
    Error: jedi-vim failed to initialize Python: jedi#setup_python_imports: Traceback (most recent call last): (in BufRead Autocommands for "*.py"..FileType Autocommands for "*"..function <SNR>4_LoadFTPlugin[17]..script /c/Users/F720969/.vim/pack/plugins/start/jedi-vim/ftplugin/python/jedi.vim[1]../c/Users/F720969/.vim/pack/plugins/start/jedi-vim/autoload/jedi.vim[260]..function jedi#init_python[4]..<SNR>25_init_python[6]..jedi#setup_python_imports, line 20). See :messages and/or :JediDebugInfo for more information.
    Error detected while processing BufRead Autocommands for "*.py"..FileType Autocommands for "*"..function <SNR>4_LoadFTPlugin[17]..script /c/Users/F720969/.vim/pack/plugins/start/jedi-vim/ftplugin/python/jedi.vim:
    line   36:
    E117: Unknown function: jedi#configure_call_signatures
    
    

    After typing :messages, I get

    jedi-vim error: jedi#setup_python_imports: Traceback (most recent call last):
      File "<string>", line 10, in <module>
    ModuleNotFoundError: No module named 'jedi_vim'
    

    Steps to reproduce

    Running Vim 8.2 on Windows 10 with +python3/dyn. Installed Python is 3.9.

    Can confirm that echo has('python3') returns 1.

    Running :python3 import sys; print(sys.version)' returns3.9.10 (tags/v3.9.10:f2f3f53, Jan 17 2022, 15:14:21) [MSC v.1929 64 bit (AMD64)]`.

    Can confirm this matches the output of running python --version.

    Installed jedi-vim into .vim/pack/plugins/start via git clone --recursive. Subsequently ran git submodule update --init --recursive.

    The minimal.vimrc I used:

    set nocompatible
    
    let script_dir = fnamemodify(expand('<sfile>'), ':h')
    let &runtimepath .= ','.script_dir.','.script_dir.'/after'
    
    " Put your config changes here.
    " let g:jedi#show_call_signatures=1
    
    set pythonthreehome=C:\<path-to>\python3.9\\latest
    set pythonthreedll=C:\<path-to>\python39.dll
    
    syntax on
    filetype plugin indent on
    

    Opening a .py file then produces the error.

    Output of “:verbose JediDebugInfo”

    #### Jedi-vim debug information
    
    ##### jedi-vim version
    
     - jedi-vim git version: 0.11.0-29-g32d05f7
     - jedi git submodule status:  fae26fa7a427b94a21e11500503d8008647e6309 pythonx/jedi (v0.18.1)
     - parso git submodule status:  ee5edaf22ff3941cbdfa4efd8cb3e8f69779fd56 pythonx/parso (v0.8.3)
    
    ##### Global Python
    
    Using Python version 3 to access Jedi.
    Error when running display_debug_info: Vim(python3):ModuleNotFoundError: No module named 'jedi_vim_debug'
    
    ##### Settings
    
      omnifunc=python3complete#Complete
            Last set from /usr/share/vim/vim82/ftplugin/python.vim line 42
      completeopt=menuone,longest,preview
            Last set from ~/.vim/pack/plugins/start/jedi-vim/plugin/jedi.vim line 36
    
    #### :version
    
    VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Sep 21 2021 16:13:20)
    Included patches: 1-3441
    Compiled by <https://www.msys2.org/>
    Huge version without GUI.  Features included (+) or not (-):
    +acl               -clientserver      +diff              +folding           +langmap           +mouse_dec         +num64             +reltime           +syntax            +title             +windows
    +arabic            +clipboard         +digraphs          -footer            +libcall           -mouse_gpm         +packages          +rightleft         +tag_binary        -toolbar           +writebackup
    +autocmd           +cmdline_compl     -dnd               +fork()            +linebreak         -mouse_jsbterm     +path_extra        +ruby/dyn          -tag_old_static    +user_commands     -X11
    +autochdir         +cmdline_hist      -ebcdic            +gettext           +lispindent        +mouse_netterm     +perl/dyn          +scrollbind        -tag_any_white     +vartabs           -xfontset
    -autoservername    +cmdline_info      +emacs_tags        -hangul_input      +listcmds          +mouse_sgr         +persistent_undo   +signs             -tcl               +vertsplit         -xim
    -balloon_eval      +comments          +eval              +iconv             +localmap          -mouse_sysmouse    +popupwin          +smartindent       +termguicolors     +virtualedit       -xpm
    +balloon_eval_term +conceal           +ex_extra          +insert_expand     -lua               +mouse_urxvt       +postscript        -sodium            +terminal          +visual            -xsmp
    -browse            +cryptv            +extra_search      +ipv6              +menu              +mouse_xterm       +printer           -sound             +terminfo          +visualextra       -xterm_clipboard
    ++builtin_terms    +cscope            -farsi             +job               +mksession         +multi_byte        +profile           +spell             +termresponse      +viminfo           -xterm_save
    +byte_offset       +cursorbind        +file_in_path      +jumplist          +modify_fname      +multi_lang        -python            +startuptime       +textobjects       +vreplace
    +channel           +cursorshape       +find_in_path      +keymap            +mouse             -mzscheme          +python3/dyn       +statusline        +textprop          +wildignore
    +cindent           +dialog_con        +float             +lambda            -mouseshape        +netbeans_intg     +quickfix          -sun_workshop      +timers            +wildmenu
       system vimrc file: "/etc/vimrc"
         user vimrc file: "$HOME/.vimrc"
     2nd user vimrc file: "~/.vim/vimrc"
          user exrc file: "$HOME/.exrc"
           defaults file: "$VIMRUNTIME/defaults.vim"
      fall-back for $VIM: "/etc"
     f-b for $VIMRUNTIME: "/usr/share/vim/vim82"
    Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -I/usr/include/ncursesw -march=x86-64 -mtune=generic -O2 -pipe -D_REENTRANT -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
    Linking: gcc -L. -pipe -fstack-protector-strong -pipe -Wl,--as-needed -o vim.exe -lm -lncursesw -liconv -lacl -lintl -Wl,--enable-auto-import -Wl,--export-all-symbols -Wl,--enable-auto-image-base -fstack-protector-strong -L/usr/lib/perl5/core_perl/CORE -lperl -lpthread -ldl -lcrypt
    
    
    #### :messages
    
    "my-first-script.py" 0L, 0B
    jedi-vim error: jedi#setup_python_imports: Traceback (most recent call last):
      File "<string>", line 10, in <module>
    ModuleNotFoundError: No module named 'jedi_vim'
    Error detected while processing BufRead Autocommands for "*.py"..FileType Autocommands for "*"..Syntax Autocommands for "*"..function <SNR>3_SynSet[25]..script /c/Users/F720969/.vim/pack/plugins/start/jedi-vim/after/syntax/python.vim[1]../c/Users/F720969/.vim/pack/plugins/start/jedi-vim/autoload/jedi.vim[260]..function jedi#init_python[13]..BufRead Autocommands for "*.py"..FileType Autocommands for "*"..Syntax Autocommands for "*"..function <SNR>3_SynSet[25]..script /c/Users/F720969/.vim/pack/plugins/start/jedi-vim/after/syntax/python.vim[1]../c/Users/F720969/.vim/pack/plugins/start/jedi-vim/autoload/jedi.vim[260]..function jedi#init_python[11]..<SNR>24_display_exception:
    line   19:
    Error: jedi-vim failed to initialize Python: jedi#setup_python_imports: Traceback (most recent call last): (in BufRead Autocommands for "*.py"..FileType Autocommands for "*"..Syntax Autocommands for "*"..function <SNR>3_SynSet[25]..script /c/Users/F720969/.vim/pack/plugins/start/jedi-vim/after/syntax/python.vim[1]../c/Users/F720969/.vim/pack/plugins/start/jedi-vim/autoload/jedi.vim[260]..function jedi#init_python[4]..<SNR>24_init_python[6]..jedi#setup_python_imports, line 20). See :messages and/or :JediDebugInfo for more information.
    VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Sep 21 2021 16:13:20)
    
    
    <details><summary>:scriptnames</summary>
    
    
      1: ~/Codebase/python-test/minimal.vimrc
      2: /usr/share/vim/vim82/syntax/syntax.vim
      3: /usr/share/vim/vim82/syntax/synload.vim
      4: /usr/share/vim/vim82/syntax/syncolor.vim
      5: /usr/share/vim/vim82/filetype.vim
      6: /usr/share/vim/vim82/syntax/python.vim
      7: /usr/share/vim/vim82/ftplugin.vim
      8: /usr/share/vim/vim82/indent.vim
      9: /usr/share/vim/vim82/plugin/getscriptPlugin.vim
     10: /usr/share/vim/vim82/plugin/gzip.vim
     11: /usr/share/vim/vim82/plugin/logiPat.vim
     12: /usr/share/vim/vim82/plugin/manpager.vim
     13: /usr/share/vim/vim82/plugin/matchparen.vim
     14: /usr/share/vim/vim82/plugin/netrwPlugin.vim
     15: /usr/share/vim/vim82/plugin/rrhelper.vim
     16: /usr/share/vim/vim82/plugin/spellfile.vim
     17: /usr/share/vim/vim82/plugin/tarPlugin.vim
     18: /usr/share/vim/vim82/plugin/tohtml.vim
     19: /usr/share/vim/vim82/plugin/vimballPlugin.vim
     20: /usr/share/vim/vim82/plugin/zipPlugin.vim
     21: ~/.vim/pack/plugins/start/jedi-vim/plugin/jedi.vim
     22: ~/.vim/pack/plugins/start/lightline.vim/plugin/lightline.vim
     23: ~/.vim/pack/plugins/start/jedi-vim/after/syntax/python.vim
     24: ~/.vim/pack/plugins/start/jedi-vim/autoload/jedi.vim
     25: ~/.vim/pack/plugins/start/jedi-vim/ftplugin/python/jedi.vim
     26: /usr/share/vim/vim82/ftplugin/python.vim
     27: ~/.vim/pack/plugins/start/jedi-vim/after/ftplugin/python/jedi.vim
     28: /usr/share/vim/vim82/indent/python.vim
     29: ~/.vim/pack/plugins/start/lightline.vim/autoload/lightline.vim
     30: ~/.vim/pack/plugins/start/lightline.vim/autoload/lightline/tab.vim
     31: ~/.vim/pack/plugins/start/lightline.vim/autoload/lightline/colorscheme/default.vim
     32: ~/.vim/pack/plugins/start/lightline.vim/autoload/lightline/colorscheme/powerline.vim
     33: ~/.vim/pack/plugins/start/lightline.vim/autoload/lightline/colorscheme.vim
    
    </details>
    
    opened by cesarosum 7
  • Discovery of stubs in a different folder

    Discovery of stubs in a different folder

    I'm having trouble with discovery of .pyi stub files that live in a different folder from the .py source file.

    Here is an example that works as expected:

    .
    ├── code
    │   ├── foo.py
    │   └── foo.pyi
    └── main.py
    

    If I set the environment variable PYTHONPATH=code and if main.py contains the line from foo import bar, then jedi#goto_stubs() works as expected (it finds the definition of bar in code/foo.pyi).

    Here is an example that is not working:

    I am having problems when the file layout looks like this:

    .
    ├── code
    │   └── foo.py
    ├── stubs
    │   └── foo.pyi
    └── main.py
    

    In this situation, jedi#goto_stubs() does not work. I have tried the following environment variable settings:

    • PYTHONPATH=code:stubs
    • PYTHONPATH=code MYPYPATH=stubs

    I would expect that the .pyi file can be discovered as long as it is discoverable on PYTHONPATH or MYPYPATH, but this seems not to be the case.

    opened by Jasha10 4
  • Find usages does not get path from vim path

    Find usages does not get path from vim path

    Issue

    I am using a vim rooter plugin which sets :pwd to being the git (project root) whenever a file is opened. When I try to get usages using <leader> n on a function, it populates the quickfix list with a list of files relative to the file open. Therefore when I try and open the file, it does not open the correct path.

    For example I have a file in {project_root}/folder1/file1.py and then I have a usage in {project_root}/folder1/file2.py and I try and go to file2.py from file1.py using jedi, it will open {project_root}/file2.py which will be blank.

    Steps to reproduce

    cd project_root nvim folder1/file2.py navigate to function definition <leader> n select file2.py from quickfix list blank nvim opens for project_root/file2.py

    opened by kabeersvohra 3
  • Doesn't seem to work on Fedora

    Doesn't seem to work on Fedora

    Hey. I followed the steps from the installation process, installed via Pathogen, but it doesn't seem to work.

    I have a python file with this in it:

    import os
    
    os.
    

    When I typed dot (".") nothing happened. I tried :help jedi-vim but I get "E149: Sorry, no help for jedi-vim". I'm using Fedora 34, vim 8.2, python3.9.6

    I don't know how to use this:

    Please execute `:redir @+> | silent verb JediDebugInfo | redir END` in a
    Python buffer to copy debug information into your clipboard.
    Then paste it here.
    

    That doesn't look like a valid python syntax, and if I try writing that in vim, that's not working either -- "Invalid argument: @+>"

    opened by Feoggou 0
Owner
Dave Halter
Dave Halter
awesome Python autocompletion with SublimeText

SublimeJEDI SublimeJEDI is a Sublime Text 3 and Sublime Text 2 and plugin to the awesome autocomplete library Jedi Python Version Support Sublime Jedi

Serhii Ruskykh 933 Dec 8, 2022
Vim python-mode. PyLint, Rope, Pydoc, breakpoints from box.

Python-mode, a Python IDE for Vim This project needs contributors. Documentation: :help pymode https://github.com/python-mode/python-mode/wiki Importa

The Python-Mode 5.4k Jan 1, 2023
A code-completion engine for Vim

YouCompleteMe: a code-completion engine for Vim NOTE: Minimum Requirements Have Changed Our policy is to support the Vim version that's in the latest

null 24.5k Dec 30, 2022
Write maintainable, production-ready pipelines using Jupyter or your favorite text editor. Develop locally, deploy to the cloud. ☁️

Write maintainable, production-ready pipelines using Jupyter or your favorite text editor. Develop locally, deploy to the cloud. ☁️

Ploomber 2.9k Jan 6, 2023
Awesome autocompletion, static analysis and refactoring library for python

Jedi - an awesome autocompletion, static analysis and refactoring library for Python Jedi is a static analysis tool for Python that is typically used

Dave Halter 5.3k Dec 29, 2022
Interactive Redis: A Terminal Client for Redis with AutoCompletion and Syntax Highlighting.

Interactive Redis: A Cli for Redis with AutoCompletion and Syntax Highlighting. IRedis is a terminal client for redis with auto-completion and syntax

null 2.2k Dec 29, 2022
A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.

mycli A command line client for MySQL that can do auto-completion and syntax highlighting. HomePage: http://mycli.net Documentation: http://mycli.net/

dbcli 10.7k Jan 7, 2023
Postgres CLI with autocompletion and syntax highlighting

A REPL for Postgres This is a postgres client that does auto-completion and syntax highlighting. Home Page: http://pgcli.com MySQL Equivalent: http://

dbcli 10.8k Jan 2, 2023
awesome Python autocompletion with SublimeText

SublimeJEDI SublimeJEDI is a Sublime Text 3 and Sublime Text 2 and plugin to the awesome autocomplete library Jedi Python Version Support Sublime Jedi

Serhii Ruskykh 933 Dec 8, 2022
A Terminal Client for MySQL with AutoCompletion and Syntax Highlighting.

mycli A command line client for MySQL that can do auto-completion and syntax highlighting. HomePage: http://mycli.net Documentation: http://mycli.net/

dbcli 10.7k Jan 7, 2023
Postgres CLI with autocompletion and syntax highlighting

A REPL for Postgres This is a postgres client that does auto-completion and syntax highlighting. Home Page: http://pgcli.com MySQL Equivalent: http://

dbcli 10.8k Dec 30, 2022
Vim python-mode. PyLint, Rope, Pydoc, breakpoints from box.

Python-mode, a Python IDE for Vim This project needs contributors. Documentation: :help pymode https://github.com/python-mode/python-mode/wiki Importa

The Python-Mode 5.4k Jan 1, 2023
A code-completion engine for Vim

YouCompleteMe: a code-completion engine for Vim NOTE: Minimum Requirements Have Changed Our policy is to support the Vim version that's in the latest

null 24.5k Dec 30, 2022
A keyboard-driven, vim-like browser based on PyQt5.

qutebrowser is a keyboard-focused browser with a minimal GUI. It’s based on Python and PyQt5 and free software, licensed under the GPL.

qutebrowser 8.4k Jan 1, 2023
Seamlessly run Python code in IPython from Vim

Seamlessly run Python code from Vim in IPython, including executing individual code cells similar to Jupyter notebooks and MATLAB. This plugin also supports other languages and REPLs such as Julia.

Hans Chen 269 Dec 20, 2022
Vvim - Keyboardless Vim interactions

This is done via a hardware glove that the user wears. The glove detects the finger's positions and translates them into key presses. It's currently a work in progress.

Boyd Kane 8 Nov 17, 2022
A minimalist Vim plugin manager.

A minimalist Vim plugin manager. Pros. Easy to set up: Single file. No boilerplate code required. Easy to use: Concise, intuitive syntax Super-fast pa

Junegunn Choi 30.2k Jan 8, 2023
Freaky fast fuzzy Denite/CtrlP matcher for vim/neovim

Freaky fast fuzzy Denite/CtrlP matcher for vim/neovim This is a matcher plugin for denite.nvim and CtrlP.

Raghu 113 Sep 29, 2022
CLI Web-CAT interface for people who use VIM.

CLI Web-CAT CLI Web-CAT interface. Installation git clone https://github.com/phuang1024/cliwebcat cd cliwebcat python setup.py bdist_wheel sdist cd di

Patrick 4 Apr 11, 2022