/usr/share/perl5/Locale/Po4a/Ini.pm is in po4a 0.47-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 | # Locale::Po4a::Ini -- Convert ini files to PO file, for translation.
#
# This program is free software; you may redistribute it and/or modify it
# under the terms of GPL (see COPYING).
#
############################################################################
# Modules and declarations
############################################################################
use Locale::Po4a::TransTractor qw(process new);
use Locale::Po4a::Common;
package Locale::Po4a::Ini;
use 5.006;
use strict;
use warnings;
require Exporter;
use vars qw(@ISA @EXPORT $AUTOLOAD);
@ISA = qw(Locale::Po4a::TransTractor);
@EXPORT = qw();
my $debug=0;
sub initialize {}
sub parse {
my $self=shift;
my ($line,$ref);
my $par;
LINE:
($line,$ref)=$self->shiftline();
while (defined($line)) {
chomp($line);
print STDERR "begin\n" if $debug;
if ($line =~ /\"/) {
print STDERR "Start of line containing \".\n" if $debug;
# Text before the first quote
$line =~ m/(^[^"\r\n]*)"/;
my $pre_text = $1;
print STDERR " PreText=".$pre_text."\n" if $debug;
# The text for translation
$line =~ m/"([^\r\n]*)"/;
my $quoted_text = $1;
print STDERR " QuotedText=".$quoted_text."\n" if $debug;
# Text after last quote
$line =~ m/"([^"\n]*$)/;
my $post_text = $1;
print STDERR " PostText=".$post_text."\n" if $debug;
# Translate the string it
$par = $self->translate($quoted_text, $ref, $pre_text);
# Escape the \n characters
$par =~ s/\n/\\n/g;
# Now push the result
$self->pushline($pre_text.'"'.$par.'"'.$post_text."\n");
print STDERR "End of line containing \".\n" if $debug;
}
else
{
print STDERR "Other stuff\n" if $debug;
$self->pushline("$line\n");
}
# Reinit the loop
($line,$ref)=$self->shiftline();
}
}
##############################################################################
# Module return value and documentation
##############################################################################
1;
__END__
=encoding UTF-8
=head1 NAME
Locale::Po4a::Ini - convert INI files from/to PO files
=head1 DESCRIPTION
Locale::Po4a::Ini is a module to help the translation of INI files into other
[human] languages.
The module searches for lines of the following format and extracts the quoted
text:
identificator="text than can be translated"
NOTE: If the text is not quoted, it will be ignored.
=head1 SEE ALSO
L<Locale::Po4a::TransTractor(3pm)>, L<po4a(7)|po4a.7>
=head1 AUTHORS
Razvan Rusu <rrusu@bitdefender.com>
Costin Stroie <cstroie@bitdefender.com>
=head1 COPYRIGHT AND LICENSE
Copyright 2006 by BitDefender
This program is free software; you may redistribute it and/or modify it
under the terms of GPL (see the COPYING file).
=cut
|