如何在Vim中映射数字/字母范围?
问题描述:
我想在我的Vim脚本中映射数字范围。例如这不起作用: -如何在Vim中映射数字/字母范围?
inoremap {0-9}-{0-9} {0-9}<Space>-<Space>{0-9}
我要寻找以下行为: -
//Before mapping
x=x-1;
return -1;
//After mapping
x = x - 1;
return -1;
答
for n in range(0, 9)
execute "inoremap " . n . "-" . n . " " . n . " - " . n
endfor
这遍历号码列表从0
到9
,并创建一个单独的映射每个数字。
:help :for
:help range()
:help :execute
但我会尝试改善我的打字而不是依靠解决方法。
+0
这只适用于相同的数字。下面的作品虽然。 (0,9) for b in range(0,9) \t执行“inoremap”。一个 。 “ - ”。 b。 “”。一个 。 “ - ”。 b endfor endfor' – ZEU5
我真的不明白你想要做什么,但是你不能映射这样的范围。这会将字面文本'{0-9} - {0-9}'映射到'{0-9} - {0-9}' – DJMcMayhem
如何映射范围?有没有Vim符号? – ZEU5
这是我的观点,你不能在vim中映射范围。您可能会以其他方式获得相同的功能,但您需要准确描述您要做的事情。你应该[编辑]你的问题,并仔细解释你想要发生的事情。 – DJMcMayhem