Many fixes
This commit is contained in:
parent
c9c3fec128
commit
3dc6159640
@ -1,4 +1,5 @@
|
||||
!URxvt.boldFont: -misc-fixed-medium-r-semicondensed--13-100-100-100-c-60-iso8859-1
|
||||
URxvt.font: xft:Less Perfect DOS VGA
|
||||
!URxvt.font: -*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
!URxvt.font: xft:Misc Fixed:size=14
|
||||
!URxvt.boldFont: -*-*-*-*-*-*-*-*-*-*-*-*-*-*
|
||||
@ -10,7 +11,7 @@
|
||||
!URxvt.font: xft:Gohu GohuFont:size=12
|
||||
!URxvt.font: xft:Misc Termsynu:size=13
|
||||
!URxvt.font: xft:Unifont:size=13
|
||||
URxvt.font: xft:Monospace:size=11
|
||||
!URxvt.font: xft:Monospace:size=11
|
||||
!URxvt.font: xft:FixedsysTTF Semi-Bold:size=11
|
||||
!URxvt.faceName: -*-*-*-*-*-*-10-*-*-*-*-*-*-*
|
||||
!URxvt.font: xft:Fixed:style=SemiCondensed:size=16
|
||||
|
@ -26,7 +26,7 @@ bindsym $mod+d exec "~/.config/i3/run.sh run"
|
||||
#bindsym $mod+shift+p exec "rofi-pass --last-used"
|
||||
# Misc shortcuts
|
||||
bindsym --release Num_Lock exec "xdotool key --clearmodifiers Shift+Insert;numlockx on"
|
||||
bindsym Print exec "~/.config/i3/run.sh screenshot"
|
||||
bindsym $mod+p exec "~/.config/i3/run.sh screenshot"
|
||||
# Split in vertical orientation
|
||||
bindsym $mod+v split h
|
||||
# Split in horizontal orientation
|
||||
@ -230,4 +230,6 @@ exec --no-startup-id /bin/zsh -c 'pidof syncthing||screen -dmS syncthing ~/bin/s
|
||||
#exec --no-startup-id "~/bin/indicator-kdeconnect"
|
||||
# riot
|
||||
exec --no-startup-id riot-web --hidden
|
||||
# setxkbmap
|
||||
exec --no-startup-id setxkbmap -option caps:swapescape
|
||||
# vim: ts=2:sw=2:et
|
||||
|
@ -1,179 +1,163 @@
|
||||
#!/usr/bin/env bash
|
||||
ARG="$1"
|
||||
shift
|
||||
if [ "$ARG" = "move" ]; then
|
||||
shift
|
||||
eval "$(xdotool getwindowfocus getwindowgeometry | grep Geometry: | perl -pe 's/^\s*Geometry: /WinH=/;s/x/\nWinW=/g')"
|
||||
eval "$(xdotool getwindowfocus getwindowgeometry | grep Position: | perl -pe 's/^\s*Position: /WinY=/;s/,/\nWinX=/g;s/\s\(.+//')"
|
||||
eval "$(xrandr | grep -w connected | perl -pe 's/.+?(\d+x\d+)\+\d+\+\d+.*/\1/g;s/^/MonH=/;s/x/\nMonW=/;' | head -n2)"
|
||||
if [ "$ARG" = "top" ]; then
|
||||
echo $((WinY))
|
||||
xdotool getwindowfocus windowmove $((WinY - 1)) 0
|
||||
elif [ "$ARG" = "right" ]; then
|
||||
xdotool getwindowfocus windowmove $((MonH - WinH)) $((WinX - 1))
|
||||
elif [ "$ARG" = "left" ]; then
|
||||
xdotool getwindowfocus windowmove 0 $((WinX - 1))
|
||||
elif [ "$ARG" = "bottom" ]; then
|
||||
xdotool getwindowfocus windowmove $((WinY - 1)) $((MonW - WinW))
|
||||
fi
|
||||
elif [ "$ARG" = "lock" ];then
|
||||
#!/bin/bash
|
||||
|
||||
declare -i ID
|
||||
ID=`xinput list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
|
||||
declare -i STATE
|
||||
STATE=`xinput list-props $ID|grep 'Device Enabled'|awk '{print $4}'`
|
||||
if [ $STATE -eq 1 ];then
|
||||
xinput disable $ID
|
||||
echo "Touchpad disabled."
|
||||
else
|
||||
xinput enable $ID
|
||||
echo "Touchpad enabled."
|
||||
fi
|
||||
fi
|
||||
if [ "$ARG" = "pass" ];then
|
||||
pass -c $(ls ~/.password-store/*/*|cut -b-37 --complement|rofi -dmenu|sed -e 's/\.gpg//')
|
||||
fi
|
||||
if [ "$ARG" = "screensaver" ];then
|
||||
cat /tmp/noss||i3lock -di `shuf -n1 -e ~/.i3/wall/*`
|
||||
fi
|
||||
if [ "$ARG" = "wall" ];then
|
||||
#if [[ -d ~/.i3/wallOM ]];then feh --bg-scale "`shuf -n1 -e ~/.i3/wallOM/*`";else feh --bg-scale "`shuf -n1 -e ~/.i3/wall/*`";fi;
|
||||
#feh --bg-scale "$(shuf -n1 -e ~/.i3/wallOM/*)"
|
||||
#feh --bg-scale ~/.i3/image.png
|
||||
feh --bg-scale "$(shuf -n1 <(realpath /home/stonewareslord/sync/wallpaper/"$(hostname)"/*))"
|
||||
fi
|
||||
if [ "$ARG" = "swap" ];then
|
||||
python << EOF
|
||||
import i3
|
||||
swap = [output for output in i3.get_outputs() if output['active']]
|
||||
if len(swap) == 2:
|
||||
for output in swap:
|
||||
i3.workspace(output['current_workspace'])
|
||||
i3.command('move', 'workspace to output right')
|
||||
EOF
|
||||
fi
|
||||
if [ "$ARG" = "boot" ];then
|
||||
test -f ~/.screenlayout/default.sh && ~/.screenlayout/default.sh
|
||||
/usr/bin/xset -b
|
||||
/usr/bin/xset +fp /usr/share/fonts/X11/misc
|
||||
/usr/bin/xset +fp /usr/share/fonts/X11/Type1
|
||||
/usr/bin/xset +fp built-ins
|
||||
/usr/bin/xset s off
|
||||
/usr/bin/xset -dpms
|
||||
# This will segfault and ruin your day
|
||||
#/usr/bin/urxvtd -q -f -o
|
||||
#if [ "$(hostname)" = "MMLin" ]; then
|
||||
# xrandr --output HDMI1 --primary
|
||||
# xmodmap <(echo pointer = 3 2 1)
|
||||
#elif [ "$(hostname)" = "G2" ]; then
|
||||
# #TODO: Figure out what the display is called
|
||||
# xrandr --output eDP1 --primary
|
||||
# xmodmap <(echo pointer = 1 2 3)
|
||||
#fi
|
||||
#feh --bg-scale "$(shuf -n1 <(realpath /home/stonewareslord/owncloud/wallpaper/$(hostname)))"
|
||||
#xinput --set-prop 'Logitech USB Optical Mouse' 'Device Accel Constant Deceleration' 3
|
||||
if command -v ck-launch-session >/dev/null; then
|
||||
ck-launch-session i3
|
||||
else
|
||||
i3
|
||||
fi
|
||||
fi
|
||||
if [ "$ARG" = "screen-lock" ];then
|
||||
revert(){
|
||||
xset dpms 0 0 0
|
||||
}
|
||||
trap revert SIGHUP SIGINT SIGTERM
|
||||
xset +dpms dpms 5 5 5
|
||||
slock
|
||||
revert
|
||||
fi
|
||||
if [ "$ARG" = "paste" ]; then
|
||||
sleep 2
|
||||
DISPLAY=:0.0 xdotool type --clearmodifiers --file <(xsel)
|
||||
fi
|
||||
if [ "$ARG" = "ping" ]; then
|
||||
shift
|
||||
# Return code
|
||||
local RET=0
|
||||
# nc has some intense divergence. netcat6 has no -z, but netcat has no -x
|
||||
# -w3: 3 second timeout
|
||||
# -4 : ipv4 only
|
||||
# check if nc has -z
|
||||
if nc -h |& grep -q -- -z; then
|
||||
nc -w 1 -z4 "$ARG" "$1" >& /dev/null && RET=1
|
||||
# check if nc has --transfer (-x)
|
||||
elif nc -h |& grep -q -- --transfer; then
|
||||
nc -w 1 -4 "$ARG" "$1" -x </dev/null >& /dev/null && RET=1
|
||||
fi
|
||||
echo $RET
|
||||
fi
|
||||
if [ "$ARG" = "ip" ]; then
|
||||
shift
|
||||
local RET=0
|
||||
if [ "$(hostname)" = "MMLin" ]; then
|
||||
if grep -q "$ARG" < <(ifconfig enp2s0f0); then
|
||||
RET=1
|
||||
fi
|
||||
elif [ "$(hostname)" = "G2" ]; then
|
||||
if grep -q "$ARG" < <(ifconfig enp1s0;ifconfig wlp2s0); then
|
||||
RET=1
|
||||
fi
|
||||
elif [ "$(hostname)" = "SGen" ]; then
|
||||
if grep -q "$ARG" < <(ifconfig enp0s25); then
|
||||
RET=1
|
||||
fi
|
||||
fi
|
||||
echo $RET
|
||||
fi
|
||||
if [ "$ARG" = "copy" ]; then
|
||||
(printf '-chegg ';xsel | perl -pe 's/[^a-zA-Z ]//g;chomp()') | xsel && notify-send "Copied" || notify-send "Error"
|
||||
fi
|
||||
if [ "$ARG" = "screenshot" ]; then
|
||||
#\rm -f ~/last-photo/*(N)
|
||||
#DISPLAY=:0.0 xfce4-screenshooter -r -s ~/last-photo
|
||||
local FNAME="$HOME/last-photo/$(date +'%Y-%m-%d_%T').png"
|
||||
DISPLAY=:0.0 import "${FNAME}"
|
||||
DISPLAY=:0.0 xclip -selection clipboard -t image/png -i "${FNAME}"
|
||||
#DISPLAY=:0.0 scrot -s "$HOME/last-photo/$(date +'%Y-%m-%d_%T').png"
|
||||
\cp ~/last-photo/* ~/Pictures
|
||||
fi
|
||||
if [ "$ARG" = "shutdownprompt" ]; then
|
||||
RESP=$(printf 'Sleep\nNMRestart\nShutdown\nRestart\nLogout\n' | rofi -i -dmenu 2>/dev/null)
|
||||
if [[ ! -z "$RESP" ]]; then
|
||||
case "$RESP" in
|
||||
NMRestart) nmcli radio wifi off;sleep 1;nmcli radio wifi on;;
|
||||
Restart)
|
||||
sudo /sbin/shutdown -r now
|
||||
;;
|
||||
Shutdown)
|
||||
sudo /sbin/poweroff
|
||||
;;
|
||||
Logout)
|
||||
i3-msg exit
|
||||
;;
|
||||
Sleep)
|
||||
amixer set Master 0% mute
|
||||
slock&until echo mem|sudo tee /sys/power/state>/dev/null;do sleep 1;done
|
||||
sleep 4
|
||||
nmcli radio wifi off
|
||||
sleep 3
|
||||
nmcli radio wifi on
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
fi
|
||||
if [ "$ARG" = "run" ]; then
|
||||
PATH="$HOME/bin:/usr/games/bin:$PATH" rofi -show run
|
||||
fi
|
||||
if [ "$ARG" = "window" ]; then
|
||||
rofi -show window
|
||||
fi
|
||||
if [ "$ARG" = "clip" ]; then
|
||||
# Get the rofi-selected index of what to paste
|
||||
local INDEX="$(gpaste-client --oneline | colrm 80 | rofi -dmenu | perl -pe 's/:.*//')"
|
||||
# If they made a selection, select it
|
||||
if [[ ! -z "$INDEX" ]]; then
|
||||
gpaste-client select "$INDEX"
|
||||
fi
|
||||
fi
|
||||
case "${ARG}" in
|
||||
move)
|
||||
eval "$(xdotool getwindowfocus getwindowgeometry | grep Geometry: | perl -pe 's/^\s*Geometry: /WinH=/;s/x/\nWinW=/g')"
|
||||
eval "$(xdotool getwindowfocus getwindowgeometry | grep Position: | perl -pe 's/^\s*Position: /WinY=/;s/,/\nWinX=/g;s/\s\(.+//')"
|
||||
eval "$(xrandr | grep -w connected | perl -pe 's/.+?(\d+x\d+)\+\d+\+\d+.*/\1/g;s/^/MonH=/;s/x/\nMonW=/;' | head -n2)"
|
||||
if [[ "$ARG" = "top" ]]; then
|
||||
echo $((WinY))
|
||||
xdotool getwindowfocus windowmove $((WinY - 1)) 0
|
||||
elif [[ "$ARG" = "right" ]]; then
|
||||
xdotool getwindowfocus windowmove $((MonH - WinH)) $((WinX - 1))
|
||||
elif [[ "$ARG" = "left" ]]; then
|
||||
xdotool getwindowfocus windowmove 0 $((WinX - 1))
|
||||
elif [[ "$ARG" = "bottom" ]]; then
|
||||
xdotool getwindowfocus windowmove $((WinY - 1)) $((MonW - WinW))
|
||||
fi
|
||||
;;
|
||||
lock)
|
||||
declare -i ID
|
||||
ID=`xinput list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
|
||||
declare -i STATE
|
||||
STATE=`xinput list-props "${ID}"|grep 'Device Enabled'|awk '{print $4}'`
|
||||
if [[ $STATE -eq 1 ]];then
|
||||
xinput disable "${ID}"
|
||||
echo "Touchpad disabled."
|
||||
else
|
||||
xinput enable "${ID}"
|
||||
echo "Touchpad enabled."
|
||||
fi
|
||||
;;
|
||||
pass)
|
||||
pass -c "$(ls ~/.password-store/*/*|cut -b-37 --complement|rofi -dmenu|sed -e 's/\.gpg//')"
|
||||
;;
|
||||
screensaver)
|
||||
cat /tmp/noss||i3lock -di `shuf -n1 -e ~/.i3/wall/*`
|
||||
;;
|
||||
wall)
|
||||
#if [[ -d ~/.i3/wallOM ]];then feh --bg-scale "`shuf -n1 -e ~/.i3/wallOM/*`";else feh --bg-scale "`shuf -n1 -e ~/.i3/wall/*`";fi;
|
||||
#feh --bg-scale "$(shuf -n1 -e ~/.i3/wallOM/*)"
|
||||
#feh --bg-scale ~/.i3/image.png
|
||||
feh --bg-scale "$(shuf -n1 <(realpath /home/stonewareslord/sync/wallpaper/"$(hostname)"/*))"
|
||||
;;
|
||||
swap)
|
||||
python <<-EOF
|
||||
import i3
|
||||
swap = [output for output in i3.get_outputs() if output['active']]
|
||||
if len(swap) == 2:
|
||||
for output in swap:
|
||||
i3.workspace(output['current_workspace'])
|
||||
i3.command('move', 'workspace to output right')
|
||||
EOF
|
||||
;;
|
||||
boot)
|
||||
test -f ~/.screenlayout/default.sh && ~/.screenlayout/default.sh
|
||||
/usr/bin/xset -b
|
||||
/usr/bin/xset +fp /usr/share/fonts/X11/misc
|
||||
/usr/bin/xset +fp /usr/share/fonts/X11/Type1
|
||||
/usr/bin/xset +fp built-ins
|
||||
/usr/bin/xset s off
|
||||
/usr/bin/xset -dpms
|
||||
# This will segfault and ruin your day
|
||||
#/usr/bin/urxvtd -q -f -o
|
||||
#if [[ "$(hostname)" = "MMLin" ]]; then
|
||||
# xrandr --output HDMI1 --primary
|
||||
# xmodmap <(echo pointer = 3 2 1)
|
||||
#elif [[ "$(hostname)" = "G2" ]]; then
|
||||
# #TODO: Figure out what the display is called
|
||||
# xrandr --output eDP1 --primary
|
||||
# xmodmap <(echo pointer = 1 2 3)
|
||||
#fi
|
||||
#feh --bg-scale "$(shuf -n1 <(realpath /home/stonewareslord/owncloud/wallpaper/$(hostname)))"
|
||||
#xinput --set-prop 'Logitech USB Optical Mouse' 'Device Accel Constant Deceleration' 3
|
||||
if command -v ck-launch-session >/dev/null; then
|
||||
ck-launch-session i3
|
||||
else
|
||||
i3
|
||||
fi
|
||||
;;
|
||||
screen-lock)
|
||||
revert(){
|
||||
xset dpms 0 0 0
|
||||
}
|
||||
trap revert SIGHUP SIGINT SIGTERM
|
||||
xset +dpms dpms 5 5 5
|
||||
slock
|
||||
revert
|
||||
;;
|
||||
paste)
|
||||
sleep 2
|
||||
DISPLAY=:0.0 xdotool type --clearmodifiers --file <(xsel)
|
||||
;;
|
||||
ping)
|
||||
# Return code
|
||||
RET=0
|
||||
# nc has some intense divergence. netcat6 has no -z, but netcat has no -x
|
||||
# -w3: 3 second timeout
|
||||
# -4 : ipv4 only
|
||||
# check if nc has -z
|
||||
if nc -h |& grep -q -- -z; then
|
||||
nc -w 1 -z4 "$ARG" "$1" >& /dev/null && RET=1
|
||||
# check if nc has --transfer (-x)
|
||||
elif nc -h |& grep -q -- --transfer; then
|
||||
nc -w 1 -4 "$ARG" "$1" -x </dev/null >& /dev/null && RET=1
|
||||
fi
|
||||
echo $RET
|
||||
;;
|
||||
screenshot)
|
||||
#\rm -f ~/last-photo/*(N)
|
||||
find ~/last-photo/ -type f -delete
|
||||
#DISPLAY=:0.0 xfce4-screenshooter -r -s ~/last-photo
|
||||
FNAME="$HOME/last-photo/$(date +'%Y-%m-%d_%T').png"
|
||||
DISPLAY=:0.0 import "${FNAME}"
|
||||
DISPLAY=:0.0 xclip -selection clipboard -t image/png -i "${FNAME}"
|
||||
#DISPLAY=:0.0 scrot -s "$HOME/last-photo/$(date +'%Y-%m-%d_%T').png"
|
||||
\cp ~/last-photo/* ~/Pictures
|
||||
;;
|
||||
shutdownprompt)
|
||||
RESP=$(printf 'Sleep\nNMRestart\nShutdown\nRestart\nLogout\n' | rofi -i -dmenu 2>/dev/null)
|
||||
if [[ ! -z "$RESP" ]]; then
|
||||
case "$RESP" in
|
||||
NMRestart)
|
||||
nmcli radio wifi off;sleep 1;nmcli radio wifi on
|
||||
;;
|
||||
Restart)
|
||||
sudo /sbin/shutdown -r now
|
||||
;;
|
||||
Shutdown)
|
||||
sudo /sbin/poweroff
|
||||
;;
|
||||
Logout)
|
||||
i3-msg exit
|
||||
;;
|
||||
Sleep)
|
||||
amixer set Master 0% mute
|
||||
slock &
|
||||
until sudo tee /sys/power/state <<<"mem" >/dev/null; do
|
||||
sleep 1
|
||||
done
|
||||
sleep 4
|
||||
nmcli radio wifi off
|
||||
sleep 3
|
||||
nmcli radio wifi on
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
;;
|
||||
run)
|
||||
PATH="$HOME/bin:/usr/games/bin:$PATH" rofi -show run
|
||||
;;
|
||||
window)
|
||||
rofi -show window
|
||||
;;
|
||||
clip)
|
||||
# Get the rofi-selected index of what to paste
|
||||
INDEX="$(gpaste-client --oneline | colrm 80 | rofi -dmenu | perl -pe 's/:.*//')"
|
||||
# If they made a selection, select it
|
||||
if [[ ! -z "$INDEX" ]]; then
|
||||
gpaste-client select "$INDEX"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
Loading…
Reference in New Issue
Block a user