A scratchpad manager for hyprland
Project description
Installation
pip install hpr-scratcher
OR
- copy and rename the
__init__.py
file to some accessible path, do not forget to add +x to it
Features
- Allow showing & hiding sliding scratchpads
- Allow auto-hide when the focus is lost
Usage
In your hyprland.conf
add something like this:
exec-once = hpr-scratcher
# Repeat this for each scratchpad you need
bind = $mainMod,V,exec,hpr-scratcher toggle volume
windowrule = float,^(pavucontrol)$
windowrule = workspace special silent,^(pavucontrol)$
bind = $mainMod,A,exec,hpr-scratcher toggle term
$dropterm = ^(kitty-dropterm)$
windowrule = float,$dropterm
windowrule = workspace special silent,$dropterm
windowrule = size 75% 60%,$dropterm
Then in $HOME/.config/hypr/scratchpads.json add:
{
"term": {
"command": "kitty --class kitty-dropterm",
"class": "kitty-dropterm",
"offset": 800,
"unfocus": "hide"
},
"volume": {
"command": "pavucontrol",
"class": "pavucontrol",
"offset": 1200
}
}
And you'll be able to toggle pavucontrol with MOD + V.
TODO
- Better handling of fast repetitions
- Allow different "poles" for scratchpads instead of always sliding from the top
- Make the usage of an explicit offset not needed
- study avoiding the usage of classes to track the windows (once registered)
- Allow auto-restart of applications (if closed)
- Allow closing the app on unfocus
- Move to socket instead of hyprctl when possible
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
hpr_scratcher-0.2.0.tar.gz
(3.8 kB
view hashes)
Built Distribution
Close
Hashes for hpr_scratcher-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf869360089a7072b688a9876f6c977bdd21deae6f23944b74bb6e78ac49d8a3 |
|
MD5 | 99f8abc3051c187148d03065620fbd4f |
|
BLAKE2b-256 | ea247bab60bbbbbea2f2aeca9b94dfb0884a6df3cf45b33400efb9a3f2157e47 |