エンジニアをリングする

プログラをミングしたり。

my web site twitter

華麗なるエスケープ

この記事はVim Advent Calendar 2014の9日目の記事です!

※ 小ネタです

華麗じゃないエスケープ

全角入力でなにかを書いている

f:id:yoshiko_pg:20141206182942p:plain

できた!

f:id:yoshiko_pg:20141206182946p:plain

保存!

f:id:yoshiko_pg:20141206182956p:plain

ッターン!(Enter)

f:id:yoshiko_pg:20141206182952p:plain

_人人人人人人人人人_
> 保存されてない <
 ̄Y^Y^Y^Y^Y^Y^Y^Y ̄

 

あああああああああああああああああああああああああああああああ(ストレス)

華麗にするには

インサートモードで全角入力したあと、ノーマルモードへエスケープしても全角入力モードが続いていると華麗じゃないです。
エスケープと共にIMEが半角入力モードに変わるようにしましょう。

用意するもの:KeyRemap4MacBook

デフォルトでも「ESCAPE with EISUU(Terminal)」という項目があり、それにチェックをいれることでターミナルでEscキーを押すと英数入力状態になるようです。

f:id:yoshiko_pg:20141206183005p:plain

ただ、わたしはCtrl+jにEscをマッピングしているので、Ctrl+jでも英数入力になってほしい!
というわけでカスタム。

KeyRemap4MacBookの「Misc&Uninstall」というタブを選択すると、「Open private.xml」というボタンがあり、
そこからprivate.xmlを開いてカスタム設定を記述することで自分独自の設定を定義することができます。

f:id:yoshiko_pg:20141209003646p:plain

これで華麗なるエスケープを実現!

ターミナルとPhpStorm(IdeaVim入れてる)を対象にしています。

<?xml version="1.0"?>
<root>
    <appdef>
        <appname>PHPSTORM</appname>
        <equal>com.jetbrains.PhpStorm</equal>
    </appdef>
    <list>
        <item>
            <name>ESCAPE with EISUU(Terminal)</name>
            <identifier>private.app_terminal_esc_with_eisuu</identifier>
            <only>TERMINAL, VI, PHPSTORM</only>
            <autogen>--KeyToKey-- KeyCode::ESCAPE, KeyCode::ESCAPE, KeyCode::JIS_EISUU</autogen>
        </item>
        <item>
            <name>BRACKET_LEFT with EISUU(Terminal)</name>
            <identifier>private.app_terminal_ctrl[_with_eisuu</identifier>
            <only>TERMINAL, VI, PHPSTORM</only>
            <autogen>--KeyToKey-- KeyCode::BRACKET_LEFT, VK_CONTROL, KeyCode::BRACKET_LEFT, VK_CONTROL, KeyCode::JIS_EISUU</autogen>
        </item>   
        <item>
            <name>Ctrl-j with EISUU(Terminal)</name>
            <identifier>private.app_terminal_ctrlj_with_eisuu</identifier>
            <only>TERMINAL, VI, PHPSTORM</only>
            <autogen>--KeyToKey-- KeyCode::J, VK_CONTROL, KeyCode::J, VK_CONTROL, KeyCode::JIS_EISUU</autogen>
        </item>   
    </list>
</root>

華麗なるエスケープ

全角入力でなにかを書いている

f:id:yoshiko_pg:20141206182942p:plain

できた!

f:id:yoshiko_pg:20141206182946p:plain

保存!

f:id:yoshiko_pg:20141206183010p:plain

ッターン!(Enter)

f:id:yoshiko_pg:20141206183014p:plain

華麗すぎる・・・

参考

Vimで挿入モードから抜ける時に英数入力に切り替える - ✘╹◡╹✘
VimでESCを別のキーにマッピングする — msrsblog