получить вывод perl-скрипта в vimscript - PullRequest
1 голос
/ 02 января 2011

Я пробовал следующее:

:let @0 = system('perl /home/hermann/hi.pl')
:echo @0

Имея hi.pl вот так:

\#!/usr/bin/perl
exit(34);

Но я не получаю 34 в @0, я ничего не получаю.

Как вернуть значение из сценария perl в vimscript?

1 Ответ

4 голосов
/ 02 января 2011

Во-первых, :echo @0v это просто опечатка, которая должна быть :echo @0, верно?

Во-вторых, system () в vimscript возвращает стандартный вывод команды, а не ее возвращаемое значение. Ваш let @0 ... эквивалентен одному из них в perl:

my $x = `perl /home/hermann/hi.pl`;
my $y = qx:perl /home/hermann/hi.pl:;

Если вы хотите получить возвращаемое значение, а не стандартный вывод команды, посмотрите на переменную v: shell_error .

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