54 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			54 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|  | #!/usr/bin/fish | ||
|  | 
 | ||
|  | function set_device | ||
|  |     set -g DEVICE "Wacom USB Bamboo PAD Pen stylus" | ||
|  |     set -g DEVICETOUCH "Wacom USB Bamboo PAD Finger touch" | ||
|  |     set -g WACOMPROPTOUCHSPEED "Device Accel Velocity Scaling" | ||
|  |     xsetwacom set "$DEVICE" ResetArea | ||
|  |     set AREATOT (xsetwacom get "$DEVICE" Area) | ||
|  |     set -g AREAX (echo $AREATOT | awk '{print $3}') | ||
|  |     set -g AREAY (echo $AREATOT | awk '{print $4}') | ||
|  | end | ||
|  | 
 | ||
|  | function set_screen | ||
|  |     set CONNECTED_DISPLAYS (xrandr -q --current | sed -n 's/^\([^ ]\+\) connected .*/\1/p') desktop | ||
|  |     set -g SCREEN (for d in $CONNECTED_DISPLAYS | ||
|  |         echo $d | ||
|  |     end | rofi -dmenu -i -p "Select your dispaly" | tr -d '\n') | ||
|  |     set -g LINE (xrandr -q --current | if [ "$SCREEN" = desktop ] | ||
|  |         sed -n 's/^Screen 0:.*, current \([0-9]\+\) x \([0-9]\+\),.*/\1 \2/p' | ||
|  |     else | ||
|  |         sed -n "s/^$SCREEN"' connected \(primary \)\{0,1\}\([0-9]\+\)x\([0-9]\+\)+.*/\2 \3/p' | ||
|  |     end) | ||
|  |     echo $LINE | read -g WIDTH HEIGHT | ||
|  |     if test -z $WIDTH || test -z $HEIGHT | ||
|  |         return 1 | ||
|  |     end | ||
|  | end | ||
|  | 
 | ||
|  | function adjust_device | ||
|  |     set RATIOAREAY (math ceil \($AREAX \* $HEIGHT \/ $WIDTH\)) | ||
|  |     set RATIOAREAX (math ceil \($AREAY \* $WIDTH \/ $HEIGHT\)) | ||
|  | 
 | ||
|  |     if test $AREAY -gt $RATIOAREAY | ||
|  |         set -g NEWAREAX $AREAX | ||
|  |         set -g NEWAREAY $RATIOAREAY | ||
|  |     else | ||
|  |         set -g NEWAREAX $RATIOAREAX | ||
|  |         set -g NEWAREAY $AREAY | ||
|  |     end | ||
|  | 
 | ||
|  |     xsetwacom set "$DEVICE" Area 0 0 $NEWAREAX $NEWAREAY | ||
|  |     xsetwacom set "$DEVICE" MapToOutput "$SCREEN" | ||
|  | 
 | ||
|  |     # slow down touchpad | ||
|  |     xinput set-float-prop $DEVICETOUCH $WACOMPROPTOUCHSPEED 0.5 | ||
|  | 
 | ||
|  |     # slow down scrolling speed | ||
|  |     xsetwacom set $DEVICETOUCH "ScrollDistance" "90" | ||
|  | end | ||
|  | 
 | ||
|  | set_device | ||
|  | set_screen | ||
|  | adjust_device |