Alles begann mit einem einfachen
alias gv='gvim --remote-quiet'
und gv Space Tabgibt jetzt nichts an, wo es normalerweise Dateinamen geben sollte. Seltsamerweise
alias gvi='gvim --remote-quiet'
funktioniert wie erwartet. Ich habe eindeutig eine Problemumgehung, aber ich würde gerne wissen, was mich gvfür eine spezielle Verarbeitung erwischt. compoptist keine Hilfe, da gvdieselben Einstellungen verwendet werden, mit lsdenen der Dateiname korrekt vervollständigt wird.
$compopt gv
compopt +o bashdefault +o default +o dirnames -o filenames +o nospace +o plusdirs gv
$ compopt ls
compopt +o bashdefault +o default +o dirnames -o filenames +o nospace +o plusdirs ls
Der completeBefehl ist etwas hilfreicher, sagt mir aber nicht, warum meine beiden Zeichen zur Änderung ausgewählt wurden:
$ complete -p gv
complete -o filenames -F _filedir_xspec gv
$ complete -p ls
complete -o filenames -F _longopt ls
$ complete -p echo
bash: complete: echo: no completion specification
$ alias gvi='gvim --remote-silent'
$ complete -p gvi
bash: complete: gvi: no completion specification
Woher kam complete -o filenames -F _filedir_xpec gves?