Wie deaktiviere ich die doppelte Registerkarte, um die verfügbaren Befehle in Bash anzuzeigen?

3386
ukanth

Gibt es eine Möglichkeit, das Verhalten der doppelten Tabulatortaste zu deaktivieren (zweimaliges Drücken der Tabulatortaste zeigt verfügbare Befehle in Bash an)?

3

4 Antworten auf die Frage

4
Richard Hoskins

Bash verwendet readline für die Vervollständigung und die Tastenbindung. Sie können Ihre eigenen Optionen in ~ / .inputrc und systemweite Optionen in / etc / inputrc einstellen. Wenn diese nicht vorhanden sind, können Sie sie selbst erstellen. Diese werden beim Shell-Login gelesen. Änderungen werden daher erst wirksam, wenn Sie eine neue Login-Shell erstellen.

Wenn Sie die Fertigstellung vollständig deaktivieren möchten, können Sie ein typisches GNU "yes to no" verwenden:

set disable-completion on 

Wenn Sie den Vorgang abschließen möchten, aber nur nicht mit dem Tabulator, können Sie den Tabulator binden, um sich selbst einzufügen:

TAB: self-insert 

Dadurch können Sie die Vervollständigung weiterhin mit ESC ESC verwenden, oder Sie können die Vervollständigung an einen anderen Schlüssel Ihrer Wahl binden, z. B. Ct:

TAB: self-insert C-t: complete 

Es gibt eine Menge Anpassungen, die Sie vornehmen können. Ich verweise Sie auf die Readline- und Bash- Dokumentation für weitere Informationen.

2
Nobody

Sie können die Tastenzuordnungen auswählen, die Sie deaktivieren möchten, ohne die Autovervollständigung deaktivieren zu müssen.

Beispiel: Um die Autovervollständigung für mehrere Esc-Tasten zu deaktivieren, fügen Sie Ihrem ~ / .inputrc Folgendes hinzu:

"\e\e": ""

Lesen Sie den Abschnitt "Readline" der bash-Manpage für detaillierte Informationen.

1
Ivan Vučica

Sie können die automatische Vervollständigung vollständig deaktivieren. Einige Informationen :

Ich bin davon abhängig, was Sie genau machen möchten.

Wenn Sie nur die erweiterte automatische Vervollständigung deaktivieren möchten, können Sie entweder "complete -r" verwenden oder / etc / bash_completion entfernen. *

Das Lesen der Manpage für "complete" könnte hier helfen. Es ist eine Shell-Sache, es hat wirklich nichts mit einer bestimmten oder anderen Distribution zu tun.

-1
sybreon

Eine andere Möglichkeit - bash (und Freunde) vollständig deaktivieren! Es gibt viele andere Shells, die unter Linux verwendet werden können.