Skip to content

guyzmo/vim-etherpad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 

Repository files navigation

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.

Disclaimer

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.

Develop

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

Use

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 http://beta.etherpad.org/p/test " connects to that pad's URI
:Etherpad https://pad.lqdn.fr/p/test      " another one

To disconnect from a pad:

:EtherpadStop

To pause (or resume) current pad connection:

:EtherpadPause

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

make some edits and then:

:EtherpadUpdate

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

Install

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

Bundle 'guyzmo/vim-etherpad'

License

All the plugin's code is under the GPLv3.

About

Plugin to enable collaborative edition on etherpad with the best editor

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published