我的键盘布局(第2行):
` 1 ... 0 - = 退格
我想将函数调用映射到 Ctrl + 0 , - , = 。
这是我创建的功能:
" it doesn't work
nnoremap <C-=> :call IncFontSize(+1)<CR>
" it works
nnoremap <C--> :call IncFontSize(-1)<CR>
" it doesn't work
nnoremap <C-0> :call IncFontSize(0)<CR>
fun! IncFontSize(inc)
if !exists('+guifont')
return
endif
let s:defaultfont = 'Ubuntu Mono 12'
if a:inc==0 || empty(&guifont)
let &guifont = s:defaultfont
return
endif
let &guifont = substitute(&guifont, '\d\+$', '\=submatch(0)+'.a:inc, '')
endfun
如何将函数调用映射到这些键?
答案 0 :(得分:7)
请注意,在命令行模式下, Ctrl - _ 会导致^_
,但 Ctrl - 0 和 Ctrl - = 什么都不产生。
由于键盘输入在内部处理的方式,区分它以及许多其他组合键(例如 Ctrl + Letter 与 Ctrl <遗憾的是,/ kbd> + Shift + Letter ,即使在GVIM中也是如此。这是一个众所周知的痛点,也是关于vim_dev和#vim IRC频道的各种讨论的主题。
有些人(最重要的是Paul LeoNerd Evans)希望解决这个问题(即使是支持Vim的终端中的控制台Vim),并提出了各种提案,cp。 link
但截至今天,尚未有任何补丁或志愿者挺身而出,尽管许多人表示希望在未来的Vim 8主要版本中有这个。
答案 1 :(得分:1)
http://vim.wikia.com/wiki/Fast_window_resizing_with_plus/minus_keys
只有+
和-
......没有别名
:nmap + :echo "hello world"<CR>
这是你想要的吗?