- 2009-08-13 (木) 0:00
- Vim Hacks
問題
プログラムを編集・読解する際に頻出する作業として、 変数や関数などの宣言位置に移動することが挙げられます。
Hack #43: タグジャンプを使用する はその方法の一つですが、 これはローカル変数を対象にはできないという欠点があります。 また小規模の使い捨てスクリプトを書いている際には タグファイルの作成は少々手間です。
Hack #51: カーソル下のキーワードを検索する
で紹介した*を利用すれば変数名や関数名の検索は容易にできますが、
宣言位置を的確に検索することはできず、手間がかかります。
一度の操作でローカル変数の宣言位置に移動することはできないでしょうか。
解決方法
Normal modeでgdをタイプします。
gdはGo to local Declarationの略です。
これはカーソル下(あるいはカーソル近傍)の変数の宣言位置を検索するコマンドです。
*と似ていますが、
関数などのブロック内から宣言位置を探しカーソルを移動します。
コメントも認識するため、コメント中に検索対象の変数名が含まれる場合でも
宣言位置に正しく移動することができます。
またgDというコマンドもあり、
これはグローバルな変数の宣言位置へ移動するコマンドです。
なおgdおよびgDは
ヒューリスティックな方法で検索を行なっており、
編集中のプログラムの構文を解析している訳ではありません。
とはいえ大抵の場合は期待通りの動きをするので、
さほど気にする必要はありません。
参考資料
kana
- Newer: Hack #57: 空行を挿入する
- Older: Hack #55: 正規表現のメタ文字の扱いを制御する
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://vim-users.jp/2009/08/hack56/trackback/
- Listed below are links to weblogs that reference
- Hack #56: ローカル変数の宣言位置に移動する from Vim-users.jp

