aboutsummaryrefslogtreecommitdiff
path: root/Window_Manager/ratpoison/ratpoisonrc.conf
blob: 2de341cb6baf171187c07f8324482f275af7490c (plain)
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
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
# info: C=control, M=meta/alt, s=super, S=shift, H = Hyper
# xnest for testing
escape grave
definekey top s-grave meta
definekey top Arabic_dammatan meta

set quiet 1

#find files script
bind f exec ~/.config/ratpoison/spotlight

# set font with unicode support
#set font -*-terminus-medium-r-normal-*-14-*-*-*-*-*-*-*
set font "DejaVu Sans Mono"

# Enable xcb copy/paste
source .config/ratpoison/ratpoisonrc.clipboard

# Make tab switch to the next screen
bind Tab nextscreen

#have windows centered
set wingravity center

# Set name to be title
set winname title

#Pest control.
banish
#exec 	unclutter -idle 1 -jitter 2 -root
#warp 	on
#addhook	switchwin 	banish

#No more startup message
startup_message off

#fix mouse
exec xsetroot -cursor_name left_ptr 

#Effects & Background
#exec xcompmgr -c -f &

#exec nitrogen --restore

#Border & Padding
alias showpanel set padding 0 24 0 0
alias hidepanel set padding 0 0 0 0
showpanel


alias showborder set border 3
alias hideborder set border 0
bordscript

######################################
# Panel
######################################
#alias barsend exec ~/.config/ratpoison/panel/windows
alias barsend exec echo 'Wclear' > /tmp/panel-fifo; ratpoison -c 'windows %s%n %t' | while read line;do echo "${line}" | cut -c -25 > /tmp/panel-fifo && sleep 0.004;done

# tell ratpoison to ignore panels
unmanage rpbar
unmanage bar
unmanage stalonetray

# hooks
addhook switchwin barsend
#addhook deletewindow barsend
addhook switchframe barsend
addhook switchgroup barsend
#addhook titlechanged barsend

unmanage conky
unmanage xfce4-panel
unmanage ratbar.pl
#-------------------------------------------------------------
# Workspaces
#-------------------------------------------------------------


# Switcher window
#alias workspace_menu exec .config/ratpoison/workspace_menu
#bind W workspace_menu


#Get F-keys to switch windows now in /usr/bin/rpws
definekey top F1 exec rpws 1 && echo "D1" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top F2 exec rpws 2 && echo "D2" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top F3 exec rpws 3 && echo "D3" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top F4 exec rpws 4 && echo "D4" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top F5 exec rpws 5 && echo "D5" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top F6 exec rpws 6 && echo "D6" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top F7 exec rpws 7 && echo "D7" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top F8 exec rpws 8 && echo "D8" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top F9 exec rpws 9 && printf "D9\nIxlear\n" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top F10 exec rpws 10 && printf "D10\nIclear\n" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript & xset -led named "Scroll Lock" 
definekey top F11 exec rpws 11 && echo "D11" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top F12 exec rpws 12 && echo "D12" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript

definekey top s-1 exec rpws 1 && echo "D1" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top s-2 exec rpws 2 && echo "D2" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top s-3 exec rpws 3 && echo "D3" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top s-4 exec rpws 4 && echo "D4" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top s-5 exec rpws 5 && echo "D5" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top s-6 exec rpws 6 && echo "D6" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top s-7 exec rpws 7 && echo "D7" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top s-8 exec rpws 8 && echo "D8" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top s-9 exec rpws 9 && printf "D9\nIxlear\n" > /tmp/panel-fifo && ratpoison -c barsend && ratpoison -c bordscript
definekey top s-0 exec rpws 10 && printf "D10\nIclear\n" > /tmp/panel-fifo & xset -led named "Scroll Lock" & ratpoison -c barsend && ratpoison -c bordscript



definekey top M-F1 exec ratpoison -c rpwsm1 && echo "D1" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-F2 exec ratpoison -c rpwsm2 && echo "D2" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-F3 exec ratpoison -c rpwsm3 && echo "D3" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-F4 exec ratpoison -c rpwsm4 && echo "D4" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-F5 exec ratpoison -c rpwsm5 && echo "D5" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-F6 exec ratpoison -c rpwsm6 && echo "D6" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-F7 exec ratpoison -c rpwsm7 && echo "D7" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-F8 exec ratpoison -c rpwsm8 && echo "D8" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-F9 exec ratpoison -c rpwsm9 printf "D9\nIxlear\n" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-F10 exec ratpoison -c rpwsm10 && printf "D10\nIclear\n" > /tmp/panel-fifo & xset -led named "Scroll Lock" && ratpoison -c barsend
definekey top M-F11 exec ratpoison -c rpwsm11 && echo "D11" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-F12 exec ratpoison -c rpwsm12 && echo "D12" > /tmp/panel-fifo && ratpoison -c barsend

