[Vim問題] ファイルやディレクトリのパスを挿入する方法とは?

ファイルやディレクトリのパスを挿入する方法とは?

この記事では、Vim / neovim でプラグインを使わずに「ファイルやディレクトリのパスを挿入する」方法について、ご紹介します。

[解答] Ctrl-x Ctrl-f または OSコマンド

Vimキーバインド

(インサートモードでファイルパスを途中まで入力した後)
Ctrl-x Ctrl-f

例えば、/etc/sys で始まるファイルやディレクトリのパスを挿入したい場合は、次のようになります。

vim でファイルパスを補完するキーバインド
vim でファイルパスを補完するキーバインド

上位のパスから探していく場合にとても便利ですね。

うろ覚えのパスを探しながら挿入するのに重宝するでしょう。

OSコマンド出力の挿入

こちらはOSのコマンド次第なので、色々できますね。

(ノーマルモードで)
:r!{OSコマンド}

カレントディレクトリのパスを挿入する

(ノーマルモードで)
:r!pwd

検索したファイルのパスを挿入する

複雑な検索条件でファイルを検索して、パスを挿入することも可能です。

この場合、かなり複雑なワンライナーでも実行できるため、活用範囲が広いのが特徴です。

例えば、ファイル名と形式、ディレクトリの深さを指定した場合はこちらです。

(ノーマルモードで)
:r!find ~ -name "init.nvim" -type f -maxdepth 2 -print 2>/dev/null

ただし、エラー結果も挿入されてしまうので、上記のように標準エラー出力は捨てるのも忘れずに。

解説

こちらはオーソドックスで、よく使う機能の一つです。

プラグインがなくても使えて、プログラミングでも通常の入力作業でも活用場面も広く、重宝します。

このVimコマンドの補足情報

  • 利用頻度[star rate=5]
  • 便利さ[star rate=5]
  • 覚え易さ[star rate=4]

関連するVimヘルプ

Vimからは、下記のコマンドでヘルプを確認できます。

:help i_CTRL-X_CTRL-F
:help read!
:help r!

ヘルプで検索するときは、通常は大文字小文字は識別されませんので、どちらでも構いません。

参考書籍

こちらの書籍が参考になります。

[temp id=3]

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Vim力アップして、そろそろ上級 Vimmer の仲間入りしたいIT系エンジニアの端くれです。読んでくる訪問者の皆様と一緒に、Vim力を上げていくことができる記事が書ければと考えています。