Strano comportamento di completamento automatico zsh


4

Ogni volta che uso il completamento automatico della scheda con zsh invece di completare la stringa corrente, mi dà una nuova stringa + opzioni da completare. È difficile da spiegare, quindi ecco un esempio. Questo è ciò che accadrebbe se digito 'ls Nue' e premo tab.

[me@mbp:/Volumes/hdd/music]: ls Neu    ls Neu
 Neuraxis/              Neurosis/              Neutral\ Milk\ Hotel/

Se cancello il secondo "ls Nue", non riesco a cancellare lo spazio bianco e il primo. Se premo Invio, è come se avessi appena inserito una riga vuota. Qualcuno sa cosa sta succedendo. Un po 'di googling suggerisce che questo è un problema con il mio prompt.

"%{$fg[blue]%}[%n@%m%{$fg_bold[magenta]%}:%d%{$reset_color%}%{$reset_color%}$fg[blue]]$reset_color%}: "

Risposte:


3

Non sono sicuro che ciò possa causare il tuo problema, ma il tuo prompt potrebbe richiedere alcune %{%}coppie attorno a sequenze di colori o altri elementi non stampabili. Se mostri qual è il valore di $PS1, posso verificarlo.


Grazie per la tua risposta. Ho dato un'occhiata in giro e mi è stato suggerito che probabilmente era il mio suggerimento a causare i problemi. Sono riuscito a risolverlo con un po 'di gioco, ma non sono riuscito a capire esattamente cosa lo causasse. Aggiungerò il mio prompt originale alla domanda.
Leda,

@Leda: potrebbe essere utile vedere come vengono assegnate le variabili e le matrici di colore, tuttavia sembra che tu abbia i %{%}posti giusti. Hai un extra $reset_color, ma dubito che sia la causa del tuo problema. Prova invece questo prompt, dovrebbe essere equivalente e vedi se funziona correttamente per te e risolve il tuo problema: '%F{blue}[%n@%m%B%F{magenta}:%d%b%F{blue}]%f: '( %{%}non sono necessari).
Dennis Williamson,

% {...%} mancante attorno a $ fg [blu] alla fine. Il moderno zsh ti permetterà di usare% F {...} /% f per il supporto del colore senza doversi preoccupare del posizionamento del cursore e% {...%}
Phil P

@Phil: buon occhio. L'ho perso (quello di chiusura è lì, ma non quello di apertura).
Dennis Williamson,

Risolto il problema rimuovendo caratteri strani nel mio tema Oh-My-Zsh per il terminale vanilla: github.com/robbyrussell/oh-my-zsh/issues/1282
Kieran Andrews,

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.