@setfilename ../info/viper
@copying
-Copyright @copyright{} 1995, 1996, 1997, 2001, 2002 Free Software
-Foundation, Inc.
+Copyright @copyright{} 1995, 1996, 1997, 2001, 2002, 2003, 2004,
+2005, 2006 Free Software Foundation, Inc.
@quotation
Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.1 or
+under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with the Front-Cover texts being ``A GNU
Manual'', and with the Back-Cover Texts as in (a) below. A copy of the
<jshawkin@@eecs.umich.edu> has provided a set of customizations, which
enables additional Emacs bindings under Viper. These customizations can be
included in your @file{~/.viper} file and are found at the following URL:
-@file{http://www.eecs.umich.edu/~jshawkin/viper-sample}.
+@file{http://traeki.freeshell.org/files/viper-sample}.
@menu
* Emacs Preliminaries:: Basic concepts in Emacs.
@dfn{buffer} that usually has the same name as the file. Buffers are also used
for other purposes, such as shell interfaces, directory editing, etc.
@xref{Dired,,Directory Editor,emacs,The
-Gnu Emacs Manual}, for an example.@refill
+GNU Emacs Manual}, for an example.@refill
A buffer has a distinguished position called the @dfn{point}.
A @dfn{point} is always between 2 characters, and is @dfn{looking at}
Furthermore, Viper lets Ex-style commands to work on the current region.
This is done by typing a digit argument before @kbd{:}. For instance,
-typing @kbd{1:} will propmt you with something like @emph{:123,135},
+typing @kbd{1:} will prompt you with something like @emph{:123,135},
assuming that the current region starts at line 123 and ends at line
135. There is no need to type the line numbers, since Viper inserts them
automatically in front of the Ex command.
In Viper, Ex commands can be made to work on the current Emacs region.
This is done by typing a digit argument before @kbd{:}.
-For instance, typing @kbd{1:} will propmt you with something like
+For instance, typing @kbd{1:} will prompt you with something like
@emph{:123,135}, assuming that the current region starts at line 123 and
ends at line 135. There is no need to type the line numbers, since Viper
inserts them automatically in front of the Ex command.
sequences that begin with @kbd{C-x} and @kbd{C-c}.
There is also a key that lets you temporarily escape to Vi command state
-from Emacs or Insert states: typing @kbd{C-c \} will let you execute a
-single Vi command while staying in Viper's Emacs or Insert state.
-In Insert state, the same can also be achieved by typing @kbd{C-z}.
+from the Insert state: typing @kbd{C-z} will let you execute a
+single Vi command while staying in Viper's Insert state.
@node Vi State, Insert State, Emacs State, States in Viper
@vindex @code{viper-insert-state-cursor-color}
If set to a valid color, this will be the cursor color when Viper is in
insert state.
+@item viper-emacs-state-cursor-color nil
+@vindex @code{viper-emacs-state-cursor-color}
+If set to a valid color, this will be the cursor color when Viper is in
+emacs state.
@item viper-replace-region-end-delimiter "$"
A string used to mark the end of replacement regions. It is used only on
TTYs or if @code{viper-use-replace-region-delimiters} is non-@code{nil}.
(@pxref{Customization}).
In some cases, some @emph{minor} modes might override certain essential
-bindings in Vi command state. This is not a big priblem because this
+bindings in Vi command state. This is not a big problem because this
can happen only in the beginning, when the minor mode kicks in. Typing
@code{M-x viper-mode} will correct the situation. Viper knows about
several such minor modes and takes care of them, so the above trick
If a document consists of several files we can designate one of them as a
master and put the following at the end of that file:
@lisp
-;;; Local Variables:
-;;; eval: (viper-setup-master-buffer "file1" "file2" "file3" "file4")
-;;; End:
+;; Local Variables:
+;; eval: (viper-setup-master-buffer "file1" "file2" "file3" "file4")
+;; End:
@end lisp
@noindent
where @code{file1} to @code{file4} are names of files related to the master
focus on relevant files only.
Note that only the master file needs to have the aforementioned block of
-commands. Also, ";;;" above can be replaced by some other
+commands. Also, ";;" above can be replaced by some other
markers. Semicolon is good for Lisp programs, since it is considered a
comment designator there. For LaTeX, this could be "%%%", and for C the
above block should be commented out.
Even though these commands are sometimes useful, they are no substitute for
the powerful @emph{tag table} facility of Emacs. Viper's @kbd{:tag} command
in a primitive interface to Emacs tags. @xref{Tags,Tags,Tags,emacs,
-The Gnu Emacs Manual}, for more information on tags.
+The GNU Emacs Manual}, for more information on tags.
The following two commands are normally bound to a mouse click and are part
of Viper. They work only if Emacs runs as an application under X
(setq viper-mouse-insert-key '(meta 2))
@end lisp
If you want to bind mouse-insert to an action even if this action is
-already taked for other purposes in Emacs, then you should add this command
+already taken for other purposes in Emacs, then you should add this command
to @code{~/.viper}, after setting @code{viper-mouse-insert-key}:
@lisp
(viper-bind-mouse-insert-key 'force)
Finally, we note that Viper's Ex-style commands can be made to work on the
current Emacs region. This is done by typing a digit argument before
-@kbd{:}. For instance, typing @kbd{1:} will propmt you with something like
+@kbd{:}. For instance, typing @kbd{1:} will prompt you with something like
@emph{:123,135}, assuming that the current region starts at line 123 and
ends at line 135. There is no need to type the line numbers, since Viper
inserts them automatically in front of the Ex command.