⌨️

2020 年以降の Mozc に対する主な変更

5 min read

初稿: 2021-10-10

2020 年以降の Mozc に対する主な変更をまとめました。ドキュメントやコミットログ、 Issues に書かれているものをまとめただけで新しい情報はありません。抜けているものがあれば後で追記します。

Mozc の問題の報告や要望等は、GitHub の Issues や Discussions へお願いします。

ビルド関連

Python2 から Python3 への移行

  • Python3 へ移行済み

GYP から Bazel への移行

  • ビルドツールを GYP から Bazel への移行が進行中
  • (Make と同じレイヤーのツール)

Linux ビルド

  • GYP から Bazel への移行完了
  • GYP はメンテナンスモードへ
  • 新機能は Bazel のみでの対応

macOS ビルド

  • Bazel へ移行中
  • GYP がメインのビルド方法のまま
  • Bazel でのビルドもすでに可能 (experimental)

Windows ビルド

Android ビルド

  • GYP から Bazel への移行
  • Bazel のみの対応
  • 変換エンジン (C++) のみの対応
  • クライアント (Java) のコードは tag:2018-02-26 から参照可能

Bazel のみ対応の新機能

  • 追加辞書
  • 郵便番号変換
  • Qt ベースの候補ウインドウ (Ibus 用)
  • アイコン画像

コーディングスタイルの更新

  • Google C++ Style Guide に準じる
  • C++17 までを採用
    • ただし、MS Visual Studio 2017 でも対応していること
    • ラムダ関数 / 右辺値参照 / 関数のdefault および delete など
  • Abseil の採用
    • Status / hash / string_view / 文字列操作 / 時間ライブラリなど
  • Python 3.5 以降が対象
    • f-string は使わない (3.6 から)
    • subprocess モジュールで encoding は使わない (3.6 から)

新機能・バグ修正

追加辞書

郵便番号変換

Qt ベースの候補ウインドウ (Ibus 用)

  • Gtk2 からの移行 (Bazel ビルドのみ)
  • issues/492
  • 環境によっては CPU 消費が 100% になる問題が報告されている(調査中)

アイコン画像

  • SVG によるツールアイコン等の生成 (Bazel ビルドのみ)
  • issues/498

XDG への準拠

  • コンフィグディレクトリを ~/.mozc から ~/.config/mozc へ移行
  • issues/474

日付フォーマットのカスタマイズ

Ibus での入力モード・キーボードレイアウト

  • 初期入力モードをひらがなに変更可能
  • キーボードレイアウトを JIS 配列等に固定可能
  • ~/config/.mozc/ibus_config.textproto で管理される
  • docs/configurations.md#ibus

同時入力(タイムアウト入力)設定

  • 「k → い」「d →か」「kd 同時 → れ」といったローマ字設定が可能
  • issues/512

付属機能の削除

  • 手書き文字入力ツール・文字入力パレットの削除
  • コードは tag:2018-02-26 から参照可能

Anki で落ちる (Ibus)

  • 修正済み。規定外の値がクライアントから送信されていた。
  • issues/510

Chrome で最初の文字が入力されない

  • これは Mozc の問題ではないことがほとんど
  • fcitx を使っているなら、fcitx5 にすると解決するケースが多い

プルリクエスト

プルリクエスト可能なファイル・ディレクトリ

下記のファイル・ディレクトリに対しては、プルリクエストが受け入れ可能 (参照)

管理上の理由により、GYP で参照していないファイルが中心

変換テストデータ

追加辞書

Discussion

ログインするとコメントできます