1

vimがファイル補完を探す場所を変更したいのですが、挿入モードでのみです。例えば:

CG-Websiteディレクトリ内で gvim を開きます。

これは私のディレクトリ構造です:

ここに画像の説明を入力

次に、css フォルダーに移動して開きますstyle.css

ここに画像の説明を入力

使用して:e src/static/css/style.css

今、私はstyle.cssの中にいて、1つ下のディレクトリにあるファイル名を完成させたいと思っています。

../モードで入力しINSERTて、現在実行しているフォルダーではなく、静的フォルダー内にあるすべてのファイル/フォルダーを表示できるようにしたいですwww

:eただし、通常どおりに作業したいので、実際のディレクトリを変更したくありません。

4

2 に答える 2

4

挿入モードのファイル名補完は常に、現在のファイルのディレクトリである場合とそうでない場合がある「現在のディレクトリ」または「作業ディレクトリ」から行われます。ディレクトリを変更したくないため、ファイル名の補完、希望どおりには機能しません。

実際には、 の最後の文で:h compl-filenameヒントが得られるはずです。

Search for the first file name that starts with the
same characters as before the cursor.  The matching
file name is inserted in front of the cursor.
Alphabetic characters and characters in 'isfname'
are used to decide which characters are included in
the file name.  Note: the 'path' option is not used
here (yet).

この問題の解決策の 1 つはset autochdir、Vim が常に作業ディレクトリを現在のファイルのディレクトリに変更し、ナビゲーションにCtrlP (他にもあります) などのプラグインを使用することです。.git適切に構成すると、CtrlP を使用して、または同様のディレクトリの存在によって定義されたプロジェクトのホームからファイルをナビゲートできます。これは本当に便利です。

ただし、その制限を比較的簡単に回避できますset autochdir(ここでも、ファイル名の補完があなたのように機能するために必要です。私はそれを機能させたいと思っています)。

nnoremap <F9> :e ~/path/to/project/

このマッピングは、プロジェクトへの簡単なショートカットと考えてください。

于 2013-03-17T07:50:08.843 に答える