https://github.com/terror/notes
A lightweight command-line utility for managing plain text notes
https://github.com/terror/notes
Last synced: 11 months ago
JSON representation
A lightweight command-line utility for managing plain text notes
- Host: GitHub
- URL: https://github.com/terror/notes
- Owner: terror
- License: cc0-1.0
- Created: 2022-11-27T23:32:18.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2023-05-24T02:34:54.000Z (over 2 years ago)
- Last Synced: 2025-02-15T09:37:18.043Z (11 months ago)
- Language: Shell
- Homepage:
- Size: 16.6 KB
- Stars: 2
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING
- License: LICENSE
Awesome Lists containing this project
README
## notes 📝
**notes** is a simple command-line utility that helps with managing a flat
directory of notes powered by fzf, fd and ripgrep.
### Installation
You can install the script onto your machine by simply copying it into the
appropriate location:
```bash
curl https://raw.githubusercontent.com/terror/notes/master/notes -o /usr/local/bin/notes
chmod +x /usr/local/bin/notes
```
### Dependencies
**notes** requires a few environment variables to be set, namely:
- `$EDITOR`: The text editor you'll be editing your notes with [default: `vim`]
- `$NOTE_DIR`: Path to your notes directory [default: `~/notes`]
- `$NOTE_EXT`: File extension of your notes [default: `md`]
- `$NOTE_FORMAT_COMMAND`: Command to run when formatting notes [default: `prettier --print-width 80 --prose-wrap always --single-quote true --tab-width 2 --write`]
Moreover, a few external dependencies are required for full usage of the
program, namely:
- [`bat`](https://github.com/sharkdp/bat) - A cat clone
- [`fd`](https://github.com/sharkdp/fd) - A fast and user-friendly alternative
to find
- [`fzf`](https://github.com/junegunn/fzf) - A fuzzy file finder
- [`prettier`](https://github.com/prettier/prettier) (if `$NOTE_FORMAT_COMMAND` is set to use it) - A document formatter
### Usage
Below are the available ways you can interact with the program:
```present notes help
A simple note management CLI powered by fzf, fd, and ripgrep.
Usage: notes [COMMAND]
Available commands:
e | enter Interact with the notes directory
f | format Format files with a prose formatter
h | help Show this message
j | journal Open up todays journal
k | keybindings View all fzf window keybindings
s | search Start a full-text search
```
**notes** also sets a bunch of keybindings within the `fzf` window for note
interactions:
```
Toggle the preview window
Exit
Delete the selected file
Create a new file whose name is the current query string
Format the selected file
Scroll down the preview window
Scroll up the preview window
Reload the result buffer
Edit the selected file
```