Ctrl + Space のショートカットをいい感じに追加したかったが、難しいのですでに作成した設定ファイルをまるごと再配置することにした。

環境

  • Ubuntu (20.04.1)
  • Mozc (2.23.2815.102) 特に Mozc のバージョンが異なる場合は、今回紹介する方法の URL やバージョンを適宜変えること。 バージョンはインストール後に/usr/lib/mozc/mozc_toolで確認できる

インストール

下記コマンドを順に実行

# google日本語入力と、その設定ツール
sudo apt install ibus-mozc mozc-utils-gui
# 変更を適用するため再起動
sudo reboot

日本語入力として、mozc-jp を追加する

gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us'), ('ibus', 'mozc-jp')]"

config ファイルを再配置

他の環境で作成しておいた config ファイルを~/.mozc/config1.dbに再配置する。

Mozc のバージョンが2.23.2815.102の場合はコレがそのまま使えるかも

# configファイル取得(適宜読み替え)
wget https://kajindowsxp.com/mozc-configuration-commands/images/config1.db
mv config1.db ~/.mozc/config1.db

再起動

sudo reboot

(余談)config ファイルの書き換えについて

完全に蛇足です

https://github.com/google/mozc/blob/master/docs/configurations.md#configuration-files protoc を使ってバイナリファイルに変換されているので、text に戻してあげることで編集ができる。

protoc をインストールする

sudo apt install -y protobuf-compiler

proto ファイルをダウンロード

wget https://raw.githubusercontent.com/google/mozc/2018-02-26/src/protocol/config.proto

バイナリ形式である~/.mozc/config1.dbをテキスト形式に変換する

protoc --decode=mozc.config.Config ./config.proto < ~/.mozc/config1.db > config.textproto

いい感じに編集する

vim ./config.textproto

バイナリ形式に戻して再配置

protoc --encode=mozc.config.Config ./config.proto < config.textproto > ~/.mozc/config1.db

プロセス再起動 (sudo rebootした方がいいかも)

ibus write-cache; ibus restart

いい感じに編集するときに、こんな感じのスクリプトを走らせたらうまく行けるかなと思って試したが、keymap が追加した 4 つだけになり(本来はもっとたくさんある)、正常に動作しなくなってしまったのでこの方法は断念した。

sed -i -E 's/custom_keymap_table: "/custom_keymap_table: "status\\tkey\\tcommand\\nDirectInput\\tCtrl Space\\tIMEOn\\nPrecomposition\\tCtrl Space\\tIMEOff\\nComposition\\tCtrl Space\\tIMEOff\\nConversion\\tCtrl Space\\tIMEOff\\n/' ./config.textproto
sed -i -E 's/session_keymap: MSIME/session_keymap: CUSTOM/' ./config.textproto

ちなみに設定画面は以下のコマンドから開くことができる

/usr/lib/mozc/mozc_tool --mode=config_dialog