2011-06-27 6 views
5

właśnie zainstalowałeś (niesamowite) Oh-my-zsh pakiet aby dostosować mój wiersz zsh, ale mam uderzyć ten dziwny problem:(oh-my-) uzupełnianie nazw plików zsh zmienia prąd czcionki

Gdybym użyj autouzupełniania w nazwie polecenia (np. sou<TAB> ->source), wszystko działa zgodnie z przeznaczeniem. Jeśli jednak użyję autouzupełniania w nazwie pliku (np. source .zshr<TAB> ->source .zshrc), czcionka zmieni się na pogrubioną czcionkę dla całego polecenia. Używam pogrubienia w moim PROMPT, jak również w kolorach, ale nie szarej, więc nie wiem skąd pochodzi ten kod koloru; również fakt, że dzieje się to tylko podczas wypełniania nazwy pliku, jest dla mnie zagadką.

Oto moje PROMPT i RPROMPT (inspirowane motywem Steve'a Losha o prose).

PROMPT=' 
%B%F{208}%n%{$reset_color%}%{$fg_bold[white]%}@%B%F{039}$(box_name) 
%{$reset_color%}:%{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%} 
$(hg_prompt_info)$(git_prompt_info) 
$(virtualenv_info)$(prompt_char) ' 

RPROMPT='${return_status}%{$reset_color%}[%t]' 

Z góry dziękuję.

Odpowiedz

6

W rzeczywistości rozwiązanie było raczej proste: kolor & zmiany masy wprowadzane przez% B i% F muszą być zamknięte przez% b i% f, a nie przez $ reset_color ... to wszystko.

+0

Miałem ten sam problem i również byłem zakłopotany. Dzięki. –

0

Resetuj kolory tuż przed zamknięciem pojedynczych cudzysłowów na obu monitach; lub możesz również użyć sekwencji specjalnej %{^[[0m%}. Zauważ, że ^[ to jeden znak będący kontrolną ucieczką, którą możesz wpisać, przytrzymując klawisz control i wpisując v, a następnie zwolnij i naciśnij raz klawisz Escape.

+0

Nie, to nadal nie działa dla mnie ... – antony