dotfiles/.res.custom.sh
2024-10-20 12:18:23 +08:00

28 lines
610 B
Bash
Executable File

#!/bin/bash
OUTPUT=$1
WIDTH=$2
HEIGHT=$3
FPS=$4
if [ "$2" = "RESET" ]; then
WIDTH=1920
HEIGHT=1080
FPS=60
fi
# 使用 cvt 获取 modeline
MODELINE=$(cvt $WIDTH $HEIGHT $FPS | grep "Modeline" | cut -d' ' -f2-)
# 提取模式名称和详细参数
MODE_NAME=$(echo $MODELINE | cut -d' ' -f1 | tr -d '"')
MODE_PARAMS=$(echo $MODELINE | cut -d' ' -f2-)
if xrandr | grep -q "$MODE_NAME"; then
echo "Resolution $MODE_NAME already exists."
else
xrandr --newmode "$MODE_NAME" $MODE_PARAMS
xrandr --addmode $OUTPUT $MODE_NAME
echo "Resolution $MODE_NAME added."
fi
xrandr --output $OUTPUT --mode "$MODE_NAME"