如何在Vim中获取映射值并保存它们

时间:2013-04-25 22:45:06

标签: vim keymapping

假设我有下一个映射:

imap a AAA
vmap b BBB

我需要一种方法来获得映射的价值。 下一个不适合我,因为我需要通过返回的映射值进行操作:

imap a
vmap b

我正在寻找类似这些功能的东西:

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

2 个答案:

答案 0 :(得分:2)

maparg()功能正是您所寻找的。 :h maparg(查看详情。

你的问题,如果你有这两个映射,你可以:

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

答案 1 :(得分:1)

您可以使用maparg()执行此操作,如下所示:

let a = maparg("a")

如果您只想要一种模式的映射,也可以指定模式,并且可以选择使用映射的每个细节填充字典(如<silent>等)。有关所有详细信息,请参阅:h maparg()