2012-10-17 10 views
8

Questa domanda è su come utilizzare MacVim e ZSH su Mac OS X.ZSH - Corretta Shell di input/output all'interno di Vim/MacVim

Sto usando la shell ZSH ed è configurato per utilizzare il prompt Color, e tutto funziona perfettamente con ZSH stesso.

Tuttavia, quando ho creato questa shell per essere il mio difetto con Vim (usin: set shell=zsh\ -li), vim mi dà i seguenti simboli durante l'immissione o l'emissione di testo:

[35mnikhgupta[00m at [[33mMacbookPro[00m in [01;32m~[00m [00m 

mentre dovrebbe semplicemente dire:

nikhgupta at MacbookPro in ~ 

Quando inserisco del testo, ottengo gli stessi strani simboli, probabilmente perché sto usando al volo l'evidenziazione della sintassi per la mia shell ZSH. Ho dedotto che questi simboli sono codici colore?

Qualcuno può aiutarmi su come scartare questi codici colore e semplicemente stampare il testo in Vim shell?

saluti

+0

è la vostra obiettivo di utilizzare la sintassi colorata che evidenzia _inside_Vim? – jahroy

+0

no .. invece, voglio rimuovere tutta la sintassi colorata (che è presente nella mia shell ZSH di login) per il comando shell (': sh') all'interno di Vim. – Stoic

+0

GUI Vim (MacVim) o CLI Vim? Non c'è modo di farlo nella GUI Vim che non ha una shell incorporata in grado di visualizzare i colori e nessuna ragione per la quale dovrebbe interrompersi in CLI Vim. – romainl

risposta

2

Quando si esegue :shell dal MacVim, il valore di $TERM è impostato su dumb. Potresti usarlo per configurare il tuo ambiente ZSH di conseguenza.

Non ho familiarità con zsh, tuttavia, così sarete da soli per scrivere il blocco condizionale corretto. In bash, sarebbe quella faccia:

if [ $TERM == 'dumb' ]; 
    then 
    echo 'Special setup for MacVim' 
fi 

In realtà, questo problema mi infastidiva fuori per un po 'così che ho appena scritto questo per il mio uso (in bash):

if [ $TERM == 'dumb' ]; 
    then 
    # no colors 
    export PS1="\n\w\n\u $ " 
    else 
    # colors 
    export PS1="\n\[\033[32m\]\w\n\[\033[1;31m\]\[\033[1;36m\]\u\[\033[0m\] $ \[\033[0m\]" 
fi 
Problemi correlati