netrwを起動する方法まとめ Explore系コマンドとgfキーバインド
netrwはvim .で起動するだけのものだと思っていましたが、すでにファイルを開いた状態からでも呼び出せることを知らず、いちいちVimを終了してディレクトリ指定で開き直していた時期があります。起動の入り口は複数あり、それぞれ用途が違います。
| コマンド/キー | これだけ覚える |
|---|---|
:Lexplore | サイドバー風に開閉をトグル |
:Explore | カレントバッファの位置に開く |
| gf | カーソル下のパス文字列をそのまま開く |
Vim起動時にディレクトリを指定する
vim .
vim /path/to/dir/
ディレクトリを指定してVimを起動すると、netrwがそのディレクトリを起点に開きます。もっとも基本的な入り口ですが、すでにVimを開いている状態からは使えません。
Vimを開いた状態から呼び出す:Explore系
| コマンド | 開き方 |
|---|---|
:Explore | カレントバッファの位置に開く |
:Sexplore | 水平分割の上ウィンドウで開く |
:Vexplore | 垂直分割の左ウィンドウで開く |
:Texplore | 新規タブで開く |
:Lexplore | サイドバー風に左側で開閉を切り替える |
この中で特に便利なのが:Lexploreです。一度実行すると左側にnetrwのペインが固定表示され、もう一度実行すると閉じます。他のファイラープラグインのサイドバー表示に近い感覚で使えるので、常時ファイル一覧を出しておきたい人に向いています。パスを指定しなければ、いずれもカレントディレクトリを起点に開きます。一覧の見た目(thin/long/wide/tree)はこちらで切り替えられます。
通常の編集コマンドにディレクトリを渡す
:editや:splitなどのおなじみのコマンドに、ファイルの代わりにディレクトリを渡すだけでもnetrwが起動します。
:edit /path/to/dir/
:split /path/to/dir/
:vertical /path/to/dir/
:tabedit /path/to/dir/
Explore系との違いは、パスを省略した場合の挙動です。Explore系はパス省略でもカレントディレクトリを開きますが、こちらは開きたいパスを明示的に指定しないとnetrwは起動しません。
カーソル下のパス文字列から開く
gf
ソースコードやHTML、シェルスクリプトの中にディレクトリパスの文字列があるとき、そこにカーソルを合わせてgfを押すとそのパスを開けます。読んでいる設定ファイルに書かれたパスをそのまま確認したいときに便利です(分割・タブでの開き方はこちら)。
:Lexplore、一時的に開いてすぐ閉じるなら:Explore系、コード中のパスをそのまま開きたいならgf。用途で使い分けると便利です。
:Lexploreを知る前は、ファイル一覧を見るたびにウィンドウを分割してnetrwを開き、確認したら閉じるという操作を繰り返していました。トグルできる:Lexploreに切り替えてからは、常時開きっぱなしにしても邪魔にならず、他のファイラープラグインを入れる動機がかなり減りました。gfのほうも、最初は使いどころが分かりませんでしたが、Dockerfileやシェルスクリプト内のパス参照を追いかける作業で頻繁に使うようになりました。
まとめ
netrwの起動方法は目的に応じて複数用意されています。ファイルを開いたあとの操作はnetrwでファイルを開く方法にまとめています。