Ссылочная вики-страница содержала неработающие сопоставления. Пользователь (Spiiph) изменил код Vim на что-то, что выглядело лучше для него, но было неправильно. Я отменил сделанные им изменения, и теперь операторы inoremap должны работать.
Чтобы избежать путаницы, это ИМХО правильные команды:
inoremap <expr> <c-n> pumvisible() ? "\<lt>c-n>" : "\<lt>c-n>\<lt>c-r>=pumvisible() ? \"\\<lt>down>\" : \"\"\<lt>cr>"
inoremap <expr> <m-;> pumvisible() ? "\<lt>c-n>" : "\<lt>c-x>\<lt>c-o>\<lt>c-n>\<lt>c-p>\<lt>c-r>=pumvisible() ? \"\\<lt>down>\" : \"\"\<lt>cr>"
PS: когда дело доходит до использования функции завершения Vim, я обнаружил скрипт SuperTab
очень удобно. Может быть, этот сценарий также интересен для вас в этом контексте ...