Element on Matrix.orgのキーバインド変更
めちゃくちゃマニアックな内容なのですが、私の中ではPost 「Slack」アプリの本命です。ただし、日本語入力周りで不具合(日本で使っているユーザーが皆無?なので開発が気付かない?)があり、お薦めしにくいです。この記事ではその点を解決することでめちゃくちゃ使い安くなるelementの設定を紹介します。(ちなみにiPhoneのアプリは特殊な変更をせずに常に快適に動いています。)
そもそもelementって?!
今はやりのSlack系のアプリです。昨年の6月にSlackが無料ユーザーのデーターを3ヶ月で削除するという決定をしたことと、ちょっと使い勝手が悪かった(私は複数のコミュニティに入っていないので、SNS的な利用の仕方はしていない)ことから、代替えサービスを探していました。
どうもMatrix.orgが最も使いやすいという結論に至ったのですが、クライアント側のアプリは自由に選べるという心広すぎ!の仕様でいろいろ試してみた結果、MacOSとWindow、iOS/iPad OSに対応できるelementが使いやすそうということになりました。
Matrix.orgは本来topicsに応じて自前サーバーを組むことができるスペシャルなオープン仕様なのですが、小物の私としては、Matrix.orgのサーバーを小さく同じグループ内だけで使わせてもらっています。
キーバインド問題
elementの一番の問題は日本語入力周りにあります。
日本語変換の確定のつもりで、「enter/return」キーを押すとそのまま文字が送信されてしまいます。英語でも「改行」の際に「enter/return」を押すことがあるので、左上のメニューバーから「Element>設定…>環境設定」で「Command+enterでメッセージを送信」という項目があり、どんどんメッセージが送られてしまうという問題は解決できます。
日本語確定したいし、改行したいし、Command+enterで送信したいし…
人間は贅沢なもので、上記タイトルのような事がしたいです。いや開発には何度かメールを送ったような気もしています。
これを実現するのにKarabiner-element(無償)でキーバインドのスクリプトを組むか、BetterTouchTool(有償)で「Element」だけで作動するキーバインドを組むか悩みましたが、すでに永年ライセンスを購入済みのBetterTouchToolで簡単にできそうなので、そちらにしてみました。
BetterTouchToolでの設定 「その1」
BetterTouchToolで「構成」を選ぶと、設定のWindowが立ち上がります。そちらで、「キーボードショートカット」をプルダウンメニューから選びます。左下の「+」ボタンからアプリ「element」を選択します。
BetterTouchToolでの設定 「その2」
BetterTouchTool上で「Element」を選ぶと、左のカラムが「キーボードの入力」で右側が「出力(アクション設定)」になります。出力はキーボードだけでなく、マウスのクリックとかも設定できますが、ここではキーボードショートカットだけを使います。
BetterTouchToolでの設定 「その3」
あとは、左のカラムの「+」を押して以下の設定を2つ入れていくだけです。
キーバインド変換:その1(「enter/return」キー ⇒ 「Control+M」)
1.左のカラムで「enter/return」キーを設定
2.右のカラムで「キーボードのショートカットを設定する」で「Control+M」を入力する(ただし、ATOKを使っている場合のみ)
キーバインド変換:その2(「Shift+enter/return」 ⇒ 「Shift+Enter」)
1.左のカラムで「Shift+Control+M」キーを設定(enter/returnにはすでにControl+Mが割り振られているため、Shift+Enterのつもりで入力)
2.右のカラムで「キーボードのショートカットを設定する」で、「Shift+enter/return」を入力する
以上で、快適にelementが使えるようになります。
さいごに
ここまでの設定をして日本語入力環境を整えてからelementの評価をしてあげないとかわいそうな気がします。開発者はいじわるをしているつもりはないはずですがw、日本語インプットメソッド(IME)の存在を全く意識しておらず、日本人にはそもそも評価もしてもらえない状況です。Macでない方はスマホアプリで使ってあげるのもありかと思います。Slackの100倍は良いと思っていますので、ぜひお試しあれ!