Skip to content
  • Thomas Rast's avatar
    diff: add --word-diff option that generalizes --color-words · 882749a0
    Thomas Rast authored and Junio C Hamano's avatar Junio C Hamano committed
    
    
    This teaches the --color-words engine a more general interface that
    supports two new modes:
    
    * --word-diff=plain, inspired by the 'wdiff' utility (most similar to
      'wdiff -n <old> <new>'): uses delimiters [-removed-] and {+added+}
    
    * --word-diff=porcelain, which generates an ad-hoc machine readable
      format:
      - each diff unit is prefixed by [-+ ] and terminated by newline as
        in unified diff
      - newlines in the input are output as a line consisting only of a
        tilde '~'
    
    Both of these formats still support color if it is enabled, using it
    to highlight the differences.  --color-words becomes a synonym for
    --word-diff=color, which is the color-only format.  Also adds some
    compatibility/convenience options.
    
    Thanks to Junio C Hamano and Miles Bader for good ideas.
    
    Signed-off-by: default avatarThomas Rast <trast@student.ethz.ch>
    Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
    882749a0