在命令列中的 vim 中開啟遠端檔案的快速方法

在命令列中的 vim 中開啟遠端檔案的快速方法

假設我有兩個具有以下檔案路徑的檔案:

~/another/project/file1.txt
~/this/is/some/very/deep/project/file2.txt

正如您所看到的,file1.txtfile2.txt在檔案系統中彼此相距「很遠」。

現在假設我正在編輯,並且我想在一個視窗中file1.txt打開。我選擇打開的最快方法是file2.txtvsplitfile2.txt

:vsplit ~/this/is/some/very/deep/project/file2.txt

即使有模糊完成,這顯然效率不高。

有沒有辦法快速“加入書籤”或“跳到目錄”以file2.txt快速到達?

我最初的想法是從 shell 執行命令(在命令模式下,使用!)以某種方式促進跳躍。使用類似的東西可能有幫助,但我不知道如何。

答案1

您可以嘗試使用全域標記,如此問題的答案所述:

https://stackoverflow.com/questions/1581505/vim-create-marks-across-files

如果您使用大寫字母(如)進行標記mA,則可以透過使用 前往該標記來返回該檔案'A

.viminfo如果您正確保存內容,這將適用於跨會話。

答案2

如果您經常使用相同的文件,則可以使用符號連結。

建立一個資料夾來保存您的連結。

mkdir ~/links/

連結您的文件。

ln ~/another/project/file1.txt ~/links/file1.txt
ln ~/this/is/some/very/deep/project/file2.txt ~/links/file2.txt

您也可以以不同的方式命名連結。如果您的檔案是 somereallylongname.txt 您可以將其連結到 shname.txt

ln ~/this/is/some/very/deep/project/somereallylongname.txt ~/links/shname.txt

答案3

朋友提供給我的另一個答案是使用ctrlp插入。 ctrlp 外掛程式可以輕鬆地同時在多個目錄中搜尋檔案。

編輯:ctrlp 的預設設定實際上會從專案的根目錄開始搜尋;從技術上講,必須以不同的方式設定根節點才能使其正常運作。

相關內容