#!/bin/sh [ -z "$1" ] && exit # If $1 is left, hovers in the bottom left, if right, the bottom right current=$(xdotool getwindowfocus) newwidth=$(($(xdotool getdisplaygeometry | awk '{print $1}') / 3)) newheight=$(($(xdotool getdisplaygeometry | awk '{print $2}') / 3)) centerwidth=$(( $(xdotool getdisplaygeometry | awk '{print $1}') / 2)) newsize=$(xdotool getwindowgeometry "$current" | grep Geometry | sed -e 's/x/ /g' | awk '{print $3}') #newwidth=$(xdotool getwindowgeometry "$current" | grep Geometry | grep -o " [0-9]*") borderwidth=3 baroffset=47 case "$1" in left) horizontal=borderwidth; vertical=$(($(xdotool getdisplaygeometry | awk '{print $2}') - newheight - 2 * borderwidth )) ;; right) horizontal=$(($(xdotool getdisplaygeometry | awk '{print $1}') - newwidth - 2 * borderwidth )) vertical=$(($(xdotool getdisplaygeometry | awk '{print $2}') - newheight - 2 * borderwidth )) ;; center) horizontal=$(( ( $(xdotool getdisplaygeometry | awk '{print $1}') - centerwidth ) / 2 )); vertical=$baroffset newheight=$(( $(xdotool getdisplaygeometry | awk '{print $2}' ) - baroffset -5)) newwidth=$centerwidth;; esac xdotool windowsize "$current" $newwidth $newheight xdotool windowmove "$current" $horizontal $vertical