Wszystko zaczęło się od prostego
alias gv='gvim --remote-quiet'
i teraz gv
Space Tabnie daje nic tam, gdzie normalnie powinno dawać nazwy plików. Dziwnie,
alias gvi='gvim --remote-quiet'
działa zgodnie z oczekiwaniami. Oczywiście mam obejście, ale chciałbym wiedzieć, co przyłapuje mnie gv
na specjalnym przetwarzaniu. compopt
nie pomaga, ponieważ gv
udostępnia te same ustawienia, ls
co prawidłowe uzupełnianie nazw plików.
$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
complete
Komenda jest nieco bardziej pomocne, ale nie mówi mi dlaczego moje dwie postacie, ale wyróżniony zmiany:
$ 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
Skąd się wziął complete -o filenames -F _filedir_xpec gv
?