続・uim-skk から ibus-skk へ
[comp] 続・uim-skk から ibus-skk へ
入力補完や変換ミスを C-g (Ctrl+g) 以外に esc (Escape) でキャンセルするには、独自ルールを作ることで対応できた。
~/.config/libskk/rules/custom/
ディレクトリを作成。custom
ディレクトリ以下にmetadata.json
ファイルを次の内容で作成。{ "name": "custom", "description": "custom rules" }
custom
ディレクトリ以下に/usr/share/libskk/rules/default/rom-kana/
ディレクトリに対するシンボリックリンクを作成(これでいいのか不明)keymap
ディレクトリを作成。keymap
ディレクトリ以下に/usr/share/libskk/rules/default/keymap/
ディレクトリ以下の*.json
ファイルをすべてコピー(これでいいのか不明)default.json
ファイルに esc (Escape) のキーマップを追加。--- /usr/share/libskk/rules/default/keymap/default.json 2021-01-10 03:26:52.000000000 +0900 +++ ./default.json 2023-10-28 21:54:52.006252472 +0900 @@ -2,6 +2,7 @@ "define": { "keymap": { "C-g": "abort", + "Escape": "abort", "\n": "commit-unhandled", "C-m": "commit-unhandled", "\b": "delete",
- ibus-skkの設定でTyping Ruleを
custom
に設定。
これでOK。
jsonファイルの全コピーがダサいんだけど、既存のルールへの追加方法がどうもよくわからなかったので、このままで。また、 latin.json
に
--- /usr/share/libskk/rules/default/keymap/latin.json 2021-01-10 03:26:52.000000000 +0900
+++ ./latin.json 2023-10-28 22:22:55.691675624 +0900
@@ -4,6 +4,8 @@
],
"define": {
"keymap": {
+ "(lshift space)": "set-input-mode-hiragana",
+ "(rshift space)": "set-input-mode-hiragana",
"C-j": "set-input-mode-hiragana"
}
}
を入れてみたけど、shift+space がどこかで横取りされてるのか、うまく動かなかった。これが動くようになるとありがたいんだけど…。