Как я могу активировать информацию: ссылки в Konqueror

man: and help: работает нормально, но если я введу информацию: ссылка говорит:

Запрошенная операция не может быть завершена. Невозможно инициировать информационный протокол. Техническая причина: невозможно запустить процесс.

Возможные причины:

Программа, которая обеспечивает совместимость с этим протоколом, возможно, не была обновлена ​​с вашим последним обновлением KDE. Это может привести к несовместимости программы с текущей версией и, следовательно, к невозможности ее запуска. Возможно, вы столкнулись с ошибкой в ​​программе.

Я не знаю, если это ошибка или что-то пошло не так с моей системой.

1 ответ

Решение

Это похоже на ошибку (см.: https://bugs.kde.org/359015). Похоже, что это было исправлено в апстриме, но не в Ubuntu (по крайней мере, не в 16.04).

Исправление (представленное в приведенном выше отчете об ошибке) состоит в изменении двух строк в Perl-скрипте (/usr/share/kde4/apps/kio_info/kde-info2html), поэтому его можно легко наносить вручную. В формате патча:

@@ -171,7 +171,7 @@
        next if $looking && !/\* Menu/;
        $looking = 0;
        my @item = &ParseMenuItem($_,'dir');
-       if (!defined(@item)) { next }
+       if (!@item) { next }
            my ($MenuLinkTag, $MenuLinkFile, $MenuLinkRef, $MenuLinkText) = @item;
        if ($MenuLinkRef eq $FileName) {
            &Redirect($MenuLinkFile, $MenuLinkTag);
@@ -429,7 +429,7 @@
 sub MenuItem2HTML {
     my ($Line, $BaseInfoFile) = @_;
     my @parse_results = &ParseMenuItem($Line, $BaseInfoFile);
-    if (!defined (@parse_results)) { return $Line; }
+    if (!@parse_results) { return $Line; }
     my ($MenuLinkTag, $MenuLinkFile, $MenuLinkRef, $MenuLinkText) = @parse_results;
     #-- produce a HTML line
     return "<tr class=\"infomenutr\"><td class=\"infomenutd\" style=\"width:30%\"><ul><li><a href=\"info:/$MenuLinkFile/$MenuLinkTag\">$MenuLinkRef</a></ul></td><td class=\"infomenutd\">$MenuLinkText";
Другие вопросы по тегам