blob: a88f7746692ed420bf5b41101e05db22c028514b (
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
|
#!/usr/bin/env bash
LOGFILE=.lc.log
Commands="common update poweroff suspend set-keyboard caps-lock battery cups-website vim emacs htop scrot overleaf-render overleaf win pass wall stat mic mail"
statScripts="ram.sh status.sh net.sh mic.sh"
handle_stuff() {
if [ "$1" = "--dmenu" ]; then
$0 $(echo $Commands | tr " " "\n" | dmenu -i -p ":")
fi
if [ "$1" = "edit" ] || [ "$1" = "e" ]; then
notify-send "$*"
st -e nvim $(echo $* | cut -d" " -f2-)
fi
# System info
if [ "$1" = "b" ] || [ "$1" = "battery" ]; then
notify-send "Battery information" "$(acpi | grep 1:)"
fi
# System maintenance
if [ "$1" = "sk" ] || [ "$1" = "set-keyboard" ]; then
setxkbmap -layout us -variant altgr-intl
xcape -e "Control_R=Escape"
xmodmap .Xmodmap
fi
# POWER COMMANDS
if [ "$1" = "s" ] || [ "$1" = "suspend" ]; then
systemctl suspend
fi
if [ "$1" = "poweroff" ]; then
poweroff
fi
# Mics
if [ "$1" = "p" ] || [ "$1" = "scrot" ]; then
scrot /tmp/%Y-%m-%d-%T-screenshot.png
fi
if [ "$1" = "overleaf-render" ]; then
st sh ~/Documents/overleafRenderer/compile.sh
fi
if [ "$1" = "caps-lock" ] || [ "$1" = "cl" ]; then
xdotool key Caps_Lock
fi
if [ "$1" = "win" ]; then
vboxmanage startvm "Windows xp"
fi
if [ "$1" = "wall" ]; then
feh --bg-tile Pictures/defaultWall.*
fi
if [ "$1" = "mic" ]; then
amixer set Capture toggle
fi
if [ "$1" = "mail" ]; then
Scripts/mailSync
dunstify "Mail" "$(notmuch count tag:unread and tag:inbox) unread mail"
fi
# Launch
if [ "$1" = "vi" ] || [ "$1" = "vim" ]; then
st -e nvim
fi
if [ "$1" = "emacs" ]; then
st -e emacs
fi
if [ "$1" = "ht" ] || [ "$1" = "htop" ]; then
st -e htop
fi
if [ "$1" = "cups" ] || [ "$1" = "cups-website" ]; then
firefox "http://localhost:631/"
fi
if [ "$1" = "overleaf" ]; then
firefox -p Sharelatex --no-remote
fi
if [ "$1" = "pass" ]; then
bash $HOME/Scripts/passmenu --type
fi
if [ "$1" = "stat" ]; then
sh /home/julian/Scripts/$(echo $statScripts | tr " " "\n" | dmenu -i -p "stat")
fi
if [ "$1" = "common" ]; then
python3 Scripts/commondocs.py ~/commondocs.json $(python3 Scripts/commondocs.py ~/commondocs.json | $DMENU)
fi
# Calc
if [ "$(echo $1 | head -c 1)" = "=" ]; then
calc="$(echo $1 | cut -c 2-)"
notify-send "Result" "$calc = $(echo $calc | bc)"
fi
}
handle_stuff $* 2>&1 | tee -a $LOGFILE
|