diff --git a/cw b/cw index df681e2..d004320 100755 --- a/cw +++ b/cw @@ -1,6 +1,8 @@ #!/bin/bash # Установщик обоев (change wallpaper): # исходя из параметров подключенных мониторов устанавливает соответствующие обои. +# (вертикальные изображения на вертикальные мониторы +# горизонтальные изображения на горизонтальные - без пересечений) # # TO-DO # [X] - Определение данных исходного изображения: получение ширины и высоты @@ -25,38 +27,65 @@ if [ $XDG_SESSION_TYPE != 'x11' ]; then echo "For X.Org" exit 1 fi + +# Директория с изображениями IMGSTORAGE="$HOME/vault/wallpaper" + +# Получить абсолютный путь к изображению get_path_img() { find "$IMGSTORAGE" -type f | shuf -n 1 } +# Получить ширину изображения в пикселях get_width_img() { - ffprobe -v error -select_streams v:0 -show_entries stream=width -of default=nw=1:nk=1 '"$1"' + ffprobe -v error -select_streams v:0 -show_entries stream=width -of default=nw=1:nk=1 "$1" 2> /dev/null } +# Получить высоту изображения в пикселях get_height_img() { - ffprobe -v error -select_streams v:0 -show_entries stream=height -of default=nw=1:nk=1 '"$1"' + ffprobe -v error -select_streams v:0 -show_entries stream=height -of default=nw=1:nk=1 "$1" 2> /dev/null } +# Получить ориентацию изображения get_orientation_img() { - if [ "$1" > "$2" ]; then + if [ $1 -ge $2 ]; then printf 'horizontal' else printf 'vertical' fi } +# Получить список подключенных мониторов +get_name_mon() { +} + +# Получить ширину монитора в пикселях get_width_mon() { xdpyinfo | awk '/dimensions/{print $2}' | awk -F "x" '{print $1}' } +# Получить высоту монитора в пикселях get_height_mon() { xdpyinfo | awk '/dimensions/{print $2}' | awk -F "x" '{print $2}' } -# VAR +# Получить ориентацию монитора +get_orientation_mon() { +} + +# TEST + counter_ver=0 + counter_hor=0 for i in {1..100}; do img=$(get_path_img) - orientation_img=$(get_orientation_img $(get_width_img $img) $(get_height_img $img)) - echo $img $orientation_img | grep 'vertical' + width_img=$(get_width_img $img) + height_img=$(get_height_img $img) + orientation_img=$(get_orientation_img $width_img $height_img) + + if [ "$orientation_img" == "vertical" ]; then + counter_ver=$((counter_ver+1)) + else + counter_hor=$((counter_hor+1)) + fi done + printf "vertical: $counter_ver\nhorizontal: $counter_hor"