RubyMine:ideavimの設定 & ideavimrcについて


概要

RubyMineでは、Vimの操作でプログラムを書くことができます。

すなわち、Vim + IDE(統合開発環境)のパフォーマンスを発揮するということです。

ただし、通常Vimではvimrcに設定しますが、RubyMineのideavimは、ideavimrcで設定します。

その手順を紹介します。

手順

ideavimの設定

  • まずは、ideavimの設定をします。
  • すでにインストールしてある場合は、何もしなくて良いです。

(1) RubyMineの初期設定時

  • RubyMineの初期設定をする時にideavimをインストールできます。

(2) プラグインからインストール

  • RubyMineの初期設定でインストールしなかった場合、プラグインからインストールできます。
  • まずはPreferencesをクリックします。

  • 次にPluginsを選択します。

  • ideavimを検索して、なければインストールします。

  • 設定を反映します。

  • 再起動します。

  • これでideavimが使えるようになりました。

ideavimrcの設定

  • ideavimが設定できたので、ideavimrcで細かいVimの設定をします。
  • ideavimrcを作成します。
$ vim ~/.ideavimrc
  • 参考として、以下の内容を貼り付けてください。
" -------------------------------------
" オリジナル設定
"" ------------------------------------
" 検索するときに大文字小文字を区別しない
set ignorecase

" 検索時に大文字を含んでいたら大/小を区別
set smartcase

" インクリメンタル検索 (検索ワードの最初の文字を入力した時点で検索が開始)
set incsearch

" 検索対象をハイライト
set hlsearch

" 対応する括弧やブレースを表示
set showmatch matchtime=1

" メッセージ表示欄を2行確保
set cmdheight=2

" ステータス行を常に表示
set laststatus=2

" ウィンドウの右下にまだ実行していない入力中のコマンドを表示
set showcmd

" 省略されずに表示
set display=lastline

" 行末のスペースを可視化
set listchars=tab:^\ ,trail:~

" ヤンクでクリップボードにコピー
set clipboard+=unnamed

" 対応する括弧を強調表示
set showmatch

" Escの2回押しでハイライト消去
nnoremap <Esc><Esc> :nohlsearch<CR><ESC>

" 行をまたいで移動
set whichwrap=b,s,h,l,<,>,[,],~

" インデント方法の変更
set cinoptions+=:0

" インデント幅
set shiftwidth=2

" タブキー押下時に挿入される文字幅を指定
set softtabstop=2

" -------------------------------------
" 他人の設定
" ------------------------------------

"x キー削除でデフォルトレジスタに入れない
nnoremap x "_x
vnoremap x "_x

" ヤンクでクリップボードにコピー
noremap "+y "*y
noremap "+Y "*Y
noremap "+p "*p
noremap "+P "*P
noremap <C-S-c> "*y
noremap <C-S-v> "*P
  • RubyMineを再起動します。

  • これでideavimrcに設定した動作ができるようになりました。

以上が簡単でしたが、ideavimの設定になります。