LoginSignup
172
157

More than 5 years have passed since last update.

Vimスクリプトで軽やかにタグジャンプしよう

Last updated at Posted at 2015-01-08

最近Vimを使いこなしたくイジイジしてたので少しまとめてみました.

Vimでもっと便利にタグジャンプしたい!!
という人を対象に書いています(多分).
分かりづらいところが多々あると思います申し訳ございません.

Vimスクリプトとは?

Vimに組み込まれたスクリプト言語である。

ググってもらえれば良くはわかると思います.

超すごいタグジャンプ

タグジャンプとは?

コード中に書かれた変数や関数の宣言元を一発で参照することのできる機能です.

どのくらい便利なのか?

こんな感じにエディタなのに宣言元に移動できちゃいます.
alt

導入方法&使用方法

ctagsをちゃんと使う
その他にもググってもらえればたくさんヒットします.

スマートにタグジャンプ!!(本題)

デフォルトのタグジャンプ

単語上にキーカーソルを移動しCtrl+]で宣言元に移動します.
デフォルトのままだと,複数宣言元が見つかった場合,第一候補にジャンプしたりと少し使いにくい.

スマートにタグジャンプ

キーマッピングして,複数のコマンドを組み合わせ使いやすくしてやります.
今回は,Ctrl+h・Ctrl+kでキーカーソル上の単語の定義元を新たなウィンドウで垂直・水平に分割してジャンプします.
複数宣言元が見つかった場合,リストにして選べるようにします.

.vimrcの編集

.vimrc
nnoremap <C-h> :vsp<CR> :exe("tjump ".expand('<cword>'))<CR>
nnoremap <C-k> :split<CR> :exe("tjump ".expand('<cword>'))<CR>

.vimrcにこの二行を記述して保存,Vimを再起動するとCtrl+h・Ctrl+kでタグジャンプできるようになります.
意味はヘルプでバッチリ調べれます.
例):help vsp

垂直に新規ウィンドウを分割してジャンプ
alt

水平に新規ウィンドウを分割してジャンプ
alt

最後に

宣言元を新規ウィンドウを垂直に分割してジャンプしたいなぁと調べていて書き方だけは見つけたのですがVimスクリプトの意味が理解できず…(そもそもVimスクリプトという存在を知らなかった)
そこでヘルプがとても重要な情報源となりました.

今回のキーマッピング,実際のコーディングで使ってないので今後改める必要があります.
ヘルプでコマンドを調べて書き換えてやれば他にも色々とできちゃいそうです.

参考サイト

vim-jp

Vimとctagsでコードリーディング 公開用

172
157
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
172
157