Combinando il completamento della scheda di zsh con l'insensibilità alle maiuscole


10

Ho zsh 5.0.7 configurato per utilizzare il completamento della scheda senza distinzione tra maiuscole e minuscole

zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'

Il problema che sto riscontrando è che l'insensibilità di questo caso spesso mi porta alla necessità di premere Tabun tempo extra. Ad esempio, la mia home directory contiene le cartelle "Desktop", "Documenti" e "Download". Se sono nella mia cartella home e scrivo

cd D

e poi premo Tab, vedo le tre possibilità elencate per me. D'altra parte, se scrivo

cd d

e quindi premere Tabquindi la "d" cambia in "D" ma non vedo il menu di completamento; Devo premere di Tabnuovo perché ciò accada. C'è un modo per ottenere il menu di completamento nello stesso momento in cui la "d" viene cambiata in una "D"?


hai l'opzione menucomplete abilitata?
llua,

@llua No, non l'ho fatto. Questo sembra essere quello che voglio. Puoi pubblicarlo come risposta?
bdesham,

Risposte:


9

L'abilitazione dell'opzione MENU_COMPLETEsalterà la correzione e inserirà immediatamente la prima corrispondenza possibile.


4
Grazie per il consiglio! Per quelli che si chiedono, come me, il comando completo è setopt MENU_COMPLETE, deve essere inserito in.zshrc
cbcoutinho il

1

Un'altra impostazione utile potrebbe essere

setopt no_list_ambiguous

Correggerà da "c" a "C" e mostrerà il menu di completamento.

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.