2017-08-23 31 views
0

例如,我希望能夠做這樣的事情:如何插入C++風格#define'd(文字)文本的VIM鍵映射

#define SAVE "<C-o>:call MySaveFn()<CR>" 
inoremap <F2> {SAVE}.... 
inoremap <F3> {SAVE}.... 

基本上使我的所有inoremaps看起來更緊湊。 (我看到的唯一選擇是爲這些等效定義中的每一個指定鍵,並執行遞歸imap而不是inoremap,我不想這樣做。)

回答

1

您可以定義一個變量,然後:execute您的表達式。

例如:

:let s:save = '<c-o>:call <sid>MySaveFn()<cr>' 
:exe 'inoremap <F2> '.s:save 
+0

我希望能夠到位的問題中添加更多的映射「......」在我的代碼片段。我可以在這裏做嗎? –

+0

當然,將它們放入一個字符串中,並將其連接到要執行的表達式 - >':exe'inoremap '.s:save.'some other stuff''。 –

+0

感謝您的輸入! –