繁体   English   中英

vimrc:imap Alt +一个重音字符

[英]vimrc: imap Alt + an accented character

我有一些按键(如<M-[>imap '来执行我的.vimrc一些动作,例如

imap <M-[> <C-o>:silent !audtool --playback-seek-relative -3<CR>

在打字时大胆寻求(用于转录录制的语音)。 我想为捷克键盘布局做同样的事情,恰好在那个位置有ú (u-acute)。 所以我试了很明显

imap <M-ú> <C-o>:silent !audtool --playback-seek-relative -3<CR>

这不起作用。 这里有什么解决方案? 尝试:help key-notation和谷歌没有成功。 只在gvim(而不是终端)工作的解决方案很好。

Vim有一种处理输入的古老方法 - 它表示为字节(字符)队列,而不是键击序列队列。 我想,字符<M-ú> (是的,它应该是一个字符)就不存在了,就像<C-1>那样。 你可以通过在输入模式下按<Cv><M-ú>来确保它 - 一个普通的ú或什么都不会输入。 所以没有办法将<M-ú>映射到某个东西。

但! 因此,Vim不能很好地处理不同的外部布局而不是基本的QWERTY设计,它提供了一个自己的(内部)机制来支持第二种布局。

如果你这样做:set keymap=czech ,你可以在Vim中用<C-6>切换输入语言,忘记映射乱码 - 映射<M-[> (以及z2等)会表示两种布局中的一个关键和弦。

顺便说一下,这实际上是将Vim充分用于一种语言的唯一方法,该语言的布局与QWERTY(例如Cyrillic)完全不同。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM