Many fixes

This commit is contained in:
Austen Adler 2020-03-15 12:05:01 -04:00
parent c9c3fec128
commit 3dc6159640
3 changed files with 165 additions and 178 deletions

View File

@ -1,4 +1,5 @@
!URxvt.boldFont: -misc-fixed-medium-r-semicondensed--13-100-100-100-c-60-iso8859-1 !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: -*-*-*-*-*-*-*-*-*-*-*-*-*-*
!URxvt.font: xft:Misc Fixed:size=14 !URxvt.font: xft:Misc Fixed:size=14
!URxvt.boldFont: -*-*-*-*-*-*-*-*-*-*-*-*-*-* !URxvt.boldFont: -*-*-*-*-*-*-*-*-*-*-*-*-*-*
@ -10,7 +11,7 @@
!URxvt.font: xft:Gohu GohuFont:size=12 !URxvt.font: xft:Gohu GohuFont:size=12
!URxvt.font: xft:Misc Termsynu:size=13 !URxvt.font: xft:Misc Termsynu:size=13
!URxvt.font: xft:Unifont: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.font: xft:FixedsysTTF Semi-Bold:size=11
!URxvt.faceName: -*-*-*-*-*-*-10-*-*-*-*-*-*-* !URxvt.faceName: -*-*-*-*-*-*-10-*-*-*-*-*-*-*
!URxvt.font: xft:Fixed:style=SemiCondensed:size=16 !URxvt.font: xft:Fixed:style=SemiCondensed:size=16

View File

@ -26,7 +26,7 @@ bindsym $mod+d exec "~/.config/i3/run.sh run"
#bindsym $mod+shift+p exec "rofi-pass --last-used" #bindsym $mod+shift+p exec "rofi-pass --last-used"
# Misc shortcuts # Misc shortcuts
bindsym --release Num_Lock exec "xdotool key --clearmodifiers Shift+Insert;numlockx on" 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 # Split in vertical orientation
bindsym $mod+v split h bindsym $mod+v split h
# Split in horizontal orientation # 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" #exec --no-startup-id "~/bin/indicator-kdeconnect"
# riot # riot
exec --no-startup-id riot-web --hidden exec --no-startup-id riot-web --hidden
# setxkbmap
exec --no-startup-id setxkbmap -option caps:swapescape
# vim: ts=2:sw=2:et # vim: ts=2:sw=2:et

View File

