Files
SubMiner/release/release-notes.md
T

5.0 KiB

Highlights

Added

  • Hachidori Dictionary Backend: Bundled Hachidori backend as an alternative to Yomitan. Select it with dictionaryBackend and restart SubMiner.
    • Works with subtitle scanning, popups, frequency highlighting, character dictionaries, Anki mining, and stats dashboard mining.
    • First-run setup builds Hachidori's Anki template from your existing SubMiner deck, tags, and field mappings.
    • Can link an external Hachidori app, browser, or Docker host while Anki mining stays in SubMiner.
    • The tray and dictionary-settings shortcut open the selected backend's settings. --hachidori and --yomitan open a specific one.
  • Jellyfin Subtitle Generation: Japanese subtitle generation now works while playing Jellyfin episodes, with both direct-play and transcoded playback.

Fixed

  • Media Timing Review: Opens on the first try and keeps playback paused while open, even when a dictionary popup closes.
  • Jellyfin Terminal Playback:
    • subminer jellyfin -p lists libraries when SubMiner is already running, and picker image previews work again.
    • Real errors, like an expired session or an unreachable server, now appear instead of an empty list.
    • Watch progress and played status reach Jellyfin even when cast discovery is off.
    • When it starts SubMiner itself, SubMiner now shows a tray icon and quits when mpv closes.
    • The rofi search step is now a compact input box.
  • macOS Casting: Jellyfin casting finds mpv when SubMiner is opened from Finder, the Dock, or Spotlight. mpv.executablePath and SUBMINER_MPV_PATH are now honored on macOS and Linux.
  • macOS Launcher PATH: The command-line launcher no longer shows "Not on PATH" when SubMiner is opened from Finder or the Dock.
  • Keyboard-Only Mode: h, l, and the arrow keys type normally in modals and text fields instead of seeking mpv. Toggling the mode inside a modal no longer turns on a hidden keyboard-only mode.
  • Halfwidth Katakana: Halfwidth katakana in subtitles now displays as fullwidth, including in mined cards and the stats dashboard. Stats sentence search matches katakana in either width.
  • Subtitle Annotations: Lines shown while two cues overlap now get annotations right away. Prefetching no longer restarts during startup.
  • Subtitle Sidebar: The open sidebar does far less work during playback.
  • Hyprland and Sway: A slow or hung hyprctl or swaymsg no longer freezes the app.
  • Stats Mining: Cards mined from the stats dashboard keep the selected history line and media.
  • Security Updates: Updated Electron, undici, and follow-redirects to fix new security advisories.

Docs

  • Hachidori Setup: Covers backend selection, Hachidori dictionary and Anki setup, settings flags and shortcuts, and linking an external host.
  • Jellyfin: The docs now say SubMiner joins the cast menu at startup only when both startupWarmups.jellyfinRemoteSession and jellyfin.remoteControlAutoConnect are on. Otherwise, enable Jellyfin Discovery in the tray.
  • Casting and mpv: Added how casting finds mpv on each platform, a troubleshooting entry for casts that never start mpv, and a note on the macOS 27 Accessibility list rename.
  • Jimaku Environment Variables: Removed the unused SUBMINER_JIMAKU_* variables from the docs. Set the key with jimaku.apiKey or jimaku.apiKeyCommand instead.

What's Changed

  • feat(dictionary): add Hachidori backend support by @ksyasuda in #266
  • fix(jellyfin): make terminal play work with a running app and report progress by @ksyasuda in #288
  • fix(overlay): stop Hyprland/Sway tracker polls from blocking the main thread by @ksyasuda in #289
  • fix(overlay): poll cheap playback state in the open subtitle sidebar by @ksyasuda in #290
  • fix(overlay): keep keyboard mode from swallowing modal and text-field keys by @ksyasuda in #291
  • refactor: remove dead code and enable noUnusedLocals by @ksyasuda in #292
  • feat(subtitles): generate Japanese subtitles during Jellyfin playback by @ksyasuda in #294
  • fix(subtitles): widen halfwidth katakana where subtitle text enters the app by @ksyasuda in #295
  • fix(jellyfin): find mpv when SubMiner is launched from Finder by @ksyasuda in #298

Installation

See the README and docs/installation guide for full setup steps.

Assets

  • Linux: SubMiner.AppImage
  • macOS: SubMiner-*.dmg and SubMiner-*.zip
  • Windows: SubMiner-*.exe and SubMiner-*-win.zip
  • Optional extras: subminer-assets.tar.gz, the subminer launcher, and the Windows subminer.cmd launcher
  • Bun corresponding source: bun-v1.3.5-source.tar.gz and its .sha256 file

Both launcher downloads use Bun included with the SubMiner app. Download subminer on Linux or macOS and subminer.cmd on Windows.

The app bundles an unmodified Bun 1.3.5 runtime. Bun is MIT licensed and statically links JavaScriptCore (LGPL 2.0) and TinyCC (LGPL 2.1). License texts and third-party notices ship inside the app under resources/bun/licenses, and the source archive above contains the matching Bun, WebKit, and dependency sources for relinking.