2015-06-20 14 views
39

Ho cercato un po 'di tempo per una patch per questo. Solitamente su un terminale Unix/Linux quando si preme il tasto si completerà automaticamente fino a quando ci sono diverse opzioni e quindi elencherà le opzioni sottostanti da selezionare. Per esempio:Terminale automatico per Mac completo

cd he 
helpFolder/ helpMe/ heIsThere/ 
cd help 

Ora con il terminale Mac ti costringe a premere due volte per visualizzare le opzioni e mi chiedevo se è possibile cambiare questa impostazione ad una pressione di scheda?

risposta

18

mettere questo nel vostro ~/.inputrc:

set show-all-if-ambiguous on 

Avrete bisogno di riavviare lo shell (per esempio con l'apertura di una nuova finestra di terminale o digitando exec /bin/bash).

+0

dove è ~/.inputrc file –

+2

@Vikas digitare semplicemente in nano ~/.inputrc o pico .inputrc per modificarlo. a causa del periodo, il file è nascosto in modo da non vederlo in nessun browser. – Bqin1

79
  1. Digitare terminale nano ~/.inputrc
  2. Incollare il seguente su righe separate

    set completion-ignore-case on 
    set show-all-if-ambiguous on 
    TAB: menu-complete 
    
  3. premere Control + O per salvare le modifiche al .inputrc seguito da Ctrl + X per uscire
  4. Aprire una nuova Finestra o scheda del terminale o digitare "login" per aprire una nuova sessione con le regole in vigore
  5. Digitare e premere il tasto Tab

Src: http://osxdaily.com/2012/08/02/improve-tab-completion-in-mac-os-x-terminal/

+1

Per altre persone che provano questo: ho provato questo in ~/.profile e ho ricevuto un errore quando ho riavviato: -bash: TAB: menu- completo: comando non trovato. In .inputrc ha funzionato bene. –

+0

è possibile farlo mostrare tutto se è ambiguo? adesso quando tocchi due volte la scheda per una directory vuota, non mostra nulla – VTS12

4

Che cosa si vuole cambiare è l'impostazione della shell Bash. La mia versione del sistema operativo è 10.11.6 e io uso mvim, qui solo vim o vi, se ~/.inputrc non esiste, allora è necessario crearne uno nuovo.

  1. In tipo di terminale vim /.inputrc.
  2. La variabile di completamento-ignorare caso e show-all-se-ambiguo bisogno di essere permesso di essere su ON, questo è fatto da pasta di tali impostazioni in due linee, set completion-ignore-case on e set show-all-if-ambiguous on

  3. Aggiungi TAB: menu-complete e scrivi & lascia il vim. : wq

  4. Esci dal terminale in esecuzione, Comando + Q.
  5. Avviare nuovamente il terminale e verificare il risultato.
Problemi correlati