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

Ссылки по теме

- GNOME (Русский)

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

## Установка

Установите пакет 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`, и, если терминал уже был запущен, будет переключена видимость его окна.
- `-f`, `--fullscreen` — переключить Guake в полноэкранный режим.
- `--show` — показать окно Guake.
- `--hide` — спрятать окно Guake.
- `-n ТЕК_КАТ`, `--new-tab=ТЕК_КАТ` — создать новую вкладку и выбрать ее. Если указано значение `ТЕК_КАТ`, оно будет использовано для установки текущего каталога вкладки.
- `-s НОМЕР`, `--select-tab=НОМЕР` — выбрать (сделать текущей) вкладку с номером `НОМЕР`. Вкладки нумеруются с нуля.
- `-g`, `--selected-tab` — вывести номер текущей вкладки.
- `-e КОМАНДА`, `--execute-command=КОМАНДА` — выполнить указанную команду `КОМАНДА` в текущей вкладке.
- `-i НОМЕР`, `--tab-index=НОМЕР` — используется с `--rename-tab` для указания номера `НОМЕР` вкладки, которую необходимо переименовать. По умолчанию используется значение 0.
- `--rename-tab=ИМЯ` — установить новое имя вкладки `ИМЯ`. Вы можете сбросить имя вкладки на значение по умолчанию, указав знак дефиса (`"-"`). Используйте опцию `-i`, чтобы указать, какую вкладку следует переименовать.
- `--bgcolor=RGB` — установить цвет фона текущей вкладки `RGB`, указанный в шестнадцатеричном формате (`#rrggbb`).
- `--fgcolor=RGB` — установить цвет текста текущей вкладки `RGB`, указанный в шестнадцатеричном формате (`#rrggbb`).
- `-r ИМЯ`, `--rename-current-tab=ИМЯ` — то же, что и `--rename-tab`, но переименовывает текущую вкладку.
- `-q`, `--quit` — завершить работу Guake.

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

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

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

- скопировать пример в файл вроде `guake-init.sh`, сделать его исполняемым и запускать его вместо guake;
- кликнуть правой кнопкой мыши для вызова меню, открыть `Guake Terminal > Параметры > События` и добавить путь к `guake-init.sh` в поле «При запуске», при этом закомментировать строки `/usr/bin/guake &` и `sleep 5` в приведённом ниже скрипте.

Второй вариант предпочтителен, если вы хотите, чтобы скрипт выполнялся независимо от способа запуска 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, чтобы избежать состояния гонки между процессами.

Важно: Опция `--execute` просто вводит указанный текст во вкладку, поэтому она может натворить бед на вкладке, в которой запущена какая-нибудь программа с текстовым интерфейсом, вроде `fdisk` и `innotop`. Используйте это с осторожностью. Об этом заведён баг-репорт на github: guake#921.

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

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

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

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

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

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

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

Примечание: Использование `guake-toggle` предпочтительнее чем `guake -t`. Это намного быстрее, так как напрямую обращается в D-Bus без полной инициализации Guake.

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

- Официальная документация Guake

Category:

- Terminal emulators (Русский)