[英]Vim command line mode - how to confirm selection?
在 zsh 中,如果您在主目錄中鍵入ls <Tab>
,它將顯示您家中的所有非隱藏文件,然后每個<Tab>
循環遍歷文件名。
當當前突出顯示的文件名是我想要的時,如果該項目是一個目錄,我輸入/
來確認我的選擇,如果它是一個文件,我使用<Space>
。
正如這篇文章所指示的,我在我的.vimrc
中添加了這兩行,以完成 vim zsh 式完成。
set wildmode=longest,list,full
set wildmenu
但是當 vim 循環選擇選項時,我如何確認選擇?
Like in my home dir I start vim, and :e
+ some tabs, when the selection is on my document dir, how can I confirm it? <Enter>
將完成命令, <Esc>
或<Cc>
取消它,而/
附加一個反斜杠,因此命令變為:e document//
不是我想要的。
從 vim 文檔(:help wildmenu):
While the "wildmenu" is active the following keys have special meanings:
[...]
<Down> - in filename/menu name completion: move into a subdirectory or submenu
[...]
所以我認為這至少得到了你所追求的一部分。
以防萬一其他人(如我)來到這里並感覺@Geoff 的回答並不像 vim 那樣。
我發現Ctrl + D完全符合 OP 的要求。 :help cmdline-completion
更多信息
我使用<space>
來選擇。
cnoremap <expr> <space> wildmenumode()?"\<space>\<BS>":"\<space>"
舊帖子,但我正在尋找相同的答案。 根據:help wildmenu
:
CTRL-Y - accept the currently selected match and stop
completion.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.