TK TaskKit
Ferramentas para programadores

Comparador

Compara dois textos lado a lado ou em vista unificada. Modos opcionais para ignorar espaços e maiúsculas.

Original
Modificado
Diff
Cola dois textos para veres o que mudou linha a linha.

As entradas ficam neste dispositivo. Cada ferramenta para programadores no TaskKit corre inteiramente no teu navegador. Tokens, payloads e texto colado não são transmitidos para servidores do TaskKit nem para terceiros.

O que esta ferramenta faz

Compara dois pedaços de texto e mostra as diferenças lado a lado ou como diff unificado. Toggles opcionais ignoram espaços em branco no início/fim e ignoram maiúsculas/minúsculas. O diff é calculado por linhas (não caracteres), que é o que queres para código, configurações e prosa.

Quando usar

  • Detetar o que mudou entre duas respostas de API.
  • Rever edições a um ficheiro de configuração quando não tens a versão no git.
  • Comparar duas mensagens de erro para encontrar a única palavra diferente.
  • Verificar que um round-trip de copy-paste não inseriu caracteres invisíveis.

Como funciona

O algoritmo é um cálculo de subsequência comum mais longa (LCS), que é a mesma abordagem que o git diff usa. A complexidade é aproximadamente O(n × m) nas contagens de linhas, por isso limitamos os inputs a 2500 linhas por lado para manter o desempenho previsível. As linhas correspondentes são emparelhadas; as linhas que existem só num lado são marcadas como adições ou remoções.

Notas

Porquê linha a linha e não caractere a caractere? Porque a maioria dos diffs reais são sobre linhas. Os diffs ao nível do caractere são ruidosos em qualquer coisa maior que uma frase. Se precisas de um diff de caracteres a sério, usa git diff --word-diff localmente.

Ignorar espaços em branco ignora tabs vs espaços? Sim — esse toggle trata qualquer sequência de espaços em branco como equivalente a outra, o que é útil quando um ficheiro foi reformatado mas o conteúdo é o mesmo.

O que acontece para além de 2500 linhas? A ferramenta recusa-se a renderizar e pede-te para aparares. O LCS é quadrático; com 100k linhas ficavas com o separador bloqueado durante minutos.

Ferramentas relacionadas