Skip to content

Instantly share code, notes, and snippets.

@Phaiax
Last active October 18, 2016 16:18
Show Gist options
  • Save Phaiax/2d97731b0acc7c3c4055bf5ddcbeb104 to your computer and use it in GitHub Desktop.
Save Phaiax/2d97731b0acc7c3c4055bf5ddcbeb104 to your computer and use it in GitHub Desktop.
# Dateiname: .screenrc
# Speicherort: Homeverzeichnis
# Diese Datei enthaelt Befehle fuer screen. screen fuehrt sie beim starten aus.
# Jeden dieser Befehle kann man auch benutzen wenn screen schon gestartet ist.
# Mit <Strg+A :> startet man den Modus, der diese Befehle akzeptiert.
# Mehr Informationen im internen ITE Wiki
# und unter https://www.gnu.org/software/screen/manual/screen.html
####################################################################
# hardstatus: Hiermit wird die unterste Zeile schoen farbig gemacht, der Hostname und Uhrzeit und Datum kommen dazu.
# https://www.gnu.org/software/screen/manual/screen.html#String-Escapes
# %{} sind farbcommandos
# %H ist der Hostname
# %? %? Eine Art if
# %1` Commando 1 ausfuehren: https://www.gnu.org/software/screen/manual/screen.html#Backtick
# %= padding (auffuellen mit nichts)
# %-w %+w Fenster vor bzw nach dem aktuellen Fenster auflisten
# %n Fensternr
# %t Fenstertitel
# %m %d %y %c %A : Monat Tag Jahr Uhrzeit
hardstatus alwayslastline
hardstatus string '%{= kG}[%{G}%H%? %1`%?%{g}][%= %{= kw}%-w%{+b yk} %n*%t%?(%u)%? %{-}%+w %=%{g}][%{B}%d.%m.%y %{W}%c%{g}]'
####################################################################
# caption ist das gleiche wie hardstatus, aber fuer die unterregionen wenn man die konsole splittet (siehe unten)
#
caption splitonly '%{=r dd}%=%{-r}%?%F%{+b yK}%:%{+b wk}%? %n %t%?(%u)%? %{=r dd}%='
####################################################################
# huge scrollback buffer
defscrollback 5000
####################################################################
# no welcome message
startup_message off
####################################################################
# 256 colors
attrcolor b ".I"
termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm'
defbce on
####################################################################
# Anfangs geoeffnete Fenster:
# screen -t <fenstername> <fensternummer> <programm>
screen -t MAV1 1 bash
screen -t MAVsource 2 bash
screen -t Python 3 python
screen -t Home 4 bash
screen -t Projects 5 bash
# Wieder zum ersten fenster gehen
select 1
####################################################################
#
# Neue Tastenkombination erstellen:
# bind: <Taste> <Befehl ...>
bind c screen 1 # window numbering starts at 1 not 0
# normalerweise ist der standard fuer <Strg+A c> bind c screen 0
# dann wird von 0 ausgehend die erste freie nummer gesucht.
# Die Nr 0 ist aber unpraktisch beim Screenwechseln <Strg+A 0>
bind 0 select 10
####################################################################
# get rid of silly xoff stuff
bind s split
####################################################################
# Tastenkombinationen
#
# bind (siehe oben) erstellt eine Tastenkombination fuer <Strg+A __>
# bindkey erstellt eine Tastenkombination die auch ohne Strg+A funktioniert.
#
# Die kryptischen Werte fuer bindkey erhaelt man, wenn man in der konsole
# `read` ausfuehrt und dann die tastenkombination tippt.
# Bei gespitteten Fenstern mit <Strg+Rechts> usw navigieren
bindkey "^[[1;5D" focus left
bindkey "^[[1;5C" focus right
bindkey "^[[1;5A" focus up
bindkey "^[[1;5B" focus down
# Das Fenster der aktuellen Region wechseln mit F3 (prev) and F4 (next)
# (Geht auch mit <Strg+A NUMMER>)
bindkey "^[OR" prev
bindkey "^[OS" next
####################################################################
# Tastenkombinationen: Layout umdesignen
# F2 puts Screen into resize mode. Resize regions using hjkl keys.
bindkey "^[OQ" eval "command -c rsz" # enter resize mode
# Im Resize modus: use hjkl keys to resize regions
bind -c rsz j eval "resize -5" "command -c rsz"
bind -c rsz k eval "resize +5" "command -c rsz"
# Im Resize modus: quickly switch between regions using tab and arrows
bind -c rsz \t eval "focus" "command -c rsz" # Tab
bind -c rsz -k ku eval "focus up" "command -c rsz" # Up
bind -c rsz -k kd eval "focus down" "command -c rsz" # Down
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment