Custom configured cheatsheet for your hotkeys

keyb

keyb is a custom configured, global hotkey cheatsheet, inspired by awesomeWM's very own cheatsheet.

With keyb, you can list any hotkeys from any program, all in one place!

Usage

List your custom keybindings in a config file. keyb supports yaml & json config files.

tmux:
  prefix: ctrl + a
  keybinds:
    - command: split vertical
      key: "|"
    - command: split horizontal
      key: "-"
bspwm:
  keybinds:
    - command: open configs
	  key: super + z

Inspiration

Owner
Comments
  • Questions related to the config

    Questions related to the config

    I test keyboarders since a week and this is certainly a great tool event in its first stages.

    I'm on macos with no declared XGD variables and as a result, after installation the source file to add keybindings is at the following directory : $HOME/Library/Application Support/keyb/keyb.yml

    I have two questions :

    • there is no config.yml file in this folder, should I create one there to set various UI elements ?
    • would it not be a good idea to display the kb by alphabetical order by default ?

    Thanks for the excellent work keyb has already its own keybinding to open it in a tmux popup and send the "/" key to query for a keybinding

  • Pick up config file from $XDG_CONFIG_HOME if set

    Pick up config file from $XDG_CONFIG_HOME if set

    I'm on a Mac, but use the XDG dirs. A lot of apps use these directories even though its not the default mac location. My suggestion is to use the XDG_CONFIG_HOME env var if it exists and if not fallback to ~/.config. If that also doesn't exist, you can fallback to Application Support. I've seen that I can use the --config flag but that means I have to use the app with an alias.

  • Pressing esc to quit the app

    Pressing esc to quit the app

    I like having esc quit the app. In some apps you can define that as a custom keybinding like in lazygit: https://github.com/dlvhdr/dotfiles/blob/ea1b3ca38663d7ad56c0c6ffa1581bd0ed010abb/.config/lazygit/config.yml#L36

    Currently only q quits the app.

  • Added some more cheat sheets

    Added some more cheat sheets

    Hey, I modified some more files. There is also sh file containing only sed commands to convert files to mark down. Also I left longer cheats unchanged wherever applied. Regards

  • fix: fix search bar cursor not blinking when focused

    fix: fix search bar cursor not blinking when focused

    Closes #14.

    textinput's cursor was not blinking as:

    • Blinking was not properly initialized
    • The Update function call of handleSearch was placed inside the KeyMsg switch-case statement, which meant the cursor would only blink on every key press.
    • m.Reset() was being infinitely called when the search bar was empty (oops)
  • Support searching in section headers by default

    Support searching in section headers by default

    I find it a bit cumbersome to type h: in order to search for a keybinding related to a specific app. Can it be done so you search in both the section titles and items by default?

  • More color configurations

    More color configurations

    I'd like to be able to change the colors of:

    • The titles of sections (defined as top level - name: "title")
    • The name of a keybinding
    • The separator (default to ;)
    • The keybinding itself
  • homebrew support

    homebrew support

    I like to manage my packages with homebrew. Fragmenting my packages over different sources is less ideal. With 1 package manager, I can easily switch computers, or get a list of what I have installed.

Related tags
Small library to read your configuration from environment variables

envconfig envconfig is a library which allows you to parse your configuration from environment variables and fill an arbitrary struct. See the example

Nov 3, 2022
Genv is a library for Go (golang) that makes it easy to read and use environment variables in your projects. It also allows environment variables to be loaded from the .env file.

genv Genv is a library for Go (golang) that makes it easy to read and use environment variables in your projects. It also allows environment variables

Dec 21, 2022
It syncronizes the configuration described in a YAML file against your GitHub Organization

It syncronizes the configuration described in a YAML file against your GitHub Organization. Combined with a CI system, it can be used to implement GitOps for GitHub.

Jul 19, 2021
Configo enables hierarchical configurations for your application.

Configo A Go port of node-config. Documentation Introduction Configo enables hierarchical configurations for your application. It allows you to setup

Nov 7, 2022
Project my config into your prebuild

Projector A simple key value store per path. Building From Source git clone [email protected]:ThePrimeagen/projector.git cd projector # Install it where

Jun 23, 2022
Cfginterpolator is an interpolate library in golang allowing to include data from external sources in your configuration

