Estoy tratando de crear un script de finalización de Bash para un programa Java. Una invocación típica de ese programa podría tener este aspecto:Agregue espacios al final de algunas opciones de autocompletar Bash, pero no a otras?
$ javaProgram -Dproperty=foo option1 option2
Parte de mi guión será sugerir las diversas propiedades de Java que están disponibles para este programa (es decir, cuando el usuario teclea -D
, el guión sugerirían, digamos, property=
, permitiendo al usuario escribir el valor).
Me gustaría que la terminación no inserte un espacio después del signo igual. Sin embargo, cuando el usuario está escribiendo las diversas opciones para el programa (option1
y option2
en el ejemplo anterior), me gustaría que el script complete, e inserte un espacio cuando se complete.
Soy nuevo en las secuencias de comandos de finalización de Bash, pero conozco la opción nospace
para el shell incorporado complete
. No parece funcionar para el compgen
incorporado, sin embargo, que parece lo que quiero. Intenté usar nospace
, y luego explícitamente incluir espacios al final de las opciones apropiadas, pero parece que no lo están logrando.
¿Alguien sabe cómo obtener espacios al final de algunas opciones, pero sin espacios al final de otras?