definekey top M-s-1 exec ratpoison -c rpwsm1 && echo "D1" > /tmp/panel-fifo && ratpoison -c barsend 
definekey top M-s-2 exec ratpoison -c rpwsm2 && echo "D2" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-s-3 exec ratpoison -c rpwsm3 && echo "D3" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-s-4 exec ratpoison -c rpwsm4 && echo "D4" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-s-5 exec ratpoison -c rpwsm5 && echo "D5" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-s-6 exec ratpoison -c rpwsm6 && echo "D6" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-s-7 exec ratpoison -c rpwsm7 && echo "D7" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-s-8 exec ratpoison -c rpwsm8 && echo "D8" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-s-9 exec ratpoison -c rpwsm9 printf "D9\nIxlear\n" > /tmp/panel-fifo && ratpoison -c barsend
definekey top M-s-0 exec ratpoison -c rpwsm10 && printf "D10\nIclear\n" > /tmp/panel-fifo & xset -led named "Scroll Lock" && ratpoison -c barsend

definekey top S-F1 exec rpws 13 && echo "D13" > /tmp/panel-fifo && ratpoison -c barsend
definekey top S-M-F1 exec ratpoison -c rpwsm13 && echo "D13" > /tmp/panel-fifo && ratpoison -c barsend



#definekey top s-F1 exec ratpoison -c 'meta F1'
#definekey top s-F2 exec ratpoison -c 'meta F2'
#definekey top s-F3 exec ratpoison -c 'meta F3'
#definekey top s-F4 exec ratpoison -c 'meta F4'
#definekey top s-F5 exec ratpoison -c 'meta F5'
#definekey top s-F6 exec ratpoison -c 'meta F6'
#definekey top s-F7 exec ratpoison -c 'meta F7'
#definekey top s-F8 exec ratpoison -c 'meta F8'
#definekey top s-F9 exec ratpoison -c 'meta F9'
#definekey top s-F10 exec ratpoison -c 'meta F10'
#definekey top s-F11 exec ratpoison -c 'meta F11'  
#definekey top s-F12 exec ratpoison -c 'meta F12'



definekey top S-F12 exec rpws 13
definekey top M-S-F12 rpwsm13


#-------------------------------------------------------------
#Bindings
#-------------------------------------------------------------

alias window_menu exec .config/ratpoison/window_menu

bind h focusleft
bind l focusright
bind j focusdown
bind k focusup
bind H exchangeleft
bind L exchangeright
bind J exchangedown
bind K exchangeup

bind w window_menu
bind a exec ratpoison -i -c 'title' && ratpoison -c 'barsend'                                                                                                                              
bind t exec ~/bin/passenter
bind T exec ~/bin/passmake
definekey top s-l exec ~/.config/ratpoison/lock
definekey top s-s exec ~/bin/sus
definekey top s-L redisplay
bind C exec ~/.config/ratpoison/wp change
bind v hsplit
bind V hsplit 2/3
bind s vsplit
bind S vsplit 2/3
bind d remove
bind space exec urxvt
bind o only 
bind semicolon colon 
bind e exec
bind u undo
bind x delete
bind X kill
bind Escape abort
bind m exec xfce4-popup-applicationsmenu
bind W exec sudo connman_dmenu

#Paste goodness
bind g exec ~/bin/safeimg
bind P exec ~/bin/safepaste

alias bordtoggle exec ~/.config/ratpoison/bordtoggle
alias bordscript exec ~/.config/ratpoison/borderscript
alias paneltoggle exec ~/.config/ratpoison/paneltoggle




addhook key bordscript

definekey top s-b bordtoggle
definekey top s-p paneltoggle



# b : Open url
alias browse_cmd exec .config/ratpoison/exec_to_workspace 2 vimb
alias browse colon browse_cmd 
bind b browse
# B : open a new firefox tab and browse to the X clipboard selection
alias browse_selection exec .config/ratpoison/exec_to_workspace 2 vimb `ratpoison -c getsel`
bind B banish

# Paste with X selection
alias insert_X_selection exec ~/bin/paste
bind i insert_X_selection


#-------------------------------------------------------------
#Application Shortcuts
#-------------------------------------------------------------

definekey top s-f exec firefox
definekey top s-u exec uzbl-browser
definekey top s-v exec vimb
definekey top s-h exec ~/.config/vimb/history-search
#definekey top s-g exec gvim
#definekey top s-l exec libreoffice

#-----------------------------------------------------
# Voice control
#-----------------------------------------------------
definekey top KP_Enter exec ~/Dropbox/speech/run-duplex.sh

#-------------------------------------------------------------
# Volume Control
#-------------------------------------------------------------
# Up
#alias volup exec amixer -q set Master 5+ && ratpoison -c "echo `$HOME/.config/ratpoison/volind`" & volume -f 'V%i' > /tmp/panel-fifo
alias volup exec amixer -q set Master 5+ && volume -f 'V%i' > /tmp/panel-fifo

definekey top XF86AudioRaiseVolume volup
definekey top s-Prior volup
definekey top s-q volup

