現在vimで開かれているファイルを見つける方法は?


61

これは些細なことのように思えるかもしれませんが、vim開いているファイルを忘れてしまったことが何度もあります(たとえば、異なるログファイルを調べているときなど)。ファイルを開き、コマンド履歴で最新のコマンドを確認します。

プログラムまたは開いたファイルを終了せずに、現在開いているファイルを示すコマンドがvim内にあります:<which_file_cmd>か(例:?)


5
vimあまり多くの引数で呼び出していない場合は、を使用します:args
41754

回答:


76

upregoの答えに加えて、Ctrl+ G(通常モード)を押すと、現在のバッファーの名前と、その行の合計数とその中の現在の位置を取得できます。

更新

あたりとしてrxdaznさんのコメント、あなたは押すことができます1前に、Ctrl+ G完全なファイルパスを取得します。を押す、現在開いている2ファイルの完全なパスバッファ番号を取得します(複数のファイルを開いたときに便利ですvim)。


多くのvimコマンドと同様に、lessこれは編集ではなくファイルを表示するときに使用するコマンドにも適用されます。
jmathew

18
また、Ctrlキー+ G前に1を押すと、あなたのファイルのフルパスを与える
rxdazn

23

いつvim私はいつも:lsコマンドを使用します。

:ls
  1 %a   "blah.txt"                         line 1

blah.txtファイルの名前はどこですか。


20
:f

現在開いているファイルの名前を示します。


1
華麗で非常にミニマリスト
両生類

7

vim多くの引数で呼び出されない場合、:args役立ちます。


4
これに関する他の問題は、vimの起動後にファイルが開かれた場合、リストされないことです。
パトリック

4

デフォルトのvim構成ファイルを使用できる場合は、a statuslineを追加して、常にファイルの詳細を使用可能にすることができます。常に別のサーバーにリモーティングしている場合、これはあまり役に立ちません。これは、私の.vimrcから取得した少し複雑なものです。

" %F(Full file path)
" %m(Shows + if modified - if not modifiable)
" %r(Shows RO if readonly)
" %<(Truncate here if necessary)
" \ (Separator)
" %=(Right align)
" %l(Line number)
" %v(Column number)
" %L(Total number of lines)
" %p(How far in file we are percentage wise)
" %%(Percent sign)
set statusline=%F%m%r%<\ %=%l,%v\ [%L]\ %p%%

" Change the highlighting so it stands out
hi statusline ctermbg=white ctermfg=black

" Make sure it always shows
set laststatus=2

そして、MacVimではこのように見えます(ただし、端末でも動作します)。 ここに画像の説明を入力してください

いつものよう:help statuslineに、いくつかのオプションと詳細を取得することができます。そして、チェックアウト学習のVimハード・ウェイ CH 17ステータスラインの良い説明のために。


私も常にstatuslineを使用しています。+1
ロブ

1

また:echo @%、現在のディレクトリに関連するファイルの名前を提供します。


1

この種類の情報を取得する方法は無数にありますが、キーを押すだけでファイル名が表示されるようにしたい場合は、以下に以下を挿入します~/.vimrc

map <F4> <ESC>:file<CR>

これは言う、

bind the `F4' key to the following sequence: Escape-key, :file, Carriage-Return (enter-key)

そして、fileおそらく明らかなように、コマンドは他の情報とともに現在のファイルの名前を返します。

ステータスラインを設定して、見た目以外に何もする必要がないようにすることもできます。

ステータス行を保持するには、常にに次を挿入します~/.vimrc

set laststatus=2

これは、ViMに常にステータス行を表示するように指示します。その他のオプションは01ViMで2つ以上のウィンドウを開いている場合にのみ使用します。


1

通常は入力するだけで:e 、ファイルの完全パスと行数と文字数も表示されます。

警告:本質的にディスクからファイルを再度開くため、ファイルが既に保存されている場合に最も役立ちます。

:help :e 言う:

                          *:e* *:edit*
Edit the current file.  This is useful to re-edit the
current file, when it has been changed outside of Vim.
This fails when changes have been made to the current
buffer and 'autowriteall' isn't set or the file can't
be written.

1

私はvimrcこのマッピングを持っています

nnoremap <leader>pfn :echo expand('%:p')<CR>

したがって,pfn、「ファイル名を印刷」と入力すると、ファイルパス全体がエコーされます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.