diff options
author | Anthony Fok <foka> | 2011-04-07 00:52:26 +0000 |
---|---|---|
committer | Anthony Fok <foka> | 2011-04-07 00:52:26 +0000 |
commit | 33dcfee033cea706abfa78d56461996ecc7c5910 (patch) | |
tree | c98fd13dd982e370b7b4ade88bf2d6952c16c43b /chinese/bin | |
parent | 59d8ffdb818dffd027a9f10088faee114eb23b6a (diff) |
Convert Chinese pages to UTF-8:
- *.wml *.title *.inc *.tmpl *.po are converted from Big5 to UTF-8
- bin/tocn.pl, bin/totw.pl and bin/fix_big5.pl are adapted for UTF-8
- Minor translation revision
CVS version numbers
chinese/.wmlrc: 1.10 -> 1.11
chinese/Make.lang: 1.41 -> 1.42
chinese/contact.wml: 1.38 -> 1.39
chinese/donations.wml: 1.6 -> 1.7
chinese/index.wml: 1.67 -> 1.68
chinese/search.wml: 1.4 -> 1.5
chinese/social_contract.wml: 1.26 -> 1.27
chinese/support.wml: 1.31 -> 1.32
chinese/Bugs/index.wml: 1.22 -> 1.23
chinese/Bugs/otherpages.inc: 1.1 -> 1.2
chinese/Bugs/pseudo-packages.translated-description: 1.3 -> 1.4
chinese/Bugs/pseudo-packages.wml: 1.1 -> 1.2
chinese/CD/index.wml: 1.11 -> 1.12
chinese/CD/misc.wml: 1.4 -> 1.5
chinese/CD/artwork/index.wml: 1.7 -> 1.8
chinese/CD/faq/index.wml: 1.17 -> 1.18
chinese/CD/releases/index.wml: 1.6 -> 1.7
chinese/MailingLists/index.wml: 1.7 -> 1.8
chinese/News/1999/19990204.title: 1.1 -> 1.2
chinese/News/1999/19990212.title: 1.1 -> 1.2
chinese/News/1999/19990222.title: 1.1 -> 1.2
chinese/News/1999/19990225a.title: 1.1 -> 1.2
chinese/News/1999/19990225b.title: 1.1 -> 1.2
chinese/News/1999/19990302.title: 1.1 -> 1.2
chinese/News/1999/19990309.title: 1.1 -> 1.2
chinese/News/1999/19990330.title: 1.1 -> 1.2
chinese/News/1999/19990421a.title: 1.1 -> 1.2
chinese/News/1999/19990727.title: 1.1 -> 1.2
chinese/News/1999/19990730.title: 1.1 -> 1.2
chinese/News/1999/19990826.title: 1.1 -> 1.2
chinese/News/1999/19990901.title: 1.1 -> 1.2
chinese/News/1999/19990917.title: 1.1 -> 1.2
chinese/News/1999/19990927.title: 1.1 -> 1.2
chinese/News/1999/19991012.title: 1.1 -> 1.2
chinese/News/1999/19991020.title: 1.1 -> 1.2
chinese/News/1999/19991206.title: 1.1 -> 1.2
chinese/News/1999/19991215.title: 1.1 -> 1.2
chinese/News/1999/19991217.title: 1.1 -> 1.2
chinese/News/1999/index.wml: 1.6 -> 1.7
chinese/News/2000/20000116.title: 1.1 -> 1.2
chinese/News/2000/20000211.title: 1.1 -> 1.2
chinese/News/2000/20000408.title: 1.1 -> 1.2
chinese/News/2000/20000409.title: 1.1 -> 1.2
chinese/News/2000/20000503.title: 1.2 -> 1.3
chinese/News/2000/20000521.wml: 1.3 -> 1.4
chinese/News/2000/20000523.wml: 1.3 -> 1.4
chinese/News/2000/20000815.wml: 1.22 -> 1.23
chinese/News/2000/index.wml: 1.4 -> 1.5
chinese/News/2007/20070408.wml: 1.2 -> 1.3
chinese/News/2009/20090214.wml: 1.4 -> 1.5
chinese/News/2009/index.wml: 1.2 -> 1.3
chinese/News/2011/20110205a.wml: 1.2 -> 1.3
chinese/News/2011/20110401.wml: 1.4 -> 1.5
chinese/News/2011/index.wml: 1.1 -> 1.2
chinese/News/weekly/index.wml: 1.17 -> 1.18
chinese/News/weekly/2000/4/index.wml: 1.6 -> 1.7
chinese/News/weekly/2002/47/index.wml: 1.15 -> 1.16
chinese/News/weekly/2002/48/index.wml: 1.8 -> 1.9
chinese/News/weekly/2002/49/index.wml: 1.13 -> 1.14
chinese/News/weekly/2002/50/index.wml: 1.11 -> 1.12
chinese/News/weekly/2002/51/index.wml: 1.10 -> 1.11
chinese/News/weekly/2003/index.wml: 1.2 -> 1.3
chinese/News/weekly/2003/01/index.wml: 1.7 -> 1.8
chinese/News/weekly/2003/02/index.wml: 1.9 -> 1.10
chinese/News/weekly/2003/03/index.wml: 1.10 -> 1.11
chinese/News/weekly/2003/05/index.wml: 1.11 -> 1.12
chinese/News/weekly/2003/07/index.wml: 1.8 -> 1.9
chinese/News/weekly/2003/09/index.wml: 1.10 -> 1.11
chinese/News/weekly/2003/10/index.wml: 1.8 -> 1.9
chinese/News/weekly/2003/11/index.wml: 1.7 -> 1.8
chinese/News/weekly/2003/12/index.wml: 1.10 -> 1.11
chinese/News/weekly/2003/18/index.wml: 1.5 -> 1.6
chinese/News/weekly/2003/19/index.wml: 1.7 -> 1.8
chinese/News/weekly/2003/22/index.wml: 1.7 -> 1.8
chinese/News/weekly/2003/35/index.wml: 1.7 -> 1.8
chinese/News/weekly/2005/index.wml: 1.2 -> 1.3
chinese/News/weekly/2005/06/index.wml: 1.2 -> 1.3
chinese/News/weekly/2005/08/index.wml: 1.4 -> 1.5
chinese/News/weekly/2005/10/index.wml: 1.2 -> 1.3
chinese/News/weekly/2005/11/index.wml: 1.4 -> 1.5
chinese/News/weekly/2005/12/index.wml: 1.6 -> 1.7
chinese/News/weekly/2005/16/index.wml: 1.4 -> 1.5
chinese/News/weekly/2005/21/index.wml: 1.2 -> 1.3
chinese/News/weekly/2005/22/index.wml: 1.4 -> 1.5
chinese/News/weekly/2005/25/index.wml: 1.3 -> 1.4
chinese/News/weekly/2005/26/index.wml: 1.2 -> 1.3
chinese/News/weekly/2006/index.wml: 1.2 -> 1.3
chinese/News/weekly/2006/22/index.wml: 1.5 -> 1.6
chinese/News/weekly/2006/23/index.wml: 1.2 -> 1.3
chinese/News/weekly/2006/24/index.wml: 1.3 -> 1.4
chinese/News/weekly/2006/25/index.wml: 1.6 -> 1.7
chinese/News/weekly/2006/26/index.wml: 1.4 -> 1.5
chinese/News/weekly/2006/27/index.wml: 1.4 -> 1.5
chinese/News/weekly/2006/28/index.wml: 1.2 -> 1.3
chinese/News/weekly/2006/29/index.wml: 1.2 -> 1.3
chinese/News/weekly/2006/30/index.wml: 1.1 -> 1.2
chinese/News/weekly/2006/31/index.wml: 1.1 -> 1.2
chinese/News/weekly/2006/32/index.wml: 1.2 -> 1.3
chinese/News/weekly/2008/index.wml: 1.2 -> 1.3
chinese/News/weekly/2008/14/index.wml: 1.5 -> 1.6
chinese/News/weekly/2008/15/index.wml: 1.6 -> 1.7
chinese/News/weekly/2008/16/index.wml: 1.4 -> 1.5
chinese/bin/fix_big5.pl: 1.8 -> 1.9
chinese/bin/tocn.pl: 1.40 -> 1.41
chinese/bin/totw.pl: 1.38 -> 1.39
chinese/devel/index.wml: 1.58 -> 1.59
chinese/devel/website/index.wml: 1.2 -> 1.3
chinese/devel/website/translating.wml: 1.4 -> 1.5
chinese/devel/website/translation_coordinators.wml: 1.3 -> 1.4
chinese/distrib/archive.wml: 1.11 -> 1.12
chinese/distrib/ftplist.wml: 1.11 -> 1.12
chinese/distrib/index.wml: 1.27 -> 1.28
chinese/distrib/netinst.wml: 1.6 -> 1.7
chinese/distrib/packages.wml: 1.18 -> 1.19
chinese/distrib/pre-installed.wml: 1.4 -> 1.5
chinese/doc/index.wml: 1.24 -> 1.25
chinese/international/Chinese/about.wml: 1.4 -> 1.5
chinese/international/Chinese/download.wml: 1.19 -> 1.20
chinese/international/Chinese/index.wml: 1.21 -> 1.22
chinese/international/Chinese/mailing_lists.wml: 1.7 -> 1.8
chinese/international/Chinese/related_links.wml: 1.13 -> 1.14
chinese/international/Chinese/software.wml: 1.12 -> 1.13
chinese/international/Chinese/software_non-free.wml: 1.13 -> 1.14
chinese/international/Chinese/thanks.wml: 1.8 -> 1.9
chinese/international/Chinese/News/index.wml: 1.37 -> 1.38
chinese/international/Chinese/devel/doc_translate.wml: 1.11 -> 1.12
chinese/international/Chinese/devel/groups.wml: 1.9 -> 1.10
chinese/international/Chinese/devel/index.wml: 1.4 -> 1.5
chinese/international/Chinese/devel/join.wml: 1.10 -> 1.11
chinese/international/Chinese/devel/people.wml: 1.15 -> 1.16
chinese/international/Chinese/devel/www_translate.wml: 1.7 -> 1.8
chinese/international/Chinese/devel/zhongwenhua.wml: 1.11 -> 1.12
chinese/international/Chinese/doc/index.wml: 1.11 -> 1.12
chinese/international/Chinese/faq/index.wml: 1.20 -> 1.21
chinese/international/Chinese/screenshot/index.wml: 1.19 -> 1.20
chinese/intro/about.wml: 1.34 -> 1.35
chinese/intro/cn.wml: 1.23 -> 1.24
chinese/intro/cooperation.wml: 1.1 -> 1.2
chinese/intro/free.wml: 1.4 -> 1.5
chinese/intro/help.wml: 1.2 -> 1.3
chinese/intro/index.wml: 1.1 -> 1.2
chinese/intro/organization.wml: 1.1 -> 1.2
chinese/intro/search.wml: 1.4 -> 1.5
chinese/intro/why_debian.wml: 1.23 -> 1.24
chinese/mirror/list.wml: 1.2 -> 1.3
chinese/misc/index.wml: 1.1 -> 1.2
chinese/po/bugs.zh.po: 1.5 -> 1.6
chinese/po/cdimage.zh.po: 1.2 -> 1.3
chinese/po/consultants.zh.po: 1.2 -> 1.3
chinese/po/countries.zh.po: 1.5 -> 1.6
chinese/po/date.zh.po: 1.4 -> 1.5
chinese/po/debian-cdd.zh.po: 1.3 -> 1.4
chinese/po/distrib.zh.po: 1.3 -> 1.4
chinese/po/doc.zh.po: 1.4 -> 1.5
chinese/po/l10n.zh.po: 1.5 -> 1.6
chinese/po/langs.zh.po: 1.5 -> 1.6
chinese/po/legal.zh.po: 1.2 -> 1.3
chinese/po/mailinglists.zh.po: 1.3 -> 1.4
chinese/po/newsevents.zh.po: 1.3 -> 1.4
chinese/po/organization.zh.po: 1.6 -> 1.7
chinese/po/others.zh.po: 1.16 -> 1.17
chinese/po/ports.zh.po: 1.4 -> 1.5
chinese/po/search.zh.po: 1.5 -> 1.6
chinese/po/security.zh.po: 1.5 -> 1.6
chinese/po/templates.zh.po: 1.25 -> 1.26
chinese/po/vendors.zh.po: 1.7 -> 1.8
chinese/po/vote.zh.po: 1.2 -> 1.3
chinese/po/wnpp.zh.po: 1.2 -> 1.3
chinese/releases/index.wml: 1.19 -> 1.20
chinese/releases/etch/index.wml: 1.8 -> 1.9
chinese/releases/etch/installmanual.wml: 1.3 -> 1.4
chinese/releases/etch/releasenotes.wml: 1.4 -> 1.5
chinese/releases/hamm/HOWTO.upgrade.wml: 1.7 -> 1.8
chinese/releases/hamm/errata.wml: 1.7 -> 1.8
chinese/releases/lenny/index.wml: 1.6 -> 1.7
chinese/releases/lenny/releasenotes.wml: 1.2 -> 1.3
chinese/releases/potato/credits.wml: 1.2 -> 1.3
chinese/releases/potato/errata.wml: 1.4 -> 1.5
chinese/releases/potato/reportingbugs.wml: 1.1 -> 1.2
chinese/releases/slink/running-kernel-2.2.wml: 1.5 -> 1.6
chinese/releases/woody/credits.wml: 1.1 -> 1.2
chinese/releases/woody/reportingbugs.wml: 1.1 -> 1.2
chinese/searchtmpl/search.wml: 1.1 -> 1.2
chinese/security/index.wml: 1.20 -> 1.21
chinese/security/2002/dsa-197.wml: 1.1 -> 1.2
chinese/security/2002/dsa-198.wml: 1.1 -> 1.2
chinese/security/2002/dsa-200.wml: 1.1 -> 1.2
chinese/security/2002/dsa-202.wml: 1.1 -> 1.2
chinese/security/2002/dsa-203.wml: 1.1 -> 1.2
chinese/security/2002/dsa-204.wml: 1.2 -> 1.3
chinese/security/2009/dsa-1904.wml: 1.3 -> 1.4
chinese/security/2009/dsa-1905.wml: 1.1 -> 1.2
chinese/security/2009/dsa-1906.wml: 1.2 -> 1.3
chinese/security/2009/dsa-1907.wml: 1.3 -> 1.4
chinese/security/2009/dsa-1908.wml: 1.2 -> 1.3
chinese/template/debian-zh/macros.tmpl: 1.2 -> 1.3
chinese/template/debian-zh/navbar.tmpl: 1.3 -> 1.4
chinese/y2k/index.wml: 1.7 -> 1.8
Diffstat (limited to 'chinese/bin')
-rwxr-xr-x | chinese/bin/fix_big5.pl | 43 | ||||
-rwxr-xr-x | chinese/bin/tocn.pl | 231 | ||||
-rwxr-xr-x | chinese/bin/totw.pl | 205 |
3 files changed, 250 insertions, 229 deletions
diff --git a/chinese/bin/fix_big5.pl b/chinese/bin/fix_big5.pl index 752cd4f9cc5..384925d91da 100755 --- a/chinese/bin/fix_big5.pl +++ b/chinese/bin/fix_big5.pl @@ -1,27 +1,36 @@ -#!/usr/bin/perl -p +#!/usr/bin/perl -p -CSD + +# $Id$ + +use strict; +use warnings; +use utf8; +binmode STDIN, ':encoding(utf8)'; +binmode STDOUT, ':encoding(utf8)'; # Fix backslashes in Big5 Chinese characters -s/^((?:[\x00-\x7F]|(?:[\x80-\xFF].))+[\x80-\xFF]\\)$/$1\\/; +#s/^((?:[\x00-\x7F]|(?:[\x80-\xFF].))+[\x80-\xFF]\\)$/$1\\/; # Protect "{:" when the "{" is a second byte of a Big5 Chinese character # while (s%^((?:[\x00-\x7f]|[\x80-\xff].)*)([\x80-\xFF]x)%$1$2%) {} -while ( s{^((?:[\x00-\x7F]|(?:[\x80-\xFF].))+?)([\x80-\xFF]\{)(?!</protect>)} - {$1<protect>$2</protect>} ) {} +#while ( s{^((?:[\x00-\x7F]|(?:[\x80-\xFF].))+?)([\x80-\xFF]\{)(?!</protect>)} +# {$1<protect>$2</protect>} ) {} # Convert the Big5 forward slash that's not in the GB2312 code table # to the forward slash that's convertible. -s/A//g; +s/∕///g; +s/着/著/g; # Note: the following should be automatically generated in the future. -s/<tw䴩>/[CN:䴩:][HKTW::]/g; -s/<tw(|ɮ)>/[CN::][HKTW:$1:]/g; -s/<tw>/[CN::][HKTW::]/g; -s/<twT>/[CN:H:][HKTW:T:]/g; -s/<tws>/[CN:챵:][HKTW:s:]/g; -s/<tw֤>/[CN:֤:][HKTW:֤:]/g; -s/<tw(w)?>/[CN:ƾ$1:][HKTW:$1:]/g; -s/<tw(X|J)>/[CN:$1:][HKTW:$1:]/g; -s/<tw˸m>/[CN:]:][HKTW:˸m:]/g; -s/<tws>/[CN:ݤf:][HKTW:s:]/g; -s/<twM>/[CN:C:][HKTW:M:]/g; -s/<twL>/[CNHK::][TW:L:]/g; +s/<tw支援>/[CN:支援:][HKTW:支持:]/g; +s/<tw(檔|檔案)>/[CN:文件:][HKTW:$1:]/g; +s/<tw文件>/[CN:文檔:][HKTW:文件:]/g; +s/<tw資訊>/[CN:信息:][HKTW:資訊:]/g; +s/<tw連結>/[CN:鏈接:][HKTW:連結:]/g; +s/<tw核心>/[CN:核心:][HKTW:核心:]/g; +s/<tw資料(庫)?>/[CN:數據$1:][HKTW:資料$1:]/g; +s/<tw匯(出|入)>/[CN:導$1:][HKTW:匯$1:]/g; +s/<tw裝置>/[CN:設備:][HKTW:裝置:]/g; +s/<tw連接埠>/[CN:端口:][HKTW:連接埠:]/g; +s/<tw清單>/[CN:列表:][HKTW:清單:]/g; +s/<tw布林>/[CNHK:布爾:][TW:布林:]/g; diff --git a/chinese/bin/tocn.pl b/chinese/bin/tocn.pl index eb8c70a7191..252690ac9d3 100755 --- a/chinese/bin/tocn.pl +++ b/chinese/bin/tocn.pl @@ -1,123 +1,130 @@ -#!/usr/bin/perl -pi +#!/usr/bin/perl -pi -CSD # $Id$ +use strict; +use warnings; +use utf8; +binmode(STDIN, ':encoding(utf8)'); +binmode(STDOUT, ':encoding(utf8)'); + s|^(<html lang="zh)">|$1-CN">|i; -s|^(\s*<meta http-equiv=.*charset)=big5">|$1=gb2312">|i; +# s|^(\s*<meta http-equiv=.*charset)=big5">|$1=gb2312">|i; s/(\.zh)(?=\.(?:gif|jpg|png))/$1-cn/g; -s|^<A href=".*">(中文 .+CN.+)</A>(?= )|<B>$1</B>|; +# s|<a href=".*".*hreflang="zh-CN" lang="zh-CN" rel="alternate">(.*)</a>|<strong>$1</strong>|; -# ȰȫתΪš -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); +# 先把全部「著」字转为「着」…… +#1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)著/$1着/); +tr/著/着/; -# ȻʵĴѡšתء -# ߡء -# -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*(?:|||))/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)(?=||||||)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*[\x00-\x7F]+)(?=[\x00-\x7F]+|$)/$1/); +# 然后再在适当的词语,把「着」字转回「著」…… +# 著作、著者、著名、著述、著重、著书 +# 所著、土著、显著、编著 +s/(所|土|显|编)着/$1著/; +s/着(?=作|者|名|述|重|书|称)/著/; +#1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*[\x00-\x7F]+)着(?=[\x00-\x7F]+|$)/$1著/); # s/\<s\<(.+?)\>\>/$1/g; -# s/\<t\<ļ\>\>/ĵ/g; -# s/\<t\<\>\>/չ/g; - -s///g; -s/λ/ư/g; -s/(Դ|ԭʼ)/Դ/g; -s/(?:|)//g; -s/(װ|豸|Ӵ|)Ա/$1/g; -s/(||ʮ|ʮ)λ/$1/g; -s/ʼ(?=|)/ʼDZ/g; -s///g; -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -s//ű/g; -s/(?:|)(?:|Ƭ)//g; -s///g; -s/(?:Ԯ|)(?:|Ƭ)//g; -s/ȫѶ/ά/g; -s/(|·)//g; -s/ʹ/û/g; -s/ԭʼ/Դ/g; -s/ԭʼʽ/Դ/g; -s/ԭʽ/Դ/g; -s//ļ/g; -s///g; -s/ӳվ(̨)?//g; -s/ӳ()?/ӳ/g; - -s/ݻ(?!|е|)/ƽ/g; -s/Ⱥ//g; - -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)(?<!)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)ģ/$1ģ/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)֧Ԯ/$1֧/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*(|Ӳ))/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*(|))Ƭ/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*(|Ӳ|||Zip ))/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)̫/$1̫/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)բ/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)վ̨/$1վ/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)Ƶ/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)Ƶ/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)ô/$1ʲô/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)Ƴ/$1ɾ/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)λַ/$1ַ/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)ظ/$1ظ/); +# s/\<t\<文件\>\>/文档/g; +# s/\<t\<延伸\>\>/扩展/g; + +tr/於/于/; +s/二进位套件/二进制包/g; +s/(源码|原始码)套件/源码包/g; +s/软(?:体|件)套件/软件包/g; +s/(装置|设备|视窗|窗口)管理员/$1管理器/g; +s/(二|八|十|十六)进位/$1进制/g; +s/笔记型(?=电脑|计算机)/笔记本/g; +s/拨接连线/拨号连接/g; +s/光碟机/光驱/; +s/命令稿/脚本/g; +s/(?:启|起)动磁(?:碟|片)/启动盘/g; +s/引导盘/启动盘/g; +s/(?:救援|急救)磁(?:碟|片)/急救盘/g; +s/全球资讯网/万维网/g; +s/网际网(络|路)/互联网/g; +s/使用者/用户/g; +s/原始码/源码/g; +s/原始程式码/源代码/g; +s/原程式码/源代码/g; +s/修补档案/补丁文件/g; +s/修补档/补丁/g; +s/映射站(台)?/镜像/g; +s/映像档(案)?/映像/g; + +s/数据机(?!器|械|件)/调制解调器/g; +s/新闻群组/新闻组/g; + +s/―/─/; +s/「/“/; +s/」/”/; +s/『/‘/; +s/』/’/; +s/相容/兼容/; +s/(?<!发行)套件/软件包/; +s/电脑/计算机/; +s/模组/模块/; +s/支援/支持/; +s/字型/字体/; +s/(软|硬)体/件/; +s/(软|光)碟片/盘/; +s/(软|硬|光|磁|Zip )碟/盘/; +s/乙太网/以太网/; +s/闸道/网关/; +s/站台/站点/; +s/频宽/带宽/; +s/宽频/宽带/; +s/甚么/什么/; +s/移除/删除/; +s/位址/地址/; +s/回覆/回复/; # Subject line -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); - -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)Ѷ/$1Ϣ/); -# 1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)Ѷ/$1Ϣ/); - -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)өĻ/$1Ļ/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)α/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)װ/$1豸/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1ֱ/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)̬/$1/); - -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)ʾ/$1Կ/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)(|·)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)Ч/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)Э/$1Э/); - -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)(?=|ϵ)/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)·/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)ƻ/$1ƻ/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)Ѱ/$1/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)(?:|)/$1ͨ/); - -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)ʽԱ/$1Ա/); -1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*)(?<!)ʽ/$1/); - -s/(ͨ|ʵ)̳/ʼб/g; -s/鱨/Ϣ/g; -s/ҵϵͳ/ϵͳ/g; -s/Ӵϵͳ/ϵͳ/g; -s/ŷ//g; -s/()?ֵ()?/ıļ/g; -s/(?=ģʽ|༭|)/ı/g; -s/Ա/ļ/g; -s/ϵͳ/ļϵͳ/g; -s/Ԥֵ/Ĭֵ/g; -s/(?:|ӡ)/ӡ/g; -s/ӡ/ӡ/g; -s//ڴ/g; -s/Ԫʾ/ʾ/g; -s/趨(?:)?/ļ/g; -s//ļ/g; -s/ʽ//g; -s/Ͽ/ݿ/g; -s///g; -s/Ԫ//g; +s/标题列/主题行/; + +s/资讯/信息/; +# s/资讯/信息/; + +s/字型/字体/; +s/萤幕/屏幕/; +s/游标/光标/; +s/滑鼠/鼠标/; +s/装置/设备/; +s/解析度/分辨率/; +s/型态/类型/; + +s/显示卡/显卡/; +s/网(络|路)卡/网卡/; +s/音效卡/声卡/; +s/协定/协议/; + +s/介面/界面/; +s/连(?=络|系)/联/; +s/网路/网络/; +s/计画/计划/; +s/搜寻/搜索/; +s/(?:经由|透过)/通过/; + +s/程式(?:设计)师/程序员/; +s/(?<!方)程式/程序/; + +s/(通信|邮递)论坛/邮件列表/g; +s/发行情报/发行信息/g; +s/作业系统/操作系统/g; +s/视窗系统/窗口系统/g; +s/伺服器/服务器/g; +s/(纯)?文字档(案)?/文本文件/g; +s/文字(?=模式|编辑|处理)/文本/g; +s/档案管理员/文件管理器/g; +s/档案系统/文件系统/g; +s/预设值/默认值/g; +s/(?:列|印)表机/打印机/g; +s/列印/打印/g; +s/记忆体/内存/g; +s/字元提示器/提示符/g; +s/设定档(?:案)?/配置文件/g; +s/档案名称/文件名/g; +s/函式库/程序库/g; +s/资料库/数据库/g; +s/义大利/意大利/g; +s/运算元/运算符/g; diff --git a/chinese/bin/totw.pl b/chinese/bin/totw.pl index 129411a7e36..d72a2d7b7e3 100755 --- a/chinese/bin/totw.pl +++ b/chinese/bin/totw.pl @@ -1,128 +1,133 @@ -#!/usr/bin/perl -pi +#!/usr/bin/perl -pi -CSD # $Id$ +use strict; +use warnings; +use utf8; +binmode(STDIN, ':encoding(utf8)'); +binmode(STDOUT, ':encoding(utf8)'); + $0 =~ m|to(..)\.pl$|; my $sublang = $1; my $SUBLANG = uc($sublang); s|^(<html lang="zh)">|$1-$SUBLANG">|i; -if ($sublang eq 'hk') { - s|^(\s*<meta http-equiv=.*charset)=big5">|$1=big5-hkscs">|i; -} +#if ($sublang eq 'hk') { +# s|^(\s*<meta http-equiv=.*charset)=big5">|$1=big5-hkscs">|i; +#} s/(\.zh)(?=\.(?:gif|jpg|png))/$1-$sublang/g; -s|^<A href=".*">(中文 .+$SUBLANG.+)</A>(?= )|<B>$1</B>|; - -s/s/su/g; -s/O(p|q)/Oq/g; - -s/ft/t/g; -s/AȾ/A/g; -s/n](?!|A)/M/g; -s/l(|)C/qH/g; -s/蹳I/Mgx/g; -s/蹳/Mg/g; -s/蹳/Mgx/g; -# s/蹳(()?)/Mg$1/g; -s/Hҫ/ҫ/g; -s/ըѽվ/ƾھ/g; - -s/ϽL/ϴϺ/g; -s/(|Ұ)L/ҰʺϺ/g; -s/w˽L/w˺Ϻ/g; - -s/奻/¤r/g; -s/ot/oM/g; -s/tc/[c/g; -s/NX/lX/g; -s/ɤB/ɮ/g; - -# 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1u/); -# 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1v/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*(n|w||))L/$1/); - - -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)p/$1q/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1֤/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)s/$1O/); +#s|^<A href=".*">(中文 .+$SUBLANG.+)</A>(?= )|<B>$1</B>|; + +s/撥號連接/撥接連線/g; +s/筆記本(計算機|電腦)/筆記型電腦/g; + +s/窗口系統/視窗系統/g; +s/服務器/伺服器/g; +s/軟件包(?!裝|括)/套件/g; +s/郵(遞|件)列表/通信論壇/g; +s/鏡像站點/映射站台/g; +s/鏡像站/映射站/g; +s/鏡像/映射站台/g; +# s/鏡像((網)?站)/映射$1/g; +s/網絡對象模型環境/網絡物件模型環境/g; +s/調制解調器/數據機/g; + +s/急救盤/救援磁碟/g; +s/(引導|啟動)盤/啟動磁碟/g; +s/安裝盤/安裝磁碟/g; + +s/文本文件/純文字檔/g; +s/發布系統/發行套件/g; +s/體系結構/架構/g; +s/源代碼/原始碼/g; +s/補丁文件/修補檔案/g; + +# s/“/「/; +# s/”/」/; +s/(軟|硬|光|磁)盤/$1碟/; + +s/計算機/電腦/; +s/內核/核心/; +s/內存/記憶體/; if ($sublang eq 'tw') { - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)H(?=)/$1A/); - s/NjQ/qjQ/g; + s/以太(?=網)/乙太/; + s/意大利/義大利/g; } -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)r/$1r/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)x/$1I/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1ƹ/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)I/$1x/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)ɭ/$1/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)}/$1ROZ/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)̹/$1ù/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)(?!)/$1/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)qL/$1zL/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)ea/$1eW/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)ae/$1We/); -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)j/$1jM/); +s/字體/字型/; +s/後台/背景/; +s/菜單/選單/; +s/光標/游標/; +s/鼠標/滑鼠/; +s/站點/站台/; +s/界面/介面/; +s/腳本/命令稿/; +s/屏幕/螢幕/; +s/文檔(?!案)/文件/; +s/通過/透過/; +s/寬帶/寬頻/; +s/帶寬/頻寬/; +s/搜索/搜尋/; if ($sublang eq 'hk') { - s/@~t/ާ@t/g; -# s/U/yT/g; - s/yT/U/g; - s/qjQ/NjQ/g; - s/B⤸/B/g; - s/ں(?:|)/p/g; - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)ϥΪ/$1Τ/); -# 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)s(?=ô|)/$1p/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)s(?=)/$1p/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*(n|w))/$1/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)CL/$1L/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)L/$1L/); + s/作業系統/操作系統/g; +# s/萬維網/全球資訊網/g; + s/全球資訊網/萬維網/g; + s/義大利/意大利/g; + s/運算元/運算符/g; + s/網際網(?:路|絡)/互聯網/g; + s/網路/網絡/; + s/使用者/用戶/; +# s/連(?=繫|絡)/聯/; + s/連(?=絡)/聯/; + s/(軟|硬)體/$1件/; + s/列印/打印/; + s/印表機/打印機/; if (0 == 1) { -# sF - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)b/$1/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)]/$1糣/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)(|)/$1/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)o(|)/$1O/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)(|)/$1/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)p/$1I/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1In/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)(?<!)(?!T)/$1/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)O_/$1YY/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)O/$1Y/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)(|)/$1A/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1ݯ/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*(|A|z|p))/$1]/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)(L|o|e|)/$1\\]/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*(@||h||j|p))/$1/); +# 廣東話 + s/在/喺/; + s/也/亦都/; + s/哪(裏|兒)/邊度/; + s/這(裏|兒)/呢度/; + s/那(裏|兒)/嗰度/; + s/如何/點樣/; + s/怎麼辦/點算好/; + s/(?<!目)的(?!確)/嘅/; + s/是否/係唔係/; + s/是/係/; + s/(什|甚)麼/乜嘢/; + s/找到/搵到/; + s/(我|你|您|妳)們/$1哋/; + s/(他|她|牠|它)們/佢\哋/; + s/(一|有|多|少|大|小)些/$1啲/; } } if ($sublang eq 'tw') { - s/ާ@t/@~t/g; - s/U/yT/g; - s/(]S|p)/ں/g; - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)Τ/$1ϥΪ/); -# 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)p(?=ô|)/$1s/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*(n|w))/$1/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)L/$1L/); - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)L/$1CL/); + s/操作系統/作業系統/g; + s/萬維網/全球資訊網/g; + s/(因特網|互聯網)/網際網路/g; + s/網絡/網路/; + s/用戶/使用者/; +# s/聯(?=繫|絡)/連/; + s/(軟|硬)件/$1體/; + s/打印機/印表機/; + s/打印/列印/; } -s/YY/HY/g; -s/ft/t/g; -s/X~f/X~/g; -1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)f/$1/); -s/ƾڮw/Ʈw/g; +s/即插即用/隨插即用/g; +s/窗口系統/視窗系統/g; +s/X~窗口/X~視窗/g; +s/窗口/視窗/; +s/數據庫/資料庫/g; -# ͩȦHqŪuءvrC +# 生怕有人的電腦讀不到「裏」字。 if ($sublang eq 'tw') { - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1/); + tr/裏/裡/; } elsif ($sublang eq 'hk') { - 1 while (s/^((?:[\x00-\x7f]|[\x80-\xff].)*)/$1/); + tr/裡/裏/; } |