feat(mirada): acción spawn — lanzar programas desde el compositor
Un escritorio sin forma de abrir una terminal no es usable. Ahora el keymap puede lanzar programas: - `mirada-protocol`: nuevo `BrainCommand::Spawn(String)`. - `mirada-brain`: `DesktopAction::Spawn(String)` con forma textual `spawn:<comando>` (`Display`/`FromStr`); `Desktop::apply` la traduce a `BrainCommand::Spawn`. El keymap por defecto trae `Super+Shift+Return` → `spawn:foot`. `DesktopAction` deja de ser `Copy` (lleva el comando) — `Keymap::lookup` clona en vez de copiar. - `mirada-body`: `BodyOp::Spawn(String)`. - `mirada-compositor`: `exec_op` ejecuta el spawn con un helper `spawn_command` (`sh -c`, hereda `WAYLAND_DISPLAY`), que también recoge el lanzamiento de `MIRADA_STARTUP` — antes duplicado. `spawn:foot --title x` también funciona desde `mirada-ctl`. Tests nuevos del round-trip textual y del flujo atajo→comando. Nota: un keymap.ron ya existente no recibe el atajo nuevo; hay que añadir la línea a mano o borrar el archivo para regenerarlo. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -142,6 +142,11 @@ que un front-end (`Keybind` → `lookup` → `apply`); hay otros tres:
|
||||
`inc`/`dec-master` cambian `nmaster` (`Super+,`/`Super+.`); y
|
||||
`promote-to-master` lleva la enfocada al puesto maestro (`Super+Return`
|
||||
— `combo_string` ya canoniza teclas con nombre: `Return`, `Tab`, `F5`…).
|
||||
- **Lanzar programas** — `DesktopAction::Spawn(String)` (forma textual
|
||||
`spawn:<comando>`, `Super+Shift+Return` → `spawn:foot` por defecto)
|
||||
produce un `BrainCommand::Spawn`; el Cuerpo lo ejecuta con `sh -c`, y
|
||||
el hijo hereda `WAYLAND_DISPLAY`. `DesktopAction` deja de ser `Copy`
|
||||
por llevar el comando.
|
||||
- **HUD interactivo** (app `mirada`) — los pips de escritorio y las
|
||||
ventanas del lienzo son clicables: clic = `apply` de la acción.
|
||||
- **`mirada-ctl`** — control externo por línea de comandos
|
||||
|
||||
Reference in New Issue
Block a user