Difção de palavras coloridas como as do git?

7

Eu estive por muito tempo usando o git (colorido) --word-diff que eu acho incrível. Eu me encontrei hoje em uma situação onde eu tinha duas cordas que eu precisava para comparar palavra por palavra e desejo por algo como o diff do git.

Estou ciente de wdiff + colordiff , mas seus resultados certamente não são estelares:

me@me:~$ wdiff <(echo -e "abc\ndef") <(echo -e "dbcx\ndef") | colordiff
[-abc-]{+dbcx+}
def

Existe alguma opção melhor por aí? Eu particularmente não gosto desses [- , -] e {+ , +} .

    
por devoured elysium 01.09.2016 / 01:18

1 resposta

4

Você pode usar o diff-highlight do git . Ele pode destacar as diferenças de palavras na saída diff unificada e também pode lidar com cores ANSI na entrada. Então você pode fazer algo assim:

colordiff -u <(echo -e "foo abc\ndef") <(echo -e "foo dbcx\ndef") | diff-highlight
    
por 01.09.2016 / 08:26