|
2 months ago | |
---|---|---|
.gitignore | 6 months ago | |
LICENSE | 6 months ago | |
README.org | 2 months ago | |
hypop.el | 2 months ago |
README.org
hypop - emacs minibuffer-frame + hyprland
Installation
elpaca:
(use-package hypop
:elpaca (:repo "https://git.mitchmarq42.xyz/mitch/hypop.el")
:demand t)
straight:
(use-package hypop
:straight (:repo "https://git.mitchmarq42.xyz/mitch/hypop.el")
:demand t)
Doom:
(package! hypop
:recipe (:host nil
:repo "https://git.mitchmarq42.xyz/mitch/hypop.el")
:files ("*.el"))
Manual:
ehh, just download hypop.el and stick it in your load-path
.
Variables:
hypop--frame-name
: Title of the frame to configure on the hyprland side. Set todentarthurdent
as it's a simple string but unlikely to be used by anything else.hypop--scratch-workspace
: name of hyprland scratch workspace. If you don't have one, just set it to the desktop you look at least - that's what I did.
Hyprland integration
Window Rules
windowrule = float,title:dentarthurdent # match frame-name obviously
windowrule = size 1000 245,title:dentarthurdent
windowrule = center,title:dentarthurdent
windowrule = nofocus,title:dentarthurdent
windowrule = pin,title:dentarthurdent
windowrule = noanim,title:dentarthurdent
Workspaces
Just make sure you have a scratchpad set up, or pretend to. The actual window-moving is done on the lisp side with calls to hyprctl
.
Other Emacs packages that help
Vertico + Consult + Marginalia + Orderless + Embark
This suite of packages provides a modular but elegant completing experience - which has been documented extensively elsewhere. Google is your friend.
Since this package just enables a built-in feature of Emacs (minibuffer frame) and rigs the window manager up to it, minibuffer-based completion frameworks work pretty simply.
Ivy + Counsel + Swiper
Same situation as Verticoたち. Untested though…
eldoc-box
https://github.com/casouri/eldoc-box
Normally eldoc
(built in) displays variable and function type signatures in the echo area. However, since we're using a minibuffer-frame, the main Emacs window has no echo area.
Eldoc-box solves this by instead showing eldoc type hints as frame overlays (child frames).
notibox
https://git.mitchmarq42.xyz/mitch/notibox.el
(Disclosure: I wrote this package. It's not perfect nor even fully featured, but does mostly work in the meantime.)
Puts the current-message
in a little childframe notification box. Inspired by similar plugins for nvim.
App-launcher
https://github.com/SebastienWae/app-launcher
Provides a menu from which to launch desktop apps, like rofi or dmenu.
Ivy+Counsel users also have counsel-linux-app
built in - see https://www.reddit.com/r/unixporn/comments/s7p7pr/so_which_run_launcher_do_you_use_rofi_or_dmenu/ for inspiration.