Zren / plasma-hud

Provides a way to run menubar commands in KDE Plasma through rofi, much like the Unity 7 Heads-Up Display (HUD).
GNU General Public License v2.0
235 stars 9 forks source link

plasma-hud

Provides a way to run menubar commands through rofi, much like the Unity 7 Heads-Up Display (HUD). plasma-hud was forked from mate-hud which was based on i3-hud-menu. There's also a gnome-hud.

If you are interested in Unity's other feature, locally integrated menus in window titlebars, then you may want to check out the Material KWin decoration which has that feature.

What is a HUD and why should I care?

A Heads-Up Display (HUD) allows you to search through an application's appmenu. So if you're trying to find that single filter in Gimp but can't remember which filter category it fits into or if you can't recall if preferences sits under File, Edit or Tools on your favourite browser, you can just search for it rather than hunting through the menus.

Install via Package Manager

Install via GitHub

Dependencies

apt (Kubuntu / KDE Neon)

sudo apt install rofi python3 python3-dbus python3-setproctitle python3-xlib gir1.2-gtk-3.0
sudo apt install appmenu-gtk2-module appmenu-gtk3-module # Gtk2 / Gtk3

Or use unity-gtk2-module unity-gtk3-module for Gtk2 / Gtk3.

pacman (Arch)

pacman -S rofi python python-dbus python-setproctitle python-xlib python-gobject gobject-introspection
pacman -S appmenu-gtk-module

Manual Install

git clone https://github.com/Zren/plasma-hud
cd plasma-hud
sudo mkdir -p /usr/lib/plasma-hud
sudo cp usr/lib/plasma-hud/plasma-hud /usr/lib/plasma-hud/
sudo mkdir -p /etc/xdg/autostart
sudo cp etc/xdg/autostart/plasma-hud.desktop /etc/xdg/autostart/
/usr/lib/plasma-hud/plasma-hud
kwriteconfig5 --file ~/.config/kwinrc --group ModifierOnlyShortcuts --key Alt "com.github.zren.PlasmaHUD,/PlasmaHUD,com.github.zren.PlasmaHUD,toggleHUD"
qdbus org.kde.KWin /KWin reconfigure

Manual Uninstall

kwriteconfig5 --file ~/.config/kwinrc --group ModifierOnlyShortcuts --key Alt ""
qdbus org.kde.KWin /KWin reconfigure
sudo rm /usr/lib/plasma-hud/plasma-hud
sudo rm /etc/xdg/autostart/plasma-hud.desktop

Settings

If you manually create ~/.config/plasmahudrc you can change any of the following settings.

[General]
Matching=fuzzy
Sort=true
Lines=20
Location=center
Width=80

[Icons]
Enabled=true
Theme=breeze-dark

[Shortcuts]
Enabled=true

[Style]
Font=Sans 10
Title=::

[Colors]
Background=#111111
Foreground=#eeeff0
SelectedBackground=#062d25
SelectedForeground=#1abc9c
Borders=#000000
ShortcutForeground=#888888

You can also set [Style] RofiTheme=Arc to select a rofi theme in:

[Style]
RofiTheme=Arc-Dark

Testing

Run the following commands in a terminal like Konsole to debug plasma-hud.

killall plasma-hud ; LOGLEVEL=DEBUG ~/Code/plasma-hud/usr/lib/plasma-hud/plasma-hud