Commit Graph

259 Commits

Author SHA1 Message Date
e73a380f38 build: switch Makefile texthooker-ui steps to bun 2026-02-18 23:27:28 -08:00
1c189974fc update texthooker 2026-02-18 23:10:15 -08:00
209ab73a31 fix(renderer): add recovery boundary and normalize macOS tray icon 2026-02-18 22:59:15 -08:00
d1aeb3b754 Fix mpv tlang and profile parsing 2026-02-18 19:11:19 -08:00
kyasuda
f299f2a19e chore: switch texthooker-ui workflow to pnpm and add backlog tasks 2026-02-18 18:05:42 -08:00
ebaed49f76 feat: improve background startup and launcher control
Detach --background launches from terminals with quieter runtime output, make wrapper/plugin overlay start explicit, and allow trailing commas in JSONC configs for safer hot-reload edits. Includes pending Anki/docs/backlog updates in this unreleased batch.
2026-02-18 02:28:53 -08:00
4703b995da feat(config): hot-reload safe config updates and document behavior 2026-02-18 02:28:53 -08:00
fd49e73762 Add MPV overlay queue controls 2026-02-18 01:55:01 -08:00
3803d4d47b Merge pull request #10 from ksyasuda/fix/bun-tooling-migration
fix: migrate tooling to bun and accept file path targets
2026-02-18 00:32:22 -08:00
25fddce372 fix(build): remove python launcher dep and tighten target resolution 2026-02-17 23:30:24 -08:00
f20d019c11 pretty 2026-02-17 22:54:09 -08:00
ffeef9c136 update ci jobs 2026-02-17 22:51:52 -08:00
6da8ddda3f update 2026-02-17 22:51:52 -08:00
846b075206 fix: migrate tooling to bun and accept file path targets 2026-02-17 22:51:52 -08:00
a531527e1f chore(backlog): sync task metadata and finalize jellyfin task states 2026-02-17 20:34:45 -08:00
7c1d81ea80 udpate ci and add docs sweep scripts 2026-02-17 19:14:43 -08:00
9b0fdab840 Merge pull request #9 from ksyasuda/refactor/launcher-modules-split
refactor(core): normalize core service naming
2026-02-17 19:04:39 -08:00
817a949f99 chore(scripts): align tooling with runtime/service updates 2026-02-17 19:00:29 -08:00
1233e3630f refactor(core): normalize service naming across app runtime 2026-02-17 19:00:27 -08:00
e38a1c945e feat(jellyfin): add remote playback and config plumbing 2026-02-17 19:00:18 -08:00
a6a28f52f3 docs: update immersion and Jellyfin docs/backlog notes 2026-02-17 18:58:38 -08:00
e7a522a485 refactor(launcher): complete split into modular launcher/ directory
- Split 4,028-line monolithic subminer script into 10 focused modules
- launcher/types.ts: shared types and constants
- launcher/log.ts: logging infrastructure
- launcher/util.ts: pure utilities and child process runner
- launcher/config.ts: config loading and arg parsing
- launcher/jimaku.ts: Jimaku API client and media parsing
- launcher/picker.ts: rofi/fzf menu UI
- launcher/mpv.ts: mpv process management and IPC
- launcher/youtube.ts: YouTube subtitle generation pipeline
- launcher/jellyfin.ts: Jellyfin API and browsing
- launcher/main.ts: orchestration entrypoint
- Add build-launcher Makefile target using bun build
- subminer is now a build artifact produced by make build-launcher
- install-linux and install-macos depend on build-launcher
2026-02-17 09:16:52 -08:00
ba94a33b46 refactor(launcher): extract mpv, youtube, and jellyfin modules
- launcher/mpv.ts: state object, mpv IPC, process management, socket helpers
- launcher/youtube.ts: YouTube subtitle generation pipeline and helpers
- launcher/jellyfin.ts: Jellyfin API client, icon caching, play menu
- runAppCommandWithInherit and related functions placed in mpv.ts
- buildAppEnv deduplicated into single helper in mpv.ts
2026-02-17 09:16:52 -08:00
b4df3f8295 refactor(launcher): extract config, jimaku, and picker modules
- launcher/config.ts: config loading, arg parsing, plugin runtime config
- launcher/jimaku.ts: Jimaku API client, media parsing, subtitle helpers
- launcher/picker.ts: rofi/fzf menu UI, video collection, Jellyfin pickers
- JellyfinSessionConfig moved to types.ts to avoid circular deps
- picker functions accept ensureIcon callback to decouple from jellyfin
2026-02-17 09:16:52 -08:00
518015f534 refactor(launcher): extract types, logging, and utilities
- launcher/types.ts: shared types, interfaces, and constants
- launcher/log.ts: logging infrastructure (COLORS, log, fail, etc.)
- launcher/util.ts: pure utilities, lang helpers, and child process runner
- runExternalCommand accepts childTracker param instead of referencing state
- inferWhisperLanguage placed in util.ts to avoid circular deps
2026-02-17 09:16:52 -08:00
37cc3a6b01 refactor(core): normalize core service naming
Standardize core service module and export names to reduce naming ambiguity and make imports predictable across runtime, tests, scripts, and docs.
2026-02-17 09:16:50 -08:00
25faf3ef3e feat(anilist): add CLI and IPC management controls 2026-02-17 04:04:05 -08:00
a359e91b14 refactor(core): normalize core service naming
Standardize core service module and export names to reduce naming ambiguity and make imports predictable across runtime, tests, scripts, and docs.
2026-02-17 04:03:37 -08:00
02034e6dc7 Merge pull request #8 from ksyasuda/feature/add-sqlite-session-tracking
Add SQLite session tracking with docs updates
2026-02-17 03:27:57 -08:00
30c363375a fix: reject extra positional args after -- in launcher 2026-02-17 03:19:09 -08:00
804755bd3d Fix failing immersion-tracker tests 2026-02-17 02:30:09 -08:00
78715e801c ci: run pull request checks on Node 22 2026-02-17 02:16:28 -08:00
75d5389036 test: fix telemetry fixture column count in rollup test 2026-02-17 01:41:24 -08:00
79bf5ebefb test: add immersion tracking startup safety and sqlite tests 2026-02-17 01:27:41 -08:00
4d28efabd0 Fix child-process arg warning 2026-02-17 01:26:59 -08:00
1cd1cdb11d refactor(cli): remove deprecated verbose logging flags 2026-02-17 00:57:44 -08:00
23b78e6c9b Update docs and gitignore changes 2026-02-17 00:57:44 -08:00
48f93f4344 Fix SUBMINER_APPIMAGE_PATH resolution on non-macOS 2026-02-17 00:57:44 -08:00
a499554848 Merge pull request #7 from ksyasuda/feature/add-anilist-tracking
Add AniList Tracking
2026-02-17 00:08:33 -08:00
7610bba16e Handle AniList update errors and expand setup docs 2026-02-17 00:00:30 -08:00
5602d751eb Update AniList docs 2026-02-16 23:03:51 -08:00
kyasuda
457e6f0f10 feat(tokenizer): refine Yomitan grouping and parser tooling
- map segmented Yomitan lines into single logical tokens and improve candidate selection heuristics

- limit frequency lookup to selected token text with POS-based exclusions and add debug logging hook

- add standalone Yomitan parser test script, deterministic utility-script shutdown, and docs/backlog updates
2026-02-16 17:41:24 -08:00
kyasuda
0eb2868805 Fix Yomitan token headword frequency matching and add frequency tests 2026-02-16 13:21:19 -08:00
1d7406f3d4 Fix anilist updater import 2026-02-16 02:19:02 -08:00
107971f151 Fix AniList URL guard 2026-02-16 01:56:21 -08:00
e142d2dc3b Merge pull request #6 from ksyasuda/feature/session-help-modal
Add help modal
2026-02-16 00:32:27 -08:00
f448106f92 Prevent session help modal focus thr 2026-02-16 00:08:52 -08:00
faf82fa3ed udpate readme and bmp deps 2026-02-15 23:51:34 -08:00
2622949ac7 Merge pull request #5 from ksyasuda/feature/frequency-based-highlighting
Add vendor frequency defaults with override support
2026-02-15 23:47:28 -08:00
af17f54ecd Disable frequency dictionary by default 2026-02-15 23:46:22 -08:00