Skip to main content

cli note taker

Project description

nnote

A minimal CLI note-taking tool. Notes are plain files stored in a directory of your choice.

Installation

pip install -e .

Setup

nnote init

Prompts for a notes directory (default: ~/nnotes) and a default editor. Config is saved to ~/.config/nnote/config.yaml. If $EDITOR is set in your environment, it will be used as the editor default.

Commands

nnote new <title> [-d <dir>]

Create a new note and open it in the configured editor. Use -d to place the note inside a subdirectory of your notes directory (created automatically if it doesn't exist).

nnote new todo
nnote new standup -d work

nnote view <title> [-d <dir>]

Print the contents of a note to stdout.

nnote view todo
nnote view standup -d work

nnote edit <title> [-d <dir>]

Open an existing note in the configured editor. Errors if the note doesn't exist (use new to create it).

nnote edit todo

nnote list [-d <dir>]

Display all notes as a tree. Scope to a subdirectory with -d.

nnote list
nnote list -d work
/home/user/nnotes
├── work/
│   ├── meeting
│   └── standup
└── todo

nnote drop [<title>] [-d <dir>]

Remove a note or a directory. When dropping a directory, prompts for confirmation if it contains files.

nnote drop todo              # remove a note
nnote drop standup -d work   # remove a note inside a subdirectory
nnote drop -d work           # remove the entire directory

nnote move <title> [<dest_title>] [-d <dir>] [--dest-dir <dir>]

Move or rename a note. Provide a new title to rename, --dest-dir to move to another subdirectory, or both.

nnote move todo done                        # rename
nnote move standup -d work --dest-dir arch  # move to another subdirectory
nnote move standup meeting -d work          # rename within a subdirectory

nnote search <query> [-d <dir>]

Search notes by title and content. Results are ranked by relevance: exact title matches score highest, followed by prefix/substring/fuzzy title matches, then content hits. Matched terms are highlighted in the output.

nnote search meeting
nnote search budget -d work
work/meeting [title]
  3: discussed the project budget
  7: next meeting on friday

Config file

~/.config/nnote/config.yaml

notes_dir: /home/user/nnotes
editor: nvim

The editor field can be any terminal editor command (vim, nano, hx, etc.). If omitted, $EDITOR is used.

Changelog

See CHANGELOG.md for release history.

License

This project is licensed under the GNU General Public License v3.0 or later. See LICENSE for details.

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

nnote-0.1.2.tar.gz (22.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nnote-0.1.2-py3-none-any.whl (23.2 kB view details)

Uploaded Python 3

File details

Details for the file nnote-0.1.2.tar.gz.

File metadata

  • Download URL: nnote-0.1.2.tar.gz
  • Upload date:
  • Size: 22.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnote-0.1.2.tar.gz
Algorithm Hash digest
SHA256 5b190a6d08cf963edc72a63ccf11a99164f4f2f204a50c0c93770927ce743f85
MD5 e78d0377f3d4dd294d3dce48f6721f53
BLAKE2b-256 51a195855990604bbaadcae022ae2c38986a195e1a8e509cca923198894088e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for nnote-0.1.2.tar.gz:

Publisher: publish.yml on stiermid/nnote

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nnote-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: nnote-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 23.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nnote-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3e830d6354c3049ef2032e1658024ff8ab976e7334d14c51df98492dc2ef067a
MD5 f0a91db3fa42984f62916172ca49e1b3
BLAKE2b-256 6579c0c871a24530214fa5e2d09965a0527a1b4743d82151b95b21b6bf15540f

See more details on using hashes here.

Provenance

The following attestation bundles were made for nnote-0.1.2-py3-none-any.whl:

Publisher: publish.yml on stiermid/nnote

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page