💡 translate: shift an element's paint without affecting flow
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 48/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Tranquilo
- Stack tecnológico
- c, typescript
- Área
- cli
Línea de trabajo
Comienza con la prueba fallida en test/translate.test.ts, luego lee las definiciones de layout en ops.ts:97-120 y ops.ts:245-253, seguidas de la decodificación de grupos de layout en src/clayterm.c:499-516. Verifica que translate se aplique después del layout de flujo, desplace los descendientes dibujados y los límites reportados, preserve la colocación de los hermanos y cambie la salida esperada de "AB " a " BA ".
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Is your feature request related to a problem?
There's no way to nudge an element a few cells from where layout placed it while leaving its neighbors put. The only offset tool today is floating, which pulls the element out of flow so siblings reflow to fill the gap. A fixed(5) row holding element a (text A) followed by text B renders "AB "; we can't shift A two cells right while B stays put, since anything that moves A collapses B back to column 0. That rules out small visual nudges (badges, carets, hover) that shouldn't disturb surrounding layout.
Describe the solution you'd like
A render-time translate that shifts an element's painted cells (and its descendants') by {x, y} after flow layout, mirroring the CSS translate property (exact name TBD). It does not change layout: the element keeps its computed flow slot and siblings don't move. It's purely a visual displacement, with the element's reported bounds following the shift so hit-testing stays correct. Above, a keeps its slot at x=0, B stays at column 1, and a paints two cells over to yield " BA ".
const node = open("a", {
layout: {
translate: { x: 2, y: 0 },
},
});
Describe alternatives you've considered
floating removes the element from flow (siblings collapse), so it can't do an in-place nudge. Post-processing the rendered grid in TS can't see clip regions, backgrounds, or descendant bounds, and info.bounds would still report the un-shifted position—breaking hit-testing and hover. A renderer-side translate keeps bounds and paint in sync.
Additional context
Failing test case on nm/repro/translate (test · diff). Today bounds.x is 0 instead of 2 and the row renders "AB " instead of " BA ". This likely lives in ops.ts:97-120 (the pack layout group has no translate slot) and ops.ts:245-253 (OpenElement.layout has no translate field), with the render-time shift applied where the layout group is decoded (src/clayterm.c:499-516).
- Lenguaje dominante
- TypeScript
- Estrellas
- 42
- Forks
- 2
- Merge medio
- 21 h 40 min
- PR fusionados (30 d)
- 9
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de bombshell-dev/tty
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
bombshell-dev/tty#61 · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
bombshell-dev/tty#129 ·
Los mantenedores suelen responder en 1 día
-
question
Dificultad 5/5 Más de una semana Aptitud para principiantes 38/100
bombshell-dev/tty#112 ·
Los mantenedores suelen responder en 1 día
-
enhancement high priority
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
bombshell-dev/tty#83 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
🐛 VS16 (U+FE0F) emoji measured at the wrong widthQuizá libre de nuevo @natemoo-re la tomó hace 117 días y no hay ningún pull request abierto. Abiertobug
bombshell-dev/tty#81 · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de bombshell-dev/tty
Issues similares
-
Add: PRO TV Chisinau SDAbiertocheck:failed streams:add
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
iptv-org/iptv#53974 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
type: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
interledger/rafiki#3986 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Doist/todoist-cli#576 ·
Los mantenedores suelen responder en 1 día
-
Suggestion: document (or optionally add) a cheaper-model config for find-skills on Claude CodeAbiertofeature
Dificultad 1/5 Menos de una hora Aptitud para principiantes 72/100
vercel-labs/skills#2370 ·
Los mantenedores suelen responder en 1 día
-
🐛 Bug supabase/cli
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
Los mantenedores suelen responder en 1 día