2013-02-27 38 views
5

我想映射我的空间键,使Vim从正常模式进入插入模式。映射空间键进入插入模式

我想这样做的原因是因为有时我忘记了我处于正常模式并开始输入,就好像我处于插入模式一样。当我按下空格键之间或甚至在页面的开始时,它会向下移动,因为按下了我刚输入的ai的可能性,所以它会向下移动。

因此,为了避免这种情况,我想将我的空间键映射到正常模式下的插入模式,因为我们按i来这样做。

我试过如下:

map space :i 
map <space> :i 

但这些似乎没有工作。

回答

8

你混在你映射的方式;这在Vim中是一个重要的概念。虽然有一个在Vim中(其中你的映射确实会用:开始)一:startinsert Ex命令,它更直接地使用正常模式i命令:

:nnoremap <Space> i 

你只是想在这里一正常模式映射,所以:nmap,而不是:map; CP。 :help map-modes。请参阅:help key-notation为什么写入<Space>

最后:You should always use :noremap;它使映射免于重映射和递归。

6

奇怪的要求,但是,你有你的理由。 :)

尝试这一行了:

nnoremap <space> i 
+0

这很奇怪,但[''''正常''普通'映射](http://vimdoc.sourceforge.net/htmldoc/motion.html# )是完全一样的['l' (http://vimdoc.sourceforge.net/htmldoc/motion.html#l),所以至少你没有真正阻止任何标准功能。我见过很多:) – Johnsyweb 2013-02-27 11:34:01

+0

@Kent::)谢谢。 – 2013-02-27 11:50:44

+0

@约翰:谢谢:)我一定会想一想,如果空间,会产生任何问题。 – 2013-02-27 11:53:06