How to access/view Python help when using vim

last updated in Categories , , ,

I am a new Vim text editor user. I am writing Python code. Is there is a way to see Python documentation within vim and without visiting the Internet? Say my cursor is under the print Python keyword, and I press F1. I want to look at the help for the print keyword. How do I show python help() inside vim? How do I call pydoc3/pydoc to seek help without leaving vim?

The pydoc or pydoc3 command show text documentation on the name of a Python keyword, topic, function, module, or package, or a dotted reference to a class or function within a module or module in a package. You can call pydoc from vim itself. Let us see how to access Python documentation using pydoc within vim text editor.

Access python help using pydoc

The syntax is:
pydoc keyword
pydoc3 keyword
pydoc len
pydoc print

Edit your ~/.vimrc:
$ vim ~/.vimrc
Append the following configuration for pydoc3 (python v3.x docs). Create a mapping for H key that works in normal mode:

nnoremap <buffer> H :<C-u>execute "!pydoc3 " . expand("<cword>")<CR>

Save and close the file. Open vim text editor:
$ vim file.py
Write some code:

#!/usr/bin/python3
x=5
y=10
z=x+y
print(z)
print("Hello world")

Position cursor under the print Python keyword and press Shift followed by H. You will see output as follows:

Access Python Help Within Vim
Gif.01: Press H to view help for the print Python keyword

How to view python help when using vim

jedi-vim is a VIM binding to the autocompletion library Jed. It can do many things including display help for keyword when you press Shift followed by K i.e. press capital K.

How to install jedi-vim on Linux or Unix-like system

Use pathogen, vim-plug or Vundle to install jedi-vim. I am using Vim-Plug. Add the following line in ~/vimrc:
Plug 'davidhalter/jedi-vim'
Save and close the file. Start vim and type:
PlugInstall
On Arch Linux, you can also install jedi-vim from official repositories as vim-jedi using pacman command:
$ sudo pacman -S vim-jedi
It is also available on Debian (?8) and Ubuntu (?14.04) as vim-python-jedi using apt command/apt-get command:
$ sudo apt install vim-python-jedi
On Fedora Linux, it is available as vim-jedi using dnf command:
$ sudo dnf install vim-jedi
Jedi is by default automatically initialized. So no further configuration needed on your part. To see Documentation/Pydoc press K. It shows a popup with assignments:
How to view python help when using vim

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

Share this on (or read 1 comments/add one below):

Join the discussion at www.nixcraft.com