From 9ff0b02b3a91a32c76a99a984f5d48cd77efa561 Mon Sep 17 00:00:00 2001 From: Michael Kifer Date: Sat, 15 Aug 2009 06:00:38 +0000 Subject: [PATCH] 2009-08-15 Michael Kifer * ediff.texi (ediff-current-file): added information about this new function. * viper.text: Added information about C-s in viper's search command. --- doc/misc/ChangeLog | 6 ++ doc/misc/ediff.texi | 202 +++++++++++++++++++++++--------------------- doc/misc/viper.texi | 71 ++++++++++------ 3 files changed, 154 insertions(+), 125 deletions(-) diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog index e0fbe26417..6722fbd470 100644 --- a/doc/misc/ChangeLog +++ b/doc/misc/ChangeLog @@ -1,3 +1,9 @@ +2009-08-15 Michael Kifer + + * ediff.texi (ediff-current-file): added information about this new function. + + * viper.text: Added information about C-s in viper's search command. + 2009-08-09 Colin Williams (tiny change) * calc.texi (Date Forms): Fix typos. diff --git a/doc/misc/ediff.texi b/doc/misc/ediff.texi index 80540ea19e..53259f9bbf 100644 --- a/doc/misc/ediff.texi +++ b/doc/misc/ediff.texi @@ -158,6 +158,11 @@ Compare a file with its backup. If there are several numerical backups, use the latest. If the file is itself a backup, then compare it with its original. +@item ediff-current-file +@findex ediff-current-file +Compare the buffer with its file on disk. This function can be used as a +safe version of @code{revert-buffer}. + @item ediff-buffers @findex ediff-buffers Compare two buffers. @@ -2425,104 +2430,105 @@ Without them, Ediff would not be nearly as useful as it is today. Here is a hopefully full list of contributors: @example -Adrian Aichner (aichner@@ecf.teradyne.com), -Drew Adams (drew.adams@@oracle.com), -Steve Baur (steve@@xemacs.org), -Neal Becker (neal@@ctd.comsat.com), -E.@: Jay Berkenbilt (ejb@@ql.org), -Alastair Burt (burt@@dfki.uni-kl.de), -Paul Bibilo (peb@@delcam.co.uk), -Kevin Broadey (KevinB@@bartley.demon.co.uk), -Harald Boegeholz (hwb@@machnix.mathematik.uni-stuttgart.de), -Bradley A.@: Bosch (brad@@lachman.com), -Michael D.@: Carney (carney@@ltx-tr.com), -Jin S.@: Choi (jin@@atype.com), -Scott Cummings (cummings@@adc.com), -Albert Dvornik (bert@@mit.edu), -Eric Eide (eeide@@asylum.cs.utah.edu), -Paul Eggert (eggert@@twinsun.com), -Urban Engberg (ue@@cci.dk), -Kevin Esler (esler@@ch.hp.com), -Robert Estes (estes@@ece.ucdavis.edu), -Jay Finger (jayf@@microsoft.com), -Xavier Fornari (xavier@@europe.cma.fr), -Eric Freudenthal (freudent@@jan.ultra.nyu.edu), -Job Ganzevoort (Job.Ganzevoort@@cwi.nl), -Felix Heinrich Gatzemeier (felix.g@@tzemeier.info), -Boris Goldowsky (boris@@cs.rochester.edu), -Allan Gottlieb (gottlieb@@allan.ultra.nyu.edu), -Aaron Gross (aaron@@bfr.co.il), -Thorbjoern Hansen (thorbjoern.hansen@@mchp.siemens.de), -Marcus Harnisch (marcus_harnisch@@mint-tech.com), -Steven E. Harris (seh@@panix.com), -Aaron S. Hawley (Aaron.Hawley@@uvm.edu), -Xiaoli Huang (hxl@@epic.com), -Andreas Jaeger (aj@@suse.de), -Lars Magne Ingebrigtsen (larsi@@ifi.uio.no), -Larry Gouge (larry@@itginc.com), -Karl Heuer (kwzh@@gnu.org), -(irvine@@lks.csi.com), -(jaffe@@chipmunk.cita.utoronto.ca), -David Karr (dkarr@@nmo.gtegsc.com), -Norbert Kiesel (norbert@@i3.informatik.rwth-aachen.de), -Steffen Kilb (skilb@@gmx.net), -Leigh L Klotz (klotz@@adoc.xerox.com), -Fritz Knabe (Fritz.Knabe@@ecrc.de), -Heinz Knutzen (hk@@informatik.uni-kiel.d400.de), -Andrew Koenig (ark@@research.att.com), -Hannu Koivisto (azure@@iki.fi), -Ken Laprade (laprade@@dw3f.ess.harris.com), -Will C Lauer (wcl@@cadre.com), -Richard Levitte (levitte@@e.kth.se), -Mike Long (mike.long@@analog.com), -Dave Love (d.love@@dl.ac.uk), -Martin Maechler (maechler@@stat.math.ethz.ch), -Simon Marshall (simon@@gnu.org), -Paul C. Meuse (pmeuse@@delcomsys.com), -Richard Mlynarik (mly@@adoc.xerox.com), -Stefan Monnier (monnier@@cs.yale.edu), -Chris Murphy (murphycm@@sun.aston.ac.uk), -Erik Naggum (erik@@naggum.no), -Eyvind Ness (Eyvind.Ness@@hrp.no), -Ray Nickson (nickson@@cs.uq.oz.au), -Dan Nicolaescu (dann@@ics.uci.edu), -David Petchey (petchey_david@@jpmorgan.com), -Benjamin Pierce (benjamin.pierce@@cl.cam.ac.uk), -Francois Pinard (pinard@@iro.umontreal.ca), -Tibor Polgar (tlp00@@spg.amdahl.com), -David Prince (dave0d@@fegs.co.uk), -Paul Raines (raines@@slac.stanford.edu), -Stefan Reicher (xsteve@@riic.at), -Charles Rich (rich@@merl.com), -Bill Richter (richter@@math.nwu.edu), -C.S.@: Roberson (roberson@@aur.alcatel.com), -Kevin Rodgers (kevin.rodgers@@ihs.com), -Sandy Rutherford (sandy@@ibm550.sissa.it), -Heribert Schuetz (schuetz@@ecrc.de), -Andy Scott (ascott@@pcocd2.intel.com), -Axel Seibert (axel@@tumbolia.ppp.informatik.uni-muenchen.de), -Vin Shelton (acs@@xemacs.org), -Scott O. Sherman (Scott.Sherman@@mci.com), -Nikolaj Schumacher (n_schumacher@@web.de), -Richard Stallman (rms@@gnu.org), -Richard Stanton (stanton@@haas.berkeley.edu), -Sam Steingold (sds@@goems.com), -Ake Stenhoff (etxaksf@@aom.ericsson.se), -Stig (stig@@hackvan.com), -Peter Stout (Peter_Stout@@cs.cmu.edu), -Chuck Thompson (cthomp@@cs.uiuc.edu), -Ray Tomlinson (tomlinso@@bbn.com), -Raymond Toy (toy@@rtp.ericsson.se), -Stephen J. Turnbull (stephen@@xemacs.org), -Jan Vroonhof (vroonhof@@math.ethz.ch), -Colin Walters (walters@@cis.ohio-state.edu), -Philippe Waroquiers (philippe.waroquiers@@eurocontrol.be), -Klaus Weber (gizmo@@zork.north.de), -Ben Wing (ben@@xemacs.org), -Tom Wurgler (twurgler@@goodyear.com), -Steve Youngs (youngs@@xemacs.org), -Ilya Zakharevich (ilya@@math.ohio-state.edu), -Eli Zaretskii (eliz@@is.elta.co.il) +Adrian Aichner (aichner at ecf.teradyne.com), +Drew Adams (drew.adams at oracle.com), +Steve Baur (steve at xemacs.org), +Neal Becker (neal at ctd.comsat.com), +E.@: Jay Berkenbilt (ejb at ql.org), +Lennart Borgman (ennart.borgman at gmail.com) +Alastair Burt (burt at dfki.uni-kl.de), +Paul Bibilo (peb at delcam.co.uk), +Kevin Broadey (KevinB at bartley.demon.co.uk), +Harald Boegeholz (hwb at machnix.mathematik.uni-stuttgart.de), +Bradley A.@: Bosch (brad at lachman.com), +Michael D.@: Carney (carney at ltx-tr.com), +Jin S.@: Choi (jin at atype.com), +Scott Cummings (cummings at adc.com), +Albert Dvornik (bert at mit.edu), +Eric Eide (eeide at asylum.cs.utah.edu), +Paul Eggert (eggert at twinsun.com), +Urban Engberg (ue at cci.dk), +Kevin Esler (esler at ch.hp.com), +Robert Estes (estes at ece.ucdavis.edu), +Jay Finger (jayf at microsoft.com), +Xavier Fornari (xavier at europe.cma.fr), +Eric Freudenthal (freudent at jan.ultra.nyu.edu), +Job Ganzevoort (Job.Ganzevoort at cwi.nl), +Felix Heinrich Gatzemeier (felix.g at tzemeier.info), +Boris Goldowsky (boris at cs.rochester.edu), +Allan Gottlieb (gottlieb at allan.ultra.nyu.edu), +Aaron Gross (aaron at bfr.co.il), +Thorbjoern Hansen (thorbjoern.hansen at mchp.siemens.de), +Marcus Harnisch (marcus_harnisch at mint-tech.com), +Steven E. Harris (seh at panix.com), +Aaron S. Hawley (Aaron.Hawley at uvm.edu), +Xiaoli Huang (hxl at epic.com), +Andreas Jaeger (aj at suse.de), +Lars Magne Ingebrigtsen (larsi at ifi.uio.no), +Larry Gouge (larry at itginc.com), +Karl Heuer (kwzh at gnu.org), +(irvine at lks.csi.com), +(jaffe at chipmunk.cita.utoronto.ca), +David Karr (dkarr at nmo.gtegsc.com), +Norbert Kiesel (norbert at i3.informatik.rwth-aachen.de), +Steffen Kilb (skilb at gmx.net), +Leigh L Klotz (klotz at adoc.xerox.com), +Fritz Knabe (Fritz.Knabe at ecrc.de), +Heinz Knutzen (hk at informatik.uni-kiel.d400.de), +Andrew Koenig (ark at research.att.com), +Hannu Koivisto (azure at iki.fi), +Ken Laprade (laprade at dw3f.ess.harris.com), +Will C Lauer (wcl at cadre.com), +Richard Levitte (levitte at e.kth.se), +Mike Long (mike.long at analog.com), +Dave Love (d.love at dl.ac.uk), +Martin Maechler (maechler at stat.math.ethz.ch), +Simon Marshall (simon at gnu.org), +Paul C. Meuse (pmeuse at delcomsys.com), +Richard Mlynarik (mly at adoc.xerox.com), +Stefan Monnier (monnier at cs.yale.edu), +Chris Murphy (murphycm at sun.aston.ac.uk), +Erik Naggum (erik at naggum.no), +Eyvind Ness (Eyvind.Ness at hrp.no), +Ray Nickson (nickson at cs.uq.oz.au), +Dan Nicolaescu (dann at ics.uci.edu), +David Petchey (petchey_david at jpmorgan.com), +Benjamin Pierce (benjamin.pierce at cl.cam.ac.uk), +Francois Pinard (pinard at iro.umontreal.ca), +Tibor Polgar (tlp00 at spg.amdahl.com), +David Prince (dave0d at fegs.co.uk), +Paul Raines (raines at slac.stanford.edu), +Stefan Reicher (xsteve at riic.at), +Charles Rich (rich at merl.com), +Bill Richter (richter at math.nwu.edu), +C.S.@: Roberson (roberson at aur.alcatel.com), +Kevin Rodgers (kevin.rodgers at ihs.com), +Sandy Rutherford (sandy at ibm550.sissa.it), +Heribert Schuetz (schuetz at ecrc.de), +Andy Scott (ascott at pcocd2.intel.com), +Axel Seibert (axel at tumbolia.ppp.informatik.uni-muenchen.de), +Vin Shelton (acs at xemacs.org), +Scott O. Sherman (Scott.Sherman at mci.com), +Nikolaj Schumacher (n_schumacher at web.de), +Richard Stallman (rms at gnu.org), +Richard Stanton (stanton at haas.berkeley.edu), +Sam Steingold (sds at goems.com), +Ake Stenhoff (etxaksf at aom.ericsson.se), +Stig (stig at hackvan.com), +Peter Stout (Peter_Stout at cs.cmu.edu), +Chuck Thompson (cthomp at cs.uiuc.edu), +Ray Tomlinson (tomlinso at bbn.com), +Raymond Toy (toy at rtp.ericsson.se), +Stephen J. Turnbull (stephen at xemacs.org), +Jan Vroonhof (vroonhof at math.ethz.ch), +Colin Walters (walters at cis.ohio-state.edu), +Philippe Waroquiers (philippe.waroquiers at eurocontrol.be), +Klaus Weber (gizmo at zork.north.de), +Ben Wing (ben at xemacs.org), +Tom Wurgler (twurgler at goodyear.com), +Steve Youngs (youngs at xemacs.org), +Ilya Zakharevich (ilya at math.ohio-state.edu), +Eli Zaretskii (eliz at is.elta.co.il) @end example @node GNU Free Documentation License, Index, Credits, Top diff --git a/doc/misc/viper.texi b/doc/misc/viper.texi index 11f8f21466..bd1f2a7c0f 100644 --- a/doc/misc/viper.texi +++ b/doc/misc/viper.texi @@ -261,8 +261,8 @@ you see @samp{%%} at the beginning of the mode line, it means that the file associated with the buffer is write protected. The mode line will also show the buffer name and current major and minor modes (see below). A special buffer called @dfn{Minibuffer} is displayed as the last line -in a Minibuffer window. The Minibuffer window is used for command input -output. Viper uses Minibuffer window for @kbd{/} and @kbd{:} +in a minibuffer window. The minibuffer window is used for command input +output. Viper uses minibuffer window for @kbd{/} and @kbd{:} commands.@refill @cindex mode @@ -653,7 +653,7 @@ last history element is the default that can be invoked simply by typing easy to override valuable data in another file. Reconstructing the full command, @kbd{:w!@: foo}, from the history is still not that hard, since Viper has a separate history for file names. By typing @kbd{: M-p}, you will get -@kbd{:w!} in the Minibuffer. Then, repeated @kbd{M-p} will get you through +@kbd{:w!} in the minibuffer. Then, repeated @kbd{M-p} will get you through the file history, inserting one file name after another. In contrast to @kbd{:w!@: foo}, if the command were @kbd{:r foo}, the entire @@ -663,7 +663,7 @@ argument. @refill @end table @noindent -As Vi, Viper's destructive commands can be re-executed by typing `@kbd{.}'. +As in Vi, Viper's destructive commands can be re-executed by typing `@kbd{.}'. However, in addition, Viper keeps track of the history of such commands. This history can be perused by typing @kbd{C-c M-p} and @kbd{C-c M-n}. Having found the appropriate command, it can be then executed by typing @@ -767,7 +767,7 @@ region. @cindex Minibuffer -The Minibuffer is where commands are entered in. Editing can be done +The minibuffer is where commands are entered in. Editing can be done by commands from Insert state, namely: @table @kbd @@ -788,23 +788,28 @@ explanation. These keys are bound to functions that peruse minibuffer history. The precise history to be perused depends on the context. It may be the history of search strings, Ex commands, file names, etc. +@item C-s +If the minibuffer is entered via the Viper search commands @kbd{/} or +@kbd{?}, then this key inserts the last search string used by the +Emacs incremental search command +(which is bound to @kbd{C-s} everywhere except in this case). @end table -Most of the Emacs keys are functional in the Minibuffer. While in the -Minibuffer, Viper tries to make editing resemble Vi's behavior when the +Most of the Emacs keys are functional in the minibuffer. While in the +minibuffer, Viper tries to make editing resemble Vi's behavior when the latter is waiting for the user to type an Ex command. In particular, you -can use the regular Vi commands to edit the Minibuffer. You can switch +can use the regular Vi commands to edit the minibuffer. You can switch between the Vi state and Insert state at will, and even use the replace mode. -Initially, the Minibuffer comes up in Insert state. +Initially, the minibuffer comes up in Insert state. -Some users prefer plain Emacs bindings in the Minibuffer. To this end, set +Some users prefer plain Emacs bindings in the minibuffer. To this end, set @code{viper-vi-style-in-minibuffer} to @code{nil} in @file{.viper}. @xref{Customization}, to learn how to do this. -When the Minibuffer changes Viper states, you will notice that the appearance -of the text there changes as well. This is useful because the Minibuffer +When the minibuffer changes Viper states, you will notice that the appearance +of the text there changes as well. This is useful because the minibuffer has no mode line to tell which Vi state it is in. -The appearance of the text in the Minibuffer can be changed. +The appearance of the text in the minibuffer can be changed. @xref{Viper Specials}, for more details. @node Multiple Files in Viper,Unimplemented Features,The Minibuffer,Overview @@ -859,7 +864,7 @@ The current directory name for a file is automatically prepended to the file name in any @kbd{:e}, @kbd{:r}, @kbd{:w}, etc., command (in Emacs, each buffer has a current directory). -This directory is inserted in the Minibuffer once you type space after +This directory is inserted in the minibuffer once you type space after @kbd{:e, r}, etc. Viper also supports completion of file names and Ex commands (@key{TAB}), and it keeps track of command and file history (@kbd{M-p}, @kbd{M-n}). @@ -1044,7 +1049,7 @@ destructive commands in Vi state. These are useful for fixing those small typos that screw up searches and @kbd{:s}, and for eliminating routine associated with repeated typing of file names or pieces of text that need to be inserted frequently. -At the @kbd{:} or @kbd{/} prompts in the Minibuffer, you can do the following: +At the @kbd{:} or @kbd{/} prompts in the minibuffer, you can do the following: @table @kbd @item M-p and M-n @@ -1170,7 +1175,7 @@ Search,emacs,The GNU Emacs Manual} @refill @cindex query replace Viper also provides a query replace function that prompts through the -Minibuffer. It is invoked by the @kbd{Q} key in Vi state. +minibuffer. It is invoked by the @kbd{Q} key in Vi state. @cindex mouse search @@ -1332,7 +1337,7 @@ that @kbd{:se nomagic} turns Regexps off completely, unlike Vi). @kindex @kbd{V} @kindex @kbd{C-v} These keys are used to visit files. @kbd{v} will switch to a buffer -visiting file whose name can be entered in the Minibuffer. @kbd{V} is +visiting file whose name can be entered in the minibuffer. @kbd{V} is similar, but will use a window different from the current window. @kbd{C-v} is like @kbd{V}, except that a new frame (X window) will be used instead of a new Emacs window. @@ -1432,9 +1437,16 @@ this function. @item M-p and M-n @kindex @kbd{M-p} @kindex @kbd{M-n} -In the Minibuffer, these commands navigate through the minibuffer +In the minibuffer, these commands navigate through the minibuffer histories, such as the history of search strings, Ex commands, etc. +@item C-s +@kindex @kbd{C-s} +If the minibuffer is entered via a Viper search commands @kbd{/} or @kbd{?}, +then typing this key inserts the last search string used by the +Emacs incremental search command (that is bound to @kbd{C-s} everywhere +except in this case). + @item C-c M-p and C-c M-n @kindex @kbd{C-c M-p} @kindex @kbd{C-c M-n} @@ -1716,8 +1728,8 @@ If not @code{nil}, @kbd{C-h} is bound to @code{help-command}; otherwise, @kbd{C-h} is bound as usual in Vi. @item viper-vi-style-in-minibuffer t If not @code{nil}, Viper provides a high degree of compatibility with Vi -insert mode when you type text in the Minibuffer; if @code{nil}, typing in -the Minibuffer feels like plain Emacs. +insert mode when you type text in the minibuffer; if @code{nil}, typing in +the minibuffer feels like plain Emacs. @item viper-no-multiple-ESC t If you set this to @code{nil}, you can use @key{ESC} as Meta in Vi state. Normally, this is not necessary, since graphical displays have separate @@ -2455,7 +2467,7 @@ direction, you can either bind an unused key to @kbd{f31}. One should not bind the above functions to @kbd{M-p} or @kbd{M-n}, since -this will interfere with the Minibuffer histories and, possibly, other +this will interfere with the minibuffer histories and, possibly, other major modes. @item viper-command-ring-size 14 @@ -2485,7 +2497,7 @@ direction, you can either bind an unused key to @code{viper-next-destructive-command} or hit any digit (1 to 9) then @kbd{f31}. One should not bind the above functions to @kbd{M-p} or @kbd{M-n}, since -this will interfere with the Minibuffer histories and, possibly, other +this will interfere with the minibuffer histories and, possibly, other major modes. @item viper-minibuffer-vi-face 'viper-minibuffer-vi-face @@ -2501,7 +2513,7 @@ subgroup of the @emph{Editing} group. All Viper faces are grouped together in Viper's @emph{Highlighting} customization subgroup. Note that only the text you type in is affected by the above faces. -Prompts and Minibuffer messages are not affected. +Prompts and minibuffer messages are not affected. Purists who do not like adornments in the minibuffer can always zap them by putting @@ -2960,7 +2972,7 @@ Since Viper macros are much more powerful than Vi's it is impossible to detect such loops. In practice, this is not really a limitation but, rather, a feature. -We should also note that Vi macros are disabled in the Minibuffer, which +We should also note that Vi macros are disabled in the minibuffer, which helps keep some potential troubles away. The rate at which the user must type keys in order for them to be @@ -3534,7 +3546,7 @@ these commands help peruse the history of Vi's destructive commands. Successive typing of @kbd{C-c M-p} causes Viper to search the history in the direction of older commands, while hitting @kbd{C-c M-n} does so in reverse -order. Each command in the history is displayed in the Minibuffer. The +order. Each command in the history is displayed in the minibuffer. The displayed command can then be executed by typing `@kbd{.}'. @@ -3564,7 +3576,7 @@ functions doing the perusing can be bound to unused keyboard keys in the Minibuffer can be edited similarly to Insert state, and you can switch between Insert/Replace/Vi states at will. -Some users prefer plain Emacs feel in the Minibuffer. To this end, set +Some users prefer plain Emacs feel in the minibuffer. To this end, set @var{viper-vi-style-in-minibuffer} to @code{nil}. @cindex Insert state @@ -3754,6 +3766,11 @@ Viper does not parse search patterns and does not expand special symbols found there (e.g., @samp{~} is not expanded to the result of the previous substitution). +After typing @kbd{/} or @kbd{?} all the usual Emacs minibuffer commands, such as +@kbd{M-p} and @kbd{M-n} are available. In addition, typing @kbd{C-s} will +insert the last search string used by the Emacs incremental search command +(which is bound to @kbd{C-s} everywhere except in this case). + @item ? To the th previous occurrence of . @item g @@ -4057,7 +4074,7 @@ Like @kbd{:b}, but the meaning of @var{ex-cycle-other-window} is reversed. Read the file into the buffer after the line
. @item v, V, C-v Edit a file in current or another window, or in another frame. File name -is typed in Minibuffer. File completion and history are supported. +is typed in minibuffer. File completion and history are supported. @end table @kindex @kbd{v} @kindex @kbd{V} -- 2.20.1