locale files nicht mit hardcoded latin markieren sondern mit dem language charset.
authorSven Schöling <s.schoeling@linet-services.de>
Mon, 16 Aug 2010 09:30:59 +0000 (11:30 +0200)
committerSven Schöling <s.schoeling@linet-services.de>
Mon, 16 Aug 2010 09:30:59 +0000 (11:30 +0200)
Ausserdem Markierungen auf vim ausgeweitet.

locale/de/all
scripts/locales.pl

index 05e058d..3b8685c 100644 (file)
@@ -1,5 +1,6 @@
 #!/usr/bin/perl
-# -*- coding: iso-8859-15; -*-
+# -*- coding: ISO-8859-15; -*-
+# vim: fenc=ISO-8859-15
 
 # These are all the texts to build the translations files.
 # The file has the form of 'english text'  => 'foreign text',
index 2174c2d..21f4245 100755 (executable)
@@ -85,6 +85,9 @@ if (-f "$locales_dir/lost") {
   unlink "$locales_dir/lost";
 }
 
+my $charset = slurp("$locales_dir/charset") || 'utf-8';
+chomp $charset;
+
 my %old_texts = %{ $self->{texts} || {} };
 
 map({ handle_file($_, $bindir); } @progfiles);
@@ -598,7 +601,7 @@ sub generate_file {
 
   open my $fh, '>', $file or die "$! : $file";
 
-  print $fh "#!/usr/bin/perl\n# -*- coding: iso-8859-15; -*-\n\n";
+  print $fh "#!/usr/bin/perl\n# -*- coding: $charset; -*-\n# vim: fenc=$charset\n\n";
   print $fh $header, "\n" if $header;
   print $fh "$data_name = $delim[0]\n" if $data_name;
 
@@ -608,6 +611,11 @@ sub generate_file {
   close $fh;
 }
 
+sub slurp {
+  my $file = shift;
+  do { local ( @ARGV, $/ ) = $file; <> }
+}
+
 __END__
 
 =head1 NAME