2
A
回答
2
你不能用一個映射來做到這一點。你能做的最好的是一個循環和一堆映射。例如,要重新映射一切正常模式小寫字母:
for c in range(char2nr('a'), char2nr('z'))
execute 'nnoremap ' . nr2char(c) . ' :echo " Pressed: ' . nr2char(c) . '"<CR>'
endfor
如果你想[a-z0-9]
你需要使用兩個range()
調用得到正確的鍵碼,因爲對數字和小寫字母的鍵碼也不行(見的ASCII table):
for c in range(char2nr('0'), char2nr('9')) + range(char2nr('a'), char2nr('z'))
execute 'nnoremap ' . nr2char(c) . ' :echo " Pressed: ' . nr2char(c) . '"<CR>'
endfor
1
如果要作用於插入模式分別鍵入的字符,你可以使用InsertCharPre
事件。例如:
autocmd InsertCharPre * call FilterChar()
function! FilterChar()
if (v:char == 'a')
let v:char = 'ouch'
echo v:char
endif
endfunction
這顛覆與ouch
替換它,在飛行中插入a
,同時呼應相同的文本(這意味着你可以做其他的東西在那裏,比如調用一個函數)。
相關問題
- 1. 映射VIM關鍵
- 2. 有沒有辦法在Swift中同時映射字典鍵/值?
- 3. 有沒有辦法使用範圍
- 4. 有沒有辦法指定範圍?
- 5. 有沒有辦法在Vim中映射Ctrl時間和Ctrl逗號?
- 6. 有沒有辦法在Xcode 4中擁有VIM鍵盤綁定?
- 7. 帶有「:」鍵的vim鍵盤映射
- 8. 有沒有辦法在eclipse IDE中手動執行servlet映射?
- 9. 有沒有辦法在Python中影響範圍計數器?
- 10. VIM鍵映射到現有的密鑰
- 11. 有沒有辦法在Vim的
- 12. 有沒有辦法查看所有VIM鍵盤綁定?
- 13. 有沒有辦法調試在AWS的映射模板apigateway
- 14. 有沒有辦法在日期範圍內查找?
- 15. 有沒有辦法跟蹤iframe的designMode中的選擇範圍?
- 16. 如何在Vim中映射數字/字母範圍?
- 17. 有沒有辦法在Python或Java中輸出關鍵字?
- 18. 有沒有辦法用where子句映射一對一?
- 19. 有沒有辦法使用BeanUtils.copyProperties將Set映射到List?
- 20. 有沒有辦法查看你的git分支的映射?
- 21. typo3 extbase:有沒有辦法將exec_SELECTgetRows結果映射到實體?
- 22. 有沒有辦法讓Tomcat 7顯示servlet映射?
- 23. 有沒有辦法將Java Servlet映射到* /?
- 24. 無法識別的Vim的鍵映射
- 25. 有沒有辦法顯示類似於在Vim中顯示映射的宏列表?
- 26. 有沒有辦法更新來自PHP關閉的調用者範圍變量
- 27. 有沒有辦法創建一個分組的命名範圍?
- 28. 有沒有辦法檢索TextView的可見行數或範圍?
- 29. 有沒有辦法在Windows上更改Vim中的鍵盤佈局?
- 30. 有沒有辦法在不在當前範圍內的lambda中使用變量?