Simple event looping in vim
Vim script
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


This is just an EventLoop framework I built for pterosaur. I'm keeping it in a seperate plugin so other people can use it.

##Basic Usage EventLoop uses a syntax similar to vim's autocommands

  • :ElGroup <groupname> starts editing an EventLoop group
  • :ElCmd adds a command to the EventLoop group. This command will be repeated every .2(configurable) seconds.
  • :ElGroup END ends group editing
  • :ElGroup! <groupname> removes a group and all its commands
  • :ElSetting timer <time> changes the time between function calls of the current group to <time>*100 milliseconds.


ElGroup! pterosaur

ElGroup pterosaur
  ElSetting timer 4
  ElCmd call CheckConsole()
  ElCmd call OutputMessages()
ElGroup END


  • Vim with +clientserver
  • GNU/Linux or OS X. Probably works on other unix-like systems too.

##Installation Use pathogen.

cd ~/.vim/bundle
git clone


  • Timers are rounded up to the nearest even number and are a best-case value. (Your function won't get called faster than the timer, but it might get called slower.)


  • Using EventLoop hides the cursor when typing ex commands.

##License EventLoop is licensed under the AGPL v3