

ViViPlugin is based on eventFilters installed on a QTextEdit or a QPlainTextEdit.
It basically catches all keystrokes and modifies some internal state that
make the resulting text in the editor look like it was using vim.

There are only a few files in here:

  viviplugin.{h,cpp}  - interaction with the rest of Creator
  viviactions.{h,cpp} - settings
  vivihandler.{h,cpp} - the "real" event

There are some more hints for developers in vivihandler.cpp

