Fish-shell: Script para generar la finalización de `--help`

Creado en 25 dic. 2017  ·  3Comentarios  ·  Fuente: fish-shell/fish-shell

Muchas herramientas de línea de comandos tienen una opción --help que podría analizarse para generar finalizaciones automáticamente. Incluso si el resultado no fue 100% perfecto, esto sería invaluable para bajar el listón y proporcionar una terminación de pescado. Esta es sin duda una empresa importante, pero creo que es una inversión digna.

duplicate

Comentario más útil

¿Parece que hay una manera de generar la finalización a partir de las páginas de manual?

Sí: https://github.com/fish-shell/fish-shell/blob/master/share/tools/create_manpage_completions.py. Esto se ejecuta la primera vez que se inicia Fish y se puede actualizar ejecutando fish_update_completions .

Lo cual es probablemente un poco de contexto importante: cuando ya puede analizar páginas de manual (lo cual es seguro), realmente no hay necesidad real de analizar la salida "--help" para las pocas utilidades que tienen "--help" (o es es "-h" o "-?") pero no una página de manual.

Además, ese script muestra las limitaciones de generar finalizaciones: puede hacer opciones a un nivel de calidad mayormente aceptable (aunque las descripciones a menudo son malas), pero cualquier otra cosa no está lo suficientemente estandarizada.

Todos 3 comentarios

Esto ya se ha preguntado en el n. ° 4081, y creo que la justificación del cierre sigue vigente.

Reiterar:

  • Llamar a ciegas somecommand --help es peligroso

  • Las terminaciones generadas son mucho menos útiles que las escritas a mano

  • Esto es un montón de trabajo

  • Si en cambio escribiera una página de manual, también ayudaría al proyecto upstream

Así que no siento que valga la pena.

4981 parece sugerir una finalización sobre la marcha. Me refería a un script para "precompilar" un script de finalización, es decir, una secuencia de llamadas a complete . Esto es lo que quise decir con no 100% perfecto: puede ser necesaria alguna edición manual. Por otro lado, por lo que escribió, ¿parece que hay una manera de generar la finalización a partir de las páginas de manual?

¿Parece que hay una manera de generar la finalización a partir de las páginas de manual?

Sí: https://github.com/fish-shell/fish-shell/blob/master/share/tools/create_manpage_completions.py. Esto se ejecuta la primera vez que se inicia Fish y se puede actualizar ejecutando fish_update_completions .

Lo cual es probablemente un poco de contexto importante: cuando ya puede analizar páginas de manual (lo cual es seguro), realmente no hay necesidad real de analizar la salida "--help" para las pocas utilidades que tienen "--help" (o es es "-h" o "-?") pero no una página de manual.

Además, ese script muestra las limitaciones de generar finalizaciones: puede hacer opciones a un nivel de calidad mayormente aceptable (aunque las descripciones a menudo son malas), pero cualquier otra cosa no está lo suficientemente estandarizada.

¿Fue útil esta página
0 / 5 - 0 calificaciones