2011-01-07 88 views
0

德国的Mac键盘布局,键入|是一种痛苦,因为它绑定到<A-7>,我很难达到Alt键。Vim:如何交换密钥绑定? (在“7”键上绑定'|')

因此,我想要做以下重映射(用于交换和|7绑定):

imap 7 <Bar> 
imap <A-7> 7 

的第一个工程,第二个没有。我已经尝试过与inor(无重新映射)的所有组合,但没有成功。

也许我没有得到重新映射的概念。或者我缺少其他东西。

+0

。格式化帮助并没有告诉我如何使用这种密钥格式,使'7`看起来更像图形键......看起来像[7]。 – crispy 2011-01-07 17:12:50

+1

将7封入盒子中使用。顺便说一下,在''这个栏里绑定的是什么?如果是系统快捷键/键盘选项,那么只需使用`inoremap 7 | inoremap 7`。 – ZyX 2011-01-07 17:25:06

回答

2

根据我的经验,涉及修饰符的一些重新映射根本不适用于MacVim。我使用的两种解决方法是:

  1. 尝试其他修饰键,例如,或

  2. 使用键盘大师(适用于Mac OS X的优秀重点映射器)做重映射

+0

谢谢!键盘Maestro似乎是治愈这种不一致和无人问津的Mac键盘布局(混乱)的最佳方式。 – crispy 2011-01-09 13:12:22

2

我认为你正在寻找的答案是:

inoremap 7 <bar> 
inoremap <bar> 7 

我使用类似的绑定来交换我的分号和冒号用法(除了我的不用于插入模式):

nnoremap ; : 
nnoremap : ; 

xnoremap ; : 
xnoremap : ; 

Upda根据Rory O'Kane在评论中的建议(谢谢!)。顺便说一句,