@ -1,179 +1,163 @@
#!/usr/bin/env bash #!/usr/bin/env bash
ARG="$1" ARG="$1"
shift shift
if [ "$ARG" = "move" ]; then case "${ARG}" in
shift move)
eval "$(xdotool getwindowfocus getwindowgeometry | grep Geometry: | perl -pe 's/^\s*Geometry: /WinH=/;s/x/\nWinW=/g')" 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 "$(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)" 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 if [[ "$ARG" = "top" ]]; then
echo $((WinY)) echo $((WinY))
xdotool getwindowfocus windowmove $((WinY - 1)) 0 xdotool getwindowfocus windowmove $((WinY - 1)) 0
elif [ "$ARG" = "right" ]; then elif [[ "$ARG" = "right" ]]; then
xdotool getwindowfocus windowmove $((MonH - WinH)) $((WinX - 1)) xdotool getwindowfocus windowmove $((MonH - WinH)) $((WinX - 1))
elif [ "$ARG" = "left" ]; then elif [[ "$ARG" = "left" ]]; then
xdotool getwindowfocus windowmove 0 $((WinX - 1)) xdotool getwindowfocus windowmove 0 $((WinX - 1))
elif [ "$ARG" = "bottom" ]; then elif [[ "$ARG" = "bottom" ]]; then
xdotool getwindowfocus windowmove $((WinY - 1)) $((MonW - WinW)) xdotool getwindowfocus windowmove $((WinY - 1)) $((MonW - WinW))
fi fi
elif [ "$ARG" = "lock" ];then ;;
#!/bin/bash lock)
declare -i ID
declare -i ID ID=`xinput list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
ID=`xinput list | grep -Eo 'TouchPad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'` declare -i STATE
declare -i STATE STATE=`xinput list-props "${ID}"|grep 'Device Enabled'|awk '{print $4}'`
STATE=`xinput list-props $ID|grep 'Device Enabled'|awk '{print $4}'` if [[ $STATE -eq 1 ]];then
if [ $STATE -eq 1 ];then xinput disable "${ID}"
xinput disable $ID echo "Touchpad disabled."
echo "Touchpad disabled." else
else xinput enable "${ID}"
xinput enable $ID echo "Touchpad enabled."
echo "Touchpad enabled." fi
fi ;;
fi pass)
if [ "$ARG" = "pass" ];then pass -c "$(ls ~/.password-store/*/*|cut -b-37 --complement|rofi -dmenu|sed -e 's/\.gpg//')"
pass -c $(ls ~/.password-store/*/*|cut -b-37 --complement|rofi -dmenu|sed -e 's/\.gpg//') ;;
fi screensaver)
if [ "$ARG" = "screensaver" ];then cat /tmp/noss||i3lock -di `shuf -n1 -e ~/.i3/wall/*`
cat /tmp/noss||i3lock -di `shuf -n1 -e ~/.i3/wall/*` ;;
fi wall)
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;
#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 "$(shuf -n1 -e ~/.i3/wallOM/*)" #feh --bg-scale ~/.i3/image.png
#feh --bg-scale ~/.i3/image.png feh --bg-scale "$(shuf -n1 <(realpath /home/stonewareslord/sync/wallpaper/"$(hostname)"/*))"
feh --bg-scale "$(shuf -n1 <(realpath /home/stonewareslord/sync/wallpaper/"$(hostname)"/*))" ;;
fi swap)
if [ "$ARG" = "swap" ];then python <<-EOF
python << EOF import i3
import i3 swap = [output for output in i3.get_outputs() if output['active']]
swap = [output for output in i3.get_outputs() if output['active']] if len(swap) == 2:
if len(swap) == 2: for output in swap:
for output in swap: i3.workspace(output['current_workspace'])
i3.workspace(output['current_workspace']) i3.command('move', 'workspace to output right')
i3.command('move', 'workspace to output right') EOF
EOF ;;
fi boot)
if [ "$ARG" = "boot" ];then test -f ~/.screenlayout/default.sh && ~/.screenlayout/default.sh
test -f ~/.screenlayout/default.sh && ~/.screenlayout/default.sh /usr/bin/xset -b
/usr/bin/xset -b /usr/bin/xset +fp /usr/share/fonts/X11/misc
/usr/bin/xset +fp /usr/share/fonts/X11/misc /usr/bin/xset +fp /usr/share/fonts/X11/Type1
/usr/bin/xset +fp /usr/share/fonts/X11/Type1 /usr/bin/xset +fp built-ins
/usr/bin/xset +fp built-ins /usr/bin/xset s off
/usr/bin/xset s off /usr/bin/xset -dpms
/usr/bin/xset -dpms # This will segfault and ruin your day
# This will segfault and ruin your day #/usr/bin/urxvtd -q -f -o
#/usr/bin/urxvtd -q -f -o #if [[ "$(hostname)" = "MMLin" ]]; then
#if [ "$(hostname)" = "MMLin" ]; then # xrandr --output HDMI1 --primary
# xrandr --output HDMI1 --primary # xmodmap <(echo pointer = 3 2 1)
# xmodmap <(echo pointer = 3 2 1) #elif [[ "$(hostname)" = "G2" ]]; then
#elif [ "$(hostname)" = "G2" ]; then # #TODO: Figure out what the display is called
# #TODO: Figure out what the display is called # xrandr --output eDP1 --primary
# xrandr --output eDP1 --primary # xmodmap <(echo pointer = 1 2 3)
# xmodmap <(echo pointer = 1 2 3) #fi
#fi #feh --bg-scale "$(shuf -n1 <(realpath /home/stonewareslord/owncloud/wallpaper/$(hostname)))"
#feh --bg-scale "$(shuf -n1 <(realpath /home/stonewareslord/owncloud/wallpaper/$(hostname)))" #xinput --set-prop 'Logitech USB Optical Mouse' 'Device Accel Constant Deceleration' 3
#xinput --set-prop 'Logitech USB Optical Mouse' 'Device Accel Constant Deceleration' 3 if command -v ck-launch-session >/dev/null; then
if command -v ck-launch-session >/dev/null; then ck-launch-session i3
ck-launch-session i3 else
else i3
i3 fi
fi ;;
fi screen-lock)
if [ "$ARG" = "screen-lock" ];then revert(){
revert(){ xset dpms 0 0 0
xset dpms 0 0 0 }
} trap revert SIGHUP SIGINT SIGTERM
trap revert SIGHUP SIGINT SIGTERM xset +dpms dpms 5 5 5
xset +dpms dpms 5 5 5 slock
slock revert
revert ;;
fi paste)
if [ "$ARG" = "paste" ]; then sleep 2
sleep 2 DISPLAY=:0.0 xdotool type --clearmodifiers --file <(xsel)
DISPLAY=:0.0 xdotool type --clearmodifiers --file <(xsel) ;;
fi ping)
if [ "$ARG" = "ping" ]; then # Return code
shift RET=0
# Return code # nc has some intense divergence. netcat6 has no -z, but netcat has no -x
local RET=0 # -w3: 3 second timeout
# nc has some intense divergence. netcat6 has no -z, but netcat has no -x # -4 : ipv4 only
# -w3: 3 second timeout # check if nc has -z
# -4 : ipv4 only if nc -h |& grep -q -- -z; then
# check if nc has -z nc -w 1 -z4 "$ARG" "$1" >& /dev/null && RET=1
if nc -h |& grep -q -- -z; then # check if nc has --transfer (-x)
nc -w 1 -z4 "$ARG" "$1" >& /dev/null && RET=1 elif nc -h |& grep -q -- --transfer; then
# check if nc has --transfer (-x) nc -w 1 -4 "$ARG" "$1" -x </dev/null >& /dev/null && RET=1
elif nc -h |& grep -q -- --transfer; then fi
nc -w 1 -4 "$ARG" "$1" -x </dev/null >& /dev/null && RET=1 echo $RET
fi ;;
echo $RET screenshot)
fi #\rm -f ~/last-photo/*(N)
if [ "$ARG" = "ip" ]; then find ~/last-photo/ -type f -delete
shift #DISPLAY=:0.0 xfce4-screenshooter -r -s ~/last-photo
local RET=0 FNAME="$HOME/last-photo/$(date +'%Y-%m-%d_%T').png"
if [ "$(hostname)" = "MMLin" ]; then DISPLAY=:0.0 import "${FNAME}"
if grep -q "$ARG" < <(ifconfig enp2s0f0); then DISPLAY=:0.0 xclip -selection clipboard -t image/png -i "${FNAME}"
RET=1 #DISPLAY=:0.0 scrot -s "$HOME/last-photo/$(date +'%Y-%m-%d_%T').png"
fi \cp ~/last-photo/* ~/Pictures
elif [ "$(hostname)" = "G2" ]; then ;;
if grep -q "$ARG" < <(ifconfig enp1s0;ifconfig wlp2s0); then shutdownprompt)
RET=1 RESP=$(printf 'Sleep\nNMRestart\nShutdown\nRestart\nLogout\n' | rofi -i -dmenu 2>/dev/null)
fi if [[ ! -z "$RESP" ]]; then
elif [ "$(hostname)" = "SGen" ]; then case "$RESP" in
if grep -q "$ARG" < <(ifconfig enp0s25); then NMRestart)
RET=1 nmcli radio wifi off;sleep 1;nmcli radio wifi on
fi ;;
fi Restart)
echo $RET sudo /sbin/shutdown -r now
fi ;;
if [ "$ARG" = "copy" ]; then Shutdown)
(printf '-chegg ';xsel | perl -pe 's/[^a-zA-Z ]//g;chomp()') | xsel && notify-send "Copied" || notify-send "Error" sudo /sbin/poweroff
fi ;;
if [ "$ARG" = "screenshot" ]; then Logout)
#\rm -f ~/last-photo/*(N) i3-msg exit
#DISPLAY=:0.0 xfce4-screenshooter -r -s ~/last-photo ;;
local FNAME="$HOME/last-photo/$(date +'%Y-%m-%d_%T').png" Sleep)
DISPLAY=:0.0 import "${FNAME}" amixer set Master 0% mute
DISPLAY=:0.0 xclip -selection clipboard -t image/png -i "${FNAME}" slock &
#DISPLAY=:0.0 scrot -s "$HOME/last-photo/$(date +'%Y-%m-%d_%T').png" until sudo tee /sys/power/state <<<"mem" >/dev/null; do
\cp ~/last-photo/* ~/Pictures sleep 1
fi done
if [ "$ARG" = "shutdownprompt" ]; then sleep 4
RESP=$(printf 'Sleep\nNMRestart\nShutdown\nRestart\nLogout\n' | rofi -i -dmenu 2>/dev/null) nmcli radio wifi off
if [[ ! -z "$RESP" ]]; then sleep 3
case "$RESP" in nmcli radio wifi on
NMRestart) nmcli radio wifi off;sleep 1;nmcli radio wifi on;; ;;
Restart) esac
sudo /sbin/shutdown -r now fi
;; ;;
Shutdown) run)
sudo /sbin/poweroff PATH="$HOME/bin:/usr/games/bin:$PATH" rofi -show run
;; ;;
Logout) window)
i3-msg exit rofi -show window
;; ;;
Sleep) clip)
amixer set Master 0% mute # Get the rofi-selected index of what to paste
slock&until echo mem|sudo tee /sys/power/state>/dev/null;do sleep 1;done INDEX="$(gpaste-client --oneline | colrm 80 | rofi -dmenu | perl -pe 's/:.*//')"
sleep 4 # If they made a selection, select it
nmcli radio wifi off if [[ ! -z "$INDEX" ]]; then
sleep 3 gpaste-client select "$INDEX"
nmcli radio wifi on fi
;; ;;
esac 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