Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/Achno/gocheat
A beautiful customizable Cheatsheet for keybindings,hotkeys and more in the terminal
https://github.com/Achno/gocheat
bubbletea cheatsheet cheatsheets hotkeys keybindings keyboard-shortcuts keymapping terminal tui
Last synced: about 1 month ago
JSON representation
A beautiful customizable Cheatsheet for keybindings,hotkeys and more in the terminal
- Host: GitHub
- URL: https://github.com/Achno/gocheat
- Owner: Achno
- License: mit
- Created: 2024-08-21T18:30:08.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-12-08T21:41:40.000Z (2 months ago)
- Last Synced: 2024-12-08T22:28:00.783Z (2 months ago)
- Topics: bubbletea, cheatsheet, cheatsheets, hotkeys, keybindings, keyboard-shortcuts, keymapping, terminal, tui
- Language: Go
- Homepage:
- Size: 133 KB
- Stars: 178
- Watchers: 2
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-useful-projects - <img src="https://icon.horse/icon/github.com" height="20px" align="center"/>/Achno/gocheat - Customizable terminal cheatsheet (Jump To / CLI/TUI Apps)
- awesome-useful-projects - <img src="https://icon.horse/icon/github.com" height="20px" align="center"/>/Achno/gocheat - Customizable terminal cheatsheet (Jump To / CLI/TUI Apps)
README
###### *
Design By Achno*
[
Overview
](#overview-)
[
Theme
](#themes-)
[
Usage
](#usage-)
[
Installation
](#installation-)
[
Contributions
](#contributions-)
```
██╗ ██╗ ██╗ ██╗ ██████╗ ██████╗ ██████╗██╗ ██╗███████╗ █████╗ ████████╗
╚██╗╚██╗╚██╗╚██╗ ██╔════╝ ██╔═══██╗██╔════╝██║ ██║██╔════╝██╔══██╗╚══██╔══╝
╚██╗╚██╗╚██╗╚██╗ ██║ ███╗██║ ██║██║ ███████║█████╗ ███████║ ██║
██╔╝██╔╝██╔╝██╔╝ ██║ ██║██║ ██║██║ ██╔══██║██╔══╝ ██╔══██║ ██║
██╔╝██╔╝██╔╝██╔╝ ╚██████╔╝╚██████╔╝╚██████╗██║ ██║███████╗██║ ██║ ██║
╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═════╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ ╚═╝
```# Overview 🖼️
Gocheat is a TUI app which allows you to create beautiful custom cheatsheets for your keybindings,hotkeys or shell aliases
> I have hundreds of keybinds and tens of aliases that I can't remember, so I needed something that can look them up in seconds ;)
https://github.com/user-attachments/assets/cd7039de-203d-47a2-889c-a14639a5e94e
## Features
- `Fuzzy filtering` mispell words and still find them. You also have 2 modes, filter by `keybind/description` or filter by `tag`, check `Usage` section for more info.
- Easily and quickly `add` and `remove` entries of keybindings or aliases via the TUI itself.
- `Customize theme` change the colors of gocheat to the ones you prefer.
- `Lightweight`
- `Vim keys`
## Planned features
`Tabs` : Tabs which allow you to create multiple cheatsheets, for example one for `keybinds` and one for `shell aliases`
`Pin items`: Pinned items will be shown first before all items so you dont even have to filter frequently forgotten items
# Themes 🎨
Colors for the Theme can be configured in `~/.config/gocheat/config.json` in `"styles":{}`
```json
{
"items": [
{
"title": "Minimize Window : meta + m",
"tag": "Kwin"
},
{
"title": "Maximize window : meta + up",
"tag": "Kwin"
}
],
"styles": {
"subtext": "#6c7086",
"accent": "#b4befe"
}
}```
Important❗ The `background` color for gocheat is derived the background color of your terminalIn the coming updates the color for the `filter`,`cursor` and the `arrow icon` for the forms will be configurable
# Usage ⚙️
Once you have launched the TUI you can hit `ctrl+h` to show the Help screen which shows you the keybinds for every screen. The tldr version of them are :
| Keybinds | Description |Screen |
| ------------- |:-------------:| -----:|
| `ctrl+j` | Add an entry | List |
| `Enter` | Confirm an entry | Form |
| `ctrl+x` | Delete an entry| List |
| `/` | Start filtering| List |
| `ctrl+f` | Toggle Filter by Tag | List |
| `esc` | Go back to the List screen or exit filtering | - |
| `ctrl+c` | Exit the app | - |
| `ctrl+k` | view your tags| List |
Notes 🗒️: You can modify the `~/.config/gocheat/config.json` directly to add,remove,edit entries
# Installation 📦
### Arch linux - AUR
```
yay -S gocheat
```### Build from source
🔨 Clone the repo, build the project and move it inside your `$PATH`
```
git clone https://github.com/Achno/gocheat
cd gocheat
go build
sudo cp gocheat /usr/local/bin/
gocheat
```Notes 🗒️ : if you have `$GOPATH` setup correctly
Eg. you have the following in your .zshrc / .bashrc
```bash
export GOPATH=$(go env GOPATH)
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN
```
You can simply use `go install`
```bash
go install github.com/Achno/gocheat@latest
```# Contributions :handshake:
Feel free to suggest any cool features that would improve gocheat even further by opening an `issue`
If you want to contribute a feature or fix a bug please open a `Pull request`