vim-mode

Homepage: http://www.emacswiki.org/emacs/VimMode

Author: Frank Fischer

Updated:

Summary

A VIM-emulation for Emacs

Commentary

A simple VIM-mode for Emacs

This project is in an early development state and many function
have not been implemented yet.

If you want to try, open this file in your Emacs and evaluate the buffer.
The mode can be activated by 'M-x vim-mode'.

Don't forget to disable Viper if you want to try vim-mode.

The project is divided into many files. Each file implements some
almost-independent feature. If you want to learn how to implement
new commands or motions, look at the files vim-commands.el and
vim-motions.el.

Here is a short description of the contents of each file:

 - vim.el:  This file just sets up the mode and loads the other files.

 - vim-compat.el: Compatibility layer for different Emacsen.

 - vim-keymap.el: A few functions for defining keymaps for vim-mode.

 - vim-macs.el: This file contains the macros for defining motions
               and commands.

 - vim-defs.el: Global variables.

 - vim-core.el: Controlling of active modes and execution of
                motions and commands.

 - vim-modes.el: Each VIM-mode (normal-mode, insert-mode, ...) corresponds
                 to an Emacs-minor-mode. This file contains some macros and
                 functions to define new vim-modes in this context.   

 - vim-insert-mode.el: The implementation of insert-mode.         
                                                                   
 - vim-normal-mode.el: The implementation of normal-mode.         
                                                                   
 - vim-visual-mode.el: The implementation of visual-mode.         

 - vim-ex.el: The implementation of ex-mode.         
                                                                   
 - vim-commands.el: The implementations of commands like 'delete', 
                    'yank', 'paste' and so on.               

 - vim-motions.el: The implementations of motion commands like 'h',
                   'i', 'j', 'k', 'f', 'w', ...

 - vim-scroll.el: The implementation of scrolling commands like
                  'zz', 'Ctrl-F'.

 - vim-window-el: The implementation of window commands like 'C-w s'.

 - vim-ex-commands.el: The implementations of commands like ':edit'
                       or ':buffer'.

 - vim-search.el: The implementation of '/' and ':substitute'.

 - vim-undo.el: Some variables and functions for undo/redo.

 - vim-maps.el: The definition of the basic keymaps.  This file
                connects the keymaps with the commands and motions
                defined in vim-commands.el and vim-motions.el.

Dependencies