Wie schalte ich die clevere Tab-Vervollständigung in Ubuntu aus oder passe sie an (Programmable Completion)?

9

Wenn ich in Ubuntu verschiedene Befehle in der Befehlszeile ausführe und die Tab-Vervollständigung für Dateien verwende. Die einzigen Dateien, die mir gegeben werden, haben die entsprechende Erweiterung für den von mir ausgeführten Befehl. Zum Beispiel..

xmms <tab><tab>

würde alle MP3s im aktuellen Verzeichnis und keine JPEGs auflisten.

Meistens ist dies sehr nützlich. Wenn die gewünschte Datei jedoch eine falsche Erweiterung hat oder die Erweiterung gültig ist, die Tab-Vervollständigung dies jedoch nicht glaubt, wird die Datei nicht aufgelistet oder vervollständigt. Damit

  1. Gibt es eine Möglichkeit, diese Funktion zu deaktivieren (nur dumm für jede Datei, unabhängig davon).
  2. Wie passen Sie die Erweiterungen an, die für einen bestimmten Befehl gültig sind?

Vielen Dank

Peter

Vagnerr
quelle
Gleich wie diese: superuser.com/questions/421397/...
März

Antworten:

1

Kommentieren Sie diese Zeilen aus /etc/bash.bashrc(möglicherweise in ~/.bashrc):

if [ -f /etc/bash_completion ]; then
 . /etc/bash_completion
fi
John T.
quelle
10

Dies wird in bash als "Programmable Completion" bezeichnet. Verwenden Sie <tab>diese Option, um einen programmierbaren Abschluss zu versuchen, oder verwenden Sie M-/, um den Standardabschluss zu versuchen (normalerweise Dateien und Verzeichnisse). Siehe auch: http://spikeypillow.com/item/30/catid/4

Annika Backstrom
quelle
Vielen Dank für den offiziellen Namen (Hinzufügen zum
Fragentitel
Wie beantwortet dies die Frage?
Shantnu
@ Shantnu Wir waren jung. Es wurden Fehler gemacht.
Annika Backstrom
2

Um das Abschlussverhalten zu ändern, bearbeiten Sie einfach / etc / bash_completion. Scrollen Sie nach unten zu der Liste der Programme und zugehörigen Erweiterungen. Von dort sollte es ziemlich selbsterklärend sein.

Kim
quelle