bindsym … exec –no-startup-id echo Hello world не работает

Вопрос или проблема

В .config/i3/config я написал

bindsym Ctrl+Shift+v exec --no-startup-id /bin/echo Hello world

затем запустил

i3-msg restart

Затем я нажимаю CTRL+SHIFT+V, и ничего не происходит. Почему?

Где вы ожидаете увидеть вывод? Стандартный вывод i3wm вероятно /dev/null, или в лучшем случае виртуальный терминал, с которого он был запущен.
Обычно, чтобы увидеть сообщения, вы бы использовали что-то вроде

bindsym Ctrl+Shift+v exec --no-startup-id "notify-send 'Hello world'"

Смотрите примеры в руководстве пользователя.

Ответ или решение

Проблема, описанная в вашем вопросе, связана с конфигурацией оконного менеджера i3 и использованием команды bindsym для выполнения скрипта. Давайте разберемся в деталях, почему ваш скрипт bindsym Ctrl+Shift+v exec --no-startup-id /bin/echo Hello world не работает, как ожидается.

Анализ проблемы

  1. Место выполнения echo:
    Команда echo выводит текст в стандартный поток вывода. Однако в контексте i3wm, данная команда запускается в фоновом режиме, и вывод, скорее всего, уходит в null. Это происходит потому, что i3 выполняет команды не в вашем терминале, а в своей, изолированной среде.

  2. Использование GUI уведомлений:
    Поскольку стандартный вывод будет потерян, рекомендуется использовать инструменты, которые создают уведомления в графическом интерфейсе. В вашем случае это notify-send. Эта утилита позволяет отсылать уведомления в интерфейс вашего рабочего стола.

  3. Корректная строка конфигурации:
    Чтобы убедиться, что уведомления отображаются, строка конфигурации должна выглядеть так:

    bindsym Ctrl+Shift+v exec --no-startup-id "notify-send 'Hello world'"

Пошаговое решение:

  • Шаг 1: Измените строку конфигурации в файле .config/i3/config, добавив notify-send.

  • Шаг 2: Перезапустите i3 для применения изменений с помощью команды:

    i3-msg restart
  • Шаг 3: Проверьте, работает ли горячая клавиша. При нажатии комбинации Ctrl+Shift+V должно появиться графическое уведомление с текстом "Hello world".

Заключение

Использование notify-send наиболее эффективно для создания уведомлений в среде X11 и, следовательно, в i3wm. Это решение устраняет проблему вывода и позволяет вам получать визуальные уведомления при нажатии горячих клавиш.

Таким образом, понимание особенностей работы i3 и правильная настройка горячих клавиш помогут вам в полной мере использовать возможности этого оконного менеджера.

Оцените материал
Добавить комментарий

Капча загружается...