:E
通常就足夠了,因爲:Explore
是以E
開頭的唯一定義的命令。您顯然已定義了多個此類命令,因此:E
不明確並導致錯誤。
:cmap
導致立即字面替換,從而產生不必要的副作用。稍微更好的選擇是:cabbrev
,其可以被用來定義縮寫命令模式:
cabbrev E Explore
這觸發以下Ë輸入或Ë空間。前者是需要的,因爲打字:E輸入將調用:Explore
,但後者在命令模式下又有副作用。
爲了:E
被適當地別名爲:Explore
,它必須被定義爲一個單獨的命令:
command! E Explore
然而,:command E
,其中列出了與E
啓動所有定義的命令,揭示了:E
和:Explore
有不同的屬性。例如,不可能執行:E ~
,因爲:E
不接受任何參數。另外,與:Explore
不同,:E
不會自動完成目錄。
爲了彌補這些缺陷,:E
必須以與:Explore
完全相同的方式定義。執行:verbose command Explore
顯示定義:Explore
的腳本的位置; :E
然後可以以相同的方式來定義,通過添加<args>
:
command! -nargs=* -bar -bang -count=0 -complete=dir E Explore <args>
雖然可以推斷最從由:command Explore
提供的信息,這些屬性,可以有仍然不符,如在此-bar
案件。
N.B.如果定義了:Explore
和:Example
,則:Exp
和:Exa
是可以使用的最短的明確命令。如上所述,將:E
明確別名爲其中的一個,將覆蓋Vim的默認行爲並允許消歧。但是,:Ex
仍然不明確。
打開資源管理器的另一種快捷方式是使用':e.'。這將':探索'當前目錄。這也具有不需要換檔鑰匙的好處。 –
@PeterRincker整潔,但對於完全不同的用例。 – Shriken
對於完整的n00b,把'命令!在你的'〜/ .vimrc'文件中找到E Explore',然後:E將正確地別名到:Explore。 – N0thing