aboutsummaryrefslogtreecommitdiffstats
path: root/chinese/bin
diff options
context:
space:
mode:
authorAnthony Fok <foka>2011-04-07 22:47:38 +0000
committerAnthony Fok <foka>2011-04-07 22:47:38 +0000
commit159ea344a6ea5aef17c39a0424aae2732bef452b (patch)
treece0e24719078c2b6c92098bce5588507fa19df88 /chinese/bin
parent7e9aae95816928e4346d18c1a8dd39b84011ade0 (diff)
Streamline generation of Chinese variant pages by moving
the set of commands into one chinese/bin/generate-zh-variants.sh . Various Makefile are updated accordingly. Also, due to UTF-8 problems, the in-place "-i" option has been removed from the shebang line in tocn.pl and totw.pl Furthermore, these Chinese specific Perl scripts have been updated to improve translation of certain Chinese pages. CVS version numbers chinese/Make.lang: 1.43 -> 1.44 chinese/bin/fix_big5.pl: 1.10 -> 1.11 chinese/bin/generate-zh-variants.sh: INITIAL -> 1.1 chinese/bin/tocn.pl: 1.42 -> 1.43 chinese/bin/totw.pl: 1.41 -> 1.42 english/Makefile: 1.88 -> 1.89 english/News/Makefile: 1.28 -> 1.29 english/News/weekly/Makefile: 1.52 -> 1.53 english/devel/website/stats/Makefile: 1.3 -> 1.4 english/security/Makefile: 1.65 -> 1.66
Diffstat (limited to 'chinese/bin')
-rwxr-xr-xchinese/bin/fix_big5.pl12
-rwxr-xr-xchinese/bin/generate-zh-variants.sh38
-rwxr-xr-xchinese/bin/tocn.pl112
-rwxr-xr-xchinese/bin/totw.pl102
4 files changed, 158 insertions, 106 deletions
diff --git a/chinese/bin/fix_big5.pl b/chinese/bin/fix_big5.pl
index e26e2da226b..79ca73436d3 100755
--- a/chinese/bin/fix_big5.pl
+++ b/chinese/bin/fix_big5.pl
@@ -21,17 +21,27 @@ use open ':std', ':utf8';
# to the forward slash that's convertible.
s/∕///g;
s/着/著/g;
+s/á/&aacute;/g;
+s/è/&egrave;/g;
# Note: the following should be automatically generated in the future.
s/<tw支援>/[CN:支援:][HKTW:支持:]/g;
s/<tw(檔|檔案)>/[CN:文件:][HKTW:$1:]/g;
+s/<cn文件>/[CN:文件:][HKTW:檔案:]/g;
s/<tw文件>/[CN:文檔:][HKTW:文件:]/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;
+s/<tw碟>/[CN:盤:][HKTW:碟:]/g;
+s/<tw儲存>/[CN:存儲:][HKTW:儲存:]/g;
+s/<cn倉庫>/[CN:倉庫:][HKTW:檔案庫:]/g;
+s/<tw檔案庫>/[CN:倉庫:][HKTW:檔案庫:]/g;
+s/<cn信息>/[CN:信息:][HKTW:資訊:]/g;
+s/<tw資訊>/[CN:信息:][HKTW:資訊:]/g;
+s/<cn項目>/[CN:項目:][HK:計劃:][TW:計畫:]/g;
diff --git a/chinese/bin/generate-zh-variants.sh b/chinese/bin/generate-zh-variants.sh
new file mode 100755
index 00000000000..dd0200c39e9
--- /dev/null
+++ b/chinese/bin/generate-zh-variants.sh
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+base=$1
+ext=$2
+
+MYPATH=`/usr/bin/dirname $0`
+ICONV=/usr/bin/iconv
+HANT_TO_HANS="$ICONV -f UTF-8 -t big5 | $ICONV -f big5 -t gb2312 | $ICONV -f gb2312 -t UTF-8"
+TOCN=$MYPATH/tocn.pl
+TOTW=$MYPATH/totw.pl
+TOHK=$MYPATH/tohk.pl
+
+check_exist () {
+ while [ -n "$1" ]; do
+ if [ ! -e "$1" ]; then
+ echo "$0: ERROR: $1 does not exist! Aborting..."
+ exit 1
+ fi
+ shift
+ done
+}
+
+generate_zh_variants () {
+ echo -n "[zh_CN]"
+ ( eval $HANT_TO_HANS | $TOCN ) < $base.zh-cn.$ext.tmp > $base.zh-cn.$ext
+ echo -n ", [zh_TW]"
+ $TOTW < $base.zh-tw.$ext.tmp > $base.zh-tw.$ext
+ echo -n ", [zh_HK]"
+ $TOHK < $base.zh-hk.$ext.tmp > $base.zh-hk.$ext
+ rm -f $base.zh-??.$ext.tmp
+ echo "."
+}
+
+check_exist $ICONV $TOCN $TOTW $TOHK \
+ $base.zh-cn.$ext.tmp $base.zh-tw.$ext.tmp $base.zh-hk.$ext.tmp
+
+generate_zh_variants
+
diff --git a/chinese/bin/tocn.pl b/chinese/bin/tocn.pl
index 29588ba71db..f8578ad2763 100755
--- a/chinese/bin/tocn.pl
+++ b/chinese/bin/tocn.pl
@@ -1,4 +1,4 @@
-#!/usr/bin/perl -pi
+#!/usr/bin/perl -p
# $Id$
@@ -6,6 +6,7 @@ use strict;
use warnings;
use utf8;
use open ':std', ':utf8';
+#use open IO => ':utf8';
#binmode(STDIN, ':encoding(utf8)');
#binmode(STDOUT, ':encoding(utf8)');
@@ -21,8 +22,8 @@ tr/著/着/;
# 然后再在适当的词语,把「着」字转回「著」……
# 著作、著者、著名、著述、著重、著书
# 所著、土著、显著、编著
-s/(所|土|显|编)着/$1著/;
-s/着(?=作|者|名|述|重|书|称)/著/;
+s/(所|土|显|编)着/$1著/g;
+s/着(?=作|者|名|述|重|书|称)/著/g;
#1 while (s/^((?:[\x00-\x7F]|[\x80-\xFF].)*[\x00-\x7F]+)着(?=[\x00-\x7F]+|$)/$1著/);
# s/\<s\<(.+?)\>\>/$1/g;
@@ -37,7 +38,7 @@ s/(装置|设备|视窗|窗口)管理员/$1管理器/g;
s/(二|八|十|十六)进位/$1进制/g;
s/笔记型(?=电脑|计算机)/笔记本/g;
s/拨接连线/拨号连接/g;
-s/光碟机/光驱/;
+s/光碟机/光驱/g;
s/命令稿/脚本/g;
s/(?:启|起)动磁(?:碟|片)/启动盘/g;
s/引导盘/启动盘/g;
@@ -56,58 +57,58 @@ 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/回覆/回复/;
+s/―/─/g;
+s/「/“/g;
+s/」/”/g;
+s/『/‘/g;
+s/』/’/g;
+s/相容/兼容/g;
+s/(?<!发行)套件/软件包/g;
+s/电脑/计算机/g;
+s/模组/模块/g;
+s/支援/支持/g;
+s/字型/字体/g;
+s/(软|硬)体/$1件/g;
+s/(软|光)碟片/$1盘/g;
+s/(软|硬|光|磁|Zip )碟/$1盘/g;
+s/乙太网/以太网/g;
+s/闸道/网关/g;
+s/站台/站点/g;
+s/频宽/带宽/g;
+s/宽频/宽带/g;
+s/甚么/什么/g;
+s/移除/删除/g;
+s/位址/地址/g;
+s/回覆/回复/g;
# Subject line
-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;
+
+s/程式(?:设计)师/程序员/g;
+s/(?<!方)程式/程序/g;
s/(通信|邮递)论坛/邮件列表/g;
s/发行情报/发行信息/g;
@@ -129,3 +130,6 @@ 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 ba69521c82f..7d57158f746 100755
--- a/chinese/bin/totw.pl
+++ b/chinese/bin/totw.pl
@@ -1,4 +1,4 @@
-#!/usr/bin/perl -pi
+#!/usr/bin/perl -p
# $Id$
@@ -44,31 +44,31 @@ s/體系結構/架構/g;
s/源代碼/原始碼/g;
s/補丁文件/修補檔案/g;
-# s/“/「/;
-# s/”/」/;
-s/(軟|硬|光|磁)盤/$1碟/;
+# s/“/「/g;
+# s/”/」/g;
+s/(軟|硬|光|磁)盤/$1碟/g;
-s/計算機/電腦/;
-s/內核/核心/;
-s/內存/記憶體/;
+s/計算機/電腦/g;
+s/內核/核心/g;
+s/內存/記憶體/g;
if ($sublang eq 'tw') {
- s/以太(?=網)/乙太/;
+ s/以太(?=網)/乙太/g;
s/意大利/義大利/g;
}
-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;
if ($sublang eq 'hk') {
s/作業系統/操作系統/g;
@@ -77,31 +77,31 @@ if ($sublang eq 'hk') {
s/義大利/意大利/g;
s/運算元/運算符/g;
s/網際網(?:路|絡)/互聯網/g;
- s/網路/網絡/;
- s/使用者/用戶/;
-# s/連(?=繫|絡)/聯/;
- s/連(?=絡)/聯/;
- s/(軟|硬)體/$1件/;
- s/列印/打印/;
- s/印表機/打印機/;
+ s/網路/網絡/g;
+ s/使用者/用戶/g;
+# s/連(?=繫|絡)/聯/g;
+ s/連(?=絡)/聯/g;
+ s/(軟|硬)體/$1件/g;
+ s/列印/打印/g;
+ s/印表機/打印機/g;
if (0 == 1) {
# 廣東話
- s/(?<!現)在(?!乎)/喺/;
- s/也/亦都/;
- s/哪(裏|兒)/邊度/;
- s/這(裏|兒)/呢度/;
- s/那(裏|兒)/嗰度/;
- s/如何/點樣/;
- s/怎麼辦/點算好/;
- s/(?<!目)的(?!確)/嘅/;
- s/是否/係唔係/;
- s/是/係/;
- s/(什|甚)麼/乜嘢/;
- s/找到/搵到/;
- s/(我|你|您|妳)們/$1哋/;
- s/(他|她|牠|它)們/佢\哋/;
- s/(一|有|多|少|大|小)些/$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/(我|你|您|妳)們/$1哋/g;
+ s/(他|她|牠|它)們/佢\哋/g;
+ s/(一|有|多|少|大|小)些/$1啲/g;
}
}
@@ -109,18 +109,18 @@ if ($sublang eq 'tw') {
s/操作系統/作業系統/g;
s/萬維網/全球資訊網/g;
s/(因特網|互聯網)/網際網路/g;
- s/網絡/網路/;
- s/用戶/使用者/;
-# s/聯(?=繫|絡)/連/;
- s/(軟|硬)件/$1體/;
- s/打印機/印表機/;
- s/打印/列印/;
+ s/網絡/網路/g;
+ s/用戶/使用者/g;
+# s/聯(?=繫|絡)/連/g;
+ s/(軟|硬)件/$1體/g;
+ s/打印機/印表機/g;
+ s/打印/列印/g;
}
s/即插即用/隨插即用/g;
s/窗口系統/視窗系統/g;
s/X~窗口/X~視窗/g;
-s/窗口/視窗/;
+s/窗口/視窗/g;
s/數據庫/資料庫/g;
# 生怕有人的電腦讀不到「裏」字。

© 2014-2024 Faster IT GmbH | imprint | privacy policy