Sophie

Sophie

distrib > Mandriva > 10.2 > x86_64 > by-pkgid > 6636512f7ab99e63fc7eb86a6cbc03a6 > files > 233

OpenOffice.org-1.1.4-7.1.102mdk.src.rpm

#!/usr/bin/perl

use strict;
use MDK::Common;
use XML::Twig;

my ($Language, $XMLFile) = (shift, shift);
die "Invalid arguments" if (!$Language || !$XMLFile);

#- Define localized help package name
my $HelpPackage = "OpenOffice.org-help-$Language";

my $t = XML::Twig->new(twig_roots => { "ul" => \&handle_ul },
                       twig_print_outside_roots => 1,
                       keep_encoding => 1,
                       pretty_print => "indented"
                       );

$t->parsefile($XMLFile);
{
    my $num_ul = 0;
    sub handle_ul {
        my ($t, $ul) = @_;
        ++$num_ul;
        # Only print the first item, aka "Help module is not installed"
        if ($num_ul == 1) {
            # Implant OpenOffice.org help package name
            my @p = $ul->descendants("p");
            (my $text = $p[1]->text()) =~ s/^([^.]+)/\1 (e.g. <b>${HelpPackage}<\/b>)/;
            $p[1]->set_text($text);
            # Don't print the help link
            foreach (@p) { $_->delete if ($_->descendants("help:link")) }
            $ul->print;
        }
    }
}

# Local variables:
# tab-width: 4
# indent-tabs-mode: nil
# End: