2013-02-19 133 views
1

我发现下面的执行命令是在vim有用:地图执行命令VIM

:execute "normal! mqA;\<esc>`q" 

它进入正常模式,则它使一个标记“Q”在光标位置, 前进到结束的并添加分号“;”,然后再次转到 正常模式并返回到原始光标位置。

我怎么能把所有这个命令映射到一个叫做“scc”的键?

我曾尝试:

imap scc <Esc>:execute "normal! mqA;\<esc>`q"<CR> 

但没有奏效。谢谢。

回答

3

你不需要:execute - normal,你可以简单地做(和使用“noremap”形式):(?)

inoremap scc <Esc>mqA;<Esc>`q 

但是你的地图键都不是很好选择,例如尝试<F3>为功能键3

+0

你的速度更快。 :)我+1你的,并删除我的。 – Kent 2013-02-19 18:31:58

+0

谢谢,有时我很快:) – 244an 2013-02-19 18:35:02

1

其他人处理的核心问题,但我应该有这样的,而不是创建一个字母标记,你可以使用一个“上下文标记”:

inoremap <something> <Esc>m`A;<Esc>`` 

使用一个字母标记没有错,请注意,但我认为他们在其他地方更有用。