Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
1
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

El CapitanのmacOS標準の日本語IMでもGoogle日本語入力みたいにz+hjklを←↓↑→にする

まえがき

最近僕Google日本語入力やめてmacOS標準の日本語IM使ってるんですよ。なんですけど、日本語IMだとz+hjklで←↓↑→にならないのがつらすぎたので、日本語IMでもできるようにしました。その方法を共有します。

参考

要約

日本語IMのキーマッピング設定は/System/Library/Input\ Methods/JapaneseIM.app/Contents/Resources/RomajiRule_Default.txtにあるので、そこにz+hjklで←↓↑→になる設定を追加します。
ただ、/System以下はMacのEl CapitanからSystem Integrity Protection(SIP, rootless)って機能でそのまま編集できないので、その機能を無効にしてからやる必要があります。

詳細

SIPを無効にする

ここ読んで。

設定ファイルをいじる

上記リンク見ながらSIPを無効にして再起動した前提。

一応バックアップとってからやりましょう。

$ cd /System/Library/Input\ Methods/JapaneseIM.app/Contents/Resources/
$ sudo cp RomajiRule_Default.txt RomajiRule_Default.txt.bak

RomajiRule_Default.txtはタブ区切りで1列目がキーで、2列目が出力される文字列です。3列目は何か知らないですが、今から編集する設定には無しで良いです。あとコメントアウトは#です。

$ head -n20 RomajiRule_Default.txt.bak
#
#
#
#


-   ー 1

a   あ 1
i   い
u   う 1
e   え 1
o   お 1

ka  か 2
ki  き 2
ku  く
ke  け
ko  こ

次に編集します。ついでに、矢印以外のzコマンドも追加してます。
あと、日本語IMでwwwと打つとっっwってなるのがうざいので、wwwが出力されるようwwっwになる設定をコメントアウトしてます。

$ sudo vi RomajiRule_Default.txt
$ diff -u RomajiRule_Default.txt.bak RomajiRule_Default.txt
--- RomajiRule_Default.txt.bak  2015-10-03 16:23:21.000000000 +0900
+++ RomajiRule_Default.txt  2017-09-21 17:58:40.000000000 +0900
@@ -389,7 +389,7 @@
 yy っy    1,1
 rr っr    1,1
 ll っl    1,1
-ww っw    1,1
+# ww   っw    1,1

 bb っb    1,1
 cc っc    1,1
@@ -438,3 +438,16 @@
 ほ゜ ぽ

 ########################
+# Google日本語入力
+
+zj ↓
+zh ←
+zk ↑
+zl →
+z。   …
+z「   『
+z」   』
+z、   ‥
+zー   ~
+
+########################

この編集をしたあとに日本語入力プログラムというプロセスを終了させます。で、日本語入力をしようとすると勝手に再起動して上記変更を読み込んでくれます。その時zjで←になれば成功です。
他に自分でカスタマイズしたかったらすると良いです。

SIPを有効にする。

再掲。これのcsrutil disableの所をcsrutil enableにすると有効に戻ります。

以上。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
1
Help us understand the problem. What are the problem?