/
sapertlt
/
layout_switcher
Обзор
Документация
Войти
/
sapertlt
/
layout_switcher
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
scripts/setup-gnome-shortcut.sh
32 строки
1 KB
Andrey
feat: IPC сервер сокетов, CLI --trigger, автовыделение слова у курсора и регистрация хоткея Pause в GNOME
06 авг 2026, 12:10
06 авг 2026, 12:10
2c13cbf
Код
Авторство
О чём код?
#!/usr/bin/env bash set -eu HOTKEY="${1:-Pause}" echo "━━━ Настройка комбинации '$HOTKEY' в GNOME ━━━" if ! command -v gsettings &>/dev/null; then echo "gsettings недоступен (не GNOME среда)" exit 0 fi BINDING_PATH="/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/layout-switcher/" # Читаем существующие списки комбинаций EXISTING=$(gsettings get org.gnome.settings-daemon.plugins.media-keys custom-keybindings 2>/dev/null || echo "[]") if [[ "$EXISTING" != *"$BINDING_PATH"* ]]; then # Добавляем наш путь if [[ "$EXISTING" == "@as []" || "$EXISTING" == "[]" ]]; then NEW_LIST="['$BINDING_PATH']" else NEW_LIST=$(echo "$EXISTING" | sed "s|\]|, '$BINDING_PATH']|") fi gsettings set org.gnome.settings-daemon.plugins.media-keys custom-keybindings "$NEW_LIST" fi # Настраиваем свойства горячей клавиши gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:$BINDING_PATH name "Layout Switcher Correction" gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:$BINDING_PATH command "$HOME/.local/bin/layout-switcher --trigger" gsettings set org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:$BINDING_PATH binding "$HOTKEY" echo "✓ Горячая клавиша '$HOTKEY' зарегистрирована в GNOME для '$HOME/.local/bin/layout-switcher --trigger'"