Guake (Русский)

Guake — выпадающий эмулятор терминала для GNOME (наподобие Yakuake для KDE, Tilda и консоли из игры Quake).

Состояние перевода: На этой странице представлен перевод статьи Guake. Дата последней синхронизации: 3 декабря 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Установка

Установите пакет guake.

Использование

После установки вы можете запустить Guake командой:

$ guake

После запуска вы можете зайти в Параметры в контекстном меню для изменения сочетания клавиш для появления/исчезания терминала. По умолчанию используется клавиша F12.

Автозапуск

Для автоматического запуска Guake при входе в систему создайте файл .desktop в /etc/xdg/autostart/:

# cp /usr/share/applications/guake.desktop /etc/xdg/autostart/

Для получения дополнительной информации смотрите статью Автозапуск.

Управление Guake из скрипта

Как и Yakuake, Guake позволяет настраивать себя после запуска посредством передачи сигналов через D-Bus. Таким образом, его можно использовать в сеансе, определяемом пользователем (user defined session). Вы можете создавать вкладки, устанавливать их имена, запросить запуск конкретной команды в любой открытой вкладке или просто показать/скрыть окно Guake, вручную в окне любого терминала либо создав для этого скрипт. Ниже приведен пример такого скрипта.

Вы можете использовать сам исполняемый файл guake для отправки сообщений D-Bus. Вот список доступных опций, которые могут быть вам интересны:

  • -t, --toggle-visibility — переключить видимость окна терминала (отобразить, если спрятано, и наоборот). По сути, вы можете просто набрать guake, и, если терминал уже был запущен, будет переключена видимость его окна.
  • , — переключить Guake в полноэкранный режим.
  • — показать окно Guake.
  • — спрятать окно Guake.
  • , --new-tab=ТЕК_КАТ — создать новую вкладку и выбрать ее. Если указано значение ТЕК_КАТ, оно будет использовано для установки текущего каталога вкладки.
  • , — выбрать (сделать текущей) вкладку с номером . Вкладки нумеруются с нуля.
  • , — вывести номер текущей вкладки.
  • , — выполнить указанную команду в текущей вкладке.
  • , --tab-index=НОМЕР — используется с для указания номера вкладки, которую необходимо переименовать. По умолчанию используется значение 0.
  • — установить новое имя вкладки . Вы можете сбросить имя вкладки на значение по умолчанию, указав знак дефиса (). Используйте опцию , чтобы указать, какую вкладку следует переименовать.
  • — установить цвет фона текущей вкладки , указанный в шестнадцатеричном формате (#rrggbb).
  • — установить цвет текста текущей вкладки , указанный в шестнадцатеричном формате (#rrggbb).
  • , --rename-current-tab=ИМЯ — то же, что и , но переименовывает текущую вкладку.
  • , — завершить работу Guake.

Можно комбинировать несколько опций в одном вызове. Если при вызове еще не был запущен экземпляр Guake, он будет запущен и все указанные опции будут к нему применены.

Чтобы отобразить список всех доступных опций, наберите .

Есть 2 пути запуска guake с применением этих скриптов:

  • скопировать пример в файл вроде , сделать его исполняемым и запускать его вместо guake;
  • кликнуть правой кнопкой мыши для вызова меню, открыть и добавить путь к в поле «При запуске», при этом закомментировать строки и в приведённом ниже скрипте.

Второй вариант предпочтителен, если вы хотите, чтобы скрипт выполнялся независимо от способа запуска guake, и в любом случае вы можете попросить guake не запускать этот скрипт с помощью опции guake --no-startup-script если понадобится.

Пример:

#!/bin/bash

/usr/bin/guake &
sleep 5 # позволим Guake запуститься и создать сеанс D-Bus

# настроим единственную вкладку, которая открывается по умолчанию
guake --rename-tab="iotop" --execute="/usr/bin/iotop"

# создадим новую вкладку, запустим в ней сеанс bash
guake --new-tab --execute="/usr/bin/bash"
# затем вызовем htop, переименовав вкладку в "htop"
guake --execute="/usr/bin/htop" --rename-tab="htop"

# ...
guake --new-tab --execute="/usr/bin/bash"
guake --execute="/usr/bin/atop" --rename-tab="atop"

guake --new-tab --execute="/usr/bin/bash"
guake --execute="~/.iptables.sh" --rename-tab="iptables -nvL"

guake --new-tab --execute="/usr/bin/bash"
guake --execute="/usr/bin/journalctl --follow --full" --rename-tab="journalctl"

guake --new-tab --execute="/usr/bin/bash"
guake --execute="/usr/bin/irssi" --rename-current-tab="irssi"

guake --new-tab --execute="/usr/bin/bash"
guake --execute="/usr/bin/sudo -i" --rename-current-tab="rootshell0"

guake --new-tab --execute="/usr/bin/bash"
guake --execute="/usr/bin/sudo -i" --rename-current-tab="rootshell1"

guake --new-tab --execute="/usr/bin/bash"
guake --rename-current-tab="shell0"

guake --new-tab --execute="/usr/bin/bash"
guake --rename-current-tab="shell1"

Обратите внимание, что следует подождать некоторое время, вызвав sleep, чтобы избежать состояния гонки между процессами.

Решение проблем

Плавающий режим в оконных менеджерах

Guake может работать не в плавающем режиме с некоторыми оконными менеджерами. Это можно решить, используя строку класса окна Guake ( или "Guake" для ). Например, для i3 смотрите i3 (Русский)#Правильное обращение с плавающими диалогами.

Переключение видимости Guake не работает (Wayland)

Если у вас Wayland, горячая клавиша переключения видимости иногда не работает. Это из-за того, что Guake использует библиотеку глобальных горячих клавиш, созданную для X, а для Wayland эквивалент глобальных горячих клавиш отсутствует. Многие приложения (например Firefox) работают в Wayland через XWayland, и в них горячая клавиша будет работать, а в приложениях, работающих нативно в Wayland (например, приложения GNOME) работать не будет.

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

Подробнее смотрите этот github issue.

Смотрите также

gollark: That reminds me, anyone got Auto Bot Robot ideas?
gollark: ++dab-on
gollark: r/wosh
gollark: Also, they'll need lots of paper and crayons.
gollark: It's not, children will get bored simulating Turing machines.
This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.