Existe uma ferramenta estável (opção / plugin de uma ferramenta existente: vimdiff, diff, etc) no Linux para fazer a diferença entre dois arquivos de texto em caracteres?
Gostaria de ver a subsequência comum mais longa entre meus dois arquivos destacada. Existe um algoritmo clássico de tempo polinomial para isso, mas as ferramentas padrão parecem funcionar apenas linha por linha.
diff
file-comparison
vimdiff
Valentas
fonte
fonte
cmp -bl ...
depois de encontrar esta resposta e ela relatou várias diferenças e suas posições. Minha versão écmp (GNU diffutils) 3.6
.Instale
diffchar
( link do Github para aqueles que usam um carregador automático de plugins). Desde a v4.7, com o plug-in ativado, o Vim mostra automaticamente as diferenças mais exatas:Você pode pressionar F7(o mapa de teclas padrão) para alternar entre o habitual e o plug-in. Reatribuir com:
substituindo
<key>
por um código de chave apropriado.Você pode usar mais cores:
Infelizmente, isso não funciona entre linhas, o melhor que posso dizer. No entanto, as regiões comuns são deixadas sem destaque (e dobradas, se crescerem demais), portanto, você poderá tirar vantagem disso.
Copiado da minha postagem do Vi e Vim Stack Exchange .
fonte