Mercurial > emacs
comparison doc/misc/vip.texi @ 109264:f1266b2f017e
Untabify doc/misc/*.texi.
* autotype.texi, cl.texi, dired-x.texi, ebrowse.texi, ede.texi:
* eieio.texi, faq.texi, flymake.texi, forms.texi, gnus-faq.texi:
* idlwave.texi, mh-e.texi, org.texi, pcl-cvs.texi, pgg.texi:
* reftex.texi, sasl.texi, sc.texi, sem-user.texi, semantic.texi:
* sieve.texi, smtpmail.texi, speedbar.texi, vip.texi, viper.texi:
* widget.texi: Untabify (except for examples).
author | Glenn Morris <rgm@gnu.org> |
---|---|
date | Tue, 22 Jun 2010 19:57:26 -0700 |
parents | 1d1d5d9bd884 |
children | 376148b31b5e |
comparison
equal
deleted
inserted
replaced
109263:68ee92c6bfee | 109264:f1266b2f017e |
---|---|
1 \input texinfo | 1 \input texinfo |
2 @setfilename ../../info/vip | 2 @setfilename ../../info/vip |
3 @settitle VIP | 3 @settitle VIP |
4 | 4 |
5 @copying | 5 @copying |
6 Copyright @copyright{} 1987, 2001, 2002, 2003, 2004, | 6 Copyright @copyright{} 1987, 2001, 2002, 2003, 2004, 2005, 2006, 2007, |
7 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. | 7 2008, 2009, 2010 Free Software Foundation, Inc. |
8 | 8 |
9 @quotation | 9 @quotation |
10 Permission is granted to copy, distribute and/or modify this document | 10 Permission is granted to copy, distribute and/or modify this document |
11 under the terms of the GNU Free Documentation License, Version 1.3 or | 11 under the terms of the GNU Free Documentation License, Version 1.3 or |
12 any later version published by the Free Software Foundation; with no | 12 any later version published by the Free Software Foundation; with no |
36 @finalout | 36 @finalout |
37 @contents | 37 @contents |
38 | 38 |
39 @dircategory Emacs | 39 @dircategory Emacs |
40 @direntry | 40 @direntry |
41 * VIP: (vip). An older VI-emulation for Emacs. | 41 * VIP: (vip). An older VI-emulation for Emacs. |
42 @end direntry | 42 @end direntry |
43 | 43 |
44 @ifnottex | 44 @ifnottex |
45 @node Top, Survey,, (DIR) | 45 @node Top, Survey,, (DIR) |
46 @top VIP | 46 @top VIP |
63 @insertcopying | 63 @insertcopying |
64 | 64 |
65 @end ifnottex | 65 @end ifnottex |
66 | 66 |
67 @menu | 67 @menu |
68 * Survey:: A survey of VIP. | 68 * Survey:: A survey of VIP. |
69 * Vi Commands:: Details of Vi commands. | 69 * Vi Commands:: Details of Vi commands. |
70 * Ex Commands:: Details of Ex commands. | 70 * Ex Commands:: Details of Ex commands. |
71 * Customization:: How to customize VIP. | 71 * Customization:: How to customize VIP. |
72 * GNU Free Documentation License:: The license for this documentation. | 72 * GNU Free Documentation License:: The license for this documentation. |
73 | 73 |
74 @end menu | 74 @end menu |
75 @iftex | 75 @iftex |
76 @unnumbered Introduction | 76 @unnumbered Introduction |
97 | 97 |
98 In this chapter we describe basics of VIP with emphasis on the features not | 98 In this chapter we describe basics of VIP with emphasis on the features not |
99 found in Vi and on how to use VIP under GNU Emacs. | 99 found in Vi and on how to use VIP under GNU Emacs. |
100 | 100 |
101 @menu | 101 @menu |
102 * Basic Concepts:: Basic concepts in Emacs. | 102 * Basic Concepts:: Basic concepts in Emacs. |
103 * Loading VIP:: How to load VIP automatically. | 103 * Loading VIP:: How to load VIP automatically. |
104 * Modes in VIP:: VIP has three modes, which are orthogonal to modes | 104 * Modes in VIP:: VIP has three modes, which are orthogonal to modes |
105 in Emacs. | 105 in Emacs. |
106 * Differences from Vi:: Differences of VIP from Vi is explained. | 106 * Differences from Vi:: Differences of VIP from Vi is explained. |
107 @end menu | 107 @end menu |
108 | 108 |
109 @node Basic Concepts, Loading VIP, Survey, Survey | 109 @node Basic Concepts, Loading VIP, Survey, Survey |
110 @section Basic Concepts | 110 @section Basic Concepts |
251 <== X-z === <=== ESC ==== | 251 <== X-z === <=== ESC ==== |
252 @end display | 252 @end display |
253 @end ifinfo | 253 @end ifinfo |
254 | 254 |
255 @menu | 255 @menu |
256 * Emacs Mode:: This is the mode you should know better. | 256 * Emacs Mode:: This is the mode you should know better. |
257 * Vi Mode:: Vi commands are executed in this mode. | 257 * Vi Mode:: Vi commands are executed in this mode. |
258 * Insert Mode:: You can enter text, and also can do editing if you | 258 * Insert Mode:: You can enter text, and also can do editing if you |
259 know enough Emacs commands. | 259 know enough Emacs commands. |
260 @end menu | 260 @end menu |
261 | 261 |
262 @node Emacs Mode, Vi Mode, Modes in VIP, Modes in VIP | 262 @node Emacs Mode, Vi Mode, Modes in VIP, Modes in VIP |
263 @subsection Emacs Mode | 263 @subsection Emacs Mode |
264 | 264 |
304 @section Differences from Vi | 304 @section Differences from Vi |
305 | 305 |
306 The major differences from Vi are explained below. | 306 The major differences from Vi are explained below. |
307 | 307 |
308 @menu | 308 @menu |
309 * Undoing:: You can undo more in VIP. | 309 * Undoing:: You can undo more in VIP. |
310 * Changing:: Commands for changing the text. | 310 * Changing:: Commands for changing the text. |
311 * Searching:: Search commands. | 311 * Searching:: Search commands. |
312 * z Command:: You can now use zH, zM and zL as well as z- etc. | 312 * z Command:: You can now use zH, zM and zL as well as z- etc. |
313 * Counts:: Some Vi commands which do not accept a count now | 313 * Counts:: Some Vi commands which do not accept a count now |
314 accept one. | 314 accept one. |
315 * Marking:: You can now mark the current point, beginning of | 315 * Marking:: You can now mark the current point, beginning of |
316 the buffer etc. | 316 the buffer etc. |
317 * Region Commands:: You can now give a region as an argument for delete | 317 * Region Commands:: You can now give a region as an argument for delete |
318 commands etc. | 318 commands etc. |
319 * New Commands:: Some new commands not available in Vi are added. | 319 * New Commands:: Some new commands not available in Vi are added. |
320 * New Bindings:: Bindings of some keys are changed for the | 320 * New Bindings:: Bindings of some keys are changed for the |
321 convenience of editing under Emacs. | 321 convenience of editing under Emacs. |
322 * Window Commands:: Commands for moving among windows etc. | 322 * Window Commands:: Commands for moving among windows etc. |
323 * Buffer Commands:: Commands for selecting buffers etc. | 323 * Buffer Commands:: Commands for selecting buffers etc. |
324 * File Commands:: Commands for visiting files etc. | 324 * File Commands:: Commands for visiting files etc. |
325 * Misc Commands:: Other useful commands. | 325 * Misc Commands:: Other useful commands. |
326 @end menu | 326 @end menu |
327 | 327 |
328 @node Undoing, Changing, Differences from Vi, Differences from Vi | 328 @node Undoing, Changing, Differences from Vi, Differences from Vi |
329 @subsection Undoing | 329 @subsection Undoing |
330 | 330 |
691 This chapter describes Vi commands other than Ex commands implemented in | 691 This chapter describes Vi commands other than Ex commands implemented in |
692 VIP. Except for the last section which discusses insert mode, all the | 692 VIP. Except for the last section which discusses insert mode, all the |
693 commands described in this chapter are to be used in vi mode. | 693 commands described in this chapter are to be used in vi mode. |
694 | 694 |
695 @menu | 695 @menu |
696 * Numeric Arguments:: Many commands accept numeric arguments | 696 * Numeric Arguments:: Many commands accept numeric arguments |
697 * Important Keys:: Some very important keys. | 697 * Important Keys:: Some very important keys. |
698 * Buffers and Windows:: Commands for handling buffers and windows. | 698 * Buffers and Windows:: Commands for handling buffers and windows. |
699 * Files:: Commands for handling files. | 699 * Files:: Commands for handling files. |
700 * Viewing the Buffer:: How you can view the current buffer. | 700 * Viewing the Buffer:: How you can view the current buffer. |
701 * Mark Commands:: Marking positions in a buffer. | 701 * Mark Commands:: Marking positions in a buffer. |
702 * Motion Commands:: Commands for moving point. | 702 * Motion Commands:: Commands for moving point. |
703 * Searching and Replacing:: Commands for searching and replacing. | 703 * Searching and Replacing:: Commands for searching and replacing. |
704 * Modifying Commands:: Commands for modifying the buffer. | 704 * Modifying Commands:: Commands for modifying the buffer. |
705 * Other Vi Commands:: Miscellaneous Commands. | 705 * Other Vi Commands:: Miscellaneous Commands. |
706 * Commands in Insert Mode:: Commands for entering insert mode. | 706 * Commands in Insert Mode:: Commands for entering insert mode. |
707 @end menu | 707 @end menu |
708 | 708 |
709 @node Numeric Arguments, Important Keys, Vi Commands, Vi Commands | 709 @node Numeric Arguments, Important Keys, Vi Commands, Vi Commands |
710 @section Numeric Arguments | 710 @section Numeric Arguments |
711 | 711 |
1263 toggle these modes by giving a null string as @var{string}. If the mode is | 1263 toggle these modes by giving a null string as @var{string}. If the mode is |
1264 vanilla, this command replaces every occurrence of @var{string} with | 1264 vanilla, this command replaces every occurrence of @var{string} with |
1265 @var{newstring}. If the mode is regular expression, @var{string} is | 1265 @var{newstring}. If the mode is regular expression, @var{string} is |
1266 treated as a regular expression and every string matching the regular | 1266 treated as a regular expression and every string matching the regular |
1267 expression is replaced with @var{newstring} (@code{vip-replace-string}). | 1267 expression is replaced with @var{newstring} (@code{vip-replace-string}). |
1268 @item Q @var{string} RET @var{newstring} | 1268 @item Q @var{string} RET @var{newstring} |
1269 @kindex 121 @kbd{Q} (@code{vip-query-replace}) | 1269 @kindex 121 @kbd{Q} (@code{vip-query-replace}) |
1270 Same as @kbd{R} except that you will be asked form confirmation before each | 1270 Same as @kbd{R} except that you will be asked form confirmation before each |
1271 replacement | 1271 replacement |
1272 @*(@code{vip-query-replace}). | 1272 @*(@code{vip-query-replace}). |
1273 @item r @var{ch} | 1273 @item r @var{ch} |
1309 region and consisting of whole lines (we call this process @dfn{expanding | 1309 region and consisting of whole lines (we call this process @dfn{expanding |
1310 the region}), and then the enlarged region will be affected by the modifying | 1310 the region}), and then the enlarged region will be affected by the modifying |
1311 command. | 1311 command. |
1312 | 1312 |
1313 @menu | 1313 @menu |
1314 * Delete Commands:: Commands for deleting text. | 1314 * Delete Commands:: Commands for deleting text. |
1315 * Yank Commands:: Commands for yanking text in Vi's sense. | 1315 * Yank Commands:: Commands for yanking text in Vi's sense. |
1316 * Put Back Commands:: Commands for putting back deleted/yanked text. | 1316 * Put Back Commands:: Commands for putting back deleted/yanked text. |
1317 * Change Commands:: Commands for changing text. | 1317 * Change Commands:: Commands for changing text. |
1318 * Repeating and Undoing Modifications:: | 1318 * Repeating and Undoing Modifications:: |
1319 @end menu | 1319 @end menu |
1320 @node Delete Commands, Yank Commands, Modifying Commands, Modifying Commands | 1320 @node Delete Commands, Yank Commands, Modifying Commands, Modifying Commands |
1321 @subsection Delete Commands | 1321 @subsection Delete Commands |
1322 | 1322 |
1711 | 1711 |
1712 Several Ex commands can be entered in a line by separating them by a pipe | 1712 Several Ex commands can be entered in a line by separating them by a pipe |
1713 character @samp{|}. | 1713 character @samp{|}. |
1714 | 1714 |
1715 @menu | 1715 @menu |
1716 * Ex Command Reference:: Explain all the Ex commands available in VIP. | 1716 * Ex Command Reference:: Explain all the Ex commands available in VIP. |
1717 @end menu | 1717 @end menu |
1718 @node Ex Command Reference, Customization, Ex Commands, Ex Commands | 1718 @node Ex Command Reference, Customization, Ex Commands, Ex Commands |
1719 @section Ex Command Reference | 1719 @section Ex Command Reference |
1720 In this section we briefly explain all the Ex commands supported by VIP. | 1720 In this section we briefly explain all the Ex commands supported by VIP. |
1721 Most Ex commands expect @var{address} as their argument, and they use | 1721 Most Ex commands expect @var{address} as their argument, and they use |
1867 If you have a file called @file{.vip} in your home directory, then it | 1867 If you have a file called @file{.vip} in your home directory, then it |
1868 will also be loaded when VIP is loaded. This file is thus useful for | 1868 will also be loaded when VIP is loaded. This file is thus useful for |
1869 customizing VIP. | 1869 customizing VIP. |
1870 | 1870 |
1871 @menu | 1871 @menu |
1872 * Customizing Constants:: How to change values of constants. | 1872 * Customizing Constants:: How to change values of constants. |
1873 * Customizing Key Bindings:: How to change key bindings. | 1873 * Customizing Key Bindings:: How to change key bindings. |
1874 @end menu | 1874 @end menu |
1875 | 1875 |
1876 @node Customizing Constants, Customizing Key Bindings, Customization, Customization | 1876 @node Customizing Constants, Customizing Key Bindings, Customization, Customization |
1877 @section Customizing Constants | 1877 @section Customizing Constants |
1878 An easy way to customize VIP is to change the values of constants used | 1878 An easy way to customize VIP is to change the values of constants used |