Skip to content

Repository files navigation

候補順のアイコン

候補順 (Kohojun)

AquaSKK のユーザー辞書を GUI で編集する macOS アプリ。読みごとに、実際の変換で出てくる順序そのままの候補リストを表示し、ドラッグで並べ替えて保存できます。

なぜ

SKK の変換候補の順序はユーザー辞書のエントリ順で決まりますが、素の AquaSKK は候補を確定するたびに順序を学習します。学習を無効化した AquaSKK fork と組み合わせると、候補順は「このアプリで明示的に編集したとき」だけ変わるようになります。

特徴

  • 1 本のリスト = 実際の変換順 — ユーザー辞書の候補に続けて、システム辞書 (SKK-JISYO.L など、DictionarySet.plist の有効な辞書を自動読込) の候補も同じ行として表示。ソースは「ユーザー / システム」バッジで区別
  • どの行も同じ操作 — ドラッグ・⌘↑/⌘↓・テキスト/注釈の編集。並べ替え・編集した候補は、表示順を実現するのに必要な範囲だけが自動的にユーザー辞書へ保存される (grow-only 方式)
  • 保存すると即反映 — fork 版 AquaSKK の分散通知 IPC (AquaSKK_SaveUserDictionary / AquaSKK_ReloadUserDictionary) により、IME を再起動せずに候補順が切り替わる
  • 壊さない — 保存はアトミック書き込み。編集していないエントリはバイト単位で完全に保持 (実辞書での往復一致をテストで保証)

動作要件

  • macOS 13 (Ventura) 以降: UI が NavigationSplitView など macOS 13 で導入された SwiftUI API の上に作られているため
  • fork 版 AquaSKK (taxfree-python/aquaskkxcode26 ブランチのビルド): 理由は 2 つ
    • 保存の即時反映に使う分散通知 IPC (AquaSKK_SaveUserDictionary / AquaSKK_ReloadUserDictionary) が fork にしか実装されていないため。素の AquaSKK では保存しても IME の再起動まで反映されない
    • 素の AquaSKK は候補を確定するたびにユーザー辞書の順序を学習 (並べ替え) し、終了時にはメモリ上の辞書でファイルを上書きするため、このアプリで整えた順序が使ううちに壊れる。fork は学習をオフにできる (デフォルトでオフ) ので、編集した順序がそのまま保持される

ビルドとインストール

make test     # ユニットテスト
make app      # build/Kohojun.app を生成 (ad-hoc 署名)
make install  # ~/Applications/Kohojun.app へ配置
make icon     # scripts/makeicon.swift から Resources/Kohojun.icns を再生成

fork 版 AquaSKK では、~/Applications/Kohojun.app が存在するとき (設定 jisyo_editor_path で変更可能) だけ入力メニューに「辞書エディタを開く」が現れ、そこからも起動できます。make install した次にメニューを開いた時点から表示されます。

注意

  • システム辞書由来の候補は削除できません (AquaSKK 自体にシステム辞書の候補を抑制する仕組みがないため)
  • 辞書ファイル (~/Library/Application Support/AquaSKK/skk-jisyo.utf8) を手で編集する場合は、本アプリと AquaSKK の両方を止めてから行ってください

About

候補順 — AquaSKK の変換候補の順序を GUI で編集する macOS アプリ

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages