Yakuake (Русский)
Ссылки по теме
Yakuake — выпадающий сверху эмулятор терминала для KDE в стиле Tilda, Guake для GNOME и консоли в игре Quake.
Contents
Установка
Установите yakuake из официальных репозиториев.
Использование
После установки вы можете запустить Yakuake командой:
$ yakuake
Теперь вы можете настроить Yakuake, выбрав Open Menu (средняя кнопка внизу справа окна терминала), затем Configure Yakuake. Выберите Configure Shortcuts для изменения сочетания клавиши для появления/исчезания терминала. По умолчанию используется клавиша F12
.
Управление Yakuake из скрипта
Как и Guake, Yakuake позволяет настраивать себя после запуска посредством передачи сигналов через D-Bus. Таким образом, его можно использовать в сеансе, опрелеяемом пользователем (user defined session). Вы можете создавать вкладки, устанавливать их имена, запросить запуск конкретной команды в любой открытой вкладке или просто показать/скрыть окно Yakuake, вручную в окне любого терминала либо создав для этого скрипт. Ниже приведен пример такого скрипта.
#!/bin/bash # Starting yakuake based on user preferences. Information based on http://forums.gentoo.org/viewtopic-t-873915-start-0.html # Adding sessions from previous website is broken, use this: http://pawelkoston.pl/blog/sublime-text-3-cheatsheet-modules-web-develpment/ # This line is needed in case yakuake does not accept fcitx inputs. /usr/bin/yakuake --im /usr/bin/fcitx --inputstyle onthespot # Start iotop in its own tab. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession qdbus org.kde.yakuake /yakuake/tabs setTabTitle 0 "iotop" qdbus org.kde.yakuake /yakuake/sessions runCommandInTerminal 0 "iotop" # Start htop in its own tab. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession qdbus org.kde.yakuake /yakuake/tabs setTabTitle 1 "htop" qdbus org.kde.yakuake /yakuake/sessions runCommandInTerminal 1 "htop" # Start atop in its own tab. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession qdbus org.kde.yakuake /yakuake/tabs setTabTitle 2 "atop" qdbus org.kde.yakuake /yakuake/sessions runCommandInTerminal 2 "atop" # Start (watching) iptables in its own tab. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession qdbus org.kde.yakuake /yakuake/tabs setTabTitle 3 "iptables -nvL" qdbus org.kde.yakuake /yakuake/sessions runCommandInTerminal 3 "~/.iptables.sh" # Start journalctl --follow --full in its own tab. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession qdbus org.kde.yakuake /yakuake/tabs setTabTitle 4 "journalctl" qdbus org.kde.yakuake /yakuake/sessions runCommandInTerminal 4 "journalctl --follow --full" # Start irssi in its own tab. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession qdbus org.kde.yakuake /yakuake/tabs setTabTitle 5 "irssi" qdbus org.kde.yakuake /yakuake/sessions runCommandInTerminal 5 "irssi" # Start root shell 1 in its own tab. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession qdbus org.kde.yakuake /yakuake/tabs setTabTitle 6 "rootshell0" qdbus org.kde.yakuake /yakuake/sessions runCommandInTerminal 6 "sudo -i" # Start root shell 2 in its own tab. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession qdbus org.kde.yakuake /yakuake/tabs setTabTitle 7 "rootshell1" qdbus org.kde.yakuake /yakuake/sessions runCommandInTerminal 7 "sudo -i" # Start shell 1 in its own tab. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession qdbus org.kde.yakuake /yakuake/tabs setTabTitle 8 "shell0" # Start shell 2 in its own tab. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.addSession qdbus org.kde.yakuake /yakuake/tabs setTabTitle 9 "shell1" # Kill default (and now redundant) new shell tab. Already there are two shells each opened for both root and user. qdbus org.kde.yakuake /yakuake/sessions org.kde.yakuake.removeSession 10
dbus-send вместо qdbus
Вы можете заменить qdbus из состава Qt более традиционной утилитой dbus-send. Например, чтобы показать/скрыть окно Yakuake:
$ dbus-send --type=method_call --dest=org.kde.yakuake /yakuake/window org.kde.yakuake.toggleWindowState