如何有效地在Vim中處理多個文件?

我已經開始使用Vim開發Perl腳本,而且開始發現它很是強大。 linux

我喜歡的一件事是可以使用vi main.pl maintenance.pl例如一次打開多個文件,而後使用如下命令在它們之間跳轉: git

:n
:prev

並查看打開哪一個文件 vim

:args

要添加文件,我能夠說: bash

:n test.pl

我但願它將添加到個人文件列表中,可是它將清除當前文件列表,當我鍵入:args我只打開了test.pl app

那麼如何將文件添加和刪除到個人args列表中? ide


#1樓

若是您使用的是osx,而且但願可以單擊選項卡,請使用MouseTerm和SIMBL(從此處獲取 )。 另外,請查看此相關討論wordpress


#2樓

您可能須要使用Vim全局標記單元測試

這樣,您能夠快速在文件之間跳動,甚至跳到文件中標記的位置。 並且,關鍵命令很簡短: 'C帶我進入正在使用的代碼, 'T帶我進入正在使用的單元測試。 測試

當您更改位置時,重置標記也很快: mC標記新的代碼點, mT標記新的測試點。 spa


#3樓

嘗試如下地圖以方便編輯多個文件

分割窗戶

nmap <leader>sh :leftabove vnew<CR>

nmap <leader>sl :rightbelow vnew<CR>

nmap <leader>sk :leftabove new<CR>

nmap <leader>sj :rightbelow new<CR>

「 處處走

nmap <Cj> <Cw>j

nmap <Ck> <Cw>k

nmap <Cl> <Cw>l

nmap <Ch> <Cw>h


#4樓

有效處理多個文件的方法是使用tmux。

它容許您垂直和水平分割窗口,以下所示:

在此處輸入圖片說明

我在Mac和linux機器上都以這種方式工做,而且發現它比提供的(在Mac上)本機窗口窗格切換機制更好。 我發現切換更加容易,而且只有使用tmux才能在Mac上運行「位於同一當前目錄的新頁面」(儘管彷佛存在在同一目錄中打開新窗格的選項)。一個很是關鍵的部分。 當前位置的即時新窗格很是有用。 對於我來講,使用兩個操做系統具備相同按鍵組合的新窗格的方法對我來講相當重要,對於全部人的將來兼容性而言,這也是一種獎勵。 除了多個tmux窗格,我還嘗試使用多個選項卡,例如 在此處輸入圖片說明 和多個新窗口,例如 在此處輸入圖片說明 最終我發現多個tmux窗格對我來講最有用。 我很是「視覺化」,喜歡將各類環境擺在我面前,就像窗格同樣。

tmux還支持舊screen不支持的水平和垂直窗格(儘管mac的iterm2彷佛支持它,但一樣,當前目錄設置對我不起做用)。 tmux 1.8


#5樓

我常常使用命令行和git,所以個人bashrc中有如下別名:

alias gvim="gvim --servername \$(git rev-parse --show-toplevel || echo 'default') --remote-tab"

這將在現有窗口的新選項卡中打開每一個新文件,並將爲每一個git存儲庫建立一個窗口。 所以,若是您從存儲庫A打開兩個文件,從存儲庫B打開三個文件,則最終會出現兩個窗口,一個窗口用於帶有兩個選項卡的存儲庫A,一個窗口用於帶有三個選項卡的存儲庫B。

若是您要打開的文件未包含在git repo中,它將進入默認窗口。

要在選項卡之間跳轉,請使用如下映射:

nmap <C-p> :tabprevious<CR>
nmap <C-n> :tabnext<CR>

要一次打開多個文件,應將其與其餘解決方案之一結合使用。

相關文章
相關標籤/搜索