Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Etherpad Client for VIM

This plugin uses EtherpadLiteClient to connect to a pad on an EtherPadLite server and enables collaborative edition in your favorite editor.


As is, the plugin is only a Proof-of-Concept, that is still not configurable and not fail-proof. It can get updates from the server, and generate/send changeset to the server, but that part is still pretty buggy. The Vim integration ready to be tested, though still in beta phase. It can happen that a typed change will revert.

Supports pad connection using websocket flawlessly, but xhr-polling is still beta (it may need several reconnections to work). json-polling has been implemented, but does not still work. See SocketIO-client for more.


Vim needs to be compiled with the python option enabled.

There's a dependency on the python library requests:

pip install requests

To run the plugin for dev or testing, you can launch vim as follows:

vim -c 'source plugin/vim-etherpad.vim'

Configuration in .vimrc

" To connect to the pad at URI http://localhost:9001/p/test per default:
let g:epad_host = "localhost" " Hostname to connect to
let g:epad_port = "9001"      " Port to connect to
let g:epad_path = "p/"        " URL Path to the pad
let g:epad_pad = "test"       " Name of the pad to connect to

" GUI feel
let g:epad_updatetime = 1000  " lower this for more realtime, higher this for less load

" GUI look
let g:epad_attributes = 0     " set to 1 to display attributes (works only with a font that)
let g:epad_authors = 0        " set to 1 to display authors (works only in gui mode)

" Enable verbosity
let g:epad_verbose = 0        " set to 1 for INFO level, 2 for DEBUG level


To connect to a pad:

:Etherpad     " connects to the default URI spec and default pad
:Etherpad foo " connects to the 'foo' pad at default URI
:Etherpad " connects to that pad's URI
:Etherpad      " another one

To disconnect from a pad:


To pause (or resume) current pad connection:


To try sending an update (will fail, changeset building library is work in progress):

make some edits and then:


To toggle (or set) display of attributes:

:EtherpadShowAttributes   " toggle attributes
:EtherpadShowAttributes 0 " disable attributes
:EtherpadShowAttributes 1 " show attributes

The same with authors:

:EtherpadShowAuthors   " toggle authors
:EtherpadShowAuthors 0 " disable authors
:EtherpadShowAuthors 1 " show authors


though install is still not recommended, you can install it as a Vundle bundle:

Bundle 'guyzmo/vim-etherpad'


All the plugin's code is under the GPLv3.


Plugin to enable collaborative edition on etherpad with the best editor






No releases published


No packages published