"Vim’s editing functions behave as if they are
event-driven. For performance reasons, the actual implementation is
more complex than that, with much of the event handling optimized
away or handled several layers below the event loop itself, but you
can still think of the editor as a simple while loop responding to
a series of editing events.
"Whenever you start a Vim session, open a file, edit a buffer,
change your editing mode, switch windows, or interact with the
surrounding filesystem, you are effectively queuing an event that
Vim immediately receives and handles.
"For example, if you start Vim, edit a file named demo.txt, swap
into Insert mode, type in some text, save the file, and then exit,
your Vim session receives a series of events like what is shown in
Some of the products that appear on this site are from companies from which QuinStreet receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. QuinStreet does not include all companies or all types of products available in the marketplace.