Fix error with recursive key mappings

Seems that vim may invoke BufRead more than once per buffer, so that our
function may be called twice that results in key will be mapped
recursively.