Vim で特定のキーがマッピングされているかどうかを判定する

覚書。
どう判定するのかいいのかと思ったけど maparg() を使用するのが手っ取り早そう。

[ソース]

nnoremap hoge :echo "hoge"<CR>
imap <A-h> hoge
nmap <A-l> <Nop>

echo "---------"
echo maparg("hoge")
echo maparg("<A-h>", "i")
echo maparg("<A-l>")

echo "---------"
echo !empty(maparg("hoge"))
echo !empty(maparg("<A-h>", "i"))
echo !empty(maparg("<A-l>"))

unmap hoge
iunmap <A-h>

echo "---------"
echo !empty(maparg("hoge"))
echo !empty(maparg("<A-h>", "i"))

[出力]

---------
:echo "hoge"<CR>
hoge

---------
1
1
0
---------
0
0