ediff: Refinement of Difference Regions

 
 7.7 Refinement of Difference Regions
 ====================================
 
 Ediff has variables to control the way fine differences are highlighted.
 This feature gives you control over the process of refinement.  Note
 that refinement ignores spaces, tabs, and newlines.
 
 ‘ediff-auto-refine’
      This variable controls whether fine differences within regions are
      highlighted automatically (“auto-refining”).  The default is yes
      (‘on’).
 
      On a slow machine, automatic refinement may be painful.  In that
      case, you can turn auto-refining on or off interactively by typing
      ‘@’.  You can also turn off display of refining that has already
      been done.
 
      When auto-refining is off, fine differences are shown only for
      regions for which these differences have been computed and saved
      before.  If auto-refining and display of refining are both turned
      off, fine differences are not shown at all.
 
      Typing ‘*’ computes and displays fine differences for the current
      difference region, regardless of whether auto-refining is turned
      on.
 
 ‘ediff-auto-refine-limit’
      If auto-refining is on, this variable limits the size of the
      regions to be auto-refined.  This guards against the possible
      slowdown that may be caused by extraordinary large difference
      regions.
 
      You can always refine the current region by typing ‘*’.
 
 ‘ediff-forward-word-function’
      This variable controls how fine differences are computed.  The
      value must be a Lisp function that determines how the current
      difference region should be split into words.
 
      Fine differences are computed by first splitting the current
      difference region into words and then passing the result to
      ‘ediff-diff-program’.  For the default forward word function (which
      is ‘ediff-forward-word’), a word is a string consisting of letters,
      ‘-’, or ‘_’; a string of punctuation symbols; a string of digits,
      or a string consisting of symbols that are neither space, nor a
      letter.
 
      This default behavior is controlled by four variables:
      ‘ediff-word-1’, ..., ‘ediff-word-4’.  See the on-line documentation
      for these variables and for the function ‘ediff-forward-word’ for
      an explanation of how to modify these variables.
 
    Sometimes, when a region has too many differences between the
 variants, highlighting of fine differences is inconvenient, especially
 on color displays.  If that is the case, type ‘*’ with a negative prefix
 argument.  This unhighlights fine differences for the current region.
 
    To unhighlight fine differences in all difference regions, use the
 command ‘@’.  Repeated typing of this key cycles through three different
 states: auto-refining, no-auto-refining, and no-highlighting of fine
 differences.