NigoroJr

Karabinerでやっと気に入った配列にできた話

前置き

Happy Hacking Keyboardの素晴しい配列に慣れると,
一般的なUSキーボードのわけわからん配列には耐えることができなくなります.
Karabiner自体は,KeyRemap4MacBookと名乗っていた時代から使っていたのですが,
その頃から思い通りの設定にできなくてもどかしい気持ちになっていました.
そんな私がやっと思い通りの配列に変更することができたので,メモがてら共有します.

さて,以下が私のMacBook Air (Late 2012)のキーボード配列です.

ん?なぜ a の隣が o なのかって?
申し遅れましたが,私,Dvorakユーザです.
あとSKKとかACT09とかバリバリ使ってます.
まぁ今回の話はそのへんの変更ではないので気にしないでください.
ちなみにこの配列変更は,マイナスドライバーでぱちぱち外して,ぱちぱちはめこみました.

さて,このキーボードですが,気に入らない点が幾つかあります.

  1. 1 の左は Esc がいい!
  2. 1 の左のキーは, Shift~ としても使いたい!
  3. `~ はなくならないでほしい!
  4. CapsLockControl として使いたい!

以下が理由です.

  1. 私がVimのヘビーユーザだから
  2. コマンドラインで ~ はめちゃくちゃよく使うから
  3. ` はMarkdownでよく使う
  4. コマンドラインのヘビーユーザなら誰もがそうしていると思われる設定

つまり,こうしたいのです.

まぁ,本当は \Backspace にしたり,
Delete\ にしたり,Shift + Delete| にしているんですが,
そのへんはデフォルトでもできるので割愛.

要はHHKBみたいにしたいということ.

設定方法

必要なもの

  • Karabiner
  • Seil
  1. まずシステムの設定を開いて KeyboardModifier KeysCapsLockControl にする
  2. Seilで Control_L110 にする.これはPC Application Key
  3. Karabiner用に ~/Library/Application Support/Karabiner/private.xml を作る
  4. 以下の内容を追加する:
  <item>
    <name>Hogehoge</name>
    <identifier>private.hogehoge</identifier>
    <autogen>
      __KeyToKey__
      KeyCode::PC_APPLICATION,
      KeyCode::BACKQUOTE,
    </autogen>
    <autogen>
      __KeyToKey__
      KeyCode::BACKQUOTE,
      ModifierFlag::SHIFT_L,
      KeyCode::BACKQUOTE,
      ModifierFlag::SHIFT_L,
      </autogen>
      <autogen>
      __KeyToKey__
      KeyCode::BACKQUOTE,
      KeyCode::ESCAPE,
    </autogen>
  </item>

こうして作った private.xml を読み込ませて,さきほど追加した項目に
チェックを入れると設定が反映されます.

検証はしていませんが,処理の順番的に

  1. Seil (Control → PC Application)
  2. Karabiner (PC Application → `等)
  3. macOSの環境設定で適応したキー (CapsLock → Control)

っぽい?

役に立つページ

GentooでJetpackのXML-RPCエラーが出るとき

ちょっと時間がかかったので、メモ。

Problem

Jetpackをadminページからconnectしようとしたときに、XML-RPCのエラーが出る。
/xmlrpc.php にアクセスすると、ちゃんと期待されるメッセージは表示される。
でもconnectできない。

Solution

原因はPHP7を使えていないという単純なもの。なので、以下の手順でPHP5から7に変えてやるとできるようになる。

  1. /etc/conf.d/apache2-D PHP5 から -D PHP に変える。
  2. eselectphp7.X を選択する。
  3. apacheを再起動。