tawasuyu

tawasuyu/llimphi

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

Rust 660Markdown 302TOML 157RON 312382 Definiciones

⎇ main widgets/text-input/Cargo.toml TOML · 48 líneas · 2.5 KB Historia crudo

chore: refresco desde el monorepo — 132 miembros, 79 widgets, la galería vuelve y licencia dual d8edd9a9c · Sergio ·

1[package]
2name = "llimphi-widget-text-input"
3version.workspace = true
4edition.workspace = true
5license.workspace = true
6authors.workspace = true
7publish.workspace = true
8description = "llimphi-widget-text-input — input de texto single-line para Llimphi. Wrappea el llimphi-widget-text-editor en modo single_line para heredar selección con shift+arrows, undo/redo, word-jump con Ctrl, sin perder la API compacta original."
9
10repository.workspace = true
11[dependencies]
12# El COMPOSITOR, no el shell de escritorio: así este widget sirve igual
13# en Linux, en el kernel de wawa y adentro de una jaula WASM (W4.6). El
14# modelo de input (`KeyEvent`/`ImeEvent`, W4.7) también vive ahí.
15llimphi-compositor = { workspace = true, default-features = false }
16llimphi-theme = { workspace = true }
17llimphi-widget-text-editor = { path = "../text-editor", version = "0.1.0", default-features = false }
18# Mutex de scratch (las métricas compartidas con el pintor): `spin` en vez
19# de `std::sync::Mutex`, como en `waveform`/`color-picker` (W4.6).
20spin = { version = "0.9", default-features = false, features = ["mutex", "spin_mutex"] }
21# `exp` de la estela del caret sin stdlib (la vista rica cruza a la jaula).
22libm = { workspace = true, optional = true }
23
24[dev-dependencies]
25# Sólo para el example `campo_demo` (animación del label flotante con Tween).
26llimphi-motion = { workspace = true }
27# El SHELL, sólo para demos: abren ventana y corren el bucle Elm.
28llimphi-ui = { workspace = true }
29
30[features]
31# Un widget NO elige backend: lo elige quien ensambla la app. Este default
32# existe sólo para que el crate compile SOLO (`cargo check -p …`).
33default = ["std", "treesitter", "vello"]
34# std: reenvía la espalda ropey + el reloj real al editor, y habilita el
35# log de diagnóstico de jitter de ancho (escribe en /tmp).
36std = ["llimphi-widget-text-editor/std", "llimphi-compositor/std"]
37# `treesitter` (default-on) reenvía la del editor: con ella, resaltado de
38# Rust/Python; sin ella degrada a texto plano y **no** se arrastra ningún
39# C, que es lo que permite cross-compilar desde Linux.
40# La dependencia va por `path` y no por `workspace = true` a propósito:
41# heredar del workspace sólo deja AÑADIR features, nunca apagar
42# `default-features`.
43treesitter = ["llimphi-widget-text-editor/treesitter"]
44vello = ["llimphi-compositor/vello"]
45cpu = ["llimphi-compositor/cpu"]
46wire = ["llimphi-compositor/wire"]
47# Targets sin std (la jaula wasm32): mates por libm en todo el subárbol.
48libm = ["llimphi-compositor/libm", "llimphi-widget-text-editor/libm", "dep:libm"]