Commit graph

7 commits

Author SHA1 Message Date
kryptomrx
74bc28bce4 feat(build): Native AOT publish, versioning with git hash
- PublishAot=true, InvariantGlobalization=true, AssemblyName=noz
- Version 0.1.0 baked into binary via AssemblyInformationalVersion
- MSBuild target injects git short hash as SourceRevisionId at build time
- macOS: LinkerArg for Homebrew OpenSSL path (required for AOT linking)
- noz --version / -v exits cleanly without starting the REPL
2026-05-16 23:21:14 +02:00
kryptomrx
1865a7ccc2 feat(commands): clear, config, version
- clear: clears terminal screen
- config: view and set editor / code-editor preferences
- version: print version and git hash (noz 0.1.0 (abc1234))
2026-05-16 23:21:06 +02:00
kryptomrx
ae8a961cfd feat(commands): Dual-editor (nano/code), new note, parallel sync pull
- edit: terminal editor (nano/vim) by default, -c flag opens VS Code/Zed
- edit/new: ResolveTerminal() + ResolveCode() auto-detect editors on PATH
- new: create note from template, opens editor, confirms before push
- sync: pull notes from server with Parallel.ForEachAsync (8 concurrent)
- sync: hash diff - only download notes changed since last sync
- sync --dry-run: preview without writing, --all to force full download
- push: hash diff against server cache, Progress bar, --all flag
2026-05-16 23:20:59 +02:00
kryptomrx
cf54165735 feat(commands): ls with detailed view, tree hierarchy, CancellationToken support
- ls: compact view with status dots and folder markers
- ls -la: table view with status, lang, date, title; folders show mini status bar
- tree: recursive hierarchy using Spectre.Console Tree widget, context-aware
- All commands: CancellationToken threaded through ExecuteAsync
- Partition() helper respects topic-relative slug depth
2026-05-16 23:20:49 +02:00
kryptomrx
47cc904609 feat(repl): Visual banner, JSON note cache, background refresh, Ctrl+C handling
- Startup banner: FigletText + capabilities panel + note stats with status dots
- JSON cache at ~/.cache/noz/notes.json for instant startup
- Cache-first loading: show REPL immediately, refresh notes in background
- Timestamp in stats line (e.g. 'vor 5 Min.') for data freshness feedback
- Ctrl+C in idle exits REPL gracefully; during command cancels only the request
- Per-command CancellationTokenSource so cancel does not kill the session
- Tab completion: command-aware (cd only suggests folders)
2026-05-16 23:20:39 +02:00
kryptomrx
4248ff2255 refactor(repl): Topic-based navigation model
- Replace flat path string with CurrentTopic + CurrentSubPath
- SlugRelative() strips topic prefix for relative name resolution
- FoldersInView() returns topics at root, slug sub-segments within topic
- NotesInView() filters by topic and subpath
- NavigateTo() / NavigateUp() for cd navigation
- ResolveSlug() / ResolveNewSlug() for command argument resolution
2026-05-16 23:20:29 +02:00
kryptomrx
765ff7a976 Initial commit: noz-cli REPL skeleton 2026-05-16 19:25:39 +02:00