Let commands take over the terminal?
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
Línea de trabajo
No se nombran archivos, pruebas ni puntos de entrada. Empieza por localizar cómo lazycli inicia los comandos vinculados y gestiona el estado del terminal; define la finalización de modo que los comandos interactivos, como editores, paginadores, prompts y htop, tomen el control temporalmente y vuelvan a la misma sesión.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Is it possible to yield control of the terminal to each command when it runs? This would open up a bunch of new possibilities.
- Commands that use $EDITOR or $PAGER.
- From an
lsview, you could bindvim $0orless $0to a key. The editor would take over the terminal temporarily; when you quit the editor you'd be back in the same lazycli session. - From the
git statusview, you could rungit commitand let the commit-message editor take over temporarily. - From
git logyou could rungit show --patchto preview a commit.
- From an
- Commands that prompt for a second argument.
- From
ls, you could bindrtomv $0 $(read). Then to renamefootobaryou'd selectfoo, and typer bar<enter>. - Similarly, from
git branch, you could bindgit branch mv $0 $(read).
- From
I'm not sure how this would be implemented, but it might be similar to vim's :! command. As a (contrived) example, when you run :!htop, htop takes over the terminal; when you quit htop you end up back in vim again.
- Lenguaje dominante
- Rust
- Estrellas
- 435
- Forks
- 17
- Métricas de merge de PR
- Sin PR fusionados en 30 d
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 jesseduffield/lazycli
-
fzfAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
jesseduffield/lazycli#25 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 48/100
jesseduffield/lazycli#23 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
jesseduffield/lazycli#19 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 30/100
jesseduffield/lazycli#17 · 1 comentario · 1 reacción ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 48/100
jesseduffield/lazycli#16 ·
Todos los issues de jesseduffield/lazycli
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
pact-foundation/pact-cli#154 ·
Los mantenedores suelen responder en 3 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
antithesishq/bombadil#361 ·
Los mantenedores suelen responder en 1 día
-
test(executor_l0): assert execute() TaskOutcome, not only bus events / 断言 execute() 返回的 TaskOutcomeAbiertotype:debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
skaiy/wild_agentos#425 ·
Los mantenedores suelen responder en 1 día
-
Default-import note suggests `import * as process` for velt:process, which does not name the builtinAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
bug ticket
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
cratestack/cratestack#1154 ·
Los mantenedores suelen responder en 1 día