cfginterpolator cfginterpolator is an interpolate library in golang allowing to include data from external sources in your configuration cfginterpolat

Dec 14, 2021
Wl-gammarelay - Wayland utility for changing color temperature using hotkeys

wl-gammarelay This utility was developed from gammastep, a fork of redshift as w

Nov 20, 2022
Tool for shell commands execution, visualization and alerting. Configured with a simple YAML file.
Tool for shell commands execution, visualization and alerting. Configured with a simple YAML file.

Sampler. Visualization for any shell command. Sampler is a tool for shell commands execution, visualization and alerting. Configured with a simple YAM

Dec 28, 2022
This library generate a new tlsconfig usable within go standard library configured with a self-signed certificate generated on the fly

sslcert This library generate a new tlsconfig usable within go standard library configured with a self-signed certificate generated on the fly. Exampl

Dec 17, 2022
A terraform plugin that no-one should use that keeps pacman packages synced to a configured list

A provider for pacman packages Manages installation of pacman packages, theoretically works on most places where pacman is installed. Danger notice Wh

Nov 4, 2021
A smol DNS server (<100 loc) that's configured with a static JSON file. Useful for split-dns.

A smol DNS server (<100 loc) that's configured with a static JSON file. Useful for split-dns.

Jul 27, 2022
A serverless bot which periodically checks configured BigQuery capacity commitments, reservations and assignments against actual slot consumption of running jobs and reports findings to Slack/Google Chat.
A serverless bot which periodically checks configured BigQuery capacity commitments, reservations and assignments against actual slot consumption of running jobs and reports findings to Slack/Google Chat.

Solution Guide This solution implements a ChatOps-like approach to monitoring slot utilization of Google Cloud BigQuery reservations. As an alternativ

Dec 7, 2022
Allows you to fill in variables in your custom project templates.

go-templater The best project templater go-templater lets you use any project template you want and replace the variables with values from the config.

Nov 6, 2021
Custom generic HTTP handler providing automatic JSON decoding/encoding of HTTP request/response to your concrete types

gap Custom generic HTTP handler providing automatic JSON decoding/encoding of HTTP request/response to your concrete types. gap.Wrap allows to use the

Aug 28, 2022
JPRQ Customizer is a customizer that helps to use the JPRQ server code and make it compatible with your own server with custom subdomain and domain
JPRQ Customizer is a customizer that helps to use the JPRQ server code and make it compatible with your own server with custom subdomain and domain

JPRQ Customizer is a customizer that helps to use the JPRQ server code and make it compatible with your own server with custom subdomain and domain.You can upload the generated directory to your web server and expose user localhost to public internet. You can use this to make your local machine a command center for your ethical hacking purpose ;)

Jan 19, 2022
Slack-emoji-bot - This Slack bot will post the newly created custom Slack emojis to the channel of your choice

Slack Emoji Bot This Slack bot will post the newly created custom Slack emojis t

Oct 21, 2022
Steampipe plugin to query your Baleen namespaces, custom rules and more

Baleen plugin for Steampipe Use SQL to query namespaces, rules and more from Baleen. Get started → Documentation: Table definitions & examples Quick s

Jun 16, 2022
Code your next Go web project with (a) Mojito! No matter if its an API or a website, go-mojito assists you with dependency injection, simple routing, custom request / response objects and template rendering
 Code your next Go web project with (a) Mojito! No matter if its an API or a website, go-mojito assists you with dependency injection, simple routing, custom request / response objects and template rendering

Go-Mojito is a super-modular library to bootstrap your next Go web project. It can be used for strict API-only purposes as well as server-side renderi

May 1, 2022
BuntDB is an embeddable, in-memory key/value database for Go with custom indexing and geospatial support
BuntDB is an embeddable, in-memory key/value database for Go with custom indexing and geospatial support

BuntDB is a low-level, in-memory, key/value store in pure Go. It persists to disk, is ACID compliant, and uses locking for multiple readers and a sing

Dec 30, 2022
Martian is a library for building custom HTTP/S proxies

Martian Proxy Martian Proxy is a programmable HTTP proxy designed to be used for testing. Martian is a great tool to use if you want to: Verify that a

Dec 31, 2022