2013-04-25 50 views
1

比方說,我有一個映射:如何在Vim中獲取映射值,並將其保存

imap a AAA 
vmap b BBB 

我需要一種方式來獲取映射值。 下是不適合我,因爲我需要返回值映射到操作:

imap a 
vmap b 

我正在尋找的東西像這樣的功能:

let a = getimap("a") => a = "AAA" 
let b = getvmap("b") => b = "BBB" 

回答

2

maparg()功能就是你要找的。 :h maparg(查看詳細信息。

你的問題,如果你有這兩個映射,您可以:需要爲他的問題

let a = maparg('a','i') 
let b = maparg('b','v') 
+0

我不知道當我發佈它時我在想什麼,我寫了'let a = echo maparg(...)': -/fixed .. – Kent 2013-04-25 23:24:44

+0

哇!那很棒!謝謝! – 2013-04-26 11:30:56

1

您可以使用maparg()做這一點,像這樣:

let a = maparg("a") 

您也可以指定模式,如果你只想要映射一個模式,它可以隨意填充每一個字典映射的細節(例如<silent>等)。所有的細節見:h maparg()

+0

'{}模式參數'哦 – Kent 2013-04-25 23:00:21

+0

,這是完美的。謝謝! – 2013-04-26 11:30:16

相關問題