tawasuyu

tawasuyu/llimphi

Sovereign retained-mode GPU UI framework in Rust (wgpu+vello+taffy+parley), Elm loop, 40+ widgets.

Rust 229TOML 101Markdown 82Shell 24052 Sutichaykuna

⎇ main widgets/text-editor-core/LEEME.md Markdown · 27 siq'ikuna · 1.2 KB Ñawpa willay ch'uya

chore: refresco desde el monorepo — 27 crates nuevos (anim, lottie, svg, mesh, image, layer, test, wire-view, widgets rag-sidebar/router/lazy-list/rive-button) y sync de los 95 existentes 93253cc22 · Sergio ·

1# llimphi-widget-text-editor-core
2
3*Read this in English: [README.md](README.md).*
4
5Núcleo agnóstico del editor de código.
6
7Capas finas y **puras** (sin IO, sin Llimphi, sin GPU) sobre `ropey`:
8
9- `buffer` — wrapper de `Rope` con conversiones (línea, col) ↔ char_offset.
10- `cursor` — `Cursor` + `Selection`; movimiento por char/word/line/page.
11- `ops` — operaciones puras de edición sobre `(Buffer, Cursor) → (Buffer, Cursor)`.
12- `undo` — pila reversible: cada operación se registra como `EditDelta`.
13- `bracket` — matching de paréntesis/llaves/corchetes.
14- `find` — búsqueda incremental sobre el buffer.
15- `diagnostics` — modelo de diagnósticos (errores/warnings) por rango.
16- `clipboard` — abstracción de portapapeles (mem/null) sin tocar el SO.
17- `highlight` — syntax highlighting con tree-sitter (Rust/Python/WAT/Plain).
18
19Único acoplamiento externo: `peniko::Color` en `highlight::SyntaxPalette`
20— un tipo de color, no el stack de render. Eso deja el núcleo reutilizable
21desde un TUI, una mini-REPL, un text-input single-line, un backend web, etc.
22La capa visual (state + view sobre Llimphi) vive en
23`llimphi-widget-text-editor`, que re-exporta todo este núcleo.
24
25---
26
27Parte de **llimphi** — ver [llimphi](../../LEEME.md).

LEEME.md

llimphi-widget-text-editor-core

Read this in English: README.md.

Núcleo agnóstico del editor de código.

Capas finas y puras (sin IO, sin Llimphi, sin GPU) sobre ropey:

Único acoplamiento externo: peniko::Color en highlight::SyntaxPalette — un tipo de color, no el stack de render. Eso deja el núcleo reutilizable desde un TUI, una mini-REPL, un text-input single-line, un backend web, etc. La capa visual (state + view sobre Llimphi) vive en llimphi-widget-text-editor, que re-exporta todo este núcleo.


Parte de llimphi — ver llimphi.