2012-11-24 11 views
7

Kendi Oh My Zsh temamı daha erken yapma yoluna gitmiştim. Her şey yolunda, komut satırında uzun satırlar yazdığımda (aşağıda görülen satırdan daha uzun), çizgi kaybolur. Bununla birlikte, pencereyi yeniden boyutlandırırsam çizgi tekrar görünür.Özel Oh My Zsh teması: uzun istemler kayboluyor/kesiliyor

Temamda, bunun olmasına neden olan bir şey var mı? Ek bir karakteri yazmak ve daha sonra bir silme ise

, imleç pencere kenarında yer alır.

Sen view the code for the theme here can. Sorunuzun ileride izleyiciler alamayan -

arada
# Build the prompt 
PROMPT=' 
' # Newline 
PROMPT+='${style_user}%n' # Username 
PROMPT+='${style_chars}@' # @ 
PROMPT+='${style_host}%m' # Host 
PROMPT+='${style_chars}: ' # : 
PROMPT+='${style_path}%c ' # Working directory 
PROMPT+='$(git_custom_status)' # Git details 
PROMPT+=' 
' # Newline 
PROMPT+='${style_chars}\$${RESET} ' 

cevap

11

, bağlantı yerine kodun kendisinin koda bir bağlantı gönderme ile sorunlardan birini vurgulayarak, kırık: İşte biz ilgileniyoruz düşünmek biraz tam bir resim.

Ben senin sorunun kullanmak 'renk' karakterler %{...%} bir çift kaçan gerektiğini düşünüyorum: Ben bu sorunu görmüyorum commit on github en son kullanma

%{...%} 
Include a string as a literal escape sequence. The string within the braces 
should not change the cursor position. Brace pairs can nest. 

- Tamir vermedi ? Ancak, özellikle TAB ile imleç yerleştirme ve çizgi çizimi ile ilgili bazı sorunlar görüyorum. Burada

enter image description here Preslenmiş TAB: TAB basıldığında, imlecin bir satır yukarı taşınır. enter image description here TAB burada. enter image description here

PROMPT her seferinde bir satır 'yeniden' yeniden çiziliyor. Bu %{...%} içinde renk kodlarını kapsül içine alarak sabittir:

# Solarized Dark colour scheme 
BOLD="%{$(tput bold)%}" 
RESET="%{$(tput sgr0)%}" 
SOLAR_YELLOW="%{$(tput setaf 136)%}" 
SOLAR_ORANGE="%{$(tput setaf 166)%}" 
SOLAR_RED="%{$(tput setaf 124)%}" 
SOLAR_MAGENTA="%{$(tput setaf 125)%}" 
SOLAR_VIOLET="%{$(tput setaf 61)%}" 
SOLAR_BLUE="%{$(tput setaf 33)%}" 
SOLAR_CYAN="%{$(tput setaf 37)%}" 
SOLAR_GREEN="%{$(tput setaf 64)%}" 
SOLAR_WHITE="%{$(tput setaf 254)%}" 

Orijinal ~/.zshrc olmadan emin% 100 değilim, ama bu istemi biraz artacaktır. :)

dışında portakal dışında, ayrıca daha taşınabilir olabilir bir terminal tabanlı Solarized profil ve zshcolors kullanabilirsiniz. Yine de, portakalı tput olmadan doğru alamadım.

#autoload colors && colors 
#SOLAR_YELLOW="%{$fg[yellow]%}" 
#SOLAR_ORANGE="%{$(tput setaf 166)%}" 
#SOLAR_RED="%{$fg[red]%}" 
#SOLAR_MAGENTA="%{$fg[magenta]%}" 
#SOLAR_VIOLET="%{$fg_bold[magenta]%}" 
#SOLAR_BLUE="%{$fg[blue]%}" 
#SOLAR_CYAN="%{$fg[cyan]%}" 
#SOLAR_GREEN="%{$fg[green]%}" 
#SOLAR_WHITE="%{$fg[white]%}" 
+0

Diğer değişkenlerden de mi kaçmalıyım yoksa sadece renkler mi? Örneğin, renkleri diğer değişkenler ile taklit ediyorum: "style_path =" $ {RESET} $ {SOLAR_GREEN} "' –

+0

@OliverJosephAsh Kaçırıldığına göre * bir yerlerde *, iyisin - mümkün olan en erken zamanda kaçtım 'SOLAR_ '), '' style_path' ''% {$ (tput sgr0)%}% {$ {tput değeri% 64} '' 'e genişleyecektir,' 'her iki değişken de zaten kaçtı -' yüksek 'değişkenlerden kaçtı' t * * incinir, ama bence bir avantaj yok :) – simont

İlgili konular