No project description provided
Project description
HeyNoterm
HeyNoterm is a scratch pad for the terminal, designed to help you quickly jot down notes, commands, and ideas while working in the command line.
What is HeyNoterm?
- A minimalistic, terminal-based scratch pad.
- Organize your thoughts in discrete blocks of text.
- Syntax highlighting for code snippets (Python, Markdown, etc.).
- Math evaluation mode for quick calculations.
- Persistent JSON storage (saved by default to
~/.heynoterm.json; see Custom State File Location below) so your notes survive restarts. - Context-aware block operations: add, delete, move, split, and change language on the fly.
- Dark-mode toggle and on-screen help overlay.
Features
- Add new blocks (
Ctrl+N), delete blocks (Ctrl+D), split blocks (Ctrl+T). - Navigate between blocks (
Ctrl+J/Ctrl+K). - Change block language (
Ctrl+L): Python, Markdown, Math. - Real-time math evaluation in math mode.
- Persistent storage of all blocks in a state file, by default
~/.heynoterm.json.
- On-screen help (
Ctrl+/) listing all keybindings.
Installation
We recommend using uv to install and manage HeyNoterm, but you can also use uvx, pipx, or pip. Homebrew is not supported.
-
Using uv (recommended)
uv install heynoterm
-
Using uvx
uvx heynoterm -
Using pipx
pipx install heynoterm
-
Using pip
pip install heynoterm
After installation, run HeyNoterm with:
heynoterm
# or via uv:
uv heynoterm
# or via uvx:
uvx heynoterm
Usage
- Launch the app:
heynoterm - Type freely to add content in the current block.
- Use keybindings to manage blocks and switch modes.
- Press
Ctrl+Cto exit.
All your blocks are automatically saved to a state file (by default ~/.heynoterm.json). See Custom State File Location below to change the storage location.
Custom State File Location
By default, HeyNoterm stores its state in ~/.heynoterm.json. You can override this behavior using command-line options:
-l,--local: Use./.heynoterm.jsonin the current working directory.-s <path>,--state <path>: Specify a custom path for the state file.
Examples:
heynoterm -l
heynoterm --state /path/to/my_notes.json
If you install via uvx, pass options after --:
uvx heynoterm -- -l
uvx heynoterm -- --state /path/to/my_notes.json
Contributing
Contributions are welcome! Please open an issue or submit a pull request on the HeyNoterm GitHub repository.
License
TBD
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
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 heynoterm-0.2.1.tar.gz.
File metadata
- Download URL: heynoterm-0.2.1.tar.gz
- Upload date:
- Size: 92.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ba9f4e267b05053218eda17b036bfcce8e18f567a5f10629cde13f1b7891b60
|
|
| MD5 |
c3f2c3387e289b603bd48b07a43fde70
|
|
| BLAKE2b-256 |
7adfd6597ea20f18f030f27217ef2f9486dd0facc089ebf3f2571e9b1aa90483
|
File details
Details for the file heynoterm-0.2.1-py3-none-any.whl.
File metadata
- Download URL: heynoterm-0.2.1-py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.6.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
643b0bfdefe38f7bc808183cf9bc67a4815be90490691499a10e6c39460e9a5a
|
|
| MD5 |
b21da9c31c4b3b13123dc1143e24292c
|
|
| BLAKE2b-256 |
5de15459d86628a120dcd7a4f032c374c5bf20181a0fba99ac8105bd8719bff5
|