]>
danix's work - publisher.git/log
summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Danilo M. [Sun, 3 May 2026 14:14:09 +0000 (16:14 +0200)]
fix: preserve article body when saving frontmatter
FrontmatterEditor._save was passing empty string as body to
write_frontmatter, erasing all content below the +++ delimiter.
Now reads body via parse_frontmatter before writing back.
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 14:09:38 +0000 (16:09 +0200)]
feat: propagate tag renames to articles after taxonomy save
After saving TaxonomyView, detect renamed IT/EN tags by comparing
old and new it_to_en dicts, then rewrite frontmatter of affected
articles. Status bar shows count of updated articles. Taxonomy
save failure aborts propagation. Adds pytest-qt and four unit
tests for _detect_renames.
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 14:09:26 +0000 (16:09 +0200)]
feat: multi-token tag autocomplete in FrontmatterEditor
Replace single-token QCompleter with MultiTokenCompleter that
completes each comma-separated tag independently. Activating a
suggestion inserts the completed tag and positions cursor after
a trailing ", " separator for immediate next-tag input.
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 13:56:44 +0000 (15:56 +0200)]
fix: always set explicit foreground color on ArticleItem
Without an explicit color for normal articles, Qt reused the foreground
from a previously painted item at the same row index, causing published
articles to appear amber (draft color).
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 13:49:56 +0000 (15:49 +0200)]
feat: add keyboard shortcuts (Ctrl+Q/N/R/1/2/T)
Ctrl+Q quit, Ctrl+N new article, Ctrl+R refresh, Ctrl+1 articles view,
Ctrl+2 missing translations, Ctrl+T translations view.
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 13:46:08 +0000 (15:46 +0200)]
feat: wire Traduci button in MissingTranslationView
Adds a Traduci button that enables on row selection and emits
translate_requested, connected to _do_translate in main_window.
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 13:44:00 +0000 (15:44 +0200)]
feat: add Categories tab to TaxonomyView
Single-list editor for docs/categories.txt with article usage counts
scanned from frontmatter. Supports multi-select delete.
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 13:35:46 +0000 (15:35 +0200)]
feat: add typora_args config field for Wayland launch flags
Allows passing extra CLI args (e.g. --ozone-platform=wayland) to Typora
at launch without baking them into the binary path.
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 11:13:46 +0000 (13:13 +0200)]
Chore: updated TODO and HANDOFF.
Danilo M. [Sun, 3 May 2026 11:10:05 +0000 (13:10 +0200)]
fix: replace text elide workarounds with QStyledItemDelegate for proper two-line rendering
Danilo M. [Sun, 3 May 2026 11:06:12 +0000 (13:06 +0200)]
fix: disable text elision on article lists so metadata shows fully
Danilo M. [Sun, 3 May 2026 11:05:12 +0000 (13:05 +0200)]
fix: enable word wrap on article list widgets to prevent text truncation
Danilo M. [Sun, 3 May 2026 11:01:55 +0000 (13:01 +0200)]
fix: remove stale f-string prefix on badge strings, reset size hint in MissingTranslationView
Danilo M. [Sun, 3 May 2026 10:58:15 +0000 (12:58 +0200)]
feat: show type, date, tags, categories in article list rows
Danilo M. [Sun, 3 May 2026 10:56:09 +0000 (12:56 +0200)]
feat: add meta_type, meta_tags, meta_categories, meta_date properties to Article
Danilo M. [Sun, 3 May 2026 09:41:07 +0000 (11:41 +0200)]
Chore: updated handoff and todo list
Danilo M. [Sun, 3 May 2026 09:20:14 +0000 (11:20 +0200)]
fix: update desktop entry paths to /opt/my-publisher
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 09:18:05 +0000 (11:18 +0200)]
feat: add assets dir with desktop entry and blogilo.svg icon
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 09:12:49 +0000 (11:12 +0200)]
docs: add font size spinner to TODO
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 09:10:35 +0000 (11:10 +0200)]
feat: add font_size config option, apply at startup
Reads font_size (int, default 10) from config.toml and sets it as the
app-wide QFont point size before the main window is shown.
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 09:08:39 +0000 (11:08 +0200)]
docs: add TODO.md tracking remaining known gaps
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 08:58:46 +0000 (10:58 +0200)]
chore: add CLAUDE.md, HANDOFF.md, design spec, implementation plan, frontmatter fixes
Danilo M. [Sun, 3 May 2026 08:53:39 +0000 (10:53 +0200)]
fix: stop double stopped emit, restore race, worker leak, encapsulation, git view init
Danilo M. [Sun, 3 May 2026 08:46:00 +0000 (10:46 +0200)]
feat: complete my-publisher app — all views wired and working
Danilo M. [Sun, 3 May 2026 08:45:04 +0000 (10:45 +0200)]
feat: media view with drag-drop upload and clipboard path copy
Danilo M. [Sun, 3 May 2026 08:44:13 +0000 (10:44 +0200)]
feat: taxonomy view with IT/EN pair table and orphan detection
Danilo M. [Sun, 3 May 2026 08:43:31 +0000 (10:43 +0200)]
feat: hugo server panel with start/stop and log streaming
Danilo M. [Sun, 3 May 2026 08:42:30 +0000 (10:42 +0200)]
feat: git view with status, pull/push, and deleted article restore
Danilo M. [Sun, 3 May 2026 08:41:41 +0000 (10:41 +0200)]
feat: translation view with QProcess streaming and post-translation preview
Danilo M. [Sun, 3 May 2026 08:40:54 +0000 (10:40 +0200)]
feat: new article stub creation with Typora open
Danilo M. [Sun, 3 May 2026 08:37:59 +0000 (10:37 +0200)]
fix: remove dead code/imports, wrap fm column in QScrollArea, fix path display, simplify _save
Danilo M. [Sun, 3 May 2026 08:33:08 +0000 (10:33 +0200)]
feat: frontmatter editor dialog with type dropdown and tag autocomplete
Danilo M. [Sun, 3 May 2026 08:32:57 +0000 (10:32 +0200)]
feat: article detail panel with frontmatter display and markdown preview
Danilo M. [Sun, 3 May 2026 08:32:47 +0000 (10:32 +0200)]
feat: articles view with IT/EN tabs and missing translation highlight
Danilo M. [Sun, 3 May 2026 08:26:29 +0000 (10:26 +0200)]
fix: wire badge into sidebar layout, remove unused QFont/QSizePolicy imports
Danilo M. [Sun, 3 May 2026 08:20:48 +0000 (10:20 +0200)]
feat: main window with sidebar navigation and file watcher
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Sun, 3 May 2026 08:14:42 +0000 (10:14 +0200)]
fix: correct remove_article return type, emit started via QProcess signal
Danilo M. [Sun, 3 May 2026 08:10:38 +0000 (10:10 +0200)]
feat: TranslationWorker QProcess for transart.py streaming
Danilo M. [Sun, 3 May 2026 08:10:30 +0000 (10:10 +0200)]
feat: HugoWorker QProcess with log streaming
Danilo M. [Sun, 3 May 2026 08:10:22 +0000 (10:10 +0200)]
feat: GitWorker QThread for pull/push/rm/restore
Danilo M. [Sun, 3 May 2026 08:07:43 +0000 (10:07 +0200)]
fix: narrow exception clause to ValueError/OSError, add corrupt frontmatter test
Danilo M. [Sun, 3 May 2026 08:01:57 +0000 (10:01 +0200)]
feat: article scanner with translation pair detection
Danilo M. [Sun, 3 May 2026 08:00:51 +0000 (10:00 +0200)]
fix: remove unused field import, document orphan-discard contract in save_taxonomy
Danilo M. [Sun, 3 May 2026 07:55:27 +0000 (09:55 +0200)]
feat: taxonomy load/save with IT/EN pair alignment
Danilo M. [Fri, 1 May 2026 10:51:54 +0000 (12:51 +0200)]
feat: TOML frontmatter parse/write with tomlkit
Danilo M. [Fri, 1 May 2026 10:47:22 +0000 (12:47 +0200)]
feat: Article dataclass and ARTICLE_TYPES
Danilo M. [Fri, 1 May 2026 10:46:35 +0000 (12:46 +0200)]
fix: clean up config module - remove self-import pattern, pass path explicitly in tests
Danilo M. [Fri, 1 May 2026 10:42:29 +0000 (12:42 +0200)]
feat: config load/save with tomlkit
Co-Authored-By: Claude Sonnet 4.6 <redacted>
Danilo M. [Fri, 1 May 2026 10:40:51 +0000 (12:40 +0200)]
chore: add .gitignore
Danilo M. [Fri, 1 May 2026 10:38:44 +0000 (12:38 +0200)]
chore: initial project scaffold