[feature/info] 'abbr --command' expansion specific to 2+ arguments

Abierto
#12,792 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 2 días

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
42/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
fish
Área
cli

Línea de trabajo

Comienza con el comportamiento existente de abbr --command en la documentación de fish y reproduce el ejemplo sudo darwin-rebuild del issue. Rastrea cómo se analizan el valor del comando y el nombre de la abreviatura cuando el comando contiene varios argumentos. Se considera terminado cuando un valor de --command con varios argumentos puede coincidir con la abreviatura posterior y expandirla sin romper los ejemplos existentes de un solo comando.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

i was writing some abbrs for nix-darwin's darwin-rebuild, which look like

abbr --add d darwin-rebuild
abbr --command darwin-rebuild b -- "--flake $flake build"
abbr --command darwin-rebuild g -- --switch-generation
abbr --command darwin-rebuild l -- --list-generations
abbr --command darwin-rebuild r -- --rollback
abbr --command darwin-rebuild s -- "--flake $flake build switch"

all of these, except the 'b' abbr, must be run with sudo. i read the man page, then tried

abbr --position anywhere --add d 'sudo darwin-rebuild'
# ...
abbr --command 'sudo darwin-rebuild' l -- --list-generations

so that 'd' expands to 'sudo darwin-rebuild', but then following it with an 'l' does not expand to '--list-generations'.

this is quite minor as a request, as i can just send alt-s to prepend sudo to a command, but i figured i'd ask if there is a way to do this (without writing a function to wrap 'darwin-rebuild'), or for such a way to be implemented if not --- i.e., for the '--command' argument to abbr to accept, and expand on, multiple arguments. since the name of the abbr (e.g., 'b' above) is a positional argument, i'm not sure how this could best be done.

thank you!

Lenguaje dominante
Rust
Estrellas
34.4k
Forks
2.5k
Merge medio
1 d 15 h
PR fusionados (30 d)
7

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de fish-shell/fish-shell

Todos los issues de fish-shell/fish-shell

Issues similares

Más issues de Rust

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.