annotate etc/refcards/vipcard.tex @ 110383:e1094870ea06

ftfont.c (ftfont_check_otf): Fix previous change.
author Kenichi Handa <handa@m17n.org>
date Fri, 17 Sep 2010 13:57:58 +0900
parents 8b08de8dc0aa
children 376148b31b5e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
1 % Quick Reference Card for VIP
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
2
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
3 % Copyright (C) 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
106815
1d1d5d9bd884 Add 2010 to copyright years.
Glenn Morris <rgm@gnu.org>
parents: 104004
diff changeset
4 % 2009, 2010 Free Software Foundation, Inc.
82879
0eda42555bbf Specify PDF layout, use a PDF `compile-command' local variable.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents: 82680
diff changeset
5
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
6 % Author: Masahiko Sato <ms@sail.stanford.edu>, <masahiko@sato.riec.tohoku.junet>
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
7
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
8 % This file is part of GNU Emacs.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
9
95010
9f4d6f3769da Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 87649
diff changeset
10 % GNU Emacs is free software: you can redistribute it and/or modify
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
11 % it under the terms of the GNU General Public License as published by
95010
9f4d6f3769da Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 87649
diff changeset
12 % the Free Software Foundation, either version 3 of the License, or
9f4d6f3769da Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 87649
diff changeset
13 % (at your option) any later version.
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
14
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
15 % GNU Emacs is distributed in the hope that it will be useful,
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
16 % but WITHOUT ANY WARRANTY; without even the implied warranty of
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
17 % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
18 % GNU General Public License for more details.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
19
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
20 % You should have received a copy of the GNU General Public License
95010
9f4d6f3769da Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 87649
diff changeset
21 % along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
22
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
23
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
24 % This file is intended to be processed by plain TeX (TeX82).
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
25 %
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
26 % The final reference card has six columns, three on each side.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
27 % This file can be used to produce it in any of three ways:
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
28 % 1 column per page
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
29 % produces six separate pages, each of which needs to be reduced to 80%.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
30 % This gives the best resolution.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
31 % 2 columns per page
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
32 % produces three already-reduced pages.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
33 % You will still need to cut and paste.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
34 % 3 columns per page
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
35 % produces two pages which must be printed sideways to make a
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
36 % ready-to-use 8.5 x 11 inch reference card.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
37 % For this you need a dvi device driver that can print sideways.
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
38 % Which mode to use is controlled by setting \columnsperpage.
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
39
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
40
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
41 %**start of header
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
42 \newcount\columnsperpage
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
43
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
44 % This file can be printed with 1, 2, or 3 columns per page.
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
45 % Specify how many you want here.
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
46 \columnsperpage=1
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
47
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
48 % PDF output layout. 0 for A4, 1 for letter (US), a `l' is added for
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
49 % a landscape layout.
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
50 \input pdflayout.sty
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
51 \pdflayout=(1)
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
52
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
53 \def\versionemacs{18} % version of Emacs this is for
107297
8b08de8dc0aa Update short copyright year in refcard tex files.
Glenn Morris <rgm@gnu.org>
parents: 106815
diff changeset
54 \def\year{2010} % latest copyright year
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
55 \def\versionvip{3.5}
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
56
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
57 % Nothing else needs to be changed.
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
58
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
59 \def\shortcopyrightnotice{\vskip 1ex plus 2 fill
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
60 \centerline{\small \copyright\ \year\ Free Software Foundation, Inc.
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
61 Permissions on back.}}
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
62
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
63 \def\copyrightnotice{
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
64 %\vskip 1ex plus 2 fill\begingroup\small
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
65 \vskip 1ex \begingroup\small
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
66 \centerline{Copyright \copyright\ \year\ Free Software Foundation, Inc.}
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
67 \centerline{For VIP \versionvip\ with GNU Emacs version \versionemacs}
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
68 \centerline{Written by Masahiko Sato,}
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
69 \centerline{using refcard layout designed by Stephen Gildea.}
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
70
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
71 Permission is granted to make and distribute copies of
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
72 this card provided the copyright notice and this permission notice
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
73 are preserved on all copies.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
74
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
75 For copies of the GNU Emacs manual, see:
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
76
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
77 {\tt http://www.gnu.org/software/emacs/\#Manuals}
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
78 \endgroup}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
79
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
80 % make \bye not \outer so that the \def\bye in the \else clause below
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
81 % can be scanned without complaint.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
82 \def\bye{\par\vfill\supereject\end}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
83
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
84 \newdimen\intercolumnskip
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
85 \newbox\columna
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
86 \newbox\columnb
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
87
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
88 \def\ncolumns{\the\columnsperpage}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
89
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
90 \message{[\ncolumns\space
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
91 column\if 1\ncolumns\else s\fi\space per page]}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
92
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
93 \def\scaledmag#1{ scaled \magstep #1}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
94
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
95 % This multi-way format was designed by Stephen Gildea
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
96 % October 1986.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
97 % Slightly modified by Masahiko Sato, September 1987.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
98 \if 1\ncolumns
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
99 \hsize 4in
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
100 \vsize 10in
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
101 %\voffset -.7in
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
102 \voffset -.57in
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
103 \font\titlefont=\fontname\tenbf \scaledmag3
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
104 \font\headingfont=\fontname\tenbf \scaledmag2
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
105 \font\miniheadingfont=\fontname\tenbf \scaledmag1 % masahiko
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
106 \font\smallfont=\fontname\sevenrm
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
107 \font\smallsy=\fontname\sevensy
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
108
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
109 \footline{\hss\folio}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
110 \def\makefootline{\baselineskip10pt\hsize6.5in\line{\the\footline}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
111 \else
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
112 %\hsize 3.2in
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
113 %\vsize 7.95in
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
114 \hsize 3.41in % masahiko
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
115 \vsize 8in % masahiko
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
116 \hoffset -.75in
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
117 \voffset -.745in
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
118 \font\titlefont=cmbx10 \scaledmag2
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
119 \font\headingfont=cmbx10 \scaledmag1
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
120 \font\miniheadingfont=cmbx10 % masahiko
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
121 \font\smallfont=cmr6
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
122 \font\smallsy=cmsy6
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
123 \font\eightrm=cmr8
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
124 \font\eightbf=cmbx8
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
125 \font\eightit=cmti8
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
126 \font\eightsl=cmsl8
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
127 \font\eighttt=cmtt8
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
128 \font\eightsy=cmsy8
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
129 \textfont0=\eightrm
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
130 \textfont2=\eightsy
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
131 \def\rm{\eightrm}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
132 \def\bf{\eightbf}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
133 \def\it{\eightit}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
134 \def\sl{\eightsl} % masahiko
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
135 \def\tt{\eighttt}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
136 \normalbaselineskip=.8\normalbaselineskip
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
137 \normallineskip=.8\normallineskip
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
138 \normallineskiplimit=.8\normallineskiplimit
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
139 \normalbaselines\rm %make definitions take effect
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
140
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
141 \if 2\ncolumns
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
142 \let\maxcolumn=b
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
143 \footline{\hss\rm\folio\hss}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
144 \def\makefootline{\vskip 2in \hsize=6.86in\line{\the\footline}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
145 \else \if 3\ncolumns
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
146 \let\maxcolumn=c
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
147 \nopagenumbers
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
148 \else
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
149 \errhelp{You must set \columnsperpage equal to 1, 2, or 3.}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
150 \errmessage{Illegal number of columns per page}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
151 \fi\fi
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
152
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
153 %\intercolumnskip=.46in
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
154 \intercolumnskip=.19in % masahiko .19x4 + 3.41x3 = 10.99
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
155 \def\abc{a}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
156 \output={%
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
157 % This next line is useful when designing the layout.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
158 %\immediate\write16{Column \folio\abc\space starts with \firstmark}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
159 \if \maxcolumn\abc \multicolumnformat \global\def\abc{a}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
160 \else\if a\abc
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
161 \global\setbox\columna\columnbox \global\def\abc{b}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
162 %% in case we never use \columnb (two-column mode)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
163 \global\setbox\columnb\hbox to -\intercolumnskip{}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
164 \else
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
165 \global\setbox\columnb\columnbox \global\def\abc{c}\fi\fi}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
166 \def\multicolumnformat{\shipout\vbox{\makeheadline
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
167 \hbox{\box\columna\hskip\intercolumnskip
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
168 \box\columnb\hskip\intercolumnskip\columnbox}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
169 \makefootline}\advancepageno}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
170 \def\columnbox{\leftline{\pagebody}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
171
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
172 \def\bye{\par\vfill\supereject
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
173 \if a\abc \else\null\vfill\eject\fi
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
174 \if a\abc \else\null\vfill\eject\fi
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
175 \end}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
176 \fi
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
177
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
178 % we won't be using math mode much, so redefine some of the characters
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
179 % we might want to talk about
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
180 \catcode`\^=12
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
181 \catcode`\_=12
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
182
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
183 \chardef\\=`\\
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
184 \chardef\{=`\{
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
185 \chardef\}=`\}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
186
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
187 \hyphenation{mini-buf-fer}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
188
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
189 \parindent 0pt
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
190 \parskip 1ex plus .5ex minus .5ex
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
191
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
192 \def\small{\smallfont\textfont2=\smallsy\baselineskip=.8\baselineskip}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
193
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
194 \outer\def\newcolumn{\vfill\eject}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
195
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
196 \outer\def\title#1{{\titlefont\centerline{#1}}\vskip 1ex plus .5ex}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
197
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
198 \outer\def\section#1{\par\filbreak
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
199 \vskip 3ex plus 2ex minus 2ex {\headingfont #1}\mark{#1}%
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
200 \vskip 2ex plus 1ex minus 1.5ex}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
201
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
202 % masahiko
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
203 \outer\def\subsection#1{\par\filbreak
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
204 \vskip 2ex plus 2ex minus 2ex {\miniheadingfont #1}\mark{#1}%
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
205 \vskip 1ex plus 1ex minus 1.5ex}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
206
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
207 \newdimen\keyindent
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
208
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
209 \def\beginindentedkeys{\keyindent=1em}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
210 \def\endindentedkeys{\keyindent=0em}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
211 \endindentedkeys
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
212
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
213 \def\paralign{\vskip\parskip\halign}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
214
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
215 \def\<#1>{$\langle${\rm #1}$\rangle$}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
216
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
217 \def\kbd#1{{\tt#1}\null} %\null so not an abbrev even if period follows
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
218
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
219 \def\beginexample{\par\leavevmode\begingroup
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
220 \obeylines\obeyspaces\parskip0pt\tt}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
221 {\obeyspaces\global\let =\ }
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
222 \def\endexample{\endgroup}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
223
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
224 \def\key#1#2{\leavevmode\hbox to \hsize{\vtop
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
225 {\hsize=.75\hsize\rightskip=1em
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
226 \hskip\keyindent\relax#1}\kbd{#2}\hfil}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
227
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
228 \newbox\metaxbox
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
229 \setbox\metaxbox\hbox{\kbd{M-x }}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
230 \newdimen\metaxwidth
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
231 \metaxwidth=\wd\metaxbox
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
232
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
233 \def\metax#1#2{\leavevmode\hbox to \hsize{\hbox to .75\hsize
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
234 {\hskip\keyindent\relax#1\hfil}%
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
235 \hskip -\metaxwidth minus 1fil
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
236 \kbd{#2}\hfil}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
237
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
238 \def\fivecol#1#2#3#4#5{\hskip\keyindent\relax#1\hfil&\kbd{#2}\quad
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
239 &\kbd{#3}\quad&\kbd{#4}\quad&\kbd{#5}\cr}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
240
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
241 \def\fourcol#1#2#3#4{\hskip\keyindent\relax#1\hfil&\kbd{#2}\quad
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
242 &\kbd{#3}\quad&\kbd{#4}\quad\cr}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
243
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
244 \def\threecol#1#2#3{\hskip\keyindent\relax#1\hfil&\kbd{#2}\quad
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
245 &\kbd{#3}\quad\cr}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
246
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
247 \def\twocol#1#2{\hskip\keyindent\relax\kbd{#1}\hfil&\kbd{#2}\quad\cr}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
248
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
249 \def\twocolkey#1#2#3#4{\hskip\keyindent\relax#1\hfil&\kbd{#2}\quad&\relax#3\hfil&\kbd{#4}\quad\cr}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
250
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
251 %**end of header
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
252
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
253 \beginindentedkeys
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
254
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
255 \title{VIP Quick Reference Card}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
256
104004
34c51059d164 Standardize header.
Glenn Morris <rgm@gnu.org>
parents: 100975
diff changeset
257 \centerline{(Based on VIP \versionvip\ in GNU Emacs \versionemacs)}
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
258
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
259 %\copyrightnotice
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
260
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
261 \section{Loading VIP}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
262
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
263 Just type \kbd{M-x vip-mode} followed by \kbd{RET}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
264
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
265 \section{VIP Modes}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
266
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
267 VIP has three modes: {\it emacs mode}, {\it vi mode} and {\it insert mode}.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
268 Mode line tells you which mode you are in.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
269 In emacs mode you can do all the normal GNU Emacs editing.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
270 This card explains only vi mode and insert mode.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
271 {\bf GNU Emacs Reference Card} explains emacs mode.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
272 You can switch modes as follows.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
273
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
274 \key{from emacs mode to vi mode}{C-z}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
275 \key{from vi mode to emacs mode}{C-z}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
276 \metax{from vi mode to insert mode}{i, I, a, A, o, O {\rm or} C-o}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
277 \key{from insert mode to vi mode}{ESC}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
278
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
279 If you wish to be in vi mode just after you startup Emacs,
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
280 include the line:
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
281
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
282 \hskip 5ex
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
283 \kbd{(setq term-setup-hook 'vip-mode)}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
284
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
285 in your \kbd{.emacs} file.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
286 Or, you can put the following alias in your \kbd{.cshrc} file.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
287
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
288 \hskip 5ex
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
289 \kbd{alias vip 'emacs \\!* -f vip-mode'}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
290
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
291
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
292 \section{Insert Mode}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
293 Insert mode is like emacs mode except for the following.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
294
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
295 \key{go back to vi mode}{ESC}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
296 \key{delete previous character}{C-h}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
297 \key{delete previous word}{C-w}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
298 \key{emulate \kbd{ESC} key in emacs mode}{C-z}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
299
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
300 The rest of this card explains commands in {\bf vi mode}.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
301
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
302 \section{Getting Information on VIP}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
303
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
304 Execute info command by typing \kbd{M-x info} and select menu item
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
305 \kbd{vip}. Also:
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
306
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
307 \key{describe function attached to the key {\it x}}{C-h k {\it x}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
308
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
309 \section{Leaving Emacs}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
310
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
311 \key{suspend Emacs}{X Z {\rm or} :st}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
312 \metax{exit Emacs permanently}{Z Z {\rm or} X C {\rm or} :q}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
313
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
314 \section{Error Recovery}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
315
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
316 \key{abort partially typed or executing command}{C-g}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
317 \key{redraw messed up screen}{C-l}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
318 \metax{{\bf recover} a file lost by a system crash}{M-x recover-file}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
319 \metax{restore a buffer to its original contents}{M-x revert-buffer}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
320
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
321 \shortcopyrightnotice
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
322
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
323 \section{Counts}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
324
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
325 Most commands in vi mode accept a {\it count} which can be supplied as a
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
326 prefix to the commands. In most cases, if a count is given, the
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
327 command is executed that many times. E.g., \kbd{5 d d} deletes 5
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
328 lines.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
329
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
330 %\shortcopyrightnotice
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
331 \section{Registers}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
332
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
333 There are 26 registers (\kbd{a} to \kbd{z}) that can store texts
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
334 and marks.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
335 You can append a text at the end of a register (say \kbd{x}) by
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
336 specifying the register name in capital letter (say \kbd{X}).
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
337 There are also 9 read only registers (\kbd{1} to \kbd{9}) that store
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
338 up to 9 previous changes.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
339 We will use {\it x\/} to denote a register.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
340 \section{Entering Insert Mode}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
341
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
342 \key{{\bf insert} at point}{i}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
343 \key{{\bf append} after cursor}{a}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
344 \key{{\bf insert} before first non-white}{I}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
345 \key{{\bf append} at end of line}{A}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
346 \key{{\bf open} line below}{o}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
347 \key{{\bf open} line above}{O}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
348 \key{{\bf open} line at point}{C-o}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
349
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
350 \section{Buffers and Windows}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
351
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
352 \key{move cursor to {\bf next} window}{C-n}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
353 \key{delete current window}{X 0}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
354 \key{delete other windows}{X 1}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
355 \key{split current window into two windows}{X 2}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
356 \key{show current buffer in two windows}{X 3}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
357 \key{{\bf switch} to a buffer in the current window}{s {\sl buffer}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
358 \key{{\bf switch} to a buffer in another window}{S {\sl buffer}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
359 \key{{\bf kill} a buffer}{K}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
360 \key{list existing {\bf buffers}}{X B}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
361
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
362 \section{Files}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
363
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
364 \metax{{\bf visit} file in the current window}{v {\sl file} {\rm or} :e {\sl file}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
365 \key{{\bf visit} file in another window}{V {\sl file}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
366 \key{{\bf save} buffer to the associated file}{X S}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
367 \key{{\bf write} buffer to a specified file}{X W}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
368 \key{{\bf insert} a specified file at point}{X I}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
369 \key{{\bf get} information on the current {\bf file}}{g {\rm or} :f}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
370 \key{run the {\bf directory} editor}{X d}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
371
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
372 \section{Viewing the Buffer}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
373
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
374 \key{scroll to next screen}{SPC {\rm or} C-f}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
375 \key{scroll to previous screen}{RET {\rm or} C-b}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
376 \key{scroll {\bf down} half screen}{C-d}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
377 \key{scroll {\bf up} half screen}{C-u}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
378 \key{scroll down one line}{C-e}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
379 \key{scroll up one line}{C-y}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
380
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
381 \key{put current line on the {\bf home} line}{z H {\rm or} z RET}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
382 \key{put current line on the {\bf middle} line}{z M {\rm or} z .}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
383 \key{put current line on the {\bf last} line}{z L {\rm or} z -}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
384
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
385 \section{Marking and Returning}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
386
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
387 \key{{\bf mark} point in register {\it x}}{m {\it x}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
388 \key{set mark at buffer beginning}{m <}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
389 \key{set mark at buffer end}{m >}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
390 \key{set mark at point}{m .}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
391 \key{jump to mark}{m ,}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
392 \key{exchange point and mark}{` `}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
393 \key{... and skip to first non-white on line}{' '}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
394 \key{go to mark {\it x}}{` {\it x}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
395 \key{... and skip to first non-white on line}{' {\it x}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
396
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
397 \section{Macros}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
398
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
399 \key{start remembering keyboard macro}{X (}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
400 \key{finish remembering keyboard macro}{X )}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
401 \key{call last keyboard macro}{*}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
402 \key{execute macro stored in register {\it x}}{@ {\it x}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
403
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
404 \section{Motion Commands}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
405
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
406 \key{go backward one character}{h}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
407 \key{go forward one character}{l}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
408 \key{next line keeping the column}{j}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
409 \key{previous line keeping the column}{k}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
410 \key{next line at first non-white}{+}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
411 \key{previous line at first non-white}{-}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
412
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
413 \key{beginning of line}{0}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
414 \key{first non-white on line}{^}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
415 \key{end of line}{\$}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
416 \key{go to {\it n}-th column on line}{{\it n} |}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
417
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
418 \key{go to {\it n}-th line}{{\it n} G}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
419 \key{go to last line}{G}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
420 \key{find matching parenthesis for \kbd{()}, \kbd{\{\}} and \kbd{[]}}{\%}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
421
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
422 \key{go to {\bf home} window line}{H}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
423 \key{go to {\bf middle} window line}{M}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
424 \key{go to {\bf last} window line}{L}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
425
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
426 \subsection{Words, Sentences, Paragraphs}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
427
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
428 \key{forward {\bf word}}{w {\rm or} W}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
429 \key{{\bf backward} word}{b {\rm or} B}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
430 \key{{\bf end} of word}{e {\rm or} E}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
431
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
432 In the case of capital letter commands, a word is delimited by a
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
433 non-white character.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
434
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
435 \key{forward sentence}{)}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
436 \key{backward sentence}{(}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
437
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
438 \key{forward paragraph}{\}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
439 \key{backward paragraph}{\{}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
440
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
441 \subsection{Find Characters on the Line}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
442
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
443 \key{{\bf find} {\it c} forward on line}{f {\it c}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
444 \key{{\bf find} {\it c} backward on line}{F {\it c}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
445 \key{up {\bf to} {\it c} forward on line}{t {\it c}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
446 \key{up {\bf to} {\it c} backward on line}{T {\it c}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
447 \key{repeat previous \kbd{f}, \kbd{F}, \kbd{t} or \kbd{T}}{;}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
448 \key{... in the opposite direction}{,}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
449
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
450 \newcolumn
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
451 \title{VIP Quick Reference Card}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
452
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
453 \section{Searching and Replacing}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
454
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
455 \key{search forward for {\sl pat}}{/ {\sl pat}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
456 \key{search backward for {\sl pat}}{?\ {\sl pat}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
457 \key{repeat previous search}{n}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
458 \key{... in the opposite direction}{N}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
459
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
460 \key{incremental {\bf search}}{C-s}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
461 \key{{\bf reverse} incremental search}{C-r}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
462
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
463 \key{{\bf replace}}{R}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
464 \key{{\bf query} replace}{Q}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
465 \key{{\bf replace} a character by another character {\it c}}{r {\it c}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
466
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
467 \section{Modifying Commands}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
468
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
469 The delete (yank, change) commands explained below accept a motion command as
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
470 their argument and delete (yank, change) the region determined by the motion
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
471 command. Motion commands are classified into {\it point commands} and
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
472 {\it line commands}. In the case of line commands, whole lines will
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
473 be affected by the command. Motion commands will be represented by
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
474 {\it m} below.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
475
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
476 The point commands are as follows:
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
477
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
478 \hskip 5ex
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
479 \kbd{h l 0 ^ \$ w W b B e E ( ) / ?\ ` f F t T \% ; ,}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
480
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
481 The line commands are as follows:
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
482
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
483 \hskip 5ex
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
484 \kbd{j k + - H M L \{ \} G '}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
485
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
486 \subsection{Delete/Yank/Change Commands}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
487
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
488 \paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\tabskip=0pt&#\cr
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
489 \fourcol{}{{\bf delete}}{{\bf yank}}{{\bf change}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
490 \fourcol{region determined by {\it m}}{d {\it m}}{y {\it m}}{c {\it m}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
491 \fourcol{... into register {\it x}}{" {\it x\/} d {\it m}}{" {\it x\/} y {\it m}}{" {\it x\/} c {\it m}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
492 \fourcol{a line}{d d}{Y {\rm or} y y}{c c}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
493 \fourcol{current {\bf region}}{d r}{y r}{c r}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
494 \fourcol{expanded {\bf region}}{d R}{y R}{c R}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
495 \fourcol{to end of line}{D}{y \$}{c \$}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
496 \fourcol{a character after point}{x}{y l}{c l}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
497 \fourcol{a character before point}{DEL}{y h}{c h}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
498 }
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
499
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
500 \subsection{Put Back Commands}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
501
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
502 Deleted/yanked/changed text can be put back by the following commands.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
503
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
504 \key{{\bf Put} back at point/above line}{P}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
505 \key{... from register {\it x}}{" {\it x\/} P}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
506 \key{{\bf put} back after point/below line}{p}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
507 \key{... from register {\it x}}{" {\it x\/} p}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
508
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
509 \subsection{Repeating and Undoing Modifications}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
510
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
511 \key{{\bf undo} last change}{u {\rm or} :und}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
512 \key{repeat last change}{.\ {\rm (dot)}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
513
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
514 Undo is undoable by \kbd{u} and repeatable by \kbd{.}.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
515 For example, \kbd{u...} will undo 4 previous changes.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
516 A \kbd{.} after \kbd{5dd} is equivalent to \kbd{5dd},
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
517 while \kbd{3.} after \kbd{5dd} is equivalent to \kbd{3dd}.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
518
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
519 \section{Miscellaneous Commands}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
520
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
521 \endindentedkeys
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
522
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
523 \paralign to \hsize{#\tabskip=5pt plus 1 fil&#\tabskip=0pt&#\tabskip=0pt&#\tabskip=0pt&#\cr
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
524 \fivecol{}{{\bf shift left}}{{\bf shift right}}{{\bf filter shell command}}{{\bf indent}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
525 \fivecol{region}{< {\it m}}{> {\it m}}{!\ {\it m\/} {\sl shell-com}}{= {\it m}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
526 \fivecol{line}{< <}{> >}{!\ !\ {\sl shell-com}}{= =}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
527 }
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
528
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
529 \key{emulate \kbd{ESC}/\kbd{C-h} in emacs mode}{ESC{\rm /}C-h}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
530 \key{emulate \kbd{C-c}/\kbd{C-x} in emacs mode}{C{\rm /}X}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
531
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
532 \key{{\bf join} lines}{J}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
533
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
534 \key{lowercase region}{\# c {\it m}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
535 \key{uppercase region}{\# C {\it m}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
536 \key{execute last keyboard macro on each line in the region}{\# g {\it m}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
537
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
538 \key{insert specified string for each line in the region}{\# q {\it m}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
539 \key{check spelling of the words in the region}{\# s {\it m}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
540
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
541 \section{Differences from Vi}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
542
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
543 \beginindentedkeys
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
544
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
545 In VIP some keys behave rather differently from Vi.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
546 The table below lists such keys, and you can get the effect of typing
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
547 these keys by typing the corresponding keys in the VIP column.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
548
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
549 \paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
550 \threecol{}{{\bf Vi}}{{\bf VIP}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
551 \threecol{forward character}{SPC}{l}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
552 \threecol{backward character}{C-h}{h}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
553 \threecol{next line at first non-white}{RET}{+}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
554 \threecol{delete previous character}{X}{DEL}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
555 \threecol{get information on file}{C-g}{g}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
556 \threecol{substitute characters}{s}{x i}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
557 \threecol{substitute line}{S}{c c}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
558 \threecol{change to end of line}{C {\rm or} R}{c \$}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
559 }
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
560
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
561 (Strictly speaking, \kbd{C} and \kbd{R} behave slightly differently in Vi.)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
562
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
563 \section{Customization}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
564
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
565 By default, search is case sensitive.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
566 You can change this by including the following line in your \kbd{.vip} file.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
567
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
568 \hskip 5ex
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
569 \kbd{(setq vip-case-fold-search t)}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
570
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
571 \beginindentedkeys
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
572
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
573 \paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
574 \twocol{{\bf variable}}{{\bf default value}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
575 \twocol{vip-search-wrap-around}{t}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
576 \twocol{vip-case-fold-search}{nil}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
577 \twocol{vip-re-search}{nil}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
578 \twocol{vip-re-replace}{nil}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
579 \twocol{vip-re-query-replace}{nil}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
580 \twocol{vip-open-with-indent}{nil}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
581 \twocol{vip-help-in-insert-mode}{nil}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
582 \twocol{vip-shift-width}{8}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
583 \twocol{vip-tags-file-name}{"TAGS"}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
584 }
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
585
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
586 %\subsection{Customizing Key Bindings}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
587
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
588 Include (some of) following lines in your \kbd{.vip} file
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
589 to restore Vi key bindings.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
590
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
591 \beginexample
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
592 (define-key vip-mode-map "\\C-g" 'vip-info-on-file)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
593 (define-key vip-mode-map "\\C-h" 'vip-backward-char)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
594 (define-key vip-mode-map "\\C-m" 'vip-next-line-at-bol)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
595 (define-key vip-mode-map " " 'vip-forward-char)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
596 (define-key vip-mode-map "g" 'vip-keyboard-quit)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
597 (define-key vip-mode-map "s" 'vip-substitute)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
598 (define-key vip-mode-map "C" 'vip-change-to-eol)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
599 (define-key vip-mode-map "R" 'vip-change-to-eol)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
600 (define-key vip-mode-map "S" 'vip-substitute-line)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
601 (define-key vip-mode-map "X" 'vip-delete-backward-char)
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
602 \endexample
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
603
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
604 \newcolumn
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
605
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
606 \title{Ex Commands in VIP}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
607
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
608 In vi mode, an Ex command is entered by typing:
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
609
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
610 \hskip 5ex
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
611 \kbd{:\ {\sl ex-command} RET}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
612
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
613 \section{Ex Addresses}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
614
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
615 \paralign to \hsize{#\tabskip=5pt plus 1 fil&#\tabskip=2pt&#\tabskip=5pt plus 1 fil&#\cr
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
616 \twocolkey{current line}{.}{next line with {\sl pat}}{/ {\sl pat} /}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
617 \twocolkey{line {\it n}}{{\it n}}{previous line with {\sl pat}}{?\ {\sl pat} ?}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
618 \twocolkey{last line}{\$}{{\it n\/} line before {\it a}}{{\it a} - {\it n}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
619 \twocolkey{next line}{+}{{\it a\/} through {\it b}}{{\it a\/} , {\it b}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
620 \twocolkey{previous line}{-}{line marked with {\it x}}{' {\it x}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
621 \twocolkey{entire buffer}{\%}{previous context}{' '}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
622 }
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
623
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
624 Addresses can be specified in front of a command.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
625 For example,
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
626
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
627 \hskip 5ex
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
628 \kbd{:.,.+10m\$}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
629
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
630 moves 11 lines below current line to the end of buffer.
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
631
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
632 \section{Ex Commands}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
633
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
634 \endindentedkeys
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
635
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
636 \key{mark lines matching {\sl pat} and execute {\sl cmds} on these lines}{:g /{\sl pat}/ {\sl cmds}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
637
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
638 \key{mark lines {\it not\/} matching {\sl pat} and execute {\sl cmds} on these lines}{:v /{\sl pat}/ {\sl cmds}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
639
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
640
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
641 \key{{\bf move} specified lines after {\sl addr}}{:m {\sl addr}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
642 \key{{\bf copy} specified lines after {\sl addr}}{:co\rm\ (or \kbd{:t})\ \sl addr}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
643 \key{{\bf delete} specified lines [into register {\it x\/}]}{:d {\rm [{\it x\/}]}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
644 \key{{\bf yank} specified lines [into register {\it x\/}]}{:y {\rm [{\it x\/}]}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
645 \key{{\bf put} back text [from register {\it x\/}]}{:pu {\rm [{\it x\/}]}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
646
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
647 \key{{\bf substitute} {\sl repl} for first string on line matching {\sl pat}}{:s /{\sl pat}/{\sl repl}/}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
648
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
649 \key{repeat last substitution}{:\&}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
650 \key{repeat previous substitute with previous search pattern as {\sl pat}}{:\~{}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
651
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
652 \key{{\bf read} in a file}{:r {\sl file}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
653 \key{{\bf read} in the output of a shell command}{:r!\ {\sl command}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
654 \key{write out specified lines into {\sl file}}{:w {\sl file}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
655 \key{write out specified lines at the end of {\sl file}}{:w>> {\sl file}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
656 \key{write out and then quit}{:wq {\sl file}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
657
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
658 \key{define a macro {\it x} that expands to {\sl cmd}}{:map {\it x} {\sl cmd}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
659 \key{remove macro expansion associated with {\it x}}{:unma {\it x}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
660
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
661 \key{print line number}{:=}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
662 \key{print {\bf version} number of VIP}{:ve}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
663
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
664 \key{shift specified lines to the right}{:>}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
665 \key{shift specified lines to the left}{:<}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
666
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
667 \key{{\bf join} lines}{:j}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
668 \key{mark specified line to register {\it x}}{:k {\it x}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
669 \key{{\bf set} a variable's value}{:se}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
670 \key{run a sub{\bf shell} in a window}{:sh}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
671 \key{execute shell command {\sl command}}{:!\ {\sl command}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
672 \key{find first definition of {\bf tag} {\sl tag}}{:ta {\sl tag}}
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
673
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
674
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
675 \copyrightnotice
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
676
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
677 \bye
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
678
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
679 % Local variables:
82879
0eda42555bbf Specify PDF layout, use a PDF `compile-command' local variable.
Michaël Cadilhac <michael.cadilhac@lrde.org>
parents: 82680
diff changeset
680 % compile-command: "pdftex vipcard"
82680
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
681 % End:
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
682
bea1e4690e03 Move refcards from etc/ to etc/refcards/
Glenn Morris <rgm@gnu.org>
parents:
diff changeset
683 % arch-tag: 342a9548-4de4-499d-b864-74fb426b6729