Ich habe mit der Shell gearbeitet und habe sie versehentlich tabnach dem Schreiben automatisch vervollständigt _e
, was zu folgte _expand
.
Was macht dieser Befehl? Ich konnte online keine Erklärung finden. Die einzigen Referenzen, die ich hier auf Ask Ubuntu finden konnte, waren:
- Zsh-Eingabeaufforderung kann nicht geändert werden
- Terminal Autocomplete-Funktionalität kann nur von Anfang an übereinstimmen?
Aber sie beantworten meine Frage nicht. Stattdessen öffnen sie über Befehle wie weitere Fragen der gleichen Art up _complete
, _complete_as_root
etc.
command-line
bash
auto-completion
functions
scristalli
quelle
quelle
type
. Es war mir nicht klar, warum ich diese Funktionen nicht als aufrufen konnte_function_name [argument]
, aber jetzt verstehe ich, dass sie ihren Zweck als Autocomplete-Erweiterungen erfüllen, und dass sie in meinem Autocomplete erscheinen, liegt einfach daran, dass sie deklariert sind (aber nicht gemeint sind direkt angerufen werden)._expand
Funktion manipuliert wie alle anderen vollständigen Funktionen nur dasCOMPREPLY
Array, basierend auf Werten,$cur
die das Vervollständigungsmuster enthalten.