Próbuję screenustawić xtermtytuł. Mam to działające poza screen, ale screenzachowuje każdy tytuł, który był na miejscu, kiedy go uruchomiłem. Oto moje .bashrc:
funkcja bash_prompt_command () {
# Ile znaków $ PWD powinno być zachowanych
lokalne pwdmaxlen = 25
# Wskaż, że nastąpiło obcięcie reż
local trunc_symbol = ".."
katalog lokalny = $ {PWD ## * /}
pwdmaxlen = $ (((pwdmaxlen <$ {# katalog})? $ {# katalog}: pwdmaxlen))
NEW_PWD = $ {PWD / # $ HOME / \ ~}
lokalny pwdoffset = $ (($ {# NEW_PWD} - pwdmaxlen))
if [$ {pwdoffset} -gt „0”]
następnie
NEW_PWD = $ {NEW_PWD: $ pwdoffset: $ pwdmaxlen}
NEW_PWD = $ {trunc_symbol} / $ {NEW_PWD # * /}
fi
eksportuj NEW_PWD
}
PROMPT_COMMAND = polecenie bash_prompt_command
# Karta kolorów @ http://wiki.archlinux.org/index.php/Color_Bash_Prompt
przypadku „$ {TERM}” w
„xterm”)
TITLEBAR = '\ [\ 033] 0; \ u @ \ h> $ {NEW_PWD} \ 007 \]'
PS1 = "$ {TITLEBAR} \ [\ e [1; 32m \] [\ e [0; 36m \] \ u \ e [1; 32m \] @ \ e [1; 33m \] \ h \ e [ 1; 32m \]] \ e [0; 37m \] \ $ {NEW_PWD} / \ e [1; 32m \] \ $ \ [\ e [0m ”
;;
"ekran")
TITLEBAR = '\ [\ 033] 0; \ u @ \ h> $ {NEW_PWD} \ 007 \]'
ESC = „\ [\ ek \ e \\\]”
PS1 = "$ {TITLEBAR} \ [\ e [1; 32m \] [\ e [0; 36m \] \ u \ e [1; 32m \]] \ e [0; 37m \] \ $ {NEW_PWD} / \ e [1; 32m \] \ $ $ {ESC} \ [\ e [0m "
;;
*)
PS1 = "\ [\ e [1; 32m \] [\ e [0; 36m \] \ u \ e [1; 32m \] @ \ e [1; 33m \] \ h \ e [1; 32m \ ]] \ e [0; 37m \] \ $ {NEW_PWD} / \ e [1; 32m \] \ $ \ [\ e [0m ”
;;
esac
A oto moje .screenrc:
hardstatus alwayslastline
hardstatus string '% {= kg} [% {Y}% H% {g}] [% =% {= kw}%?% - Lw%?% {= b kR} (% {W}% n-% t%? (% u)%?% {= b kR})% {= kw}%?% + Lw%?%?% =% {g}] [% {Y}% l% {g}]% {g} [% {B}% m.% d.% Y% {G}% c% {g}] ”
termcapinfo xterm | xterms | xs | rxvt ti @: te @
termcapinfo xterm 'hs: ts = \ E] 2;: fs = \ 007: ds = \ E] 2; screen \ 007'
altscreen włączony
shelltitle „$ | bash”
Co robię niepoprawnie?
Aktualizacja (19 sierpnia 2010 r.):
Problem polega na tym, że po ustawieniu nie można zaktualizować tytułu terminala z poziomu ekranu alwayslastline. Więc moim rozwiązaniem było po prostu poddać się i zadowolić z góry ustalonym, użytecznym tytułem dla moich sesji ekranowych. Mój zaktualizowany .bashrci .screenrcmożna go znaleźć na stronie http://bitbucket.org/jsumners/rcfiles/src .