2011年3月16日 星期三

設定 screenrc hardstatus 的 STRING ESCAPES

忘記之前有沒有貼過,更新一下加料版的 ~/.screenrc ,用 screen -DR 啟動

# http://jonny.ubuntu-tw.net/2011/03/screenrc-of-vimperator-like.html
# http://blog.eater.org/2008/12/new-screenrc-hardstatus-string.html
# http://www.debian-administration.org/articles/560
vbell off
defutf8 on # default new window encoding
defscrollback 8192
termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm' # 開啟 256 色模式
hardstatus string "${USER}@%H %-Lw %{= BW}%54> [current: %n ] *%t%{-} %+Lw%< %= Date: %Y/%m/%d Time: %0c Loading: %l"

新加了 defutf8 on 之後 screen -UDR 改成 screen -DR 可以不用加 U 選項,新加 defscrollback 8192 將 Ctrl + a + ESC 的 Page Up/Down buffer 由 100 行改 8192 行,Ctrl + q 或 Ctrl + a + q 離開。另外就是 hardstatus 加比較多料,主要分成三段:

一、登入帳號跟主機名稱
"${USER}@%H "

二、 參考別人從 screen manpage 改的各個 screen window,目前 window 會加 [] 包住,對 screen manpage 的 STRING ESCAPES 還是不太瞭解,要再花時間看
"%-Lw %{= BW}%54> [current: %n ] *%t%{-} %+Lw%<

三、新增日期時間跟 Load average 會隨 window 增加被擠到後面
"%= Date: %Y/%m/%d Time: %0c Loading: %l"

參考以下作者的修改:
  1. 凍仁的 Ubuntu 筆記: screenrc of Vimperator-like
  2. blog.eater.org: New screenrc & hardstatus string
  3. An introduction to the visual features of GNU Screen
  4. man screen