comparison man/ediff.texi @ 42602:633233bf2bbf

2002-01-07 Michael Kifer <kifer@cs.stonybrook.edu> * viper-init.el (viper-cond-compile-for-xemacs-or-emacs): new macro that replaces viper-emacs-p and viper-xemacs-p in many cases. Used to reduce the number of warnings. * viper-cmd.el: use viper-cond-compile-for-xemacs-or-emacs. (viper-standard-value): moved here from viper.el. (viper-set-unread-command-events): moved to viper-util.el (viper-check-minibuffer-overlay): make sure viper-minibuffer-overlay is moved to cover the entire input field. * viper-util.el: use viper-cond-compile-for-xemacs-or-emacs. (viper-read-key-sequence, viper-set-unread-command-events, viper-char-symbol-sequence-p, viper-char-array-p): moved here. * viper-ex.el: use viper-cond-compile-for-xemacs-or-emacs. * viper-keym.el: use viper-cond-compile-for-xemacs-or-emacs. * viper-mous.el: use viper-cond-compile-for-xemacs-or-emacs. * viper-macs.el (viper-char-array-p, viper-char-symbol-sequence-p, viper-event-vector-p): moved to viper-util.el * viper.el (viper-standard-value): moved to viper-cmd.el. Use viper-cond-compile-for-xemacs-or-emacs. * ediff-help.el: use ediff-cond-compile-for-xemacs-or-emacs. * ediff-hook.el: use ediff-cond-compile-for-xemacs-or-emacs. * ediff-init.el (ediff-cond-compile-for-xemacs-or-emacs): new macro designed to be used in many places where ediff-emacs-p or ediff-xemacs-p was previously used. Reduces the number of warnings. Use ediff-cond-compile-for-xemacs-or-emacs in many places in lieue of ediff-xemacs-p. (ediff-make-current-diff-overlay, ediff-highlight-diff-in-one-buffer, ediff-convert-fine-diffs-to-overlays, ediff-empty-diff-region-p, ediff-whitespace-diff-region-p, ediff-get-region-contents): moved to ediff-util.el. (ediff-event-key): moved here. * ediff-merge.el: got rid of unreferenced variables. * ediff-mult.el: use ediff-cond-compile-for-xemacs-or-emacs. * ediff-util.el: use ediff-cond-compile-for-xemacs-or-emacs. (ediff-cleanup-mess): improved the way windows are set up after quitting ediff. (ediff-janitor): use ediff-dispose-of-variant-according-to-user. (ediff-dispose-of-variant-according-to-user): new function designed to be smarter and also understands indirect buffers. (ediff-highlight-diff-in-one-buffer, ediff-unhighlight-diff-in-one-buffer, ediff-unhighlight-diffs-totally-in-one-buffer, ediff-highlight-diff, ediff-highlight-diff, ediff-unhighlight-diff, ediff-unhighlight-diffs-totally, ediff-empty-diff-region-p, ediff-whitespace-diff-region-p, ediff-get-region-contents, ediff-make-current-diff-overlay): moved here. (ediff-format-bindings-of): new function by Hannu Koivisto <azure@iki.fi>. (ediff-setup): make sure the merge buffer is always widened and modifiable. (ediff-write-merge-buffer-and-maybe-kill): refuse to write the result of a merge into a file visited by another buffer. (ediff-arrange-autosave-in-merge-jobs): check if the merge file is visited by another buffer and ask to save/delete that buffer. (ediff-verify-file-merge-buffer): new function to do the above. * ediff-vers.el: load ediff-init.el at compile time. * ediff-wind.el: use ediff-cond-compile-for-xemacs-or-emacs. * ediff.el (ediff-windows, ediff-regions-wordwise, ediff-regions-linewise): use indirect buffers to improve robustness and make it possible to compare regions of the same buffer (even overlapping regions). (ediff-clone-buffer-for-region-comparison, ediff-clone-buffer-for-window-comparison): new functions. (ediff-files-internal): refuse to compare identical files. (ediff-regions-internal): get rid of the warning about comparing regions of the same buffer. * ediff-diff.el (ediff-convert-fine-diffs-to-overlays): moved here. Plus the following fixes courtesy of Dave Love: Doc fixes. (ediff-word-1): Use word class and move - to the front per regexp documentation. (ediff-wordify): Bind forward-word-function outside loop. (ediff-copy-to-buffer): Use insert-buffer-substring rather than consing buffer contents. (ediff-goto-word): Move syntax table setting outside loop.
author Michael Kifer <kifer@cs.stonybrook.edu>
date Tue, 08 Jan 2002 04:36:01 +0000
parents 3ce98f3e0608
children 69c91aaa067a
comparison
equal deleted inserted replaced
42601:ddd4802ff361 42602:633233bf2bbf
28 28
29 @ifinfo 29 @ifinfo
30 This file documents Ediff, a comprehensive visual interface to Unix diff 30 This file documents Ediff, a comprehensive visual interface to Unix diff
31 and patch utilities. 31 and patch utilities.
32 32
33 Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. 33 Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
34 34
35 Permission is granted to copy, distribute and/or modify this document 35 Permission is granted to copy, distribute and/or modify this document
36 under the terms of the GNU Free Documentation License, Version 1.1 or 36 under the terms of the GNU Free Documentation License, Version 1.1 or
37 any later version published by the Free Software Foundation; with no 37 any later version published by the Free Software Foundation; with no
38 Invariant Sections, with the Front-Cover texts being ``A GNU 38 Invariant Sections, with the Front-Cover texts being ``A GNU
52 52
53 @iftex 53 @iftex
54 @titlepage 54 @titlepage
55 @title Ediff User's Manual 55 @title Ediff User's Manual
56 @sp 4 56 @sp 4
57 @subtitle Ediff version 2.70 57 @subtitle Ediff version 2.76.1
58 @sp 1 58 @sp 1
59 @subtitle March 1998 59 @subtitle January 2002
60 @sp 5 60 @sp 5
61 @author Michael Kifer 61 @author Michael Kifer
62 @page 62 @page
63 63
64 @vskip 0pt plus 1filll 64 @vskip 0pt plus 1filll
65 @noindent 65 @noindent
66 Copyright @copyright{} 1995, 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc. 66 Copyright @copyright{} 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
67 67
68 Permission is granted to copy, distribute and/or modify this document 68 Permission is granted to copy, distribute and/or modify this document
69 under the terms of the GNU Free Documentation License, Version 1.1 or 69 under the terms of the GNU Free Documentation License, Version 1.1 or
70 any later version published by the Free Software Foundation; with no 70 any later version published by the Free Software Foundation; with no
71 Invariant Sections, with the Front-Cover texts being ``A GNU 71 Invariant Sections, with the Front-Cover texts being ``A GNU
223 @findex ediff-windows-linewise 223 @findex ediff-windows-linewise
224 Compare windows line-by-line. 224 Compare windows line-by-line.
225 225
226 @item ediff-regions-wordwise 226 @item ediff-regions-wordwise
227 @findex ediff-regions-wordwise 227 @findex ediff-regions-wordwise
228 Compare regions word-by-word. 228 Compare regions word-by-word. The regions can come from the same buffer
229 and they can even overlap. You will be asked to specify the buffers that
230 contain the regions, which you want to compare. For each buffer, you will
231 also be asked to mark the regions to be compared. Pay attention to the
232 messages that appear in the minibuffer.
229 233
230 @item ediff-regions-linewise 234 @item ediff-regions-linewise
231 @findex ediff-regions-linewise 235 @findex ediff-regions-linewise
232 Compare regions line-by-line. 236 Similar to @code{ediff-windows-linewise}, but compares the regions
237 line-by-line. See @code{ediff-windows-linewise} for more details.
233 238
234 @item ediff-revision 239 @item ediff-revision
235 @findex ediff-revision 240 @findex ediff-revision
236 Compare versions of the current buffer, if the buffer is visiting 241 Compare versions of the current buffer, if the buffer is visiting
237 a file under version control. 242 a file under version control.
382 387
383 On a color display, fine differences are highlighted with color; on a 388 On a color display, fine differences are highlighted with color; on a
384 monochrome display, they are underlined. @xref{Highlighting Difference 389 monochrome display, they are underlined. @xref{Highlighting Difference
385 Regions}, for information on how to customize this. 390 Regions}, for information on how to customize this.
386 391
387 The functions @code{ediff-windows-wordwise}, 392 The commands @code{ediff-windows-wordwise},
388 @code{ediff-windows-linewise}, @code{ediff-regions-wordwise} and 393 @code{ediff-windows-linewise}, @code{ediff-regions-wordwise} and
389 @code{ediff-regions-linewise} do comparison on parts of existing Emacs 394 @code{ediff-regions-linewise} do comparison on parts of existing Emacs
390 buffers. Since @code{ediff-windows-wordwise} and 395 buffers. The commands @code{ediff-windows-wordwise} and
391 @code{ediff-regions-wordwise} are intended for relatively small segments 396 @code{ediff-regions-wordwise} are intended for relatively small segments
392 of buffers, comparison is done on the basis of words rather than lines. 397 of buffers (e.g., up to 100 lines, depending on the speed of your machine),
393 No refinement is necessary in this case. These commands are recommended 398 as they perform comparison on the basis of words rather than lines.
394 only for relatively small regions (perhaps, up to 100 lines), because 399 (Word-wise comparison of large chunks of text can be slow.)
395 these functions have a relatively slow startup.
396 400
397 To compare large regions, use @code{ediff-regions-linewise}. This 401 To compare large regions, use @code{ediff-regions-linewise}. This
398 command displays differences much like @code{ediff-files} and 402 command displays differences much like @code{ediff-files} and
399 @code{ediff-buffers}. 403 @code{ediff-buffers}.
400 404
947 951
948 This function can also be invoked from the Menubar. However, in some 952 This function can also be invoked from the Menubar. However, in some
949 cases, the change will take place only after you execute one of the Ediff 953 cases, the change will take place only after you execute one of the Ediff
950 commands, such as going to the next difference or redisplaying. 954 commands, such as going to the next difference or redisplaying.
951 955
956 @item ediff-toggle-use-toolbar
957 @findex ediff-toggle-use-toolbar
958 Available in XEmacs only. The Ediff toolbar provides quick access to some
959 of the common Ediff functions. This function toggles the display of the
960 toolbar. If invoked from the menubar, the function may take sometimes
961 effect only after you execute an Ediff command, such as going to the next
962 difference.
963
964 @item ediff-use-toolbar-p
965 @vindex ediff-use-toolbar-p
966 The use of the toolbar can also be specified via the variable
967 @code{ediff-use-toolbar-p} (default is @code{t}). This variable can be set
968 only in @file{.emacs} --- do @strong{not} change it interactively. Use the
969 function @code{ediff-toggle-use-toolbar} instead.
970
952 @item ediff-revert-buffers-then-recompute-diffs 971 @item ediff-revert-buffers-then-recompute-diffs
953 @findex ediff-revert-buffers-then-recompute-diffs 972 @findex ediff-revert-buffers-then-recompute-diffs
954 This command reverts the buffers you are comparing and recomputes their 973 This command reverts the buffers you are comparing and recomputes their
955 differences. It is useful when, after making changes, you decided to 974 differences. It is useful when, after making changes, you decided to
956 make a fresh start, or if at some point you changed the files being 975 make a fresh start, or if at some point you changed the files being
2345 @end table 2364 @end table
2346 2365
2347 @node Credits, Index, Customization, Top 2366 @node Credits, Index, Customization, Top
2348 @chapter Credits 2367 @chapter Credits
2349 2368
2350 Ediff was written by Michael Kifer <kifer@@cs.sunysb.edu>. It was inspired 2369 Ediff was written by Michael Kifer <kifer@@cs.stonybrook.edu>. It was inspired
2351 by emerge.el written by Dale R.@: Worley <drw@@math.mit.edu>. An idea due to 2370 by emerge.el written by Dale R.@: Worley <drw@@math.mit.edu>. An idea due to
2352 Boris Goldowsky <boris@@cs.rochester.edu> made it possible to highlight 2371 Boris Goldowsky <boris@@cs.rochester.edu> made it possible to highlight
2353 fine differences in Ediff buffers. Alastair Burt <burt@@dfki.uni-kl.de> 2372 fine differences in Ediff buffers. Alastair Burt <burt@@dfki.uni-kl.de>
2354 ported Ediff to XEmacs, Eric Freudenthal <freudent@@jan.ultra.nyu.edu> 2373 ported Ediff to XEmacs, Eric Freudenthal <freudent@@jan.ultra.nyu.edu>
2355 made it work with VC, Marc Paquette <marcpa@@cam.org> wrote the 2374 made it work with VC, Marc Paquette <marcpa@@cam.org> wrote the
2394 Karl Heuer (kwzh@@gnu.org), 2413 Karl Heuer (kwzh@@gnu.org),
2395 (irvine@@lks.csi.com), 2414 (irvine@@lks.csi.com),
2396 (jaffe@@chipmunk.cita.utoronto.ca), 2415 (jaffe@@chipmunk.cita.utoronto.ca),
2397 David Karr (dkarr@@nmo.gtegsc.com), 2416 David Karr (dkarr@@nmo.gtegsc.com),
2398 Norbert Kiesel (norbert@@i3.informatik.rwth-aachen.de), 2417 Norbert Kiesel (norbert@@i3.informatik.rwth-aachen.de),
2399 Sam Steingold (sds@@goems.com),
2400 Leigh L Klotz (klotz@@adoc.xerox.com), 2418 Leigh L Klotz (klotz@@adoc.xerox.com),
2401 Fritz Knabe (Fritz.Knabe@@ecrc.de), 2419 Fritz Knabe (Fritz.Knabe@@ecrc.de),
2402 Heinz Knutzen (hk@@informatik.uni-kiel.d400.de), 2420 Heinz Knutzen (hk@@informatik.uni-kiel.d400.de),
2403 Andrew Koenig (ark@@research.att.com), 2421 Andrew Koenig (ark@@research.att.com),
2404 Hannu Koivisto (azure@@iki.fi), 2422 Hannu Koivisto (azure@@iki.fi),
2405 Ken Laprade (laprade@@dw3f.ess.harris.com), 2423 Ken Laprade (laprade@@dw3f.ess.harris.com),
2406 Will C Lauer (wcl@@cadre.com), 2424 Will C Lauer (wcl@@cadre.com),
2407 Richard Levitte (levitte@@e.kth.se), 2425 Richard Levitte (levitte@@e.kth.se),
2408 Mike Long (mike.long@@analog.com), 2426 Mike Long (mike.long@@analog.com),
2427 Dave Love (d.love@@dl.ac.uk),
2409 Martin Maechler (maechler@@stat.math.ethz.ch), 2428 Martin Maechler (maechler@@stat.math.ethz.ch),
2410 Simon Marshall (simon@@gnu.org), 2429 Simon Marshall (simon@@gnu.org),
2411 Paul C. Meuse (pmeuse@@delcomsys.com), 2430 Paul C. Meuse (pmeuse@@delcomsys.com),
2412 Richard Mlynarik (mly@@adoc.xerox.com), 2431 Richard Mlynarik (mly@@adoc.xerox.com),
2413 Stefan Monnier (monnier@@cs.yale.edu), 2432 Stefan Monnier (monnier@@cs.yale.edu),
2430 Axel Seibert (axel@@tumbolia.ppp.informatik.uni-muenchen.de), 2449 Axel Seibert (axel@@tumbolia.ppp.informatik.uni-muenchen.de),
2431 Vin Shelton (acs@@xemacs.org), 2450 Vin Shelton (acs@@xemacs.org),
2432 Scott O. Sherman (Scott.Sherman@@mci.com), 2451 Scott O. Sherman (Scott.Sherman@@mci.com),
2433 Richard Stallman (rms@@gnu.org), 2452 Richard Stallman (rms@@gnu.org),
2434 Richard Stanton (stanton@@haas.berkeley.edu), 2453 Richard Stanton (stanton@@haas.berkeley.edu),
2454 Sam Steingold (sds@@goems.com),
2435 Ake Stenhoff (etxaksf@@aom.ericsson.se), 2455 Ake Stenhoff (etxaksf@@aom.ericsson.se),
2436 Stig (stig@@hackvan.com), 2456 Stig (stig@@hackvan.com),
2437 Peter Stout (Peter_Stout@@cs.cmu.edu), 2457 Peter Stout (Peter_Stout@@cs.cmu.edu),
2438 Chuck Thompson (cthomp@@cs.uiuc.edu), 2458 Chuck Thompson (cthomp@@cs.uiuc.edu),
2439 Ray Tomlinson (tomlinso@@bbn.com), 2459 Ray Tomlinson (tomlinso@@bbn.com),