[英]Pass digit keys in normal mode as an argument of vim's function
我想查看輸出消息:
1234
當我在vim的普通模式下鍵入1234<Enter>
時。
我試圖在這里寫一些vim腳本
function! PrintNum(n)
echo n
endfunction
nmap n<Enter> call PrintNum(n)
其中n
只是代表regex \\d+
的虛擬變量。
如何在map命令中使用某種正則表達式?
請注意,我也不確定是否應該使用nmap
。
這里是:
function! PrintNum(n)
echo a:n
endfunction
nnoremap <silent> <Enter> :<C-u>call PrintNum(v:count)<CR>
v:count
獲取可以放在任何命令前的數字。 n
(內部稱為a:n
)傳遞給了函數,但是我也可以直接在函數內部使用v:count
。 :
命令將計數轉換為范圍,因為我們需要一個單獨的:call
,我們通過<Cu>
刪除了該范圍。 <CR>
。 <silent>
避免您短暫看到映射的鍵。 :noremap
; 它使映射不受重新映射和遞歸的影響。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.