Skip to content

v0.2.0-alpha

Pre-release
Pre-release

Choose a tag to compare

@CarterIrish CarterIrish released this 08 Oct 23:21
· 10 commits to main since this release

Jot – v0.2.0-alpha

Adds the note scanning layer. jot now walks your notes directory and lists what it finds.

What's included

  • NoteManager: recursive scan of the notes directory into an in-memory tree of
    directories and notes, kept UI-agnostic so it can back a TUI or a later GUI
  • Case-insensitive sorting — notes by filename, subdirectories by path
  • flattenAll() produces a single flat list of every note found (every file is
    collected regardless of extension)
  • Symlink and junction handling: a link resolving to a directory you are already
    inside is added as an empty node instead of being followed, so a scan can't loop.
    Directories are matched by file identity rather than path text, so case
    differences, 8.3 short names, and junctions are all covered
  • Unreadable directories (a broken junction, or one the OS denies access to) are
    recorded as empty nodes and reported as warnings after the scan rather than
    aborting it
  • Hardened first-run setup: trims whitespace, strips the quotes a dragged-in path
    carries, and re-asks until the path names an existing directory
  • Config recovery: a corrupt, unreadable, or root_dir-less config.json falls
    back to the setup prompt instead of failing

Fixes

  • Fixed undefined behavior when a negative char reached ::tolower during sorting
  • Added a missing include

Requirements

  • Windows 10/11 x64
  • Microsoft Visual C++ Redistributable 2022 (Likely already installed on your device)

Not yet implemented

  • Terminal UI (list rendering, cursor navigation, the View/Edit submenu)
  • Opening a note in the configured editor — the editor setting is stored but unused
  • Filtering notes by file extension

Usage

Run jot.exe. On first launch you will be prompted for the path to your notes
directory, which is saved to config.json next to the executable. On later runs
jot loads that path, scans it recursively, prints every note path it found, and
reports any directory it could not read:

Scanning completed.
  warning: skipped "C:\Notes\archive" (Access is denied.)

Full Changelog: v0.1.0...v0.2.0