- Disable texthooker, websocket, and annotationWebsocket servers by default - Update primary subtitle font family to include Hiragino Sans - Switch subtitle backgrounds to transparent for primary and secondary - Unify text shadow to stronger two-layer value for both subtitle tracks - Set JLPT N4 default color to #8bd5ca - Keep Yomitan popup auto-pause enabled and secondary font stack unchanged - Update tests, generated config examples, and docs-site to match
5.1 KiB
id, title, status, assignee, created_date, updated_date, labels, dependencies, priority
| id | title | status | assignee | created_date | updated_date | labels | dependencies | priority | ||
|---|---|---|---|---|---|---|---|---|---|---|
| TASK-359 | Update default startup and subtitle style options | Done |
|
2026-05-13 06:16 | 2026-05-13 06:28 |
|
medium |
Description
Change fresh-install defaults so texthooker and associated subtitle websocket servers are disabled unless explicitly enabled, Yomitan popup auto-pause remains enabled by default, and primary/secondary subtitle style defaults match the requested font, transparent background, and stronger shadow. Keep generated example config and docs aligned with resolved defaults.
Acceptance Criteria
- #1 Fresh default config has texthooker startup disabled by default.
- #2 Fresh default config disables associated subtitle websocket servers by default, or exposes/uses an existing config option that does so.
- #3 Fresh default config keeps subtitleStyle.autoPauseVideoOnYomitanPopup enabled by default.
- #4 Fresh default config uses fontFamily
Hiragino Sans, M PLUS 1, Source Han Sans JP, Noto Sans CJK JPfor primary subtitles. - #5 Fresh default config keeps secondary subtitle fontFamily as
Inter, Noto Sans, Helvetica Neue, sans-serif. - #6 Fresh default config uses textShadow
0 2px 6px rgba(0,0,0,0.9), 0 0 12px rgba(0,0,0,0.55)for primary and secondary subtitles. - #7 Fresh default config uses transparent subtitle backgrounds for primary and secondary subtitles.
- #8 Tests and generated/docs config examples are updated for the new defaults.
- #9 Fresh default config uses
#8bd5cafor the fourth frequency band and JLPT N4 subtitle color.
Implementation Plan
-
Update focused config tests first for the requested fresh-install defaults.
-
Change default config values in
src/config/definitions/defaults-core.tsandsrc/config/definitions/defaults-subtitle.ts. -
Regenerate generated config examples with the repo generator.
-
Update docs-site configuration prose/snippets for the new defaults.
-
Run focused config/example tests and mark acceptance criteria when verified.
-
Include the requested JLPT N4 default color adjustment and verify the existing fourth frequency band default remains
#8bd5ca. -
Restore the secondary subtitle font default to its previous
Inter, Noto Sans, Helvetica Neue, sans-serifstack while keeping the new primary subtitle font default.
Implementation Notes
Context: existing config already has websocket.enabled (true | false | "auto") and annotationWebsocket.enabled (boolean), so disabling associated websockets can be handled by default changes instead of adding a new config surface.
Scope update from user: also set JLPT N4 default color to #8bd5ca; fourth frequency band is already #8bd5ca in current defaults and has existing regression coverage.
Verification: bun run test:config, bun run docs:test, bun run docs:build, bun run changelog:lint, bun run format:check:src, bun run typecheck, bun run build, bun run test:smoke:dist, and git diff --check passed. Earlier full fast/env suites also passed during this task (bun run test:fast, bun run test:env) before the final N4-only default tweak; focused config/docs/build/smoke checks were rerun after that tweak.
Scope correction from user: secondary subtitles should keep the previous font stack. Interpreting the typo snas-serif as the previous literal default sans-serif.
Correction verification: restored secondary subtitle default font to Inter, Noto Sans, Helvetica Neue, sans-serif. Passed bun run test:config, bun run docs:test, bun run changelog:lint, bun run format:check:src, bun run typecheck, and git diff --check. Verified generated examples and docs contain the restored secondary font.
Final Summary
Updated fresh-install defaults so texthooker startup, the regular subtitle websocket, and the annotation websocket are disabled by default while preserving Yomitan popup auto-pause. Updated primary subtitle defaults to the requested Japanese font stack, kept secondary subtitle font at the prior Inter, Noto Sans, Helvetica Neue, sans-serif stack, and applied shared stronger text shadow, transparent backgrounds, and teal N4/fourth-band color. Regenerated config examples, updated docs-site configuration docs, and added a changelog fragment.
Verification passed: bun run test:config, bun run docs:test, bun run docs:build, bun run changelog:lint, bun run format:check:src, bun run typecheck, bun run build, bun run test:smoke:dist, and git diff --check. After the secondary-font correction, reran bun run test:config, bun run docs:test, bun run changelog:lint, bun run format:check:src, bun run typecheck, and git diff --check. bun run test:fast and bun run test:env also passed during the task before the final small default corrections; affected focused checks were rerun afterward.