在正常模式下將轉義鍵對應到 vim 中的 :q

在正常模式下將轉義鍵對應到 vim 中的 :q

我在午夜指揮官中使用 vim 作為檢視器,我想快速檢視和關閉檔案。如何將轉義鍵對應到:q正常模式,以便 vim 僅在沒有任何變更的情況下退出?

答案1

若要僅對目前vim會話執行此操作,請鍵入下列命令(在 中vim)。 (為了清楚起見,添加了空格。除非我已指出,否則請勿鍵入空格Space。)

:mapSpaceCtrl+ VEscSpace:qCtrl+VEnterEnter

若要僅對目前終端機會話的其餘部分執行此操作,請鍵入下列命令(在終端機;即 shell 中)。 (為了清楚起見,添加了換行符。將以下內容全部鍵入一行;Enter除非我已指出,否則請勿鍵入Enter。)

E  X  I  N  I  T  =
"  :  m  a  p  Space  Ctrl+ V  Esc  Space  :  q  Ctrl+V  Enter  "  Enter

進而

export EXINITEnter

若要使變更「永久」(即,直到您將檔案變更回來),請將上述命令(和EXINIT="…"export EXINIT放入您的.bash_profileand/or中.bashrc。 (您可以將它們放在同一行上,並用 分隔;。您可以通過將它們組合成 來縮短它export EXINIT="…"。)直到您再次登錄,或者可能直到您啟動一個新的 shell 時,這才會生效,除非您只需鍵入EXINIT指令或source放入EXINIT指令的檔案即可。

筆記:如果您不使用 bash 作為主要 shell,則可能需要針對您的 shell 修改上述內容。

或者,嘗試將:map …命令放入您的文件中.exrc


如果這不明顯,

:地圖字串1 字串2

(在vi/中vim)建立映射(翻譯),以便當您鍵入(在命令模式下)時,編輯器的行為就像您鍵入 一樣。 +是超級轉義字符,它告訴/和shell(事實上,可能string1string2CtrlVvivim全部程序,或至少大多數程序),以下字符應解釋為文字文字字符,而不是控製字符。請注意,Ctrl+V後跟為Enter 您提供一個回車符,該字元通常顯示為^M;但是,在 a 中, that 被解釋為 an 。:map string2Enter

相關內容