vim檔案查詢

2021-06-13 00:13:44 字數 1381 閱讀 2763

vim查詢檔案

查詢檔案

假定現在你在編輯乙個 c 程式, 該程式有這樣一行:

#include "inits.h" 

你想要檢視檔案 "inits.h" 裡有些什麼. 把游標移到該檔名上, 並鍵入:

gfvim 就會找到並開啟這個檔案.

那麼, 如果該檔案不在當前目錄裡怎麼辦? vim 將利用 'path' 選項來尋找這個檔案.

該選項是一系列目錄名, vim 會在其中為你尋找檔案.

假設你把你的標頭檔案存放在目錄 "c:/prog/include" 裡. 下面這個命令把該目錄加入

'path' 選項:

:set path+=c:/prog/include

這個目錄名是一絕對路徑. 不管你在哪兒, 它都指向同一目錄. 如果你已經知道要編輯的

檔案位於當前檔案所在目錄下某個子目錄裡, 你該怎麼辦呢? 那樣的話, 你可以指定乙個

相對路徑. 相對路徑以 "." 開始:

:set path+=./proto

這個命令告訴 vim 到目錄 "proto" 裡找檔案, 而 "proto" 則位於你在其中用了 "gf"

命令的檔案所在的目錄下面. 如此一來, 對 "inits.h" 用 "gf" 命令, 就讓 vim 以當前

檔案所在目錄為起點, 尋找 "proto/inits.h".

如果不加 "./", 只用 "proto", vim 就會進入當前目錄下的 "proto" 目錄尋找. 然而

當前目錄可能不是你在編輯的這個當前檔案所在的目錄.

'path' 選項還允許你用其它許多方法來指定在其中尋找檔案的目錄. 參見關於 'path'

選項的幫助.

'isfname' 選項用來決定哪些字元可用於檔名, 以及哪些不可以 (如上例中的雙引號

" 字元).

當你要找的檔名沒出現在你編輯的檔案裡時, 你可以鍵入這個檔名:

:find inits.h

然後 vim 就利用 'path' 選項來確定該檔案的位置. 這就跟 ":edit" 命令一樣, 只不

過 ":edit" 命令不用 'path' 選項.

要在新視窗內開啟那個已經找到的檔案, 用 ctrl-w f, 而不是 "gf", 或用 ":sfind"

而不是 ":find".

有個好辦法可以直接啟動 vim 來編輯 'path' 中的某個檔案:

vim "+find stdio.h"

這會在你的 'path' 中查詢 "stdio.h"。雙引號是必需的,用來把括起來的當做乙個引數

set hlsearch "開啟高亮搜尋

set nohlsearch "關閉高亮搜尋

nohl "只取消掉當前的搜尋高亮

map :nohl只需要按ctrl-n取消查詢後的高亮顯示

VIM 多檔案查詢替換

1 多檔案查詢 1.1 grep 直接在vim中輸入 grep abc 這是直接呼叫unix下的grep命令 1.2 vimgrep 基本用法就是 vimgrep 匹配模式 g j 要搜尋的檔案 範圍 vim grep g j g 和 j 是兩個可選的標誌位,g表示是否把每一行的多個匹配結果都加入。...

vim 查詢多個檔案, 替換

1 多檔案查詢 1.1 grep 直接在vim中輸入 grep abc 這是直接呼叫unix下的grep命令 1.2 vimgrep 基本用法就是 vimgrep 匹配模式 g j 要搜尋的檔案 範圍 vim grep g j g 和 j 是兩個可選的標誌位,g表示是否把每一行的多個匹配結果都加入。...

Vim多檔案查詢與替換

vim中也可以像普通ide那樣的在多個檔案中查詢的功能,用的是 vimgrep這條命令,格式如 vimgrep aaa 執行這條命令後,可以通過 cw命令開啟匹配的視窗進行查詢結果的檢視。在我們的日常工作中,經常需要將多個檔案中的某個字段替換為其他的字段,但多數的編輯器只提供了在開啟檔案中的查詢和替...