-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy path.screenrc
118 lines (95 loc) · 3.45 KB
/
.screenrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
# turns off the license screen
startup_message off
# always use a login shell
shell -$SHELL
# cleaner shell title
shelltitle ''
# allows you to keep what was displayed on your terminal when exiting things like man, less rather than having your terminal cleared
altscreen on
# shows your sessions in utmp
deflogin on
# Make screen messages stand out a little more - black on bright green.
sorendition "+b kG"
# turn visual bell on
vbell on
vbell_msg " !! Something interesting has happened !! "
activity "%c activity -> %n%f %t"
bell "%c bell -> %n%f %t^G"
# Never, ever turn this off.
autodetach on
# define a bigger scrollback, default is 100 lines. Too big and you start getting into memory issues when you have many screens open.
defscrollback 10000
msgwait 2
# Run everything in UTF-8.
defutf8 on
# ------------------------------------------------------------------------------
# SCREEN KEYBINDINGS
# ------------------------------------------------------------------------------
# Remove some stupid / dangerous key bindings
bind ^k
#bind L
bind ^\
# Make them better
bind \\ quit
bind K kill
bind I login on
bind O login off
bind } history
# control + left; previous screen window
bindkey ^[[1;5D prev
# control + right; next screen window
bindkey ^[[1;5C next
# control + up; previous split screen
bindkey ^[[1;5A focus prev
# control + down; next split screen
bindkey ^[[1;5B focus next
# F1 kill tab
bindkey -k k1 kill
# F2 write paste buffer to file
bindkey -k k2 writebuf
# F3 Split horizontally
bindkey -k k3 split
# F4 Split vertically
bindkey -k k4 split -v
# F5 Remove single split
bindkey -k k5 remove
# F6 Remove all splits
bindkey -k k6 only
# F7 Urlview
bindkey -k k7 eval "hardcopy_append off" "hardcopy -h $HOME/.screen-urlview" "screen urlview $HOME/.screen-urlview"
# F8 New tab
bindkey -k k8 screen
# F9 resize -1 line
bindkey -k k9 resize -1
# F10 resize +1 line
bindkey -k k; resize +1
markkeys ^b=u:^f=d
# ------------------------------------------------------------------------------
# TERMINAL SETTINGS
# ------------------------------------------------------------------------------
# The vt100 description does not mention "dl". *sigh*
termcapinfo vt100 dl=5\E[M
# Set the hardstatus prop on gui terms to set the titlebar/icon title
termcapinfo xterm*|rxvt*|kterm*|Eterm* hs:ts=\E]0;:fs=\007:ds=\E]0;\007
# An alternative hardstatus to display a bar at the bottom listing the
# windownames and highlighting the current windowname in blue. (This is only
# enabled if there is no hardstatus setting for your terminal)
hardstatus alwayslastline '%{= kG}[ %{G}%H %{g}][%= %{=kw}%?%-Lw%?%{r}(%{W}%n*%f %t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{G}%l %{W}%c %{g}]'
# set these terminals up to be 'optimal' instead of vt100
termcapinfo xterm*|linux*|rxvt*|Eterm* OP
# Change the xterm initialization string from is2=\E[!p\E[?3;4l\E[4l\E>
# (This fixes the "Aborted because of window size change" konsole symptoms found
# in bug #134198)
termcapinfo xterm 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l'
# To get screen to add lines to xterm's scrollback buffer, uncomment the
# following termcapinfo line which tells xterm to use the normal screen buffer
# (which has scrollback), not the alternate screen buffer.
#
#termcapinfo xterm|xterms|xs|rxvt ti@:te@
# Enable non-blocking mode to better cope with flaky ssh connections.
defnonblock on
# Always start screen index at 1
bind c screen 1
bind ^c screen 1
bind 0 select 10
screen 1