307 |
|
|
308 |
<p>Viper facilitates the use of Emacs-style keyboard macros. <kbd>@#</kbd> will |
<p>Viper facilitates the use of Emacs-style keyboard macros. <kbd>@#</kbd> will |
309 |
start a macro definition. As you type, the commands will be executed, and |
start a macro definition. As you type, the commands will be executed, and |
310 |
remembered (This is called "learn mode" in some editors.) |
remembered (This is called “learn mode” in some editors.) |
311 |
<kbd>@register</kbd> will complete the macro, putting it into <samp>`register'</samp>, |
<kbd>@register</kbd> will complete the macro, putting it into <samp>`register'</samp>, |
312 |
where <samp>`register'</samp> is any character from <samp>`a'</samp> through <samp>`z'</samp>. Then |
where <samp>`register'</samp> is any character from <samp>`a'</samp> through <samp>`z'</samp>. Then |
313 |
you can execute this macro using <kbd>@register</kbd>. It is, of course, |
you can execute this macro using <kbd>@register</kbd>. It is, of course, |
510 |
<h2 class="section"> 2.8 Movement and Markers </h2> |
<h2 class="section"> 2.8 Movement and Markers </h2> |
511 |
|
|
512 |
|
|
513 |
<p>Viper can be set free from the line-limited movements in Vi, such as <kbd>l</kbd> |
<p>Viper can be set free from the line–limited movements in Vi, such as <kbd>l</kbd> |
514 |
refusing to move beyond the line, <kbd>ESC</kbd> moving one character back, |
refusing to move beyond the line, <kbd>ESC</kbd> moving one character back, |
515 |
etc. These derive from Ex, which is a line editor. If your <tt>`.viper'</tt> |
etc. These derive from Ex, which is a line editor. If your <tt>`.viper'</tt> |
516 |
contains |
contains |