Разверните регулятор громкости колесика мыши на всю панель

Есть одно приложение, которое я пропустил обратно из Windows, и это Volumouse . Простое, но эффективное приложение, которое позволяет вам контролировать громкость со всей панели задач (панели), а не только с помощью значка индикатора. Особенно если вы используете беспроводную мышь, вы по достоинству оцените ее практичность. Поскольку для Ubuntu подобного решения не существует, было бы неплохо иметь скрипт, который его охватывает.

1
задан 11 June 2015 в 18:48

2 ответа

Современные устройства мыши имеют больше чем один идентификатор когда Вы выполнение запросов xinput list. Этот сценарий будет касаться тех устройств также, но сначала надлежащий идентификатор должен быть определен. Выбор основан на различии между выводами xinput query-state <id> команда и предположение, что один идентификатор будет иметь [приблизительно 118] ключ 245 в выводе, следовательно строка:

moid0=$(xinput query-state $moid1 | grep 245)

Для Вашего устройства различие между выводами может варьироваться, но можно использовать другое ключевое слово не 245 и изменить строку.
Так сценарий похожи на это:

#!/bin/bash
vctrl1 () { 
    xinput test $mo | while read line
    do
        eval $(xdotool getmouselocation --shell)
        if [ $Y -gt 24 ]; then break
        elif [ "$wnn" != "Desktop" ] && [ $sd3 == $wg2 ]; then break
        elif [[ $line == "button release 5" ]] ; then
            xdotool key XF86AudioLowerVolume
        elif [[ $line == "button release 4" ]] ; then
            xdotool key XF86AudioRaiseVolume 
        fi
    done
}

sd1=$(xdpyinfo | grep dimensions)
sd2="${sd1#*dimensions:  }"
sd3="${sd2%% pixels*}"


while :
do
    moid=$(xinput list | grep -iPo 'mouse.*id=\K\d+')

    eval $(xdotool getmouselocation --shell)
    if [[ $Y -le 24 && ! -z $moid ]]; then

        wg1=$(xdotool getactivewindow getwindowgeometry)
        wg2="${wg1#*Geometry: }"

        wnn=$(xdotool getactivewindow getwindowname)

        read moid1 moid2 < <(echo $moid)
        moid0=$(xinput query-state $moid1 | grep 245)
        if [[ ! -z $moid0 ]]; then mo=$moid2 && vctrl1
        else mo=$moid1 && vctrl1
        fi
    elif [[ -z $moid ]]; then sleep 3
    fi
sleep 0.2
done

Это позволит регулятор громкости с колесом мыши в то время как парение по панели.

0
ответ дан 11 June 2015 в 18:48

Также можно использовать этот сценарий Python для управления объемом с колесом мыши от любого места экрана. Просто отредактируйте код, как Вы хотите. https://github.com/mnural/pyvolume

0
ответ дан 12 June 2015 в 04:48
  • 1
    Я получаю что-то о Sysinit, затем черный экран, и он показывает загрузку glitchy графикой, после этого лучше всего я добрался, был ALT + CTRL + терминал F1, и терминал будет " Restart". таким образом, не было никакого способа загрузиться. – tomkis 6 September 2016 в 02:32

Другие вопросы по тегам:

Похожие вопросы: