Skip to content

Contents

This project aims to use Vim as a powerful and complete Python IDE. In order to do that, we curated a list of awesome plugins available in the community and provided an automatic installation procedure for this set.

Installation

Requirements for Ubuntu distros (Tested on Windows Subsystem for Linux)

sudo apt install libncurses5-dev libgnome2-dev libgnomeui-dev \
libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \
libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev \
python3-dev git ctags

Requirements for Fedora distros

sudo dnf install -y ctags git python python-devel \
python3 python3-devel tcl-devel

Installation process

git clone https://github.com/rapphil/vim-python-ide.git && \
cd vim-python-ide && ./install.sh

Features

Please check the available features and the plugins that enable them.

Syntax Highlighting

Syntax highlighting for several languages, besides Python.

Powered by:

Color Themes

Several popular color schemes:

  • Monokai
  • Gruvbox
  • Much more

Powered by:

Project Navigation

Easily navigate your project using:

  • File tree explore (Nerdtree)
  • Fuzzy finder based on the file names
  • File structure (classes, functions, methods). Powered by:

  • Nerdtree

  • Fzf
  • Tagbar
  • Full text search based on both exact match and fuzzy finder capabilities
  • Extremely fast.

Powered by:

Real time linting

Lint source files in real time an check for errors and warnings.

Powered by:

Code navigation

  • Go to function definitions
  • Check parameters and docstrings easily.

Powered by:

Code refactoring

Extract methods, variables and rename functions easily.

Powered by:

Code completion

Use hints and dialog boxes to speed your development using code completion.

Powered by:

Snippets

Snippets save time while you type and creates standardization for your code.

Powered by:

Git Integration

Perform git operations and highlight changes in the repo.

Powered by:

Key bindings

Action Mode key binding
Toogle Nerdtree Normal crtl + n
toogle Tagbar Normal f8
Look for file Normal crtl + p
Goto definition Normal crtl + ]
Show docstring Normal K
Extract method Normal/Visual crlt + c r m
Auto complete Insert crtl + space
Expand snippet Insert tab

Commands

Command Description Command
Look for string :Rg <string>
git status :Gstatus
git diff :Gdiff