Автор Тема: [РЕШЕНО] Plasma 6 Не назначается действие на клавишу Scroll Lock  (Прочитано 266 раз)

Оффлайн Vitaly

  • Участник
  • *
  • Сообщений: 2
Доброго времени суток!
Хочу повесить на ScrollLock скрипт, который гасит\зажигает подсветку клавиатуры. До Альта был Арч, там всё работало.
Здесь через Параметры системы делаю также (добавляю свою комбинацию клавиш), но ничего не происходит, скрипт не вызывается (из терминала срабатывает).
Куда копать?
« Последнее редактирование: 06.07.2025 11:26:59 от Vitaly »

Оффлайн VL

  • Участник
  • *
  • Сообщений: 190
А подробнее, как именно добавлялось?
Сейчас открыл Параметры системы, выбрал там Клавиатура, далее Комбинации клавиш, Добавить, команду или сценарий, выбрал путь к пайтоновскому файлу.
Естественно там пишется, что отсутствует комбинация по умолчанию.
Под надписью Пользовательские комбинации жамкается кнопка добавить, и когда появляется кнопка Сейчас просто нажимается Scroll Lock и разумеется в конце Применить.
Всё отработало.

Оффлайн kessys

  • Участник
  • *
  • Сообщений: 873
Доброго времени суток!
Хочу повесить на ScrollLock скрипт, который гасит\зажигает подсветку клавиатуры. До Альта был Арч, там всё работало.
Здесь через Параметры системы делаю также (добавляю свою комбинацию клавиш), но ничего не происходит, скрипт не вызывается (из терминала срабатывает).
Куда копать?
Скрипт такой я надыбал
#!/bin/bash
xset led 3
и получается я его просто щелкал и он запускал подсветку, однако клавиатура была из разряда нишевых что ощущалось в игре, и я её поменял. Теперь и проблемы нет.
Но значит arch молодцы, я рад за них что они такое умееют.
О подпись)
Жизнь с kde не так плоха, Но без ssd, это жестоко грустно.

Оффлайн Kamrad

  • Участник
  • *
  • Сообщений: 225
  • Пингвиновод
Любопытно, а в другом графическом окружении данный скрипт включения подсветки будет работать?
"Linux используют ...э....энтузиасты, а нормальные люди работают на Windows! Вот представьте - приучили вы ребёнка работать с Linux, а придёт он в школу, где кругом Windows - и что он будет делать?!" (аргументация менеджера в компьютерной фирме)

Оффлайн kessys

  • Участник
  • *
  • Сообщений: 873
Любопытно, а в другом графическом окружении данный скрипт включения подсветки будет работать?
скрипт привязан к терминалу, а не к графической оболочке.
О подпись)
Жизнь с kde не так плоха, Но без ssd, это жестоко грустно.

Оффлайн VL

  • Участник
  • *
  • Сообщений: 190
скрипт привязан к терминалу, а не к графической оболочке.
А какой-нибудь другой скрипт запускается?
А может и этот запускается, но не отрабатывает как нужно?
 

Оффлайн kessys

  • Участник
  • *
  • Сообщений: 873
скрипт привязан к терминалу, а не к графической оболочке.
А какой-нибудь другой скрипт запускается?
А может и этот запускается, но не отрабатывает как нужно?
Просто вручную запустил, подсветка сработала и всё.
Типо 2 клика на раб. столе
О подпись)
Жизнь с kde не так плоха, Но без ssd, это жестоко грустно.

Оффлайн Vitaly

  • Участник
  • *
  • Сообщений: 2
Скрипт такой я надыбал
#!/bin/bash
xset led 3

У меня Wayland, вот мой скрипт, лежит в /usr/bin
#!/bin/bash
leds_path="/sys/class/leds"
for dir in "$leds_path"/input*[0-9]::scrolllock; do
    if [ -d "$dir" ]; then
        FILE="$dir/brightness"
        CONTENT=$(cat "$FILE")
        if [ "$CONTENT" = "0" ]; then
            echo "1" > "$FILE"
        elif [ "$CONTENT" = "1" ]; then
            echo "0" > "$FILE"
        fi
        exit 0
    fi
done
Добавляю вот так -
Скрипт тупо не вызывается.
UPD
в sudoers исправил NOPASSWD для этого скрипта - всё заработало
%wheel ALL=(ALL) NOPASSWD: /usr/bin/kbdlight.sh

Так что у кого китайские клавы типа DEXP Rage 100 (как у меня) берите себе, скрипт универсальный, работает везде, и в Х и в Вейланд и вообще без графики на голой консоли(если запустить руками, если кто знает, как повесить скрипт на клавишу вне DE - напишите пожалуйста))
« Последнее редактирование: 06.07.2025 13:17:04 от Vitaly »

Оффлайн rits

  • Участник
  • *
  • Сообщений: 1 223
  • ITS
# ls /sys/class/leds/
input2::capslock  input2::numlock  input2::scrolllock

# tree /sys/class/leds/input2\:\:numlock/

/sys/class/leds/input2::numlock/
├── brightness
├── device -> ../../input2
├── max_brightness
├── power
│   ├── async
│   ├── autosuspend_delay_ms
│   ├── control
│   ├── runtime_active_kids
│   ├── runtime_active_time
│   ├── runtime_enabled
│   ├── runtime_status
│   ├── runtime_suspended_time
│   └── runtime_usage
├── subsystem -> ../../../../../../../../../../class/leds
├── trigger
└── uevent

echo 1 | tee /sys/class/leds/input2\:\:numlock/brightness # вкл. numlock
echo 0 | tee /sys/class/leds/input2\:\:numlock/brightness # выкл. numlock

echo 1 | tee /sys/class/leds/input2\:\:scrolllock/brightness # вкл. scrolllock
echo 0 | tee /sys/class/leds/input2\:\:scrolllock/brightness # выкл. scrolllock

Файл trigger позволяет привязать LED к системным событиям.
Недостатком прямого обращения к ядру, в определенных случаях, является необходимость в правах root.
Видимо для каждой графической оболочки и существует свой xset "костыль" для смены раскладки и leds индикаторов под конкретным пользователем или профилем.