# Down
#alias voldown exec amixer -q set Master 5- && ratpoison -c "echo `$HOME/.config/ratpoison/volind`" & volume -f 'V%i' > /tmp/panel-fifo
alias voldown exec amixer -q set Master 5- && volume -f 'V%i' > /tmp/panel-fifo

definekey top XF86AudioLowerVolume voldown
definekey top s-Next voldown
definekey top s-a voldown

# Mute
alias voltoggle exec amixer -D pulse set Master toggle && ratpoison -c "echo Sound: `amixer get Master|awk '/Mono:/ {print $6}'`"

definekey top XF86AudioMute voltoggle
definekey top s-Pause voltoggle

#-------------------------------------------------------------
# Brightness Control
#-------------------------------------------------------------
alias brightup exec xbacklight -inc 10
alias brightdown exec xbacklight -dec 2

definekey top XF86MonBrightnessUp brightup
definekey top XF86MonBrightnessDown brightdown

definekey top s-Home brightup
definekey top s-g brightup
definekey top s-End brightdown
definekey top s-d brightdown

#-------------------------------------------------------------
# MPD (Music) Control
#-------------------------------------------------------------
# Aliases
alias playinfo exec ratpoison -c "echo Music: `mpc -h 127.0.0.1 | head -2 | tail -1 | awk '{print $1}'`"
alias volinfo exec ratpoison -c "echo `$HOME/.config/ratpoison/mpdvolind`"
alias songinfo exec ratpoison -c "echo Music: `mpc -h 127.0.0.1 | head -1`"
#alias volinfo exec ratpoison -c "echo `$HOME/.config/ratpoison/cmusvolind`"
#alias playinfo exec ratpoison -c "echo Music: `cmus-remote -Q | awk '/status/  {print $2}'`"
#alias songinfo exec ratpoison -c "echo Playing:`cmus-remote -Q | awk '/ artist/ {$1=$2=""; print $0}'` - `cmus-remote -Q 2>/dev/null | grep title | awk '{$1=$2=""; print $0}'`"


# Play/Pause and Volume
definekey top s-space exec mpc -h 127.0.0.1 toggle #&& ratpoison -c 'playinfo'
definekey top s-Right exec mpc -h 127.0.0.1 next #&& ratpoison -c "songinfo"
definekey top s-Left  exec mpc -h 127.0.0.1 prev #&& ratpoison -c "songinfo"
definekey top s-Up    exec mpc -h 127.0.0.1 volume +5 #&& ratpoison -c "volinfo"
definekey top s-w exec mpc -h 127.0.0.1 volume +5 #&& ratpoison -c "volinfo"
definekey top s-Down  exec mpc -h 127.0.0.1 volume -5 #&& ratpoison -c 'volinfo'
definekey top s-r exec mpc -h 127.0.0.1 volume -5 #&& ratpoison -c "volinfo"

# Old cmus controls
#definekey top s-space exec cmus-remote -u && ratpoison -c "playinfo"
#definekey top s-Right exec cmus-remote -n && ratpoison -c "songinfo" 
#definekey top s-Left  exec cmus-remote -r && ratpoison -c "songinfo" 
#definekey top s-Up    exec cmus-remote -v +5% && ratpoison -c "volinfo"
#definekey top s-Down  exec cmus-remote -v -5% && ratpoison -c "volinfo"

# Show song that is playing
definekey top Print songinfo

#-------------------------------------------------------------
# Unbindings
#-------------------------------------------------------------
unbind Q
unbind C-A
unbind C-a
unbind C-p
unbind C-apostrophe
unbind C-i
unbind C-Return
unbind C-n
unbind C-m
unbind C-c
unbind C-k
unbind C-l
unbind C-K
unbind C-exclam
unbind C-grave
unbind C-u
unbind C-g
unbind C-space
unbind C-v
unbind C-s
unbind C-Right
unbind C-Up
unbind C-Down
unbind C-x
unbind C-f
unbind C-V
unbind C-S
unbind C-w
unbind C-b
#-------------------------------------------------------------
# Layout saving
#-------------------------------------------------------------

# bind M-! to store the current frame layout in slot #1
bind M-exclam exec ratpoison -c "setenv fs1 `ratpoison -c 'fdump'`"

#bind M-1 to restore the frame layout in slot #1
bind M-1 exec ratpoison -c "frestore `ratpoison -c 'getenv fs1'`"

# Do the same for slot #2 and bind it to M-@ and M-2, respectively.
bind M-at exec ratpoison -c "setenv fs2 `ratpoison -c 'fdump'`"
bind M-2 exec ratpoison -c "frestore `ratpoison -c 'getenv fs2'`"

# Give ourselves another slot on M-# and M-3, respectively.
bind M-numbersign exec ratpoison -c "setenv fs3 `ratpoison -c 'fdump'`"
bind M-3 exec ratpoison -c "frestore `ratpoison -c 'getenv fs3'`"