1. 程式人生 > >如何在 Linux/Unix 中不重啟 Vim 而重新載入 .vimrc 檔案 | Linux 中國

如何在 Linux/Unix 中不重啟 Vim 而重新載入 .vimrc 檔案 | Linux 中國

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1我通常使用 :vs ~/.vimrc 來載入 ~/.vimrc 配置。而當編輯 .vimrc 時,我需要不重啟 Vim 會話而重新載入它。-- Vivek Gite
有用的原文連結請訪問文末的“原文連結”獲得可點選的文內連結、全尺寸原圖和相關文章。致謝編譯自 | https://www.cyberciti.biz/faq/how-to-reload-vimrc-file-without-restarting-vim-on-linux-unix/ 
 作者 | Vivek Gite
 譯者 | geekpi ? ? 共計翻譯:659 篇 貢獻時間:1586 天

我是一位新的 Vim 編輯器使用者。我通常使用 :vs ~/.vimrc

 來載入 ~/.vimrc 配置。而當編輯 .vimrc 時,我需要不重啟 Vim 會話而重新載入它。在 Linux 或者類 Unix 系統中,如何在編輯 .vimrc 後,重新載入它而不用重啟 Vim 呢?

Vim 是自由開源並且向上相容 Vi 的編輯器。它可以用來編輯各種文字。它在編輯用 C/Perl/Python 編寫的程式時特別有用。可以用它來編輯 Linux/Unix 配置檔案。~/.vimrc是你個人的 Vim 初始化和自定義檔案。

如何在不重啟 Vim 會話的情況下重新載入 .vimrc

在 Vim 中重新載入 .vimrc 而不重新啟動的流程:

☉ 輸入 vim filename 啟動 vim☉ 按下 Esc
 接著輸入 :vs ~/.vimrc 來載入 vim 配置☉

像這樣新增自定義配置:

  1. filetype indent plugin on

  2. set number

  3. syntax on

使用 :wq 儲存檔案,並從 ~/.vimrc 視窗退出

輸入下面任一命令過載 ~/.vimrc:so $MYVIMRC 或者 :source ~/.vimrc

640?wx_fmt=jpeg

圖1:編輯 ~/.vimrc 並在需要時過載它而不用退出 vim,這樣你就可以繼續編輯程式了

:so[urce]! {file} 這個 vim 命令會從給定的檔案比如 ~/.vimrc 讀取配置。就像你輸入的一樣,這些命令是在普通模式下執行的。當你在 :global、:argdo

、 :windo:bufdo 之後、迴圈中或者跟著另一個命令時,顯示不會再在執行命令時更新。

如何設定按鍵來編輯並重載 ~/.vimrc

在你的 ~/.vimrc 後面跟上這些:

  1. " Edit vimr configuration file

  2. nnoremap confe :e $MYVIMRC<CR>

  3. "Reload vims configuration file

  4. nnoremap confr :source $MYVIMRC<CR>

現在只要按下 Esc 接著輸入 confe 就可以編輯 ~/.vimrc。按下 Esc ,接著輸入 confr 以重新載入。一些人喜歡在 .vimrc 中使用 <Leader> 鍵。因此上面的對映變成:

  1. " Edit vimr configuration file

  2. nnoremap <Leader>ve :e $MYVIMRC<CR>

  3. "Reload vimr configuration file

  4. nnoremap <Leader>vr :source $MYVIMRC<CR>

<Leader> 鍵預設對映成 \ 鍵。因此只要輸入 \ 接著 ve 就能編輯檔案。按下 \接著 vr 就能過載 ~/vimrc

這就完成了,你可以不用再重啟 Vim 就能重新載入 .vimrc 了。

關於作者

作者是 nixCraft 的建立者,經驗豐富的系統管理員,也是 Linux / Unix shell 指令碼的培訓師。他曾與全球客戶以及IT、教育、國防和太空研究以及非營利部門等多個行業合作。在 [Twitter][9]、[Facebook][10]、[Google +][11] 上關注他。通過RSS/XML 訂閱[1]獲取最新的系統管理、Linux/Unix 以及開源主題教程。

via: https://www.cyberciti.biz/faq/how-to-reload-vimrc-file-without-restarting-vim-on-linux-unix/

作者:Vivek Gite[3] 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出