Неважно. Покопался в руководстве по vim и нашел несколько обходных путей. Одна проблема была с этим:
.!elinks -dump @"<CR>
это не будет работать, как ожидалось. Все после! оператор передается в оболочку дословно через vim - поэтому значение регистра не будет передано elinks. Другая проблема заключается в том, что разделитель команд как-то не работает после :norm yE
. Окончательное решение обойти эти проблемы было следующим:
function! Browser ()
normal yE
new
execute ".!elinks -dump " . @"
set nomodified
endfunction
nmap owp :call Browser ()<CR>
Обратите внимание на использование execute, чтобы обойти ограничение "!" оператор. Мне все еще нужно найти решение для вопроса 2. Тем не менее,