source: subversion/applications/editors/josm/i18n/convwms.pl @ 29585

Last change on this file since 29585 was 28252, checked in by simon04, 8 years ago

JOSM/i18n: correct number of newlines in convpreset, test for existing URL in convwms

File size: 1.1 KB
RevLine 
[12334]1#! /usr/bin/perl -w
2
3# Written by Dirk Stöcker <openstreetmap@dstoecker.de>
4# Public domain, no rights reserved.
5
6use strict;
[25613]7use LWP::Simple;
[26592]8use encoding 'utf8';
[12334]9
10my $item;
11my $comment = 0;
12
13# This is a simple conversion and in no way a complete XML parser
14# but it works with a default Perl installation
15
[13392]16# Print a header to write valid Java code.  No line break,
17# so that the input and output line numbers will match.
18print "class trans_wms { void tr(String s){} void f() {";
19
[25613]20my @lines;
21if($ARGV[0] && $ARGV[0] =~ /^http:\/\//)
[12334]22{
[28252]23  my $content = get($ARGV[0]);
24  die "Couldn't get $ARGV[0]" unless defined $content;
25  @lines = split("\r?\n", $content);
[25613]26}
27else
28{
29  @lines = <>;
30}
31
32for my $line (@lines)
33{
34  $line =~ s/\r//g;
[12334]35  chomp($line);
[26589]36  if($line =~ /<name>(.*)<\/name>/)
[12334]37  {
[26593]38    my $val = $1;
39    $val =~ s/&amp;/&/g;
[26939]40    print "tr(\"$val\"); /* $line */\n";
[12334]41  }
[26939]42  elsif($line =~ /^[ \t]*$/)
43  {
44    print "\n";
45  }
46  elsif($line =~ /<entry>/) # required or the gettext info texts get too large
47  {
48    print "public newEntry() {};\n";
49  }
[12334]50  else
51  {
52    print "/* $line */\n";
53  }
54}
[13392]55
56print "}}\n";
Note: See TracBrowser for help on using the repository browser.