Простая консольная утилита для управления файлами заметок.
Project description
terminal-note
A console utility for creating and managing notes without leaving the terminal.
Contents
- Motivation
- Features
- Installation
- Usage
- Demo
- Dependencies
- Configuration file
- Storage structure
- Example template
template.md - Ideas
Motivation
I mostly work in the terminal and use tools like nvim, rg, fd, and fzf. For note-taking, I use Obsidian — it stores notes locally in separate .md files, which is very convenient. However, launching Obsidian takes time, and constantly switching between the terminal and a GUI application disrupts my workflow.
To stay inside the terminal, I wrote terminal-note — a utility that allows you to quickly create, search, and manage notes directly from the console.
Features
- Create notes with one command without opening an editor.
- Search, open, delete, and read notes using
fzf. - Notes are saved in Markdown (
.md) format. - Support for templates and flexible configuration through a config file.
- Works with a chosen directory — easily integrates with Obsidian.
- Write notes in your favorite console editor: nvim, micro, and others.
Installation
- Install via pip:
pip install terminal-note --user
- Verify it works:
tn --help
Usage
tn --configortn -c— open the configuration file.tn "note text"— create a quick note. The file will be named by a template (2025-04-05 15:30:00.md) and saved in the specified directory.tn -o— create or open a note. First, enter the file name, then the editor opens. If the file exists — it is edited; if not — created.tn -d— delete a note. The file is selected for deletion viafzf.tn -r— read a note. The file is selected throughfzfand opened infrogmouth(which parses Markdown with navigation support).
Demo
Displaying help
Editing the config file
Inline note creation
Editing a note
Creating a new note
Deleting a note
Reading a note
Dependencies
- python >= 3.11
- iterfzf >= 1.8.0.62.0
- frogmouth >= 0.9.2
Configuration file
# Storage mode (files only)
storage_mode = "files"
# Path to the directory where notes will be stored.
# The script parses only the $HOME variable. If a special path is needed, specify it fully.
path_to_storage_directory = "$HOME/terminal_note"
# File extension for notes: txt, md (without the dot .md)
file_extension = "md"
# Utility for reading non-md files: bat, cat, less
file_reader = "cat"
# Path to the template file.
path_to_template_note = "$HOME/terminal_note/Templates/template.md"
# Editor to write notes comfortably: vi, vim, nvim, micro, nano, etc.
editor = "vi"
Storage structure
Example storage structure:
➜ ~ tree terminal_note
$HOME/terminal_note/
├── 2025-07-22 22:32:26.md
├── 2025-07-22 22:34:56.md
├── 2025-07-27 00:41:52.md
├── Gurtam
│ ├── 1. Vialon.md
│ ├── 2. Token authentication.md
│ └── 3. Searching elements.md
├── My Book.md
└── Templates
└── template.md
3 directories, 8 files
Example template (template.md)
---
Creation date:
Modification date:
links:
tags:
---
Ideas
- Git integration:
tn -gwill performpull,add,commit,push. - Support storage in a database (not sure yet — as it breaks compatibility with Obsidian).
- Possibly store inline quick notes in a separate directory for easier searching.
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 terminal_note-0.9.0.tar.gz.
File metadata
- Download URL: terminal_note-0.9.0.tar.gz
- Upload date:
- Size: 10.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f23272995ea635e4187052c99ebcfdae03a6a367c5343b07818781fd8640e98a
|
|
| MD5 |
d8fdf8f2ec811e2b07ca6cc45ffe368e
|
|
| BLAKE2b-256 |
9a4d732373b1f819d2ba0fce08e836a3bf6b0768db0a49f5c84d7d54f2d8b90e
|
File details
Details for the file terminal_note-0.9.0-py3-none-any.whl.
File metadata
- Download URL: terminal_note-0.9.0-py3-none-any.whl
- Upload date:
- Size: 10.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c58ced64bc9bd56e1febd89f00249fd95d2da9e62b134f20aa52b57c30d91625
|
|
| MD5 |
7c925e1ca47ae931c728b3a59bd3e6cd
|
|
| BLAKE2b-256 |
d8285d5316cfa0de435a7199b80d7e30ff8bd7c8cb942aff7bf670ec2385afb2
|