LoginSignup
9
8

More than 5 years have passed since last update.

IdeaVimの:actionを使ってIntelliJの機能をキーマッピングする

Last updated at Posted at 2016-02-26

使用したのは、OS X 上の IntelliJ IDEA 15.0.3、IdeaVimのバージョンは0.44です。

IdeaVimにはVimにはない :action というExコマンドがあります。これを使うとIntelliJの機能を呼び出すことができます。

~/.ideavimrcのキーマップ設定で :action を使うこともできます。

例えば、 \r と入力するとテストを実行する、というような設定ができます。以下のようなJUnitを使って書かれたテストコードがあるとします。

package sample;

import static org.junit.Assert.*;
import static org.hamcrest.Matchers.*;

import org.junit.Test;

public class HogeTest {

    @Test
    public void sampleTest() {
        assertThat("hoge", is("hoge"));
    }
}

メソッドのどこかを右クリックして"Run 'sampleTest()'"を選択すると、"sample test"だけ実行できます。

IdeaVimの :action を使って、カーソルがメソッド内にある状態で :action RunClass と入力することで同じことができます。

~/.ideavimrcに以下のように記述しておけば、 \r で実行ができます。わざわざ :action RunClass と入力する必要はありません。

nnoremap \r :action RunClass<CR>

IntelliJのキーマップ設定と比べて嬉しいところは、IdeaVimのノーマルモードでだけ有効にすることができるところです。~/.ideavimrcを使わずにIntelliJのキーマップ設定で \r を割り当てると "\r" という文字列を入力できなくなってしまいます。

:actionで使えるIntelliJの機能は、 :actionlist で調べられます。

9
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
8