A hotkey aggregator. All your hotkeys in one place.
Project description
hag
A Hotkey AGgregator.
hag is a hotkey aggregator, it tries its best to extract the hotkeys of your software and display them.
It does so by parsing the config files, man pages, command outputs, ... depending on the software.
⌨️ Hotkey parsers
Bellow is a list of implemented hotkey parsers:
- Alacritty
- Bash
- Gimp
- Inkscape
- Lf
- Mpv
- Neovim
- Qutebrowser
- Rofi
- Sioyek
- Sxhkd
- Sxiv
- Termite
- Vim
- Vimiv
- Zathura
- Zsh
📦 Installation
hag is meant to be minimal, however some parsers require optional dependencies, which can be individually installed:
- Mpv:
python-mpv->pip install 'hag[mpv]' - Neovim:
pynvim->pip install 'hag[neovim]' - Alacritty:
pyyaml->pip install 'hag[alacritty]'
To install hag with all the parser dependencies:
pip install 'hag[all]'
If you just want to use the CLI interface, consider using pipx.
pipx install 'hag[all]'
📖 Usage
$ hag -h
usage: hag [-h] [-lp | -ld] [-d {json,roff,text}] [-m MODE] [-v]
[{alacritty,bash,gimp,inkscape,lf,mpv,neovim,qutebrowser,rofi,sioyek,sxhkd,sxiv,termite,vim,vimiv,zathura,zsh}]
Hotkey aggregator. All your hotkeys in one place.
positional arguments:
{alacritty,bash,gimp,inkscape,lf,mpv,neovim,qutebrowser,rofi,sioyek,sxhkd,sxiv,termite,vim,vimiv,zathura,zsh}
Extract hotkeys using parser.
optional arguments:
-h, --help show this help message and exit
-lp, --list-parsers List available hotkey parsers.
-ld, --list-displays List available display methods.
-d {json,roff,text}, --display {json,roff,text}
Display method.
-m MODE, --modes MODE
Filter by mode, if supported by parser.
-v, --version Show hag version and exit.
🔎 Examples
A few example uses:
- List
sxhkdhotkeys:hag sxhkd - Display
sxhkdhotkeys in json format and format withjq:hag sxhkd -d json | jq
- Show
vimNormal and Visual mode hotkeys inrofi:hag vim -m Normal -m Visual | rofi -dmenu
- Use
rofito select hotkey parser and show hotkeys:parser="$(hag -le | rofi -dmenu)" && hag "$parser" | rofi -dmenu
- List your normal and visual mode
neovimhotkeys in a man page:hag neovim -m Normal -m Visual -d roff | man -l -
- Create a pdf of your
sxhkdhotkeys:hag sxhkd -d roff | groff -T ps -m mandoc - | ps2pdf - hotkeys.pdf
🥳 Contributing
If you want to add support for your favourite software, feel free to open issues/PRs!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hag-0.4.0.tar.gz.
File metadata
- Download URL: hag-0.4.0.tar.gz
- Upload date:
- Size: 13.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.10.9 Linux/6.1.12-arch1-1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d6c22ef9fe80d5b0263d4dd1722cfad85ee84b570420161de96fbf4eacad78ce
|
|
| MD5 |
7e35cb163c08aed320b736d2e794f70e
|
|
| BLAKE2b-256 |
d7d64170c8e0e8cc314c5ca4b14f007e24becec23d69628c42e1278af3ac513b
|
File details
Details for the file hag-0.4.0-py3-none-any.whl.
File metadata
- Download URL: hag-0.4.0-py3-none-any.whl
- Upload date:
- Size: 23.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.10.9 Linux/6.1.12-arch1-1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9fe776d5fee64893ccfe1d715e15323e98f3ae5cf81c6b90231ff4672ef59665
|
|
| MD5 |
219cc69870d816d6fce8241e0e299e37
|
|
| BLAKE2b-256 |
9c5237ae658529b316f3bfb328d2b3fa78b79c37afb9e9b8546dcdc80640db0c
|