This commit is contained in:
parent
cc9a398c14
commit
0753ff1f4e
41
cw
41
cw
|
|
@ -1,6 +1,8 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Установщик обоев (change wallpaper):
|
# Установщик обоев (change wallpaper):
|
||||||
# исходя из параметров подключенных мониторов устанавливает соответствующие обои.
|
# исходя из параметров подключенных мониторов устанавливает соответствующие обои.
|
||||||
|
# (вертикальные изображения на вертикальные мониторы
|
||||||
|
# горизонтальные изображения на горизонтальные - без пересечений)
|
||||||
#
|
#
|
||||||
# TO-DO
|
# TO-DO
|
||||||
# [X] - Определение данных исходного изображения: получение ширины и высоты
|
# [X] - Определение данных исходного изображения: получение ширины и высоты
|
||||||
|
|
@ -25,38 +27,65 @@ if [ $XDG_SESSION_TYPE != 'x11' ]; then
|
||||||
echo "For X.Org"
|
echo "For X.Org"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Директория с изображениями
|
||||||
IMGSTORAGE="$HOME/vault/wallpaper"
|
IMGSTORAGE="$HOME/vault/wallpaper"
|
||||||
|
|
||||||
|
# Получить абсолютный путь к изображению
|
||||||
get_path_img() {
|
get_path_img() {
|
||||||
find "$IMGSTORAGE" -type f | shuf -n 1
|
find "$IMGSTORAGE" -type f | shuf -n 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Получить ширину изображения в пикселях
|
||||||
get_width_img() {
|
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() {
|
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() {
|
get_orientation_img() {
|
||||||
if [ "$1" > "$2" ]; then
|
if [ $1 -ge $2 ]; then
|
||||||
printf 'horizontal'
|
printf 'horizontal'
|
||||||
else
|
else
|
||||||
printf 'vertical'
|
printf 'vertical'
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Получить список подключенных мониторов
|
||||||
|
get_name_mon() {
|
||||||
|
}
|
||||||
|
|
||||||
|
# Получить ширину монитора в пикселях
|
||||||
get_width_mon() {
|
get_width_mon() {
|
||||||
xdpyinfo | awk '/dimensions/{print $2}' | awk -F "x" '{print $1}'
|
xdpyinfo | awk '/dimensions/{print $2}' | awk -F "x" '{print $1}'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Получить высоту монитора в пикселях
|
||||||
get_height_mon() {
|
get_height_mon() {
|
||||||
xdpyinfo | awk '/dimensions/{print $2}' | awk -F "x" '{print $2}'
|
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
|
for i in {1..100}; do
|
||||||
img=$(get_path_img)
|
img=$(get_path_img)
|
||||||
orientation_img=$(get_orientation_img $(get_width_img $img) $(get_height_img $img))
|
width_img=$(get_width_img $img)
|
||||||
echo $img $orientation_img | grep 'vertical'
|
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
|
done
|
||||||
|
printf "vertical: $counter_ver\nhorizontal: $counter_hor"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue