在使用終端機來操作Linux作業系統的時候,經常會需要使用文字編輯器來瀏覽或是修改某個設定檔。有些終端機下的指令或工具(如visudo、git等),會直接使用Linux終端機「預設」的文字編輯器來開啟文字檔,然而這個「預設」的文字編輯器卻很可能不是我們習慣使用的。那麼要如何修改成我們習慣使用的文字編輯器呢?
Linux終端機預設的文字編輯器是由EDITOR
這個環境變數來控制的,可以先使用以下指令來查看目前EDITOR
環境變數的內容。
如果沒有特別去設定EDITOR
環境變數的話,Linux發行版通常不會替使用者預設EDITOR
環境變數的值。那些會自行去使用文字編輯器的指令或工具,如果發現環境中沒有設定EDITOR
環境變數的話,就會去參考其它設定值,或是直接使用某個特定的文字編輯器。當然,也不是所有的指令或工具都會先去讀取EDITOR
環境變數來選定文字編輯器,只不過這已經算是約定俗成的用法了,如果您也是開發者的話最好還是遵守一下。
為了不需重複在終端機中輸入指令來設定EDITOR
環境變數,我們可以去修改家目錄底下的.bashrc
檔案,將修改EDITOR
環境變數的指令寫進去,一勞永逸。例如要把vim
設定為Linux終端機預設的文字編輯器,可以在.bashrc
檔案中加上:
如果是基於Debian或是其衍生的Linux發行版的話,還有editor
指令可以使用。editor
指令算是Linux終端機下的各個文字編輯器的別名,預設通常會是用nano
。
當然,由於editor
是指令,因此可以使用update-alternatives
指令來調整其實際對應的文字編輯器的指令名稱。如下:
如果有在系統中安裝多個文字編輯器,在執行以上指令後,就會全部列出來,此時輸入數字選擇一個習慣使用的文字編輯器即可。
如此一來,使用editor
指令時,就會去執行我們所設定的文字編輯器啦!
通常只有針對Debian或是其衍生的Linux發行版所編譯的程式會去使用到editor
指令。就拿git commit
來說,原先在沒有用任何設定值或是環境變數來指定文字編輯器的時候,它預設會去使用以程式定數(hardcode)寫死的vi
指令。然而,Debian系的Linux發行版所提供的git執行檔在執行git commit
指令時,卻會去使用editor
指令哦!也就是說,在Debian系以外的Linux發行版設定editor
指令,不是一個很有效的自訂Linux終端機預設文字編輯器的方式。