1# pluma-align
2
3> Text-text alignment for [pluma](../README.md).
4
5Given two documents (e.g., original + translation, draft + revision), produces atom-atom mapping using length-greedy heuristic + LCS over the sequence. Result: `Vec<Par>` where each pair can be `(a, b)`, `(a, ∅)`, `(∅, b)`. Foundation for visual diff and for backing the translations of [pluma-transform-llm](../pluma-transform-llm/README.md).
6
7## API
8
9```rust
10use pluma_align::alinear;
11
12let pares = alinear(&doc_a, &doc_b);
13```
14
15## Deps
16
17- [`pluma-core`](../pluma-core/README.md), [`pluma-cuerpo`](../pluma-cuerpo/README.md)
18- `serde`, `uuid`
README.md
pluma-align
Text-text alignment for pluma.
Given two documents (e.g., original + translation, draft + revision), produces atom-atom mapping using length-greedy heuristic + LCS over the sequence. Result: Vec<Par> where each pair can be (a, b), (a, ∅), (∅, b). Foundation for visual diff and for backing the translations of pluma-transform-llm.
API
use pluma_align::alinear;
let pares = alinear(&doc_a, &doc_b);
Deps