-
Notifications
You must be signed in to change notification settings - Fork 0
/
openbox.txt
61 lines (45 loc) · 1.45 KB
/
openbox.txt
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
Pipe-menu script:
$ cat ~/bin/obm-tmount.sh
#!/bin/sh
gt () { # <string>
TEXTDOMAINDIR='/usr/share/tmount/translations/' \
gettext -d 'tmount' -s "${1}" 2>/dev/null ||
printf '%s\n' "${1}" # including 'gettext' absence
} # gt
exa () { # <string> # Prepare a string to use as XML attribute.
printf '%s' "${1}" | sed '
s/&/\&/g ; # must be first
s/</\</g ; s/>/\>/g ; s/"/\"/g ; s/'"'"'/\'/g
'
} # exa
if P=$( pidof -s tmount ) ; then
L0='tmount:'
L1=$( gt 'Devices' ) R1="kill -USR1 ${P}"
L2=$( gt 'Additional' ) R2="kill -USR2 ${P}"
else
L0="tmount $( gt 'not running:' )"
L1=$( gt 'Start' ) R1='tmount -wait 0'
L2=$( gt 'Cancel' ) R2='true'
fi
echo '<?xml version="1.0" encoding="utf-8"?>' ; echo '
<openbox_pipe_menu>
<separator label="'"$( exa "${L0}" )"'"/>
<item label="'"$( exa "${L1}" )"'">
<action name="Execute"><command>'"${R1}"'</command></action>
</item>
<item label="'"$( exa "${L2}" )"'">
<action name="Execute"><command>'"${R2}"'</command></action>
</item>
</openbox_pipe_menu>
'
#eof obm-tmount.sh
In ~/.config/openbox/menu.xml file:
<menu id="tmount" label="tmount" execute="~/bin/obm-tmount.sh"/>
In ~/.config/openbox/rc.xml file:
<keyboard>
<!-- ... -->
<keybind key="W-t">
<action name="ShowMenu"><menu>tmount</menu></action>
</keybind>
</keyboard>
#eof openbox.txt