svn commit: r196080 - user/edwin/locale/tools

Edwin Groothuis edwin at FreeBSD.org
Thu Aug 6 09:04:21 UTC 2009


Author: edwin
Date: Thu Aug  6 09:04:19 2009
New Revision: 196080
URL: http://svn.freebsd.org/changeset/base/196080

Log:
  Be able to link (old/obsolete/duplicate) encodings

Modified:
  user/edwin/locale/tools/charmaps.pm
  user/edwin/locale/tools/charmaps.xml
  user/edwin/locale/tools/cldr2def.pl

Modified: user/edwin/locale/tools/charmaps.pm
==============================================================================
--- user/edwin/locale/tools/charmaps.pm	Thu Aug  6 08:55:54 2009	(r196079)
+++ user/edwin/locale/tools/charmaps.pm	Thu Aug  6 09:04:19 2009	(r196080)
@@ -52,11 +52,13 @@ sub h_start {
 		my $encoding = $attrs{encoding};
 		my $family = $attrs{family};
 		my $f = defined $attrs{family} ? $attrs{family} : "x";
-		my $link = $attrs{link};
+		my $nc_link = $attrs{namecountry_link};
+		my $e_link = $attrs{encoding_link};
 		my $fallback = $attrs{fallback};
 
 		$d{L}{$name}{$f}{fallback} = $fallback;
-		$d{L}{$name}{$f}{link} = $link;
+		$d{L}{$name}{$f}{e_link} = $e_link;
+		$d{L}{$name}{$f}{nc_link} = $nc_link;
 		$d{L}{$name}{$f}{family} = $family;
 		$d{L}{$name}{$f}{encoding} = $encoding;
 		$d{L}{$name}{$f}{countries} = $countries;

Modified: user/edwin/locale/tools/charmaps.xml
==============================================================================
--- user/edwin/locale/tools/charmaps.xml	Thu Aug  6 08:55:54 2009	(r196079)
+++ user/edwin/locale/tools/charmaps.xml	Thu Aug  6 09:04:19 2009	(r196080)
@@ -6,8 +6,10 @@
 		encoding = encodings to be done - seperated by space
 		countries = countries to create - seperated by space
 		family = which font family - only one
-		link = only with family, create this original file too - \
-			only one
+		countryname_link = only with family, link this original file \
+			too - only one
+		encoding_link = link this original encoding too - seperated \
+			by space
 		fallback = read this file if name_countries doesn't exist - \
 			only one
 
@@ -91,16 +93,17 @@
 		encoding="ISO8859-1 ISO8859-15"
 		countries="CH IT" />
 	<language name="ja"
-		link="jp_JP"
+		namecountry_link="jp_JP"
 		encoding="SJIS eucJP"
 		countries="JP" />
 	<language name="kk"
 		family="Cyrl"
-		link="kk_KZ"
+		namecountry_link="kk_KZ"
 		encoding="PT154"
 		countries="KZ" />
 	<language name="ko"
-		encoding="CP949 eucKR"
+		encoding="eucKR"
+		encoding_link="eucKR:CP949"
 		countries="KR" />
 	<language name="la"
 		encoding="ISO8859-1 ISO8859-2 ISO8859-4 ISO8859-15 US-ASCII"
@@ -110,10 +113,10 @@
 		countries="LT" />
 	<language name="mn"
 		family="Cyrl"
-		link="mn_MN"
+		namecountry_link="mn_MN"
 		countries="MN" />
 	<language name="nb"
-		link="no_NO"
+		namecountry_link="no_NO"
 		encoding="ISO8859-1 ISO8859-15"
 		countries="NO" />
 	<language name="nl"
@@ -142,12 +145,12 @@
 		countries="SI" />
 	<language name="sr"
 		family="Latn"
-		link="sr_YU"
+		namecountry_link="sr_YU"
 		encoding="ISO8859-2"
 		countries="RS" />
 	<language name="sr"
 		family="Cyrl"
-		link="sr_YU"
+		namecountry_link="sr_YU"
 		encoding="ISO8859-5"
 		countries="RS" />
 	<language name="sv"
@@ -161,17 +164,17 @@
 		countries="UA" />
 	<language name="zh"
 		family="Hans"
-		link="zh_CN"
+		namecountry_link="zh_CN"
 		encoding="GB18030 GB2312 GBK eucCN"
 		countries="CN" />
 	<language name="zh"
 		family="Hant"
-		link="zh_HK"
+		namecountry_link="zh_HK"
 		encoding="Big5HKSCS"
 		countries="HK" />
 	<language name="zh"
 		family="Hant"
-		link="zh_TW"
+		namecountry_link="zh_TW"
 		encoding="Big5"
 		countries="TW" />
 </languages>

Modified: user/edwin/locale/tools/cldr2def.pl
==============================================================================
--- user/edwin/locale/tools/cldr2def.pl	Thu Aug  6 08:55:54 2009	(r196079)
+++ user/edwin/locale/tools/cldr2def.pl	Thu Aug  6 09:04:19 2009	(r196080)
@@ -642,15 +642,23 @@ EOF
 			print FOUT "LOCALES+=\t$file.$e\n";
 		}
 
-		if (defined $languages{$l}{$f}{link}) {
+		if (defined $languages{$l}{$f}{nc_link}) {
 			foreach my $e (sort keys(%{$languages{$l}{$f}{data}{$c}})) {
 				my $file = $l . "_";
 				$file .= $f . "_" if ($f ne "x");
 				$file .= $c;
-				print FOUT "SAME+=\t\t$file.$e:$languages{$l}{$f}{link}.$e\t# legacy\n";
-				
+				print FOUT "SAME+=\t\t$file.$e:$languages{$l}{$f}{nc_link}.$e\t# legacy (lang/country change)\n";
+			}
+		}
+
+		if (defined $languages{$l}{$f}{e_link}) {
+			foreach my $el (split(" ", $languages{$l}{$f}{e_link})) {
+				my @a = split(/:/, $el);
+				my $file = $l . "_";
+				$file .= $f . "_" if ($f ne "x");
+				$file .= $c;
+				print FOUT "SAME+=\t\t$file.$a[0]:$file.$a[1]\t# legacy (same charset)\n";
 			}
-			
 		}
 
 	}


More information about the svn-src-user mailing list