From 2e145388010a04f6b28af2b2b6c3731d1dd37141 Mon Sep 17 00:00:00 2001 From: Ahmed Abdelhalim Date: Sat, 27 Mar 2021 14:30:42 +0100 Subject: Add screenrc configurations --- .screenrc | 130 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100644 .screenrc (limited to '.screenrc') diff --git a/.screenrc b/.screenrc new file mode 100644 index 0000000..6f54649 --- /dev/null +++ b/.screenrc @@ -0,0 +1,130 @@ +# GNU Screen configuration file +# Balaji S. Srinivasan +# +# Notes +# ----- +# 1. Modified to work with Emacs: C-t is the action command, not C-a. +# 2. To change the colors of the hardstatus line, change this line: +# sorendition "+b +kG" +# Example: blue (+b) highlight with black text (k) on a green background (G) +# Example: sorendition "+r +kG" is red highlighting with black text on a green background +# +# Modification of original files by Sven Guckes, Sarunas Vancevicius, and Mike Perry +# Sarunas Vancevicius original: http://www.redbrick.dcu.ie/~svan/configs/screenrc +# Mike Perry original: http://fscked.org/writings/225notes/unix/.screenrc + +## ----------------------------------------------------------------------------------------- +## -- 1) Set variables and keybindings for emacs compatibility (remapping Ctrl-A to Ctrl-T) +## ----------------------------------------------------------------------------------------- +markkeys "h=^B:l=^F:$=^E" # emacs style keybindings during copy mode movement in screen +autodetach on # default: on +crlf off # default: off +#deflogin off # default: on +hardcopy_append on # default: off +startup_message off # default: on +vbell off # default: ??? +escape "^Tt" # ctrl-A default interferes with emacs keybindings for terminal +defutf8 on # unicode by default +defscrollback 10000 # default: 100 +silencewait 15 # default: 30 +activity "activity in %n (%t) [%w:%s]~" +bell "bell in %n (%t) [%w:%s]~" + +# Change keybindings for convenience +bind ^Q mapdefault +bind q mapdefault +bind k +bind ^k +bind . +bind ^\ +bind \\ +bind ^h +bind h +bind '' +bind 'L' +#bind 'I' login on +#bind 'O' login off +bind '}' history +bind ^a + +# aterm bindings +bindkey "Oc" next +bindkey "Od" prev + +# Emacs compatibility +# Easy switching of windows without p/n confusion, as ctrl-p and ctrl-n +# are frequently used in emacs but u/j are not... +bind 'u' prev +bind ^U prev +bind 'j' next +bind ^J next + +# Emacs compatibility for screen movement (if you use subscreen regions) +# Using tab to move around regions gets annoying. These help. +bind ^P focus up +bind 'p' focus up +bind ^N focus down +bind 'n' focus down +bind ^F focus top +bind 'f' focus top +bind ^B focus bottom +bind 'b' focus bottom + +## ------------------------------------------------------------------------------------------------- +## -- 2) Hardstatus line (aka navigation bar at bottom) +## and sorendition (aka color scheme for navigation bar) +## ------------------------------------------------------------------------------------------------- + +# 2.1) sorendition = color scheme +# Set the colors for the "messages" and "text marking" +# Example: "+b kG" = blue screen, black text, green background. Change +# to "+b kR" and so on to distinguish machines. +sorendition "+b kG" + +# 2.2) hardstatus = navigation bar @ bottom +hardstatus alwayslastline "%H %-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<" + +# 2.3) Autoload two screen tabs for emacs/bash. +screen -t bash 0 +#screen -t bash 1 + +# 2.4) Description of the keywords used in hardstatus +# caption always "%?%F%{-b bc}%:%{-b bb}%?%C|%D|%M %d|%H%?%F%{+u wb}%? %L=%-Lw%45>%{+b by}%n%f* %t%{-}%+Lw%-0<" +# +# Anything I don't describe is treated literally. +# +# %? - Start of a conditional statement. +# %F - Use this part of the statement if the window has focus (i.e. it +# is the only window or the currently active one). +# %{-b bc} - Turn off bold, blue foreground, cyan background. +# %: - else +# %{-b bb} - Turn off bold, blue foreground, blue background (this obscures +# the text on non-focused windows and just gives a blue line). +# %? - End conditional statement. +# %C - time (hh:mm, leading space) in 12 hour format +# %D - Three-letter day-of-week appreviation +# %M - Three-letter month appreviation +# %d - Day of the month +# %H - hostname +# %? - Start of conditional statement. +# %F - Use this part of the statement if the window has focus. +# %{+u wb} - underlined, white foreground, blue background +# %? - End conditional (if not focused, text remaind blue on blue). +# %L= - truncation/padding point. With the 'L' qualifier, basically +# just acts as a reference point. Further truncation/padding is +# done relative to here, not the beginning of the string +# %-Lw - window list up to but not including the current window (-), +# show window flags (L) +# %45> - truncation/padding marker; place this point about 45% of the +# way into the display area (45) +# %{+b by} - add bold (still underlined from before), blue foreground, +# yellow background +# %n - number of the current window +# %f - flags for current window +# %t - title of current window +# %{-} - undo last color change (so now we're back to underlined white +# on blue) (technically, this is a pop; a second invocation +# would drop things back to unadorned blue on cyan) +# %+Lw - window list from the next window on (-), show window flags (L) +# %-0< - truncation/padding point. Place this point zero spaces (0) +# from the right margin (-). -- cgit v1.2.3