Disabilita il completamento della scheda bash


19

È possibile disabilitare il completamento automatico di bash premendo il tasto Tab?

Il motivo per cui voglio fare questo è che spesso incollo il codice da un editor in cui utilizzo il carattere di tabulazione anziché un numero di spazi per l'indentazione, nel mio terminale.

E no, non puoi convincermi a usare gli spazi invece delle schede.


In zsh, il tasto Tab inserisce una scheda se la si preme all'inizio di una riga (prima di qualsiasi carattere non bianco). Non credo che bash possa essere programmato per questo (puoi associare un tasto a una funzione bash, ma AFAIK non puoi innescare un completamento da quella funzione bash).
Gilles 'SO- smetti di essere malvagio' il

Risposte:


16

mettere

 set disable-completion on

string ~/.inputrce riavviare la shell. disabiliterà affatto il completamento.


non solo a bash però ...
anno

8
Affinché influisca solo su Bash, anziché includere quella riga nel ~/.inputrcfile, aggiungere questo al file di avvio della shell appropriato:bind 'set disable-completion on'
Sospeso fino a ulteriore avviso.

1
Cosa ha detto Dennis e il file di avvio appropriato è ~/.bashrc(se non accetta shell di login, aggiungi source ~/.bashrca ~/.bash_profile).
Gilles 'SO- smetti di essere malvagio' il

6

Per disabilitare il completamento della scheda Bash solo temporaneamente puoi avviare un Bash con l' --noeditingopzione:

alias noed='bash --noediting'

6

La soluzione di Dennis

bind 'set disable-completion on'

può essere fatto al volo anche in Bash. Non è necessario inserirlo in .bashrc.

La soluzione di Musta (bash --noediting) funziona ma disabilita anche la modifica della riga di comando.

Un altro modo è

bind -u complete

(disinserimento dell'associazione dei tasti associata a "complete")

http://www.gnu.org/software/bash/manual/bashref.html , 4.2 Comandi incorporati in Bash.


La risposta corretta alla domanda "Come posso disabilitare temporaneamente il completamento di Bash?" Questo aiuta molto quando navighi in una directory con oltre 81.000 file e non puoi nemmeno Ctrl + C senza aspettare due minuti per far tornare Bash con un prompt.
TheDudeAbides,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.