Screenrc/ru
Файл ~/screenrc и описание некоторых настроек. Стащить дефолтовый .screenrc можно так:
cp /etc/screenrc ~/.screenrc
Итак. Вот он мой ~/.screenrc . Это стандартный /etc/screenrc, он переделан незначительно но удобно (для меня). Hardstatus это то что будет видно у Вас в заголовке окна putty. В терминале (терминальном ssh) он как правило не виден.
hardstatus string '[#%n]::[%t]'
Deflogin - сразу запускать оболочку от имени юзера запустившего screen. Т.е. НЕ будет запрашивать login\password при запуске.
deflogin on
vbell это визуальный сигнал. Используется в том случае если звуковой сигнал отключен или не может быть воспроизведен.
vbell on
Сообщение при 'vbell on', по идее оно появляется в заголовке окна. Или же в статусной строке.
vbell_msg "-!=!-!=!-!=!-!=!-!=!-!=!-!=!-!=!-!=!-!=!-!=!-!=!-!=!-!=!-!=!-"
Ниже идут настройки для терминалоа. Их лучше не трогать.
termcap facit|vt100|xterm LP:G0
terminfo facit|vt100|xterm LP:G0
termcap vt100 dl=5\E[M
terminfo vt100 dl=5\E[M
termcap facit al=\E[L\E[K:AL@:dl@:DL@:cs=\E[%i%d;%dr:ic@
terminfo facit al=\E[L\E[K:AL@:dl@:DL@:cs=\E[%i%p1%d;%p2%dr:ic@
termcap sun 'up=^K:AL=\E[%dL:DL=\E[%dM:UP=\E[%dA:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC:IC=\E[%d@:WS=1000\E[8;%d;%dt'
terminfo sun 'up=^K:AL=\E[%p1%dL:DL=\E[%p1%dM:UP=\E[%p1%dA:DO=\E[%p1%dB:LE=\E[%p1%dD:RI=\E[%p1%dC:IC=\E[%p1%d@:WS=\E[8;%p1%d;%p2%dt$<1000>'
termcap xterm|fptwist hs@:cs=\E[%i%d;%dr:im=\E[4h:ei=\E[4l
terminfo xterm|fptwist hs@:cs=\E[%i%p1%d;%p2%dr:im=\E[4h:ei=\E[4l
termcap xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
terminfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
termcap hp700 'Z0=\E[?3h:Z1=\E[?3l:hs:ts=\E[62"p\E[0$~\E[2$~\E[1$}:fs=\E[0}\E[61"p:ds=\E[62"p\E[1$~\E[61"p:ic@'
terminfo hp700 'Z0=\E[?3h:Z1=\E[?3l:hs:ts=\E[62"p\E[0$~\E[2$~\E[1$}:fs=\E[0}\E[61"p:ds=\E[62"p\E[1$~\E[61"p:ic@'
termcap wy75-42 nx:xo:Z0=\E[?3h\E[31h:Z1=\E[?3l\E[31h
terminfo wy75-42 nx:xo:Z0=\E[?3h\E[31h:Z1=\E[?3l\E[31h
termcap xterm hs@:cs=\E[%i%d;%dr:im=\E[4h:ei=\E[4l
terminfo xterm hs@:cs=\E[%i%p1%d;%p2%dr:im=\E[4h:ei=\E[4l
termcapinfo xterm Z0=\E[?3h:Z1=\E[?3l:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l
termcapinfo xterm* OL=100
termcapinfo xterm 'VR=\E[?5h:VN=\E[?5l'
termcapinfo xterm 'kh=\EOH:kI=\E[2~:kD=\E[3~:kH=\EOF:kP=\E[5~:kN=\E[6~'
termcapinfo xterm 'hs:ts=\E]2;:fs=\007:ds=\E]2;screen\007'
termcapinfo xterm 'vi=\E[?25l:ve=\E[34h\E[?25h:vs=\E[34l'
termcapinfo xterm 'XC=K%,%\E(B,[\304,\\\\\326,]\334,{\344,|\366,}\374,~\337'
termcapinfo xterm* be
termcapinfo wy75-42 xo:hs@
termcapinfo wy* CS=\E[?1h:CE=\E[?1l:vi=\E[?25l:ve=\E[?25h:VR=\E[?5h:VN=\E[?5l:cb=\E[1K:CD=\E[1J
termcapinfo hp700 'Z0=\E[?3h:Z1=\E[?3l:hs:ts=\E[62"p\E[0$~\E[2$~\E[1$}:fs=\E[0}\E[61"p:ds=\E[62"p\E[1$~\E[61"p:ic@'
termcap vt100* ms:AL=\E[%dL:DL=\E[%dM:UP=\E[%dA:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC
terminfo vt100* ms:AL=\E[%p1%dL:DL=\E[%p1%dM:UP=\E[%p1%dA:DO=\E[%p1%dB:LE=\E[%p1%dD:RI=\E[%p1%dC
termcapinfo linux C8
Если autodetach поставить off то при внезапном разрыве связи с shell'ом, screen будет убит а не отключен. В результате при новом подключении придется начинать все сначала... Оставить on.
autodetach on
Сообщение появляющееся при запуске screen'a (кажется там лицензия выползает).
startup_message off
Сообщение при detach'e screen'a
pow_detach_msg "Screen session of $LOGNAME $:cr:$:nl:ended." termcapinfo * 'hs:ts=\E_:fs=\E\\:ds=\E_\E\\'
Задается shell. Тот что указан ниже озночает что будет использоваться Ваш дефолтовый shell.
shell -$SHELL defhstatus "screen: ^En (^Et)"
Количество (байт или строк?) которое будет запоминать screen для прокрутки.
defscrollback 10000 altscreen on nethack on
Далее идут стандартные бинды клавиш и сочетаний.
bind k bind ^k bind . bind ^\ bind \\ bind ^h bind h bind 'K' kill bind 'I' login on bind 'O' login off bind '}' history register [ "\033:se noai\015a" register ] "\033:se ai\015a" bind ^] paste [.] bind = resize = bind + resize +3 bind - resize -3 bind ) select 10 bind ! select 11 bind @ select 12 bind \# select 13 bind \$ select 14 bind % select 15 bind \^ select 16 bind & select 17 bind * select 18 bind ( select 19
Здесь указывает логфайл. Если не нужен - закоментировать.
logfile ~/.logs/screen_%Y-%m-%d_%0c
У меня эти две клавиши в упор отказываются работать, хотя должны...
bindkey -k F3 prev bindkey -k F4 next
Если вы хотите чтобы вместо комбинации Ctrl+a было нажатие клавиши "`", раскоментируйте строчку ниже. Для набора ` в этом случае надо нажать `` (просто два раза).
#escape ``
Использовать заголовок окна?
hardstatus on
Ниже указаны варианты статусной строки с краткими описаниям. Я их составил пока подбирал себе хорошенький :) Тот что раскоментирован - мой нынешний. Любимый вариант. Выглядит он примерно так:
[#0]:[screenname] [0,01 0,01 0,01]::[asuka] [22:45:33]::[21/07/99]
caption always "%{gk}[#%n]:[%t] %=%{gk}[%H]::[%l] %=%{gk}[%c:%s]::[%d/%m/%y]"
#w=white;r=red;y=yellow;g=green;k=black?;c=light-blue;b=blue;m=roz;
#Green on black
#caption always "%{gk}[#%n]:[%t] %=%{gk}[%H]::[%l] %=%{gk}[%c:%s]::[%d/%m/%y]"
#Red on black
#caption always "%{rk}[#%n]:[%t] %=%{rk}[%H]::[%l] %=%{rk}[%c:%s]::[%d/%m/%y]"
#Dark Yellow on Black
#caption always "%{yk}[#%n]:[%t] %=%{yk}[%H]::[%l] %=%{yk}[%c:%s]::[%d/%m/%y]"
#Dark Blue on black
#caption always "%{bk}[#%n]:[%t] %=%{bk}[%H]::[%l] %=%{bk}[%c:%s]::[%d/%m/%y]"
А эта директива задает название окна по умолчанию. В данном случае она дает окну имя юзера.
shelltitle $USERNAME
На how-to или man эта записка не претендует. Просто дает возможность поиграть с внешним видом и управлением screen'a. Если же заинтересовались, наберите в консоли man screen или man screenrc и получите более подробную информацию по пунктам конфигурационого файла.