Skip to content

Latest commit

 

History

History
149 lines (109 loc) · 5.33 KB

File metadata and controls

149 lines (109 loc) · 5.33 KB

Translation Date: 2025-10-29 Original English File: README.md This is a translation. For the most current version, please refer to the English file.


Data da Tradução: 29-10-2025 Arquivo Original em Inglês: README.md Esta é uma tradução. Para a versão mais atualizada, por favor, consulte o arquivo em inglês.


Redlines

Repository banner image PyPI - Version GitHub Release Date - Published_At GitHub last commit (by committer) PyPI - License

Redlines compara duas strings/textos e produz uma saída estruturada mostrando suas diferenças. As alterações são representadas com tachados e destaques, similar ao controle de alterações do Microsoft Word. A saída inclui informações detalhadas sobre mudanças, posições e estatísticas para uso programático.

Suporta múltiplos formatos de saída: JSON (padrão, com dados estruturados de alterações e estatísticas), Markdown, HTML e rich (exibição em terminal).

Início Rápido

# Instalar
pip install redlines

# CLI: Comparar dois textos (saída em JSON por padrão)
redlines "The quick brown fox jumps over the lazy dog." "The quick brown fox walks past the lazy dog."

# Python: Comparar e obter markdown
from redlines import Redlines
test = Redlines(
    "The quick brown fox jumps over the lazy dog.",
    "The quick brown fox walks past the lazy dog.",
    markdown_style="none"
)
print(test.output_markdown)
# Saída: The quick brown fox <del>jumps over </del><ins>walks past </ins>the lazy dog.

Suportado: Python 3.10 - 3.14 (suporte para Python 3.8 e 3.9 descontinuado)

Dependências opcionais:

  • pip install redlines[nupunkt] para detecção avançada de limites de sentenças (Python 3.11+, manipula abreviações, citações, URLs)
  • pip install redlines[levenshtein] para estatísticas adicionais

Uso

API Python

A biblioteca contém uma classe: Redlines, que é usada para comparar texto.

Comparação básica:

from redlines import Redlines

test = Redlines(
    "The quick brown fox jumps over the lazy dog.",
    "The quick brown fox walks past the lazy dog.",
    markdown_style="none"
)
assert (
    test.output_markdown
    == "The quick brown fox <del>jumps over </del><ins>walks past </ins>the lazy dog."
)

Múltiplas comparações com uma fonte:

from redlines import Redlines

test = Redlines("The quick brown fox jumps over the lazy dog.", markdown_style="none")
assert (
    test.compare("The quick brown fox walks past the lazy dog.")
    == "The quick brown fox <del>jumps over </del><ins>walks past </ins>the lazy dog."
)

assert (
    test.compare("The quick brown fox jumps over the dog.")
    == "The quick brown fox jumps over the <del>lazy </del>dog."
)

Saída JSON com dados estruturados:

from redlines import Redlines

test = Redlines(
    "The quick brown fox jumps over the lazy dog.",
    "The quick brown fox walks past the lazy dog."
)

# Obter JSON com mudanças, posições e estatísticas
print(test.output_json(pretty=True))

CLI

Uso básico (saída em JSON por padrão):

redlines "old text" "new text"
redlines file1.txt file2.txt --pretty

Formatos de saída:

redlines text "source" "test"              # Exibição rich em terminal
redlines markdown file1.txt file2.txt      # Saída em Markdown
redlines stats old.txt new.txt             # Apenas estatísticas

Execute redlines --help ou redlines guide para Guia de Interação para Agentes. Veja também: redlines-textual.

Recursos Avançados

Processadores Personalizados

Use NupunktProcessor para tokenização em nível de sentença com detecção inteligente de limites:

from redlines import Redlines
from redlines.processor import NupunktProcessor

processor = NupunktProcessor()
test = Redlines("Dr. Smith said hello.", "Dr. Smith said hi.", processor=processor)

Use NupunktProcessor para: Documentos legais/técnicos com abreviações, URLs, citações, decimais Use WholeDocumentProcessor (padrão) para: Documentos simples, tarefas críticas em velocidade (5-6x mais rápido), granularidade em nível de parágrafo

Veja comparação de demonstração for benchmarks.

Para Agentes de IA e Automação

🤖 Usando com agentes de codificação de IA? Veja o Guia de Interação para Agentes para esquemas JSON, padrões de automação, tratamento de erros e Exemplos executáveis.

Documentação e Recursos

Documentação Completa: https://houfu.github.io/redlines

Exemplos de Casos de Uso:

Licença

Licença MIT