Topic: Using Screen to extend the terminal
Ive been playing with 'screen' a bit lately.
If you arent familiar with it, heres a decent article on it.
Screen enables you to spawn a nearly unlimited number of "screens" in a terminal.
it also has a ~/.screenrc configuration file which has options for key bindings, number of screens to launch when you start the app,
and what apps to start in each screen.
I dont have a graphical login manager installed, so i have screen set up tp provide a complete minimal working environment when im not running an X session.
By invoking 'screen' in a terminal,
Elinks, Alpine mail, irssi, finch IM client, newsbeuter, rtorrent,midnight commander, nVLC,or my MPD controller start with their respective screen sessions indicated on the bottom of the terminal..
Heres my ~/.screenrc:
## ~/.screenrc
#
startup_message off
vbell off
bell_msg '^G'
activity "active: %n (%t) [%w:%s]"
msgwait 5 # 1 second messages
defscrollback 30000
#caption splitonly "%{= B} %{= G}%{R}%%t"
# always caption current window
caption always '%{= M} %= %{= w}%-w%{+b r}%n*%t%{-b r}%{w}%+w %= %{= M}'
autodetach on
deflogin on
defflow off
nethack on
defutf8 on
altscreen on
defbce on
nonblock on
defhstatus "screen: ^En (^Et)"
terminfo urxvt-256color* 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm'
#hardstatus alwayslastline '%{= M} %H%{= G} %l %= %{= w}%-w%{+b r}%n*%t%{-b r}%{w}%+w %= %{c}%d %D %{B}%c '
#hardstatus alwayslastline "%{= wd}%?%-Lw%?%{=br WB}%n*%f %t%{=r dw}%?(%u)%?%{= wd}%?%+Lw%?%{=r dw}"
# programs
screen -t WEB 0 elinks
screen -t MAIL 1 alpine
screen -t IRC 2 irssi
screen -t CHAT 3 finch
screen -t NEWS 4 newsbeuter
screen -t TOR 5 rtorrent
screen -t FILES 6 mc
screen -t HTOP 7 htop
screen -t VLC 8 nvlc
screen -t BASH 9 bash
# keybindinigs
bindkey "^[@" prev
bindkey "^@@" next The default key bindings are kind of odd at first.
Cntl-a primes screen for input.
then 0-9 will take you to that respective screen.
n=next,
p=previous
k= kill
c= creates a new screen
man screen for LOTS more info...
Last edited by illumin8 (2010-03-24 03:56:26)
