我使用的是 Mac OS X,但我想這對其他 UNIX 來說也是一樣的。
每次我vi
在終端機上輸入內容時,我都想開啟 GUI 版本的 Vim(在 Mac OS 中稱為mvim
)。
對於我的用戶,我在我的 ~/.profile 上新增了一個別名:
alias vi='mvim'
但是當我必須這樣做時sudo vi
,它會打開終端的 vi,因為它沒有設定別名。
我嘗試為 root 用戶設定別名,/etc/profile
但它不起作用。我還嘗試建立/usr/bin/vi
一個符號鏈接mvim
,但它也不起作用。
我怎麼能讓任何使用者(包括 root)每次vi
在終端機上鍵入時,都會打開視窗化的 Vim?
答案1
/etc/profile
sudo ...
據我所知,當您運行時不會評估符號連結的問題是mvim
腳本;如果你看一下它,它有以下幾行:
# GUI mode, implies forking
case "$name" in m*|g*|rm*|rg*) gui=true ;; esac
由於您使用名稱啟動它,sudo vi
因此不符合在 GUI 模式下啟動的標準。
您可以簡單地將這兩行替換為gui = true
「強制」GUI 模式,但我不確定這還會破壞什麼。