これはなに
Mac の PhpStorm で
- ファイルツリーなど、エディタ以外の場所でも
ctonrtol
+P
/N
でカーソルを上下させる - ファイルツリーからファイルを選択してすぐエディタにフォーカスする
ための、Karabiner (旧 KeyRemap4MacBook) の設定。
なんでこんなことするの
- PhpStorm のエディタ上では
ctonrtol
+P
/N
でカーソル上下するけど、ファイルツリーではこのショートカットが効かないから。 - ファイルツリーから
return
でファイルを開いてもファイルツリーにフォーカスしたままで、エディタに移動するにはesc
を押さないといけないから。
設定のしかた
- Karabiner の設定画面の
Misc & Uninstall
タブにあるCustom Setting
欄のOpen private.xml
ボタンを押す。 -
private.xml
を何かエディタで開く。 - 下記
private.xml
の内容を書き込む。もう何か書いてあったら適当にマージ。 - KeyRemap4MacBook の
Change Key
タブで右上のReloadXML
ボタンを押したらremapping
のツリーに次の2つが出るのでチェックを入れる。Control+P/N to Arrow Up/Down (on PhpStorm)
Command+Control+Enter to Enter+Escape (on PhpStorm)
private.xml
<?xml version="1.0"?>
<root>
<appdef>
<appname>PHPSTORM</appname>
<equal>com.jetbrains.PhpStorm</equal>
</appdef>
<list>
<item>
<name>Control+P/N to Arrow Up/Down (on PhpStorm)</name>
<identifier>private.control_pn_to_updown</identifier>
<only>PHPSTORM</only>
<autogen>
--KeyToKey--
KeyCode::P, ModifierFlag::CONTROL_L | ModifierFlag::NONE,
KeyCode::CURSOR_UP
</autogen>
<autogen>
--KeyToKey--
KeyCode::N, ModifierFlag::CONTROL_L | ModifierFlag::NONE,
KeyCode::CURSOR_DOWN
</autogen>
</item>
<item>
<name>Command+Control+Enter to Enter+Escape (on PhpStorm)</name>
<identifier>private.command_control_enter_to_enter_escape</identifier>
<only>PHPSTORM</only>
<autogen>
--KeyToKey--
KeyCode::RETURN, ModifierFlag::COMMAND_L | ModifierFlag::CONTROL_L,
KeyCode::RETURN, KeyCode::ESCAPE
</autogen>
</item>
</list>
</root>
使い方
- PhpStorm でファイルツリーにフォーカスする。(
Command
+1
) -
control
を押しながらP
/N
で上下する。 - 開きたいファイルにカーソルをあわせて
command
+control
+return
を押す。
これでファイルを開いてすぐエディタにフォーカスします。
なんで command
+ control
+ return
にしたかというと、control
+ return
は PhpStorm デフォルトのキーマップとかぶるから。control
+ P
/N
で上下してそのまま親指で command
を押しつつ return
を押すという流れを覚えれば割と楽です。