dot/screenrc: Customize a whole lot of keybindings.
[profile] / dot / screenrc
1 ### -*-conf-*-
2 ###
3 ### Screen configuration.
4
5 ## Unusual escape character. C-a interferes with Emacs and Bash.
6 escape ^zz
7
8 ## Make real beeping sounds.
9 vbell off
10
11 ## Maintain a decent amount of scrool.
12 defscrollback 10000
13
14 ## Snooping.
15 defmonitor on
16 defsilence on
17 activity ""
18 bell_msg ""
19
20 ## Do alternate-screen switching as requested. (Screen always uses its
21 ## host's alternate-screen switching unless nobbled.)
22 altscreen on
23
24 ## Don't try to do flow control using XON/XOFF characters. It messes stuff
25 ## up and is generally annoying.
26 defflow off
27
28 ## Force UTF-8 now. Screen can cope with sorting out the mess.
29 defencoding utf8
30 setenv LC_CTYPE en_GB.utf8
31 setenv LESSCHARSET utf-8
32
33 ## Awful N900 hacking. The N900's keymapping is hopelessly broken: the
34 ## return key is bound to the KP_Enter keysym (and this can't be fixed
35 ## without breaking the desktop). Mostly, stuff is fine except that when
36 ## terminal clients switch to application mode, they get the `fe' sequence
37 ## ^[OM instead of ^M, which they often don't deal with well. Trap this
38 ## sequence here, and map it back to ^M.
39 bindkey -d -a -k fe stuff ^M
40
41 ## Copyright message is now boring.
42 startup_message off
43
44 ## Caption and status lines.
45 caption splitonly "%{=br Cb}%?%F%{Yr}%?%3n %t%=%? [%h]%?"
46 hardstatus alwayslastline "%{= bC}%-Lw%{+b .Y}%n %t%{-}%+Lw%=%?%E* %?%?%P[] %?%H %Y-%m-%d %c:%s"
47 rendition monitor + .R
48 rendition bell +b .R
49 rendition silence + .g
50
51 ## Don't adjust the widths of terminal windows when starting up.
52 terminfo xterm-256color is="\E[!p\E[?4l\E[4l\E>"
53
54 ## Arrange for windows whose processes fail to hang around so I can see what
55 ## happened to them. The manual says I should use `defzombie' here, but
56 ## screen doesn't seem to understand that.
57 zombie qr onerror
58
59 ## Customize key bindings.
60 bind \040
61 bind ( focus up
62 bind ) focus down
63 bind {
64 bind }
65 bind \
66 bind ^a
67 bind a
68 bind A layout attach
69 bind ^b
70 bind b
71 bind B
72 bind C
73 bind d
74 bind D
75 bind ^e
76 bind e
77 bind E layout select
78 bind ^f
79 bind f
80 bind ^g
81 bind g
82 bind G
83 bind ^h
84 bind \177
85 bind H
86 bind I
87 bind ^j
88 bind j
89 bind J
90 bind ^k
91 bind k
92 bind K
93 bind l
94 bind L layout new
95 bind ^m
96 bind m
97 bind N layout next
98 bind ^o
99 bind o
100 bind O layout show
101 bind P layout prev
102 bind ^q
103 bind ^r
104 bind r
105 bind R layout remove
106 bind ^s
107 bind t
108 bind T
109 bind ^u
110 bind u
111 bind U
112 bind V
113 bind w
114 bind W
115 bind ^y
116 bind y
117 bind Y