Функция Vim для вызова скрипта bash с аргументом и возврата результата - PullRequest
0 голосов
/ 07 августа 2011

У меня есть скрипт bash, который принимает один аргумент и возвращает около 8-10 строк текста.

Я хотел бы иметь возможность вызывать этот скрипт из vim.В идеале, выделяя строку символов в качестве аргумента.Затем я хотел бы, чтобы вывод скрипта отображался в новой панели.

Я новичок в vim, поэтому я не уверен, что это можно сделать, просто создав команду в моем файле vimrcили если мне нужно создать плагин.

Любой совет будет очень признателен.

после небольшого поиска в Google, я придумал

function! Foo(a1)
    new
    r !myscript a:a1
endfunction

Это непока не работаетКажется, передается имя a: a1, а не значение.

1 Ответ

4 голосов
/ 07 августа 2011

Я бы начал с простой функции, подобной этой ( примечание: образец использует echo в качестве сценария ... Какая-то неудача ... но вы поняли)

function! CallMyScript(params)
    new                 " open a new buffer
    " se buftype=nofile " add spice to taste, e.g.
    silent! exec "r!echo '" . a:params . "'"
endfunction

, а затем отображение для визуального режима, как;

:vnoremap QQ y:call CallMyScript(@")<Enter>

Это вызовет скрипт с текущим выбранным текстом, когда вы нажмете Q Q

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...