概要
- MacのPreview.appでvimのキーバインドを使って移動する方法です。
- Karabinerを使ってPreview.appでのみ有効になるように、キーのリマップを設定します。
参考サイト
- http://d.hatena.ne.jp/msnb125/20131026/1382796626
- https://pqrs.org/osx/karabiner/document.html#privatexml
手順
- Karabinerのpreferencesを開いて[Misc&Uninstall]タブの [Open private.xml]をクリック。
-
private.xmlをエディタで開いて、以下のタグを挿入する。
previm.xml<item> <name>Vim in Preview</name> <identifier>private.app_preview_vimium_in_preview</identifier> <only>PREVIEW</only> <autogen>__KeyToKey__ KeyCode::J, ModifierFlag::NONE, KeyCode::CURSOR_DOWN</autogen> <autogen>__KeyToKey__ KeyCode::K, ModifierFlag::NONE, KeyCode::CURSOR_UP</autogen> <autogen>__KeyToKey__ KeyCode::H, ModifierFlag::NONE, KeyCode::CURSOR_LEFT</autogen> <autogen>__KeyToKey__ KeyCode::L, ModifierFlag::NONE, KeyCode::CURSOR_RIGHT</autogen> <autogen>__KeyToKey__ KeyCode::B, ModifierFlag::CONTROL_L, KeyCode::PAGEUP</autogen> <autogen>__KeyToKey__ KeyCode::B, ModifierFlag::CONTROL_R, KeyCode::PAGEUP</autogen> <autogen>__KeyToKey__ KeyCode::F, ModifierFlag::CONTROL_L, KeyCode::PAGEDOWN</autogen> <autogen>__KeyToKey__ KeyCode::F, ModifierFlag::CONTROL_R, KeyCode::PAGEDOWN</autogen> </item>
Karabinerの設定の[Change Key]をクリックし、[Reload XML]をクリックすると上記設定が読み込まれ、[Vim in Preview]というチェック項目が出現します。これにチェックを入れればキーが使えるようになります。
ほとんど参考サイトと同じですが変更した箇所が2点あります。
- Ctrl+F, Ctrl+B をPageDown, PageUpにマップした。
- JKHLの設定箇所に
ModifierFlag::NONE
をセットした。- これが無いと、検索窓などで一文字削除しようとしてCtrl+Hを押すとCtrl+←を押したことになってしまいます。
- ModifierFlag::NONEをつけているとCtrlやShiftなどが押されていないときだけキーのリマップが有効になります。