dotfiles/gui/autorandr/postswitch
2022-05-15 14:08:26 +08:00

20 lines
441 B
Bash
Executable File

#!/bin/sh
# set system dpi to the minimal dpi among all connected monitors
xrandr | awk '
$2 == "connected" && $3 == "primary" {
if (match($0, / ([0-9]+)x([0-9]+)\+([0-9]+)\+([0-9]+) (left|right)?/, m1) &&
match($0, / ([0-9]+)mm x ([0-9]+)mm$/, m2)) {
DPI=m1[1]*25.4/m2[m1[5]?2:1]
if (DPI > 140) {
DPI=DPI*0.8
}
printf "Xft.dpi: %i", DPI
}
}
' | xrdb -merge
nitrogen --restore