bar_1

contents_map

2019年12月25日水曜日

Karabiner-Elementsだけで親指シフト環境を構築(2019年版)


以前, Karabiner-Elements (以下, KE)だけで親指シフト環境を構築した. これはKEのバージョンアップのいつかのタイミングで, 不具合が発生するようになっていた.
この不具合について今回対策を試みたので, 本記事で2019年版として紹介する. 確認したのは以下の環境である:
  • OS: macOS High Sierra 10.13.6
  • IME: Google 日本語入力 2.25.3700.1(ローマ字入力)
  • Karabiner-Elements: 12.8.0
  • システム環境|キーボード>キーボード>修飾キー…のKarabiner VirtualHIDKeyboardの設定: デフォルト
  • キーボード: USB接続のJISキーボード Logicool K120
なお今回提案の親指シフト環境で, システム環境設定でのキーボード設定で修飾キーの入れ替えをしている場合, 分節調整(Ctrl-I, Ctrl-O)がうまく動作しなくなることを, 筆者は確認している. 原因は不明である

前回提案環境での不具合の内容

筆者の気づいた限り以下のようなものであった:
  • 日本語入力中, 何らかの状況でローマ字入力モードになってしまう(ただしキー配列はNICOLAのまま)
  • IMEを無変換キー(左シフトキーでもある)で英数モードにしたつもりが, コロンキーでBSが入力され一文字削除されてしまう
  • 日本語入力中, 英数入力しかできなくなってしまう(キー配列はNICOLAでなく通常の配列)
これらの現象はしばしば発生することを確認しており, 原因はよくわからなかった. しかしながら, 親指シフトの状態管理になんらか問題があり, 設定をスルーするような(非明示的な)モードに入ってしまっていることが示唆されるものであった.

KE親指シフト環境2019版

前節の不具合を直す今回提案するのは, 以下のファイルたちである :
  • hanzen_kanji.json - 半角/全角・漢字キーでIMEの状態をトグル. 必要に応じて使ってください. なくても可. 前回から変更なし)
  • muhenkan_henkan_ime.json - 親指シフトキーの定義と状態管理. 左シフト(無変換キー)と右シフト(変換キー)の to_if_alonejapanese_eisuu, japanese_kana をそれぞれ送出するようにしています.
  • nicola_generated.json - NICOLA配列を実現するもの. 前回から変更なし
ここで, muhenkan_henkan_ime.json と nicola_generated.json は必ずセットで使用することを注意しておく.
今回は わたしのGIST に置いておきました.

設定の仕方

KE環境は整えてあることを前提として, 以下の手順で設定を行う:
  1. JSONファイルをダウンロードし, KEのassets格納ディレクトリ(~/.config/karabiner/assets/complex_modifications/)に置く
  2. KEのPreferencesを立ち上げ, Complex modifications>Add ruleから, 追加した項目についてEnableする. 具体的には, 無変換, 変換キーでIME Off,Onと親指シフトの状態管理2019/「無変換intl5」=>「英数」, 「変換intl4」=>「かな」にコンバートと親指シフトの状態管理2019 と, 親指シフト入力のためのNICOLA配列2019/NICOLA配列2019 である.
以上でKEを使った親指シフト環境ができる.

まとめと今後の課題

  • KEでの親指シフト環境を(今度こそ)実現した
  • まだまれにローマ字入力モードになってしまうことがある
  • 本環境で不具合, 気づいたことがありましたら, コメントで教えて下さい

0 件のコメント:

コメントを投稿

何かありましたら、どうぞ: