2017-09-05 50 views
1

我想在我的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; 
+0

我真的不明白你想要做什麼,但是你不能映射這樣的範圍。這會將字面文本'{0-9} - {0-9}'映射到'{0-9} - {0-9}' – DJMcMayhem

+0

如何映射範圍?有沒有Vim符號? – ZEU5

+0

這是我的觀點,你不能在vim中映射範圍。您可能會以其他方式獲得相同的功能,但您需要準確描述您要做的事情。你應該[編輯]你的問題,並仔細解釋你想要發生的事情。 – DJMcMayhem

回答

0
for n in range(0, 9) 
    execute "inoremap " . n . "-" . n . " " . n . " - " . n 
endfor 

這遍歷號碼列表從09,並創建一個單獨的映射每個數字。

:help :for 
:help range() 
:help :execute 

但我會嘗試改善我的打字而不是依靠解決方法。

+0

這隻適用於相同的數字。下面的作品雖然。 (0,9) for b in range(0,9) \t執行「inoremap」。一個 。 「 - 」。 b。 「」。一個 。 「 - 」。 b endfor endfor' – ZEU5