Imported Upstream version 0.19.7
[platform/upstream/gettext.git] / gettext-tools / po / zh_TW.po
index 784419e..6825bff 100644 (file)
@@ -1,16 +1,18 @@
-# traditional Chinese translation for gettext.
+# Traditional Chinese translation for gettext.
 # Copyright (C) 1998, 2001, 2002, 2005 Free Software Foundation, Inc.
+# This file is distributed under the same license as the gettext package.
 # Pofeng Lee <pofeng@linux.org.tw>, 2001-2002.
 # Yuan-Chung Cheng <platin@ms.ccafps.khc.edu.tw>, 1998.
 # Abel Cheung <abelcheung@gmail.com>, 2002, 2005.
+# Wei-Lun Chao <bluebat@member.fsf.org>, 2013.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: gettext-tools 0.14.5\n"
+"Project-Id-Version: gettext-tools 0.18.3\n"
 "Report-Msgid-Bugs-To: bug-gnu-gettext@gnu.org\n"
-"POT-Creation-Date: 2010-06-04 01:57+0200\n"
-"PO-Revision-Date: 2005-12-06 08:31+0800\n"
-"Last-Translator: Abel Cheung <abelcheung@gmail.com>\n"
+"POT-Creation-Date: 2015-12-28 08:26+0900\n"
+"PO-Revision-Date: 2013-09-03 13:00+0800\n"
+"Last-Translator: Wei-Lun Chao <bluebat@member.fsf.org>\n"
 "Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
 "Language: zh_TW\n"
 "MIME-Version: 1.0\n"
@@ -21,76 +23,76 @@ msgstr ""
 #: gnulib-lib/argmatch.c:133
 #, c-format
 msgid "invalid argument %s for %s"
-msgstr "%2$s ç\9a\84å\8f\83數 %1$s 無效"
+msgstr "%2$s ç\9a\84å¼\95數 %1$s 無效"
 
 #: gnulib-lib/argmatch.c:134
 #, c-format
 msgid "ambiguous argument %s for %s"
-msgstr "%2$s ç\9a\84å\8f\83數 %1$s 不明確"
+msgstr "%2$s ç\9a\84å¼\95數 %1$s 不明確"
 
 #: gnulib-lib/argmatch.c:153
-#, c-format
 msgid "Valid arguments are:"
-msgstr "æ\9c\89æ\95\88ç\9a\84å\8f\83數為:"
+msgstr "æ\9c\89æ\95\88ç\9a\84å¼\95數為:"
 
-#: gnulib-lib/clean-temp.c:335
+#: gnulib-lib/clean-temp.c:325
 #, c-format
 msgid "cannot find a temporary directory, try setting $TMPDIR"
 msgstr "找不到暫存檔目錄,正嘗試設定 $TMPDIR"
 
-#: gnulib-lib/clean-temp.c:349
+#: gnulib-lib/clean-temp.c:339
 #, c-format
 msgid "cannot create a temporary directory using template \"%s\""
-msgstr "無法根據目錄名稱樣式 “%s” 建立暫存檔目錄"
+msgstr "無法根據目錄名稱樣式 %s 建立暫存檔目錄"
 
-#: gnulib-lib/clean-temp.c:445
-#, fuzzy, c-format
+#: gnulib-lib/clean-temp.c:435
+#, c-format
 msgid "cannot remove temporary file %s"
-msgstr "無法產生輸出檔 “%s”"
+msgstr "無法刪除暫存檔 %s"
 
-#: gnulib-lib/clean-temp.c:460
-#, fuzzy, c-format
+#: gnulib-lib/clean-temp.c:450
+#, c-format
 msgid "cannot remove temporary directory %s"
-msgstr "無法根據目錄名稱樣式 “%s” 建立暫存檔目錄"
+msgstr "無法刪除暫存目錄 %s"
 
 #: gnulib-lib/closeout.c:66
 msgid "write error"
 msgstr "寫入時發生錯誤"
 
+#: gnulib-lib/copy-acl.c:54 gnulib-lib/copy-file.c:214
+#, c-format
+msgid "preserving permissions for %s"
+msgstr ""
+
 # lib/copy-file.c:61 src/file-list.c:57 src/po-lex.c:726 src/read-mo.c:171 src/urlget.c:204 src/xgettext.c:823 src/xgettext.c:836 src/xgettext.c:846 #, c-format
-#: gnulib-lib/copy-file.c:67 src/file-list.c:53 src/msggrep.c:247
-#: src/open-catalog.c:122 src/read-mo.c:252 src/read-tcl.c:125
-#: src/urlget.c:216 src/xgettext.c:1890 src/xgettext.c:1903
-#: src/xgettext.c:1913
+#: gnulib-lib/copy-file.c:191
 #, c-format
-msgid "error while opening \"%s\" for reading"
-msgstr "當開啟檔案 “%s” 準備讀取時發生錯誤"
+msgid "error while opening %s for reading"
+msgstr "當開啟檔案 %s 準備讀取時發生錯誤"
 
-#: gnulib-lib/copy-file.c:74
+#: gnulib-lib/copy-file.c:195
 #, c-format
-msgid "cannot open backup file \"%s\" for writing"
-msgstr "無法開啟備份檔 “%s” 來寫入內容"
+msgid "cannot open backup file %s for writing"
+msgstr "無法開啟備份檔 %s 來寫入內容"
 
-#: gnulib-lib/copy-file.c:82 src/urlget.c:228
+#: gnulib-lib/copy-file.c:199
 #, c-format
-msgid "error reading \"%s\""
-msgstr "讀取 “%s” 時發生錯誤"
+msgid "error reading %s"
+msgstr "讀取 %s 時發生錯誤"
 
-#: gnulib-lib/copy-file.c:87 gnulib-lib/copy-file.c:94
-#: gnulib-lib/copy-file.c:133
+#: gnulib-lib/copy-file.c:203
 #, c-format
-msgid "error writing \"%s\""
-msgstr "寫入 “%s” 時發生錯誤"
+msgid "error writing %s"
+msgstr "寫入 %s 時發生錯誤"
 
-#: gnulib-lib/copy-file.c:96 gnulib-lib/copy-file.c:135 src/urlget.c:238
+#: gnulib-lib/copy-file.c:207
 #, c-format
-msgid "error after reading \"%s\""
-msgstr "完成讀取 “%s” 後發生錯誤"
+msgid "error after reading %s"
+msgstr "完成讀取 %s 後發生錯誤"
 
 #: gnulib-lib/csharpcomp.c:310 gnulib-lib/javaversion.c:76 src/msginit.c:897
-#: src/msginit.c:972 src/msginit.c:1132 src/msginit.c:1231
-#: src/read-csharp.c:72 src/read-java.c:70 src/read-resources.c:73
-#: src/read-tcl.c:110 src/write-resources.c:77
+#: src/msginit.c:972 src/msginit.c:1132 src/msginit.c:1231 src/msginit.c:1396
+#: src/read-csharp.c:73 src/read-java.c:71 src/read-resources.c:74
+#: src/read-tcl.c:111 src/write-resources.c:78
 #, c-format
 msgid "fdopen() failed"
 msgstr "fdopen() 失敗"
@@ -105,98 +107,104 @@ msgstr "找不到 C# 編譯器,請安裝 pnet"
 msgid "C# virtual machine not found, try installing pnet"
 msgstr "找不到 C# virtual machine,請安裝 pnet"
 
-#: gnulib-lib/error.c:181
+#: gnulib-lib/error.c:191
 msgid "Unknown system error"
 msgstr "系統出現不明錯誤"
 
-#: gnulib-lib/execute.c:189 gnulib-lib/execute.c:262 gnulib-lib/pipe.c:232
-#: gnulib-lib/pipe.c:346 gnulib-lib/wait-process.c:282
-#: gnulib-lib/wait-process.c:356
+#: gnulib-lib/execute.c:191 gnulib-lib/execute.c:264
+#: gnulib-lib/spawn-pipe.c:236 gnulib-lib/spawn-pipe.c:350
+#: gnulib-lib/wait-process.c:282 gnulib-lib/wait-process.c:356
 #, c-format
 msgid "%s subprocess failed"
-msgstr "%s 副程發生錯誤"
+msgstr "%s 副程發生錯誤"
 
-#: gnulib-lib/getopt.c:527 gnulib-lib/getopt.c:543
+#: gnulib-lib/getopt.c:575 gnulib-lib/getopt.c:604
+#, c-format
+msgid "%s: option '%s' is ambiguous; possibilities:"
+msgstr "%s:選項 ‘%s’ 不明確;可能選項包括:"
+
+#: gnulib-lib/getopt.c:619
 #, fuzzy, c-format
 msgid "%s: option '%s' is ambiguous\n"
-msgstr "%s:選項 ‘%s’ 不明確\n"
+msgstr "%s:選項 ‘-W %s’ 不明確\n"
 
-#: gnulib-lib/getopt.c:576 gnulib-lib/getopt.c:580
-#, fuzzy, c-format
+#: gnulib-lib/getopt.c:654 gnulib-lib/getopt.c:658
+#, c-format
 msgid "%s: option '--%s' doesn't allow an argument\n"
-msgstr "%s:選項 ‘--%s’ 不可配合參數使用\n"
+msgstr "%s:選項 --%s 不可配合引數使用\n"
 
-#: gnulib-lib/getopt.c:589 gnulib-lib/getopt.c:594
+#: gnulib-lib/getopt.c:667 gnulib-lib/getopt.c:672
 #, fuzzy, c-format
 msgid "%s: option '%c%s' doesn't allow an argument\n"
-msgstr "%sï¼\9aé\81¸é \85 â\80\98%c%sâ\80\99 ä¸\8då\8f¯é\85\8då\90\88å\8f\83數使用\n"
+msgstr "%sï¼\9aé\81¸é \85 â\80\98%c%sâ\80\99 ä¸\8då\8f¯é\85\8då\90\88å¼\95數使用\n"
 
-#: gnulib-lib/getopt.c:637 gnulib-lib/getopt.c:656
+#: gnulib-lib/getopt.c:715 gnulib-lib/getopt.c:734
 #, fuzzy, c-format
 msgid "%s: option '--%s' requires an argument\n"
-msgstr "%sï¼\9aé\81¸é \85 â\80\98%sâ\80\99 é\9c\80è¦\81å\8f\83數\n"
+msgstr "%sï¼\9aé\81¸é \85 â\80\98%sâ\80\99 é\9c\80è¦\81å¼\95數\n"
 
-#: gnulib-lib/getopt.c:694 gnulib-lib/getopt.c:697
+#: gnulib-lib/getopt.c:772 gnulib-lib/getopt.c:775
 #, fuzzy, c-format
 msgid "%s: unrecognized option '--%s'\n"
 msgstr "%s:無法辨識 ‘--%s’ 選項\n"
 
-#: gnulib-lib/getopt.c:705 gnulib-lib/getopt.c:708
+#: gnulib-lib/getopt.c:783 gnulib-lib/getopt.c:786
 #, fuzzy, c-format
 msgid "%s: unrecognized option '%c%s'\n"
 msgstr "%s:無法辨識 ‘%c%s’ 選項\n"
 
-#: gnulib-lib/getopt.c:757 gnulib-lib/getopt.c:760
+#: gnulib-lib/getopt.c:835 gnulib-lib/getopt.c:838
 #, fuzzy, c-format
 msgid "%s: invalid option -- '%c'\n"
 msgstr "%s:選項無效 -- %c\n"
 
-#: gnulib-lib/getopt.c:810 gnulib-lib/getopt.c:827 gnulib-lib/getopt.c:1035
-#: gnulib-lib/getopt.c:1053
+#: gnulib-lib/getopt.c:891 gnulib-lib/getopt.c:908 gnulib-lib/getopt.c:1118
+#: gnulib-lib/getopt.c:1136
 #, fuzzy, c-format
 msgid "%s: option requires an argument -- '%c'\n"
-msgstr "%sï¼\9aé\81¸é \85é\9c\80è¦\81å\8f\83數 -- %c\n"
+msgstr "%sï¼\9aé\81¸é \85é\9c\80è¦\81å¼\95數 -- %c\n"
 
-#: gnulib-lib/getopt.c:883 gnulib-lib/getopt.c:899
+#: gnulib-lib/getopt.c:964 gnulib-lib/getopt.c:980
 #, fuzzy, c-format
 msgid "%s: option '-W %s' is ambiguous\n"
 msgstr "%s:選項 ‘-W %s’ 不明確\n"
 
-#: gnulib-lib/getopt.c:923 gnulib-lib/getopt.c:941
+#: gnulib-lib/getopt.c:1004 gnulib-lib/getopt.c:1022
 #, fuzzy, c-format
 msgid "%s: option '-W %s' doesn't allow an argument\n"
-msgstr "%sï¼\9aé\81¸é \85 â\80\98-W %sâ\80\99 ä¸\8då\8f¯é\85\8då\90\88å\8f\83數使用\n"
+msgstr "%sï¼\9aé\81¸é \85 â\80\98-W %sâ\80\99 ä¸\8då\8f¯é\85\8då\90\88å¼\95數使用\n"
 
-#: gnulib-lib/getopt.c:962 gnulib-lib/getopt.c:980
+#: gnulib-lib/getopt.c:1043 gnulib-lib/getopt.c:1061
 #, fuzzy, c-format
 msgid "%s: option '-W %s' requires an argument\n"
-msgstr "%sï¼\9aé\81¸é \85 â\80\98%sâ\80\99 é\9c\80è¦\81å\8f\83數\n"
+msgstr "%sï¼\9aé\81¸é \85 â\80\98%sâ\80\99 é\9c\80è¦\81å¼\95數\n"
 
-#: gnulib-lib/javacomp.c:126 gnulib-lib/javacomp.c:140
-#: gnulib-lib/javacomp.c:156
+#: gnulib-lib/javacomp.c:121 gnulib-lib/javacomp.c:135
+#: gnulib-lib/javacomp.c:151
 #, c-format
 msgid "invalid source_version argument to compile_java_class"
 msgstr ""
 
-#: gnulib-lib/javacomp.c:171 gnulib-lib/javacomp.c:192
+#: gnulib-lib/javacomp.c:166 gnulib-lib/javacomp.c:187
 #, c-format
 msgid "invalid target_version argument to compile_java_class"
 msgstr ""
 
-#: gnulib-lib/javacomp.c:503 src/write-csharp.c:739 src/write-java.c:1131
-#: src/write-java.c:1143
+#: gnulib-lib/javacomp.c:498 src/write-csharp.c:739 src/write-java.c:1141
+#: src/write-java.c:1149 src/write-java.c:1177 src/write-java.c:1189
 #, c-format
 msgid "failed to create \"%s\""
 msgstr "無法建立 “%s”"
 
-#: gnulib-lib/javacomp.c:510 src/write-catalog.c:255 src/write-catalog.c:319
-#: src/write-csharp.c:748 src/write-java.c:1152 src/write-mo.c:811
-#: src/write-qt.c:748 src/write-tcl.c:222
+#: gnulib-lib/javacomp.c:505 src/write-catalog.c:256 src/write-catalog.c:320
+#: src/write-csharp.c:748 src/write-desktop.c:182 src/write-java.c:1157
+#: src/write-java.c:1198 src/write-mo.c:812 src/write-qt.c:749
+#: src/write-tcl.c:223 src/write-xml.c:75
 #, c-format
 msgid "error while writing \"%s\" file"
-msgstr "當寫入檔案 “%s” 時發生錯誤"
+msgstr "當寫入檔案 %s 時發生錯誤"
 
-#: gnulib-lib/javacomp.c:2343
+#: gnulib-lib/javacomp.c:2338
 #, c-format
 msgid "Java compiler not found, try installing gcj or set $JAVAC"
 msgstr "找不到 Java 編譯器,請安裝 gcj 或是設定 $JAVAC 環境變數"
@@ -207,57 +215,95 @@ msgid "Java virtual machine not found, try installing gij or set $JAVA"
 msgstr "找不到 Java virtual machine,請安裝 gij 或是設定 $JAVA 環境變數"
 
 #: gnulib-lib/javaversion.c:84 src/msginit.c:905 src/msginit.c:980
-#: src/msginit.c:1140
+#: src/msginit.c:1140 src/msginit.c:1404
 #, c-format
 msgid "%s subprocess I/O error"
-msgstr "%s 副程輸出/輸入錯誤"
+msgstr "%s 副程輸出/輸入錯誤"
 
-#: gnulib-lib/obstack.c:423 gnulib-lib/obstack.c:425 gnulib-lib/xmalloc.c:37
-#: gnulib-lib/xsetenv.c:37 src/msgl-check.c:550 src/po-lex.c:83
-#: src/po-lex.c:102 src/x-glade.c:600 libgettextpo/gettext-po.c:1328
+#: gnulib-lib/obstack.c:338 gnulib-lib/obstack.c:340 gnulib-lib/xmalloc.c:38
+#: gnulib-lib/xsetenv.c:37 src/cldr-plurals.c:61 src/msgl-check.c:564
+#: src/po-lex.c:83 src/po-lex.c:102 libgettextpo/gettext-po.c:1326
 #, c-format
 msgid "memory exhausted"
 msgstr "記憶體耗盡"
 
-#: gnulib-lib/pipe.c:138 gnulib-lib/pipe.c:141 gnulib-lib/pipe.c:262
-#: gnulib-lib/pipe.c:265
+#: gnulib-lib/pipe-filter-ii.c:192
 #, c-format
-msgid "cannot create pipe"
-msgstr "無法建立管線"
+msgid "creation of threads failed"
+msgstr ""
+
+#: gnulib-lib/pipe-filter-ii.c:224 gnulib-lib/pipe-filter-ii.c:381
+#: src/msgexec.c:427
+#, c-format
+msgid "write to %s subprocess failed"
+msgstr "寫入至 %s 副行程時發生錯誤"
+
+#: gnulib-lib/pipe-filter-ii.c:245 gnulib-lib/pipe-filter-ii.c:424
+#, c-format
+msgid "read from %s subprocess failed"
+msgstr "由 %s 副行程讀入資料時出現錯誤"
+
+#: gnulib-lib/pipe-filter-ii.c:298
+#, c-format
+msgid "cannot set up nonblocking I/O to %s subprocess"
+msgstr "無法和 %s 副行程建立非專用的 I/O"
+
+#: gnulib-lib/pipe-filter-ii.c:336
+#, c-format
+msgid "communication with %s subprocess failed"
+msgstr "和 %s 副行程溝通時出現錯誤"
+
+#: gnulib-lib/pipe-filter-ii.c:456
+#, c-format
+msgid "%s subprocess terminated with exit code %d"
+msgstr "%s 副行程已終止,錯誤碼為 %d"
 
 #. TRANSLATORS:
 #. Get translations for open and closing quotation marks.
-#.
 #. The message catalog should translate "`" to a left
 #. quotation mark suitable for the locale, and similarly for
-#. "'".  If the catalog has no translation,
-#. locale_quoting_style quotes `like this', and
-#. clocale_quoting_style quotes "like this".
+#. "'".  For example, a French Unicode local should translate
+#. these to U+00AB (LEFT-POINTING DOUBLE ANGLE
+#. QUOTATION MARK), and U+00BB (RIGHT-POINTING DOUBLE ANGLE
+#. QUOTATION MARK), respectively.
 #.
-#. For example, an American English Unicode locale should
-#. translate "`" to U+201C (LEFT DOUBLE QUOTATION MARK), and
-#. should translate "'" to U+201D (RIGHT DOUBLE QUOTATION
-#. MARK).  A British English Unicode locale should instead
-#. translate these to U+2018 (LEFT SINGLE QUOTATION MARK)
-#. and U+2019 (RIGHT SINGLE QUOTATION MARK), respectively.
+#. If the catalog has no translation, we will try to
+#. use Unicode U+2018 (LEFT SINGLE QUOTATION MARK) and
+#. Unicode U+2019 (RIGHT SINGLE QUOTATION MARK).  If the
+#. current locale is not Unicode, locale_quoting_style
+#. will quote 'like this', and clocale_quoting_style will
+#. quote "like this".  You should always include translations
+#. for "`" and "'" even if U+2018 and U+2019 are appropriate
+#. for your locale.
 #.
 #. If you don't know what to put here, please see
-#. <http://en.wikipedia.org/wiki/Quotation_mark#Glyphs>
+#. <http://en.wikipedia.org/wiki/Quotation_marks_in_other_languages>
 #. and use glyphs suitable for your language.
-#: gnulib-lib/quotearg.c:272
+#: gnulib-lib/quotearg.c:347
 msgid "`"
 msgstr ""
 
-#: gnulib-lib/quotearg.c:273
+#: gnulib-lib/quotearg.c:348
 msgid "'"
 msgstr ""
 
-#: gnulib-lib/w32spawn.h:40
+#: gnulib-lib/set-acl.c:46
+#, c-format
+msgid "setting permissions for %s"
+msgstr ""
+
+#: gnulib-lib/spawn-pipe.c:142 gnulib-lib/spawn-pipe.c:145
+#: gnulib-lib/spawn-pipe.c:266 gnulib-lib/spawn-pipe.c:269
+#, c-format
+msgid "cannot create pipe"
+msgstr "無法建立管線"
+
+#: gnulib-lib/w32spawn.h:43
 #, c-format
 msgid "_open_osfhandle failed"
 msgstr "_open_osfhandle 失敗"
 
-#: gnulib-lib/w32spawn.h:81
+#: gnulib-lib/w32spawn.h:84
 #, fuzzy, c-format
 msgid "cannot restore fd %d: dup2 failed"
 msgstr "無法產生輸出檔 “%s”"
@@ -266,137 +312,285 @@ msgstr "無法產生輸出檔 “%s”"
 #: gnulib-lib/wait-process.c:317
 #, c-format
 msgid "%s subprocess"
-msgstr "%s 副程"
+msgstr "%s 副程"
 
 #: gnulib-lib/wait-process.c:274 gnulib-lib/wait-process.c:346
 #, c-format
 msgid "%s subprocess got fatal signal %d"
-msgstr "%s 副進程出現代表嚴重錯誤的訊號 %d"
+msgstr "%s 副行程出現代表嚴重錯誤的訊號 %d"
+
+#: src/cldr-plurals.c:69
+#, c-format
+msgid "The root element must be <%s>"
+msgstr ""
+
+#: src/cldr-plurals.c:83
+#, c-format
+msgid "The element <%s> does not contain a <%s> element"
+msgstr ""
+
+#: src/cldr-plurals.c:105 src/cldr-plurals.c:146
+#, c-format
+msgid "The element <%s> does not have attribute <%s>"
+msgstr ""
 
-#: src/format.c:148
+#: src/cldr-plurals.c:191 src/hostname.c:210 src/msgattrib.c:418
+#: src/msgcat.c:364 src/msgcmp.c:210 src/msgcomm.c:356 src/msgconv.c:304
+#: src/msgen.c:301 src/msgexec.c:260 src/msgfilter.c:410 src/msgfmt.c:914
+#: src/msggrep.c:513 src/msginit.c:359 src/msgmerge.c:495 src/msgunfmt.c:424
+#: src/msguniq.c:323 src/recode-sr-latin.c:144 src/urlget.c:173
+#: src/xgettext.c:1044
 #, fuzzy, c-format
-msgid "'%s' is not a valid %s format string, unlike '%s'. Reason: %s"
-msgstr "和 ‘msgid’ 不同,‘%s’ 的 %s 格式字串無效。原因:%s"
+msgid "Try '%s --help' for more information.\n"
+msgstr "請執行 ‘%s --help’ 顯示額外資訊。\n"
+
+#: src/cldr-plurals.c:195
+#, fuzzy, c-format
+msgid "Usage: %s [OPTION...] [LOCALE RULES]...\n"
+msgstr "用法:%s [選項] [檔案]...\n"
+
+#: src/cldr-plurals.c:200
+#, c-format, no-wrap
+msgid ""
+"Extract or convert Unicode CLDR plural rules.\n"
+"\n"
+"If both LOCALE and RULES are specified, it reads CLDR plural rules for\n"
+"LOCALE from RULES and print them in a form suitable for gettext use.\n"
+"If no argument is given, it reads CLDR plural rules from the standard input.\n"
+msgstr ""
+
+#: src/cldr-plurals.c:209 src/msgfmt.c:927 src/xgettext.c:1057
+#, c-format, no-wrap
+msgid ""
+"Mandatory arguments to long options are mandatory for short options too.\n"
+"Similarly for optional arguments.\n"
+msgstr "長選項必要的引數在使用短選項時也是必要的。對於選擇性的引數也一樣。\n"
 
-#: src/format-awk.c:509 src/format-boost.c:617 src/format-elisp.c:348
-#: src/format-gcc-internal.c:627 src/format-librep.c:312
-#: src/format-pascal.c:397 src/format-perl.c:584 src/format-php.c:350
-#: src/format-qt.c:173 src/format-tcl.c:390 src/format-ycp.c:147
+#: src/cldr-plurals.c:214
+#, fuzzy, c-format
+msgid "  -c, --cldr                  print plural rules in the CLDR format\n"
+msgstr "  -h, --help                  顯示本訊息,然後結束\n"
+
+#: src/cldr-plurals.c:216 src/hostname.c:233 src/msgattrib.c:537
+#: src/msgcat.c:472 src/msgcmp.c:261 src/msgcomm.c:458 src/msgconv.c:388
+#: src/msgen.c:384 src/msgexec.c:309 src/msgfilter.c:510 src/msgfmt.c:1080
+#: src/msggrep.c:631 src/msginit.c:423 src/msgmerge.c:622 src/msgunfmt.c:530
+#: src/msguniq.c:420 src/recode-sr-latin.c:165 src/urlget.c:189
+#: src/xgettext.c:1230
+#, c-format, no-wrap
+msgid "  -h, --help                  display this help and exit\n"
+msgstr "  -h, --help                  顯示本訊息,然後結束\n"
+
+#: src/cldr-plurals.c:218 src/hostname.c:235 src/msgattrib.c:539
+#: src/msgcat.c:474 src/msgcmp.c:263 src/msgcomm.c:460 src/msgconv.c:390
+#: src/msgen.c:386 src/msgexec.c:311 src/msgfilter.c:512 src/msgfmt.c:1082
+#: src/msggrep.c:633 src/msginit.c:425 src/msgmerge.c:624 src/msgunfmt.c:532
+#: src/msguniq.c:422 src/recode-sr-latin.c:168 src/urlget.c:191
+#: src/xgettext.c:1232
+#, c-format, no-wrap
+msgid "  -V, --version               output version information and exit\n"
+msgstr "  -V, --version               顯示版本資訊,然後結束\n"
+
+#. TRANSLATORS: The placeholder indicates the bug-reporting address
+#. for this package.  Please add _another line_ saying
+#. "Report translation bugs to <...>\n" with the address for translation
+#. bugs (typically your translation team's web or email address).
+#: src/cldr-plurals.c:225 src/hostname.c:242 src/msgattrib.c:546
+#: src/msgcat.c:481 src/msgcmp.c:270 src/msgcomm.c:467 src/msgconv.c:397
+#: src/msgen.c:393 src/msgexec.c:318 src/msgfilter.c:519 src/msgfmt.c:1093
+#: src/msggrep.c:640 src/msginit.c:432 src/msgmerge.c:635 src/msgunfmt.c:541
+#: src/msguniq.c:429 src/recode-sr-latin.c:175 src/urlget.c:200
+#: src/xgettext.c:1239
+msgid "Report bugs to <bug-gnu-gettext@gnu.org>.\n"
+msgstr "請向 <bug-gnu-gettext@gnu.org> 匯報錯誤。\n"
+
+#: src/cldr-plurals.c:289 src/hostname.c:181 src/msgattrib.c:356
+#: src/msgcat.c:295 src/msgcmp.c:173 src/msgcomm.c:286 src/msgconv.c:245
+#: src/msgen.c:242 src/msgexec.c:187 src/msgfilter.c:289 src/msgfmt.c:444
+#: src/msggrep.c:420 src/msginit.c:269 src/msgmerge.c:357 src/msgunfmt.c:263
+#: src/msguniq.c:265 src/recode-sr-latin.c:111 src/urlget.c:144
+#: src/xgettext.c:678
+#, c-format, no-wrap
+msgid ""
+"Copyright (C) %s Free Software Foundation, Inc.\n"
+"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n"
+"This is free software: you are free to change and redistribute it.\n"
+"There is NO WARRANTY, to the extent permitted by law.\n"
+msgstr ""
+
+#: src/cldr-plurals.c:295 src/hostname.c:187 src/msgattrib.c:362
+#: src/msgcat.c:301 src/msgcmp.c:179 src/msgcomm.c:292 src/msgconv.c:251
+#: src/msgen.c:248 src/msgexec.c:193 src/msgfilter.c:295 src/msgfmt.c:450
+#: src/msggrep.c:426 src/msginit.c:275 src/msgmerge.c:363 src/msgunfmt.c:269
+#: src/msguniq.c:271 src/urlget.c:150 src/xgettext.c:684
+#, c-format
+msgid "Written by %s.\n"
+msgstr "由 %s 編寫。\n"
+
+#. This is a proper name. See the gettext manual, section Names.
+#: src/cldr-plurals.c:295
+msgid "Daiki Ueno"
+msgstr ""
+
+#: src/cldr-plurals.c:315
+#, c-format
+msgid "%s cannot be read"
+msgstr ""
+
+#: src/cldr-plurals.c:321
+#, fuzzy, c-format
+msgid "cannot extract rules for %s"
+msgstr "無法刪除暫存目錄 %s"
+
+#: src/cldr-plurals.c:331
+#, c-format
+msgid "cannot parse CLDR rule"
+msgstr ""
+
+#: src/cldr-plurals.c:366
+#, c-format
+msgid "extra operand %s"
+msgstr ""
+
+# lib/copy-file.c:61 src/file-list.c:57 src/po-lex.c:726 src/read-mo.c:171 src/urlget.c:204 src/xgettext.c:823 src/xgettext.c:836 src/xgettext.c:846 #, c-format
+#: src/file-list.c:54 src/msggrep.c:248 src/open-catalog.c:123
+#: src/read-mo.c:262 src/read-tcl.c:126 src/urlget.c:217
+#: src/write-desktop.c:172 src/xgettext.c:2184 src/xgettext.c:2197
+#: src/xgettext.c:2207
+#, c-format
+msgid "error while opening \"%s\" for reading"
+msgstr "當開啟檔案 %s 準備讀取時發生錯誤"
+
+#: src/format-awk.c:510 src/format-boost.c:618 src/format-elisp.c:349
+#: src/format-gcc-internal.c:627 src/format-kde.c:224 src/format-librep.c:313
+#: src/format-lua.c:228 src/format-pascal.c:398 src/format-perl.c:585
+#: src/format-php.c:351 src/format-qt.c:174 src/format-tcl.c:391
+#: src/format-ycp.c:148
 #, fuzzy, c-format
 msgid ""
 "a format specification for argument %u, as in '%s', doesn't exist in '%s'"
-msgstr "â\80\98%2$sâ\80\99 ä¸­ç¬¬ %1$u å\80\8bå\8f\83數的規格在 ‘msgid’ 中並不存在"
+msgstr "â\80\98%2$sâ\80\99 ä¸­ç¬¬ %1$u å\80\8bå¼\95數的規格在 ‘msgid’ 中並不存在"
 
-#: src/format-awk.c:520 src/format-boost.c:628 src/format-elisp.c:359
-#: src/format-gcc-internal.c:638 src/format-librep.c:323
-#: src/format-pascal.c:408 src/format-perl.c:595 src/format-php.c:361
-#: src/format-qt.c:170 src/format-tcl.c:401 src/format-ycp.c:144
+#: src/format-awk.c:521 src/format-boost.c:629 src/format-elisp.c:360
+#: src/format-gcc-internal.c:638 src/format-kde.c:235 src/format-librep.c:324
+#: src/format-lua.c:235 src/format-pascal.c:409 src/format-perl.c:596
+#: src/format-php.c:362 src/format-qt.c:171 src/format-tcl.c:402
+#: src/format-ycp.c:145
 #, c-format
 msgid "a format specification for argument %u doesn't exist in '%s'"
-msgstr "第 %u 個參數的規格在‘%s’中並不存在"
-
-#: src/format-awk.c:540 src/format-boost.c:648 src/format-c.c:910
-#: src/format-elisp.c:379 src/format-gcc-internal.c:658
-#: src/format-librep.c:343 src/format-pascal.c:428 src/format-perl.c:615
-#: src/format-php.c:381 src/format-python.c:527 src/format-tcl.c:421
+msgstr "第 %u 個引數的規格在‘%s’中並不存在"
+
+#: src/format-awk.c:541 src/format-boost.c:649 src/format-c.c:147
+#: src/format-elisp.c:380 src/format-gcc-internal.c:658
+#: src/format-gfc-internal.c:372 src/format-javascript.c:228
+#: src/format-librep.c:344 src/format-lua.c:242 src/format-pascal.c:429
+#: src/format-perl.c:616 src/format-php.c:382 src/format-python.c:528
+#: src/format-tcl.c:422
 #, fuzzy, c-format
 msgid "format specifications in '%s' and '%s' for argument %u are not the same"
-msgstr "â\80\98msgidâ\80\99å\92\8câ\80\98%sâ\80\99ç\9a\84第 %u å\80\8bå\8f\83數的規格並不相同"
+msgstr "â\80\98msgidâ\80\99å\92\8câ\80\98%sâ\80\99ç\9a\84第 %u å\80\8bå¼\95數的規格並不相同"
 
-#: src/format-boost.c:449
+#: src/format-boost.c:450
 #, fuzzy, c-format
 msgid "The directive number %u starts with | but does not end with |."
-msgstr "第 %u 個參數結束的不是 ‘}’,而是不合法的字元。"
+msgstr "第 %u 個指令結束的不是 ‘}’,而是不合法的字元。"
+
+#: src/format.c:152
+#, fuzzy, c-format
+msgid "'%s' is not a valid %s format string, unlike '%s'. Reason: %s"
+msgstr "和 ‘msgid’ 不同,‘%s’ 的 %s 格式字串無效。原因:%s"
 
-#: src/format-c.c:181
+#: src/format-c.c:37
 #, c-format
 msgid ""
 "In the directive number %u, the token after '<' is not the name of a format "
 "specifier macro. The valid macro names are listed in ISO C 99 section 7.8.1."
 msgstr ""
-"在第 %u 個參數,‘<’ 之後的關鍵字不是正確的變數規格。如果想獲知正確的變數規格"
+"在第 %u 個指令,‘<’ 之後的關鍵字不是正確的變數規格。如果想獲知正確的變數規格"
 "名稱,請參考 ISO C 99 規格第 7.8.1 節。"
 
-#: src/format-c.c:588
+#: src/format-c.c:40
 #, c-format
 msgid "In the directive number %u, the token after '<' is not followed by '>'."
-msgstr "在第 %u 個參數,‘<’ 之後的關鍵字後面缺少了 ‘>’。"
+msgstr "在第 %u 個指令,‘<’ 之後的關鍵字後面缺少了 ‘>’。"
 
-#: src/format-c.c:814
+#: src/format-c.c:43 src/format-gfc-internal.c:289
 #, c-format
 msgid "The string refers to argument number %u but ignores argument number %u."
-msgstr "å­\97串中æ\9c\89æ\8f\90å\8f\8a第 %u å\80\8bå\8f\83數,但忽略了第 %u 個。"
+msgstr "å­\97串中æ\9c\89æ\8f\90å\8f\8a第 %u å\80\8bå¼\95數,但忽略了第 %u 個。"
 
-#: src/format-c.c:901 src/format-csharp.c:206 src/format-python.c:515
+#: src/format-c.c:138 src/format-csharp.c:207 src/format-gfc-internal.c:363
+#: src/format-javascript.c:216 src/format-python.c:516
+#: src/format-qt-plural.c:111
 #, fuzzy, c-format
 msgid "number of format specifications in '%s' and '%s' does not match"
-msgstr "‘msgid’ 和 ‘%s’ 的參數數目不符"
+msgstr "‘msgid’ 和 ‘%s’ 的格式規格數目不符"
 
-#: src/format-csharp.c:88 src/format-java.c:205
+#: src/format-csharp.c:89 src/format-java.c:206
 #, c-format
 msgid "In the directive number %u, '{' is not followed by an argument number."
 msgstr ""
 
-#: src/format-csharp.c:109
+#: src/format-csharp.c:110
 #, c-format
 msgid "In the directive number %u, ',' is not followed by a number."
-msgstr "在第 %u 個參數,‘,’ 後面的不是數字。"
+msgstr "在第 %u 個指令,‘,’ 後面的不是數字。"
 
-#: src/format-csharp.c:130 src/format-java.c:191
+#: src/format-csharp.c:131 src/format-java.c:192
 msgid ""
 "The string ends in the middle of a directive: found '{' without matching '}'."
 msgstr ""
 
-#: src/format-csharp.c:139
+#: src/format-csharp.c:140
 #, c-format
 msgid ""
 "The directive number %u ends with an invalid character '%c' instead of '}'."
-msgstr "第 %u 個參數結束的字元是 ‘%c’ 而不是 ‘}’。"
+msgstr "第 %u 個指令結束的字元是 ‘%c’ 而不是 ‘}’。"
 
-#: src/format-csharp.c:140
+#: src/format-csharp.c:141
 #, c-format
 msgid "The directive number %u ends with an invalid character instead of '}'."
-msgstr "第 %u 個參數結束的不是 ‘}’,而是不合法的字元。"
+msgstr "第 %u 個指令結束的不是 ‘}’,而是不合法的字元。"
 
-#: src/format-csharp.c:161 src/format-java.c:346
+#: src/format-csharp.c:162 src/format-java.c:347
 msgid ""
 "The string starts in the middle of a directive: found '}' without matching "
 "'{'."
 msgstr ""
 
-#: src/format-csharp.c:162
+#: src/format-csharp.c:163
 #, c-format
 msgid "The string contains a lone '}' after directive number %u."
-msgstr "第 %u 個參數後出現單獨的 ‘}’。"
+msgstr "第 %u 個指令後出現單獨的 ‘}’。"
 
 #: src/format-gcc-internal.c:255
 #, fuzzy, c-format
 msgid "In the directive number %u, the flags combination is invalid."
-msgstr "第 %u 個參數的子字串 “%s” 是無效的數字格式。"
+msgstr "第 %u 個指令的子字串 %s 是無效的數字格式。"
 
 #: src/format-gcc-internal.c:292
 #, fuzzy, c-format
 msgid "In the directive number %u, a precision is not allowed before '%c'."
-msgstr "第 %u 個參數的 “%s” 後面缺少了逗號。"
+msgstr "第 %u 個指令的 %s 後面缺少了逗號。"
 
 #: src/format-gcc-internal.c:334
 #, fuzzy, c-format
 msgid ""
 "In the directive number %u, the argument number for the precision must be "
 "equal to %u."
-msgstr "第 %u 個參數中的數字 0 不是正整數。"
+msgstr "第 %u 個指令中的數字 0 不是正整數。"
 
 #: src/format-gcc-internal.c:398
 #, fuzzy, c-format
 msgid ""
 "In the directive number %u, a precision specification is not allowed before "
 "'%c'."
-msgstr "第 %u 個參數的 “%s” 後面缺少了逗號。"
+msgstr "在第 %u 個指令,‘<’ 之後的關鍵字後面缺少了 ‘>’。"
 
 #: src/format-gcc-internal.c:406
 #, fuzzy, c-format
 msgid "In the directive number %u, the precision specification is invalid."
-msgstr "第 %u 個參數的子字串 “%s” 是無效的數字格式。"
+msgstr "第 %u 個指令的子字串 %s 是無效的數字格式。"
 
 #: src/format-gcc-internal.c:463
 #, c-format
@@ -413,21 +607,31 @@ msgstr "‘msgid’ 使用了 %%m 但 ‘%s’ 沒有。"
 msgid "'%s' does not use %%m but '%s' uses %%m"
 msgstr "‘msgid’ 沒有使用 %%m 但 ‘%s’ 有使用 %%m。"
 
+#: src/format-gfc-internal.c:383
+#, fuzzy, c-format
+msgid "'%s' uses %%C but '%s' doesn't"
+msgstr "‘msgid’ 使用了 %%m 但 ‘%s’ 沒有。"
+
+#: src/format-gfc-internal.c:386
+#, fuzzy, c-format
+msgid "'%s' does not use %%C but '%s' uses %%C"
+msgstr "‘msgid’ 沒有使用 %%m 但 ‘%s’ 有使用 %%m。"
+
 #: src/format-invalid.h:22
 msgid "The string ends in the middle of a directive."
-msgstr "在參數中間,字串突然結束"
+msgstr "在指令中間,字串突然結束"
 
 #: src/format-invalid.h:25
 msgid ""
 "The string refers to arguments both through absolute argument numbers and "
 "through unnumbered argument specifications."
-msgstr "å­\97串中å\90\8cæ\99\82å\87ºç\8f¾äº\86æ\9c\89硬æ\80§è¦\8få®\9aå\92\8cæ²\92æ\9c\89硬æ\80§è¦\8få®\9aä½\8dç½®ç\9a\84å\8f\83數"
+msgstr "å­\97串中å\90\8cæ\99\82å\87ºç\8f¾äº\86æ\9c\89硬æ\80§è¦\8få®\9aå\92\8cæ²\92æ\9c\89硬æ\80§è¦\8få®\9aä½\8dç½®ç\9a\84å¼\95數"
 
 #: src/format-invalid.h:28
 #, c-format
 msgid ""
 "In the directive number %u, the argument number 0 is not a positive integer."
-msgstr "第 %u 個參數中的數字 0 不是正整數。"
+msgstr "第 %u 個指令中的數字 0 不是正整數。"
 
 #: src/format-invalid.h:30
 #, c-format
@@ -448,83 +652,102 @@ msgstr ""
 msgid ""
 "In the directive number %u, the character '%c' is not a valid conversion "
 "specifier."
-msgstr "第 %u 個參數的 ‘%c’ 字元屬於無效的列印格式。"
+msgstr "第 %u 個指令的 ‘%c’ 字元屬於無效的列印格式。"
 
 #: src/format-invalid.h:37
 #, c-format
 msgid ""
 "The character that terminates the directive number %u is not a valid "
 "conversion specifier."
-msgstr "用來結束第 %u 個參數的字元屬於無效的列印格式。"
+msgstr "用來結束第 %u 個指令的字元屬於無效的列印格式。"
 
 #: src/format-invalid.h:40
 #, c-format
 msgid "The string refers to argument number %u in incompatible ways."
-msgstr "å­\97串æ\8e¡ç\94¨äº\86ä¸\8dç\9b¸å®¹ç\9a\84æ\96¹æ³\95ä¾\86表示第 %u å\80\8bå\8f\83數。"
+msgstr "å­\97串æ\8e¡ç\94¨äº\86ä¸\8dç\9b¸å®¹ç\9a\84æ\96¹æ³\95ä¾\86表示第 %u å\80\8bå¼\95數。"
 
-#: src/format-java.c:240
+#: src/format-java.c:241
 #, c-format
 msgid ""
 "In the directive number %u, the substring \"%s\" is not a valid date/time "
 "style."
-msgstr "第 %u 個參數的子字串 “%s” 是無效的日期/時間格式。"
+msgstr "第 %u 個指令的子字串 %s 是無效的日期/時間格式。"
 
-#: src/format-java.c:251 src/format-java.c:285 src/format-java.c:314
+#: src/format-java.c:252 src/format-java.c:286 src/format-java.c:315
 #, c-format
 msgid "In the directive number %u, \"%s\" is not followed by a comma."
-msgstr "第 %u 個參數的 “%s” 後面缺少了逗號。"
+msgstr "第 %u 個指令的 %s 後面缺少了逗號。"
 
-#: src/format-java.c:274
+#: src/format-java.c:275
 #, c-format
 msgid ""
 "In the directive number %u, the substring \"%s\" is not a valid number style."
-msgstr "第 %u 個參數的子字串 “%s” 是無效的數字格式。"
+msgstr "第 %u 個指令的子字串 %s 是無效的數字格式。"
 
-#: src/format-java.c:323
+#: src/format-java.c:324
 #, c-format
 msgid ""
 "In the directive number %u, the argument number is not followed by a comma "
 "and one of \"%s\", \"%s\", \"%s\", \"%s\"."
 msgstr ""
 
-#: src/format-java.c:572
+#: src/format-java.c:573
 #, c-format
 msgid "In the directive number %u, a choice contains no number."
 msgstr ""
 
-#: src/format-java.c:583
+#: src/format-java.c:584
 #, c-format
 msgid ""
 "In the directive number %u, a choice contains a number that is not followed "
 "by '<', '#' or '%s'."
 msgstr ""
 
-#: src/format-java.c:745
+#: src/format-java.c:746
 #, fuzzy, c-format
 msgid ""
 "a format specification for argument {%u}, as in '%s', doesn't exist in '%s'"
-msgstr "â\80\98%2$sâ\80\99 ä¸­ç\9a\84å\8f\83數 {%1$u} 的格式在 ‘msgid’ 中並不存在"
+msgstr "â\80\98%2$sâ\80\99 ä¸­ç\9a\84å¼\95數 {%1$u} 的格式在 ‘msgid’ 中並不存在"
 
-#: src/format-java.c:756
+#: src/format-java.c:757
 #, c-format
 msgid "a format specification for argument {%u} doesn't exist in '%s'"
-msgstr "å\8f\83數 {%u} 的規格在 ‘%s’ 中並不存在"
+msgstr "å¼\95數 {%u} 的規格在 ‘%s’ 中並不存在"
 
-#: src/format-java.c:776
+#: src/format-java.c:777
 #, fuzzy, c-format
 msgid ""
 "format specifications in '%s' and '%s' for argument {%u} are not the same"
-msgstr "‘msgid’ 和 ‘%s’ 的參數 {%u} 規格並不相同"
+msgstr "‘msgid’ 和 ‘%s’ 的引數 {%u} 規格並不相同"
+
+#: src/format-kde.c:159
+#, fuzzy, c-format
+msgid ""
+"The string refers to argument number %u but ignores the arguments %u and %u."
+msgstr "字串中有提及第 %u 個引數,但忽略了第 %u 個。"
 
-#: src/format-lisp.c:2337 src/format-lisp.c:2349 src/format-scheme.c:2363
-#: src/format-scheme.c:2375
+#: src/format-kde.c:243
+#, fuzzy, c-format
+msgid ""
+"a format specification for arguments %u and %u doesn't exist in '%s', only "
+"one argument may be ignored"
+msgstr "‘%2$s’ 中第 %1$u 個引數的規格在 ‘msgid’ 中並不存在"
+
+#: src/format-kde-kuit.c:244 src/format-kde-kuit.c:264
+#: src/format-kde-kuit.c:274
+#, fuzzy, c-format
+msgid "error while parsing: %s"
+msgstr "讀取 %s 時出現錯誤"
+
+#: src/format-lisp.c:2340 src/format-lisp.c:2352 src/format-scheme.c:2365
+#: src/format-scheme.c:2377
 #, c-format
 msgid ""
 "In the directive number %u, parameter %u is of type '%s' but a parameter of "
 "type '%s' is expected."
 msgstr ""
 
-#: src/format-lisp.c:2372 src/format-scheme.c:2398
+#: src/format-lisp.c:2375 src/format-scheme.c:2400
 #, c-format
 msgid ""
 "In the directive number %u, too many parameters are given; expected at most "
@@ -535,214 +758,210 @@ msgid_plural ""
 msgstr[0] ""
 msgstr[1] ""
 
-#: src/format-lisp.c:2496 src/format-scheme.c:2499
+#: src/format-lisp.c:2499 src/format-scheme.c:2501
 #, c-format
 msgid "In the directive number %u, '%c' is not followed by a digit."
 msgstr ""
 
-#: src/format-lisp.c:2736 src/format-scheme.c:2754
+#: src/format-lisp.c:2739 src/format-scheme.c:2756
 #, c-format
 msgid "In the directive number %u, the argument %d is negative."
 msgstr ""
 
-#: src/format-lisp.c:2805
+#: src/format-lisp.c:2808
 msgid "The string ends in the middle of a ~/.../ directive."
 msgstr ""
 
-#: src/format-lisp.c:2843 src/format-lisp.c:3108 src/format-lisp.c:3225
-#: src/format-lisp.c:3285 src/format-lisp.c:3397 src/format-scheme.c:2840
-#: src/format-scheme.c:3105 src/format-scheme.c:3222 src/format-scheme.c:3320
+#: src/format-lisp.c:2846 src/format-lisp.c:3111 src/format-lisp.c:3228
+#: src/format-lisp.c:3288 src/format-lisp.c:3400 src/format-scheme.c:2842
+#: src/format-scheme.c:3107 src/format-scheme.c:3224 src/format-scheme.c:3322
 #, c-format
 msgid "Found '~%c' without matching '~%c'."
 msgstr "找到 ‘~%c’ 但沒有 ‘~%c’ 配合。"
 
-#: src/format-lisp.c:2863 src/format-scheme.c:2860
+#: src/format-lisp.c:2866 src/format-scheme.c:2862
 #, c-format
 msgid "In the directive number %u, both the @ and the : modifiers are given."
 msgstr ""
 
-#: src/format-lisp.c:2976 src/format-scheme.c:2973
+#: src/format-lisp.c:2979 src/format-scheme.c:2975
 #, c-format
 msgid ""
 "In the directive number %u, '~:[' is not followed by two clauses, separated "
 "by '~;'."
 msgstr ""
 
-#: src/format-lisp.c:3326 src/format-scheme.c:3263
+#: src/format-lisp.c:3329 src/format-scheme.c:3265
 #, c-format
 msgid "In the directive number %u, '~;' is used in an invalid position."
 msgstr ""
 
-#: src/format-lisp.c:3432 src/format-scheme.c:3355
+#: src/format-lisp.c:3435 src/format-scheme.c:3357
 msgid "The string refers to some argument in incompatible ways."
 msgstr ""
 
-#: src/format-lisp.c:3474 src/format-scheme.c:3397
+#: src/format-lisp.c:3477 src/format-scheme.c:3399
 #, fuzzy, c-format
 msgid "format specifications in '%s' and '%s' are not equivalent"
-msgstr "‘msgid’ 和 ‘%s’ 的參數規格並非同等"
+msgstr "‘msgid’ 和 ‘%s’ 的格式規格並非同等"
 
-#: src/format-lisp.c:3490 src/format-scheme.c:3413
+#: src/format-lisp.c:3493 src/format-scheme.c:3415
 #, fuzzy, c-format
 msgid "format specifications in '%s' are not a subset of those in '%s'"
-msgstr "‘%s’ 的參數規格並非 ‘msgid’ 的參數規格的一部份"
+msgstr "‘%s’ 的格式規格並非 ‘msgid’ 的格式規格的一部份"
+
+#: src/format-perl-brace.c:199 src/format-python-brace.c:435
+#: src/format-python-brace.c:448 src/format-python.c:472 src/format-sh.c:309
+#, c-format
+msgid "a format specification for argument '%s' doesn't exist in '%s'"
+msgstr "格式 ‘%s’ 的規格在 ‘%s’ 中並不存在"
 
-#: src/format-perl.c:433
+#: src/format-perl.c:434
 #, c-format
 msgid ""
 "In the directive number %u, the size specifier is incompatible with the "
 "conversion specifier '%c'."
 msgstr ""
 
-#: src/format-perl-brace.c:199 src/format-python.c:471 src/format-sh.c:308
-#, c-format
-msgid "a format specification for argument '%s' doesn't exist in '%s'"
-msgstr "參數 ‘%s’ 的規格在 ‘%s’ 中並不存在"
+#: src/format-python-brace.c:138
+#, fuzzy, c-format
+msgid "In the directive number %u, '%c' cannot start a field name."
+msgstr "在第 %u 個指令,‘,’ 後面的不是數字。"
+
+#: src/format-python-brace.c:151
+#, fuzzy, c-format
+msgid "In the directive number %u, '%c' cannot start a getattr argument."
+msgstr "在第 %u 個指令,‘,’ 後面的不是數字。"
+
+#: src/format-python-brace.c:166
+#, fuzzy, c-format
+msgid "In the directive number %u, '%c' cannot start a getitem argument."
+msgstr "在第 %u 個指令,‘,’ 後面的不是數字。"
+
+#: src/format-python-brace.c:186
+#, fuzzy, c-format
+msgid ""
+"In the directive number %u, no more nesting is allowed in a format specifier."
+msgstr "在第 %u 個指令,‘,’ 後面的不是數字。"
+
+#: src/format-python-brace.c:271
+#, fuzzy, c-format
+msgid "In the directive number %u, there is an unterminated format directive."
+msgstr "第 %u 個指令中的數字 0 不是正整數。"
 
-#: src/format-python.c:115
+#: src/format-python.c:116
 msgid ""
 "The string refers to arguments both through argument names and through "
 "unnamed argument specifications."
 msgstr ""
 
-#: src/format-python.c:354
+#: src/format-python.c:355
 #, c-format
 msgid "The string refers to the argument named '%s' in incompatible ways."
 msgstr ""
 
-#: src/format-python.c:430
+#: src/format-python.c:431
 #, fuzzy, c-format
 msgid ""
 "format specifications in '%s' expect a mapping, those in '%s' expect a tuple"
 msgstr ""
 "‘msgid’ 裡的規格對應的是雜湊表 (mapping),而 ‘%s’ 的卻是固定有序列 (tuple)"
 
-#: src/format-python.c:437
+#: src/format-python.c:438
 #, fuzzy, c-format
 msgid ""
 "format specifications in '%s' expect a tuple, those in '%s' expect a mapping"
 msgstr ""
 "‘msgid’ 裡的規格對應的是固定有序列 (tuple),而 ‘%s’ 的卻是雜湊表 (mapping)"
 
-#: src/format-python.c:460 src/format-sh.c:297
+#: src/format-python.c:461 src/format-sh.c:298
 #, fuzzy, c-format
 msgid ""
 "a format specification for argument '%s', as in '%s', doesn't exist in '%s'"
-msgstr "â\80\98%2$sâ\80\99 ä¸­ç\9a\84å\8f\83數 ‘%1$s’ 的格式在 ‘msgid’ 中並不存在"
+msgstr "â\80\98%2$sâ\80\99 ä¸­ç\9a\84å¼\95數 ‘%1$s’ 的格式在 ‘msgid’ 中並不存在"
 
-#: src/format-python.c:494
+#: src/format-python.c:495
 #, fuzzy, c-format
 msgid ""
 "format specifications in '%s' and '%s' for argument '%s' are not the same"
-msgstr "â\80\98msgidâ\80\99å\92\8câ\80\98%sâ\80\99ç\9a\84å\8f\83數‘%s’的格式並不相同"
+msgstr "â\80\98msgidâ\80\99å\92\8câ\80\98%sâ\80\99ç\9a\84å¼\95數‘%s’的格式並不相同"
 
-#: src/format-qt.c:152
+#: src/format-qt.c:153
 #, c-format
 msgid ""
 "'%s' is a simple format string, but '%s' is not: it contains an 'L' flag or "
 "a double-digit argument number"
 msgstr ""
 
-#: src/format-sh.c:79
+#: src/format-sh.c:80
 msgid "The string refers to a shell variable with a non-ASCII name."
 msgstr "字串中的 shell 變數名稱含有不屬於 ASCII 的字元。"
 
-#: src/format-sh.c:81
+#: src/format-sh.c:82
 msgid ""
 "The string refers to a shell variable with complex shell brace syntax. This "
 "syntax is unsupported here due to security reasons."
 msgstr ""
 "字串中的 shell 變數名稱含有較複雜的括號格式,因安全理由,這種格式不會支援。"
 
-#: src/format-sh.c:83
+#: src/format-sh.c:84
 msgid ""
 "The string refers to a shell variable whose value may be different inside "
 "shell functions."
 msgstr ""
 
-#: src/format-sh.c:85
+#: src/format-sh.c:86
 msgid "The string refers to a shell variable with an empty name."
 msgstr "字串中的 shell 變數沒有名稱。"
 
-#: src/format-ycp.c:90
+#: src/format-ycp.c:91
 #, c-format
 msgid ""
 "In the directive number %u, the character '%c' is not a digit between 1 and "
 "9."
-msgstr "第 %u 個參數的字元‘%c’不是 1 至 9 之間的整數。"
+msgstr "第 %u 個指令的字元‘%c’不是 1 至 9 之間的整數。"
 
-#: src/format-ycp.c:91
+#: src/format-ycp.c:92
 #, c-format
 msgid ""
 "The character that terminates the directive number %u is not a digit between "
 "1 and 9."
-msgstr "第 %u 個參數最後一個字元不是 1 至 9 之間的整數。"
-
-#: src/hostname.c:178 src/msgattrib.c:337 src/msgcat.c:289 src/msgcmp.c:172
-#: src/msgcomm.c:280 src/msgconv.c:235 src/msgen.c:231 src/msgexec.c:180
-#: src/msgfilter.c:273 src/msgfmt.c:366 src/msggrep.c:410 src/msginit.c:268
-#: src/msgmerge.c:344 src/msgunfmt.c:262 src/msguniq.c:259
-#: src/recode-sr-latin.c:110 src/urlget.c:143 src/xgettext.c:584
-#, c-format, no-wrap
-msgid ""
-"Copyright (C) %s Free Software Foundation, Inc.\n"
-"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n"
-"This is free software: you are free to change and redistribute it.\n"
-"There is NO WARRANTY, to the extent permitted by law.\n"
-msgstr ""
-
-#: src/hostname.c:184 src/msgattrib.c:343 src/msgcat.c:295 src/msgcmp.c:178
-#: src/msgcomm.c:286 src/msgconv.c:241 src/msgen.c:237 src/msgexec.c:186
-#: src/msgfilter.c:279 src/msgfmt.c:372 src/msggrep.c:416 src/msginit.c:274
-#: src/msgmerge.c:350 src/msgunfmt.c:268 src/msguniq.c:265 src/urlget.c:149
-#: src/xgettext.c:590
-#, c-format
-msgid "Written by %s.\n"
-msgstr "由 %s 編寫。\n"
+msgstr "第 %u 個指令最後一個字元不是 1 至 9 之間的整數。"
 
 #. This is a proper name. See the gettext manual, section Names.
-#: src/hostname.c:184 src/msgattrib.c:343 src/msgcat.c:295 src/msgconv.c:241
-#: src/msgen.c:237 src/msgexec.c:186 src/msgfilter.c:279 src/msggrep.c:416
-#: src/msginit.c:274 src/msguniq.c:265 src/recode-sr-latin.c:121
-#: src/urlget.c:149
+#: src/hostname.c:187 src/msgattrib.c:362 src/msgcat.c:301 src/msgconv.c:251
+#: src/msgen.c:248 src/msgexec.c:193 src/msgfilter.c:295 src/msggrep.c:426
+#: src/msginit.c:275 src/msguniq.c:271 src/recode-sr-latin.c:122
+#: src/urlget.c:150
 msgid "Bruno Haible"
 msgstr ""
 
-#: src/hostname.c:194 src/msginit.c:284 src/recode-sr-latin.c:130
+#: src/hostname.c:197 src/msginit.c:285 src/recode-sr-latin.c:131
 #, c-format
 msgid "too many arguments"
-msgstr "參數過多"
-
-#: src/hostname.c:207 src/msgattrib.c:403 src/msgcat.c:362 src/msgcmp.c:209
-#: src/msgcomm.c:354 src/msgconv.c:298 src/msgen.c:294 src/msgexec.c:253
-#: src/msgfilter.c:384 src/msgfmt.c:646 src/msggrep.c:507 src/msginit.c:358
-#: src/msgmerge.c:476 src/msgunfmt.c:423 src/msguniq.c:321
-#: src/recode-sr-latin.c:143 src/urlget.c:172 src/xgettext.c:812
-#, c-format
-msgid "Try `%s --help' for more information.\n"
-msgstr "請執行 ‘%s --help’ 顯示額外資訊。\n"
+msgstr "引數過多"
 
-#: src/hostname.c:211 src/msginit.c:362 src/recode-sr-latin.c:148
+#: src/hostname.c:214 src/msginit.c:363 src/recode-sr-latin.c:149
 #, c-format, no-wrap
 msgid "Usage: %s [OPTION]\n"
 msgstr "用法:%s [選項]\n"
 
-#: src/hostname.c:215
+#: src/hostname.c:218
 #, c-format
 msgid "Print the machine's hostname.\n"
 msgstr "列印主機的名稱。\n"
 
-#: src/hostname.c:218
+#: src/hostname.c:221
 #, c-format
 msgid "Output format:\n"
 msgstr "輸出格式:\n"
 
-#: src/hostname.c:220
+#: src/hostname.c:223
 #, c-format
 msgid "  -s, --short                 short host name\n"
 msgstr "  -s, --short                 短的主機名稱\n"
 
-#: src/hostname.c:222
+#: src/hostname.c:225
 #, c-format
 msgid ""
 "  -f, --fqdn, --long          long host name, includes fully qualified "
@@ -751,255 +970,295 @@ msgid ""
 msgstr ""
 "  -f, --fqdn, --long          長的主機名稱,包括正式的網域名稱(FQDN)及別名\n"
 
-#: src/hostname.c:225
+#: src/hostname.c:228
 #, c-format
 msgid "  -i, --ip-address            addresses for the hostname\n"
 msgstr "  -i, --ip-address            主機的 IP 地址\n"
 
-#: src/hostname.c:228 src/msgattrib.c:515 src/msgcat.c:468 src/msgcmp.c:258
-#: src/msgcomm.c:454 src/msgconv.c:380 src/msgen.c:375 src/msgexec.c:295
-#: src/msgfilter.c:476 src/msgfmt.c:768 src/msggrep.c:623 src/msginit.c:420
-#: src/msgmerge.c:601 src/msgunfmt.c:527 src/msguniq.c:416
-#: src/recode-sr-latin.c:161 src/urlget.c:186 src/xgettext.c:980
+#: src/hostname.c:231 src/msgattrib.c:535 src/msgcat.c:470 src/msgcmp.c:259
+#: src/msgcomm.c:456 src/msgconv.c:386 src/msgen.c:382 src/msgexec.c:307
+#: src/msgfilter.c:508 src/msgfmt.c:1078 src/msggrep.c:629 src/msginit.c:421
+#: src/msgmerge.c:620 src/msgunfmt.c:528 src/msguniq.c:418
+#: src/recode-sr-latin.c:162 src/urlget.c:187 src/xgettext.c:1228
 #, c-format, no-wrap
 msgid "Informative output:\n"
 msgstr "顯示資訊:\n"
 
-#: src/hostname.c:230 src/msgattrib.c:517 src/msgcat.c:470 src/msgcmp.c:260
-#: src/msgcomm.c:456 src/msgconv.c:382 src/msgen.c:377 src/msgexec.c:297
-#: src/msgfilter.c:478 src/msgfmt.c:770 src/msggrep.c:625 src/msginit.c:422
-#: src/msgmerge.c:603 src/msgunfmt.c:529 src/msguniq.c:418
-#: src/recode-sr-latin.c:164 src/urlget.c:188 src/xgettext.c:982
-#, c-format, no-wrap
-msgid "  -h, --help                  display this help and exit\n"
-msgstr "  -h, --help                  顯示本訊息,然後結束\n"
+#: src/hostname.c:258 src/hostname.c:264 src/hostname.c:271
+#, c-format
+msgid "could not get host name"
+msgstr "無法取得主機名稱"
 
-#: src/hostname.c:232 src/msgattrib.c:519 src/msgcat.c:472 src/msgcmp.c:262
-#: src/msgcomm.c:458 src/msgconv.c:384 src/msgen.c:379 src/msgexec.c:299
-#: src/msgfilter.c:480 src/msgfmt.c:772 src/msggrep.c:627 src/msginit.c:424
-#: src/msgmerge.c:605 src/msgunfmt.c:531 src/msguniq.c:420
-#: src/recode-sr-latin.c:167 src/urlget.c:190 src/xgettext.c:984
-#, c-format, no-wrap
-msgid "  -V, --version               output version information and exit\n"
-msgstr "  -V, --version               顯示版本資訊,然後結束\n"
+#: src/its.c:319
+#, fuzzy, c-format
+msgid "selector is not specified"
+msgstr "必須指定至少兩個檔案"
 
-#. TRANSLATORS: The placeholder indicates the bug-reporting address
-#. for this package.  Please add _another line_ saying
-#. "Report translation bugs to <...>\n" with the address for translation
-#. bugs (typically your translation team's web or email address).
-#: src/hostname.c:239 src/msgattrib.c:526 src/msgcat.c:479 src/msgcmp.c:269
-#: src/msgcomm.c:465 src/msgconv.c:391 src/msgen.c:386 src/msgexec.c:306
-#: src/msgfilter.c:487 src/msgfmt.c:783 src/msggrep.c:634 src/msginit.c:431
-#: src/msgmerge.c:616 src/msgunfmt.c:540 src/msguniq.c:427
-#: src/recode-sr-latin.c:174 src/urlget.c:199 src/xgettext.c:991
-msgid "Report bugs to <bug-gnu-gettext@gnu.org>.\n"
-msgstr "請向 <bug-gnu-gettext@gnu.org> 匯報錯誤。\n"
+#: src/its.c:326 src/its.c:1550
+#, fuzzy, c-format
+msgid "cannot create XPath context"
+msgstr "無法建立管線"
 
-#: src/hostname.c:255 src/hostname.c:261 src/hostname.c:268
+#: src/its.c:344
 #, c-format
-msgid "could not get host name"
-msgstr "無法取得主機名稱"
+msgid "cannot evaluate XPath expression: %s"
+msgstr ""
+
+#: src/its.c:614
+#, c-format
+msgid "\"%s\" node does not contain \"%s\""
+msgstr ""
+
+#: src/its.c:1001
+#, fuzzy, c-format
+msgid "invalid attribute value \"%s\" for \"%s\""
+msgstr "%2$s 的引數 %1$s 無效"
+
+#: src/its.c:1333
+#, c-format
+msgid "the root element is not \"rules\" under namespace %s"
+msgstr ""
+
+#: src/its.c:1376 src/its.c:1402 src/its.c:1795 src/its.c:1914
+#: src/locating-rule.c:170
+#, fuzzy, c-format
+msgid "cannot read %s: %s"
+msgstr "無法建立管線"
+
+#: src/its.c:1573
+#, c-format
+msgid "cannot evaluate XPath location path: %s"
+msgstr ""
+
+#: src/locating-rule.c:236
+#, c-format
+msgid "\"%s\" node does not have \"%s\""
+msgstr ""
 
-#: src/msgattrib.c:358 src/msgconv.c:256 src/msgexec.c:152 src/msgfilter.c:194
-#: src/msggrep.c:431 src/msginit.c:197 src/msguniq.c:280
+#: src/locating-rule.c:307
+#, fuzzy, c-format
+msgid "cannot read XML file %s"
+msgstr "無法產生輸出檔 “%s”"
+
+#: src/locating-rule.c:319
+#, c-format
+msgid "the root element is not \"locatingRules\""
+msgstr ""
+
+#: src/msgattrib.c:377 src/msgconv.c:266 src/msgexec.c:155 src/msgfilter.c:197
+#: src/msggrep.c:441 src/msginit.c:198 src/msguniq.c:286
 #, c-format
 msgid "at most one input file allowed"
 msgstr "最多只接受一個輸入檔"
 
-#: src/msgattrib.c:364 src/msgattrib.c:368 src/msgcat.c:311 src/msgcat.c:315
-#: src/msgcomm.c:296 src/msgcomm.c:300 src/msgconv.c:262 src/msgconv.c:266
-#: src/msgen.c:259 src/msgen.c:263 src/msgfilter.c:294 src/msgfilter.c:298
-#: src/msgfmt.c:411 src/msgfmt.c:419 src/msgfmt.c:434 src/msgfmt.c:456
-#: src/msggrep.c:437 src/msggrep.c:441 src/msgmerge.c:375 src/msgmerge.c:396
-#: src/msgmerge.c:400 src/msgunfmt.c:299 src/msguniq.c:286 src/msguniq.c:290
-#: src/xgettext.c:600 src/xgettext.c:604 src/xgettext.c:611 src/xgettext.c:614
-#: src/xgettext.c:617
+#: src/msgattrib.c:383 src/msgcat.c:317 src/msgcomm.c:302 src/msgconv.c:272
+#: src/msgen.c:270 src/msgfilter.c:310 src/msgfmt.c:503 src/msgfmt.c:511
+#: src/msgfmt.c:526 src/msgfmt.c:548 src/msggrep.c:447 src/msgmerge.c:388
+#: src/msgmerge.c:393 src/msgmerge.c:398 src/msgmerge.c:419 src/msgunfmt.c:300
+#: src/msguniq.c:292 src/xgettext.c:694 src/xgettext.c:701 src/xgettext.c:704
+#: src/xgettext.c:707 src/xgettext.c:755
 #, c-format
 msgid "%s and %s are mutually exclusive"
 msgstr "%s 和 %s 兩者是互不相容的"
 
-#: src/msgattrib.c:407 src/msgconv.c:302 src/msggrep.c:511 src/msguniq.c:325
+#: src/msgattrib.c:422 src/msgconv.c:308 src/msggrep.c:517 src/msguniq.c:327
 #, c-format
 msgid "Usage: %s [OPTION] [INPUTFILE]\n"
 msgstr "用法:%s [選項] [輸入檔]\n"
 
-#: src/msgattrib.c:412
+#: src/msgattrib.c:427
 #, c-format, no-wrap
 msgid ""
 "Filters the messages of a translation catalog according to their attributes,\n"
 "and manipulates the attributes.\n"
 msgstr "根據訊息的屬性過濾翻譯檔裡的條目,並處理這些屬性。\n"
 
-#: src/msgattrib.c:416 src/msgcat.c:383 src/msgcmp.c:227 src/msgcomm.c:374
-#: src/msgconv.c:310 src/msgen.c:310 src/msgexec.c:276 src/msgfilter.c:396
-#: src/msggrep.c:521 src/msginit.c:372 src/msgmerge.c:497 src/msgunfmt.c:435
-#: src/msguniq.c:341
+#: src/msgattrib.c:431 src/msgcat.c:385 src/msgcmp.c:228 src/msgcomm.c:376
+#: src/msgconv.c:316 src/msgen.c:317 src/msgexec.c:288 src/msgfilter.c:422
+#: src/msggrep.c:527 src/msginit.c:373 src/msgmerge.c:516 src/msgunfmt.c:436
+#: src/msguniq.c:343
 #, c-format
 msgid ""
 "Mandatory arguments to long options are mandatory for short options too.\n"
-msgstr "é\95·é\81¸é \85å¿\85é \88ç\94¨ç\9a\84å\8f\83數在使用短選項時也是必須的。\n"
+msgstr "é\95·é\81¸é \85å¿\85é \88ç\94¨ç\9a\84å¼\95數在使用短選項時也是必須的。\n"
 
-#: src/msgattrib.c:419 src/msgcat.c:386 src/msgcmp.c:230 src/msgcomm.c:377
-#: src/msgconv.c:313 src/msgen.c:313 src/msgexec.c:279 src/msgfilter.c:399
-#: src/msgfmt.c:664 src/msggrep.c:524 src/msginit.c:375 src/msgmerge.c:500
-#: src/msgunfmt.c:449 src/msguniq.c:344 src/xgettext.c:830
+#: src/msgattrib.c:434 src/msgcat.c:388 src/msgcmp.c:231 src/msgcomm.c:379
+#: src/msgconv.c:319 src/msgen.c:320 src/msgexec.c:291 src/msgfilter.c:425
+#: src/msgfmt.c:932 src/msggrep.c:530 src/msginit.c:376 src/msgmerge.c:519
+#: src/msgunfmt.c:450 src/msguniq.c:346 src/xgettext.c:1062
 #, c-format
 msgid "Input file location:\n"
 msgstr "輸入檔位置:\n"
 
-#: src/msgattrib.c:421 src/msgconv.c:315 src/msggrep.c:526 src/msguniq.c:346
+#: src/msgattrib.c:436 src/msgconv.c:321 src/msggrep.c:532 src/msguniq.c:348
 #, c-format
 msgid "  INPUTFILE                   input PO file\n"
 msgstr "  INPUTFILE                   用作輸入的 PO 檔\n"
 
-#: src/msgattrib.c:423 src/msgcat.c:392 src/msgcmp.c:236 src/msgcomm.c:383
-#: src/msgconv.c:317 src/msgen.c:317 src/msgexec.c:283 src/msgfilter.c:403
-#: src/msgfmt.c:668 src/msggrep.c:528 src/msgmerge.c:506 src/msguniq.c:348
-#: src/xgettext.c:836
+#: src/msgattrib.c:438 src/msgcat.c:394 src/msgcmp.c:237 src/msgcomm.c:385
+#: src/msgconv.c:323 src/msgen.c:324 src/msgexec.c:295 src/msgfilter.c:429
+#: src/msgfmt.c:936 src/msggrep.c:534 src/msgmerge.c:525 src/msguniq.c:350
+#: src/xgettext.c:1068
 #, c-format
 msgid ""
 "  -D, --directory=DIRECTORY   add DIRECTORY to list for input files search\n"
 msgstr "  -D, --directory=目錄        搜尋輸入檔時加入指定<目錄>\n"
 
-#: src/msgattrib.c:425 src/msgconv.c:319 src/msgexec.c:285 src/msgfilter.c:405
-#: src/msggrep.c:530 src/msgunfmt.c:453 src/msguniq.c:350
+#: src/msgattrib.c:440 src/msgconv.c:325 src/msgexec.c:297 src/msgfilter.c:431
+#: src/msggrep.c:536 src/msgunfmt.c:454 src/msguniq.c:352
 #, c-format
 msgid "If no input file is given or if it is -, standard input is read.\n"
 msgstr "如果沒有指定輸入檔或輸入檔是 ‘-’,則由標準輸入讀取內容。\n"
 
-#: src/msgattrib.c:428 src/msgcat.c:397 src/msgcomm.c:388 src/msgconv.c:322
-#: src/msgen.c:322 src/msgfilter.c:408 src/msgfmt.c:688 src/msggrep.c:533
-#: src/msginit.c:383 src/msgmerge.c:518 src/msgunfmt.c:489 src/msguniq.c:353
-#: src/xgettext.c:841
+#: src/msgattrib.c:443 src/msgcat.c:399 src/msgcomm.c:390 src/msgconv.c:328
+#: src/msgen.c:329 src/msgfilter.c:434 src/msgfmt.c:960 src/msggrep.c:539
+#: src/msginit.c:384 src/msgmerge.c:537 src/msgunfmt.c:490 src/msguniq.c:355
+#: src/xgettext.c:1073
 #, c-format
 msgid "Output file location:\n"
 msgstr "輸出檔位置:\n"
 
-#: src/msgattrib.c:430 src/msgcat.c:399 src/msgcomm.c:390 src/msgconv.c:324
-#: src/msgen.c:324 src/msgfilter.c:410 src/msgfmt.c:690 src/msggrep.c:535
-#: src/msgmerge.c:520 src/msgunfmt.c:491 src/msguniq.c:355
+#: src/msgattrib.c:445 src/msgcat.c:401 src/msgcomm.c:392 src/msgconv.c:330
+#: src/msgen.c:331 src/msgfilter.c:436 src/msgfmt.c:962 src/msgfmt.c:1011
+#: src/msgfmt.c:1030 src/msggrep.c:541 src/msgmerge.c:539 src/msgunfmt.c:492
+#: src/msguniq.c:357
 #, c-format
 msgid "  -o, --output-file=FILE      write output to specified file\n"
 msgstr "  -o, --output-file=檔案      將輸出的內容寫入指定<檔案>\n"
 
-#: src/msgattrib.c:432 src/msgcat.c:401 src/msgcomm.c:392 src/msgconv.c:326
-#: src/msgen.c:326 src/msgfilter.c:412 src/msggrep.c:537 src/msgmerge.c:522
-#: src/msgunfmt.c:493 src/msguniq.c:357
+#: src/msgattrib.c:447 src/msgcat.c:403 src/msgcomm.c:394 src/msgconv.c:332
+#: src/msgen.c:333 src/msgfilter.c:438 src/msggrep.c:543 src/msgmerge.c:541
+#: src/msgunfmt.c:494 src/msguniq.c:359
 #, c-format
 msgid ""
 "The results are written to standard output if no output file is specified\n"
 "or if it is -.\n"
 msgstr "如果沒有指定<輸出檔>或<輸出檔>是 ‘-’,則會在標準輸出顯示結果。\n"
 
-#: src/msgattrib.c:436 src/msgcat.c:405 src/msgcomm.c:396 src/msguniq.c:361
+#: src/msgattrib.c:451 src/msgcat.c:407 src/msgcomm.c:398 src/msguniq.c:363
 #, c-format
 msgid "Message selection:\n"
 msgstr "篩選訊息:\n"
 
-#: src/msgattrib.c:438
+#: src/msgattrib.c:453
 #, c-format
 msgid ""
 "      --translated            keep translated, remove untranslated messages\n"
 msgstr "      --translated            只保留已翻譯條目,刪除未翻譯條目\n"
 
-#: src/msgattrib.c:440
+#: src/msgattrib.c:455
 #, c-format
 msgid ""
 "      --untranslated          keep untranslated, remove translated messages\n"
 msgstr "      --untranslated          只保留未翻譯條目,刪除已翻譯條目\n"
 
-#: src/msgattrib.c:442
+#: src/msgattrib.c:457
 #, c-format
 msgid "      --no-fuzzy              remove 'fuzzy' marked messages\n"
 msgstr "      --no-fuzzy              刪除加上 'fuzzy' 標記的條目\n"
 
-#: src/msgattrib.c:444
+#: src/msgattrib.c:459
 #, c-format
 msgid "      --only-fuzzy            keep 'fuzzy' marked messages\n"
 msgstr "      --only-fuzzy            只保留加上 'fuzzy' 標記的條目\n"
 
-#: src/msgattrib.c:446
+#: src/msgattrib.c:461
 #, c-format
 msgid "      --no-obsolete           remove obsolete #~ messages\n"
 msgstr "      --no-obsolete           刪除過時的條目 (#~)\n"
 
-#: src/msgattrib.c:448
+#: src/msgattrib.c:463
 #, c-format
 msgid "      --only-obsolete         keep obsolete #~ messages\n"
 msgstr "      --only-obsolete         只保留過時的條目 (#~) \n"
 
-#: src/msgattrib.c:451
+#: src/msgattrib.c:466
 #, c-format
 msgid "Attribute manipulation:\n"
 msgstr "處理屬性:\n"
 
-#: src/msgattrib.c:453
+#: src/msgattrib.c:468
 #, c-format
 msgid "      --set-fuzzy             set all messages 'fuzzy'\n"
 msgstr "      --set-fuzzy             將所有條目標記為 'fuzzy'\n"
 
-#: src/msgattrib.c:455
+#: src/msgattrib.c:470
 #, c-format
 msgid "      --clear-fuzzy           set all messages non-'fuzzy'\n"
 msgstr "      --clear-fuzzy           移除所有條目的 'fuzzy' 狀態\n"
 
-#: src/msgattrib.c:457
+#: src/msgattrib.c:472
 #, c-format
 msgid "      --set-obsolete          set all messages obsolete\n"
 msgstr "      --set-obsolete          將所有條目標記為過時\n"
 
-#: src/msgattrib.c:459
+#: src/msgattrib.c:474
 #, c-format
 msgid "      --clear-obsolete        set all messages non-obsolete\n"
 msgstr "      --clear-obsolete        清除所有條目的過時標記\n"
 
-#: src/msgattrib.c:461
+#: src/msgattrib.c:476
+#, fuzzy, c-format
+msgid ""
+"      --previous              when setting 'fuzzy', keep previous msgids\n"
+"                              of translated messages.\n"
+msgstr ""
+"  -u, --unique                等於 --less-than=2,表示只顯示\n"
+"                              只有一種翻譯的字句\n"
+
+#: src/msgattrib.c:479
 #, fuzzy, c-format
 msgid ""
 "      --clear-previous        remove the \"previous msgid\" from all "
 "messages\n"
 msgstr "      --clear-fuzzy           移除所有條目的 'fuzzy' 狀態\n"
 
-#: src/msgattrib.c:463
+#: src/msgattrib.c:481
+#, fuzzy, c-format
+msgid ""
+"      --empty                 when removing 'fuzzy', also set msgstr empty\n"
+msgstr "      --no-fuzzy              刪除加上 'fuzzy' 標記的條目\n"
+
+#: src/msgattrib.c:483
 #, c-format
 msgid ""
 "      --only-file=FILE.po     manipulate only entries listed in FILE.po\n"
 msgstr "      --only-file=FILE.po     只處理 FILE.po 裡已經有的條目\n"
 
-#: src/msgattrib.c:465
+#: src/msgattrib.c:485
 #, c-format
 msgid ""
 "      --ignore-file=FILE.po   manipulate only entries not listed in FILE.po\n"
 msgstr "      --ignore-file=FILE.po   只處理 FILE.po 裡沒有的條目\n"
 
-#: src/msgattrib.c:467
+#: src/msgattrib.c:487
 #, c-format
 msgid "      --fuzzy                 synonym for --only-fuzzy --clear-fuzzy\n"
 msgstr "      --fuzzy                 等於 --only-fuzzy --clear-fuzzy\n"
 
-#: src/msgattrib.c:469
+#: src/msgattrib.c:489
 #, c-format
 msgid ""
 "      --obsolete              synonym for --only-obsolete --clear-obsolete\n"
 msgstr "      --obsolete              等於 --only-obsolete --clear-obsolete\n"
 
-#: src/msgattrib.c:472 src/msgcat.c:417 src/msgcmp.c:250 src/msgcomm.c:408
-#: src/msgconv.c:337 src/msgen.c:330 src/msgexec.c:288 src/msgfilter.c:431
-#: src/msgfmt.c:733 src/msggrep.c:580 src/msginit.c:391 src/msgmerge.c:555
-#: src/msguniq.c:368
+#: src/msgattrib.c:492 src/msgcat.c:419 src/msgcmp.c:251 src/msgcomm.c:410
+#: src/msgconv.c:343 src/msgen.c:337 src/msgexec.c:300 src/msgfilter.c:463
+#: src/msgfmt.c:1040 src/msggrep.c:586 src/msginit.c:392 src/msgmerge.c:574
+#: src/msguniq.c:370
 #, c-format
 msgid "Input file syntax:\n"
 msgstr "輸入檔格式:\n"
 
-#: src/msgattrib.c:474 src/msgconv.c:339 src/msgen.c:332 src/msgexec.c:290
-#: src/msgfilter.c:433 src/msggrep.c:582 src/msginit.c:393 src/msguniq.c:370
+#: src/msgattrib.c:494 src/msgconv.c:345 src/msgen.c:339 src/msgexec.c:302
+#: src/msgfilter.c:465 src/msggrep.c:588 src/msginit.c:394 src/msguniq.c:372
 #, c-format
 msgid ""
 "  -P, --properties-input      input file is in Java .properties syntax\n"
 msgstr "  -P, --properties-input      以 Java .properties 格式處理輸入檔\n"
 
-#: src/msgattrib.c:476 src/msgconv.c:341 src/msgen.c:334 src/msgexec.c:292
-#: src/msgfilter.c:435 src/msggrep.c:584 src/msginit.c:395 src/msguniq.c:372
+#: src/msgattrib.c:496 src/msgconv.c:347 src/msgen.c:341 src/msgexec.c:304
+#: src/msgfilter.c:467 src/msggrep.c:590 src/msginit.c:396 src/msguniq.c:374
 #, c-format
 msgid ""
 "      --stringtable-input     input file is in NeXTstep/GNUstep .strings "
@@ -1007,17 +1266,17 @@ msgid ""
 msgstr ""
 "      --stringtable-input     以 NeXTstep/GNUstep .strings 格式處理輸入檔\n"
 
-#: src/msgattrib.c:479 src/msgcat.c:425 src/msgcomm.c:416 src/msgconv.c:344
-#: src/msgen.c:337 src/msgfilter.c:438 src/msgfmt.c:761 src/msggrep.c:587
-#: src/msginit.c:398 src/msgmerge.c:563 src/msgunfmt.c:497 src/msguniq.c:375
-#: src/xgettext.c:926
+#: src/msgattrib.c:499 src/msgcat.c:427 src/msgcomm.c:418 src/msgconv.c:350
+#: src/msgen.c:344 src/msgfilter.c:470 src/msgfmt.c:1068 src/msggrep.c:593
+#: src/msginit.c:399 src/msgmerge.c:582 src/msgunfmt.c:498 src/msguniq.c:377
+#: src/xgettext.c:1170
 #, c-format
 msgid "Output details:\n"
 msgstr "輸出內容細節:\n"
 
-#: src/msgattrib.c:481 src/msgcat.c:434 src/msgcomm.c:418 src/msgconv.c:346
-#: src/msgen.c:341 src/msgfilter.c:440 src/msggrep.c:589 src/msginit.c:404
-#: src/msgmerge.c:567 src/msgunfmt.c:499 src/msguniq.c:382 src/xgettext.c:928
+#: src/msgattrib.c:501 src/msgcat.c:436 src/msgcomm.c:420 src/msgconv.c:352
+#: src/msgen.c:348 src/msgfilter.c:472 src/msggrep.c:595 src/msginit.c:405
+#: src/msgmerge.c:586 src/msgunfmt.c:500 src/msguniq.c:384 src/xgettext.c:1172
 #, c-format
 msgid ""
 "      --color                 use colors and other text attributes always\n"
@@ -1026,16 +1285,16 @@ msgid ""
 "'html'.\n"
 msgstr ""
 
-#: src/msgattrib.c:485 src/msgcat.c:438 src/msgcomm.c:422 src/msgconv.c:350
-#: src/msgen.c:345 src/msgfilter.c:444 src/msggrep.c:593 src/msginit.c:408
-#: src/msgmerge.c:571 src/msgunfmt.c:503 src/msguniq.c:386 src/xgettext.c:932
+#: src/msgattrib.c:505 src/msgcat.c:440 src/msgcomm.c:424 src/msgconv.c:356
+#: src/msgen.c:352 src/msgfilter.c:476 src/msggrep.c:599 src/msginit.c:409
+#: src/msgmerge.c:590 src/msgunfmt.c:504 src/msguniq.c:388 src/xgettext.c:1176
 #, c-format
 msgid "      --style=STYLEFILE       specify CSS style rule file for --color\n"
 msgstr ""
 
-#: src/msgattrib.c:487 src/msgcat.c:440 src/msgcomm.c:424 src/msgconv.c:352
-#: src/msgen.c:347 src/msgmerge.c:573 src/msgunfmt.c:505 src/msguniq.c:388
-#: src/xgettext.c:934
+#: src/msgattrib.c:507 src/msgcat.c:442 src/msgcomm.c:426 src/msgconv.c:358
+#: src/msgen.c:354 src/msgmerge.c:592 src/msgunfmt.c:506 src/msguniq.c:390
+#: src/xgettext.c:1178
 #, c-format
 msgid ""
 "  -e, --no-escape             do not use C escapes in output (default)\n"
@@ -1043,9 +1302,9 @@ msgstr ""
 "  -e, --no-escape             輸出結果不使用 C 轉義控制序列\n"
 "                              (escape sequence),這是預設運作方式\n"
 
-#: src/msgattrib.c:489 src/msgcat.c:442 src/msgcomm.c:426 src/msgconv.c:354
-#: src/msgen.c:349 src/msgfilter.c:448 src/msgmerge.c:575 src/msgunfmt.c:507
-#: src/msguniq.c:390 src/xgettext.c:936
+#: src/msgattrib.c:509 src/msgcat.c:444 src/msgcomm.c:428 src/msgconv.c:360
+#: src/msgen.c:356 src/msgfilter.c:480 src/msgmerge.c:594 src/msgunfmt.c:508
+#: src/msguniq.c:392 src/xgettext.c:1180
 #, c-format
 msgid ""
 "  -E, --escape                use C escapes in output, no extended chars\n"
@@ -1054,66 +1313,66 @@ msgstr ""
 "sequence)\n"
 "                              ,而不使用非 ASCII 字元\n"
 
-#: src/msgattrib.c:491 src/msgcat.c:444 src/msgcomm.c:428 src/msgconv.c:356
-#: src/msgen.c:351 src/msgfilter.c:450 src/msggrep.c:599 src/msgmerge.c:577
-#: src/msgunfmt.c:509 src/msguniq.c:392 src/xgettext.c:938
+#: src/msgattrib.c:511 src/msgcat.c:446 src/msgcomm.c:430 src/msgconv.c:362
+#: src/msgen.c:358 src/msgfilter.c:482 src/msggrep.c:605 src/msgmerge.c:596
+#: src/msgunfmt.c:510 src/msguniq.c:394 src/xgettext.c:1182
 #, c-format
 msgid "      --force-po              write PO file even if empty\n"
 msgstr "      --force-po              就算沒有內容仍產生 PO 檔\n"
 
-#: src/msgattrib.c:493 src/msgcat.c:446 src/msgcomm.c:430 src/msguniq.c:394
-#: src/xgettext.c:940
+#: src/msgattrib.c:513 src/msgcat.c:448 src/msgcomm.c:432 src/msguniq.c:396
+#: src/xgettext.c:1184
 #, c-format
 msgid "  -i, --indent                write the .po file using indented style\n"
 msgstr "  -i, --indent                寫入的 .po 檔內容會進行縮排\n"
 
-#: src/msgattrib.c:495 src/msgcat.c:448 src/msgcomm.c:432 src/msguniq.c:396
-#: src/xgettext.c:942
+#: src/msgattrib.c:515 src/msgcat.c:450 src/msgcomm.c:434 src/msguniq.c:398
+#: src/xgettext.c:1186
 #, c-format
 msgid "      --no-location           do not write '#: filename:line' lines\n"
 msgstr "      --no-location           不加入類似 '#: 檔案:行號' 的源代碼位置\n"
 
-#: src/msgattrib.c:497 src/msgcat.c:450 src/msgcomm.c:434 src/msguniq.c:398
-#: src/xgettext.c:944
+#: src/msgattrib.c:517 src/msgcat.c:452 src/msgcomm.c:436 src/msguniq.c:400
+#: src/xgettext.c:1188
 #, c-format
 msgid ""
 "  -n, --add-location          generate '#: filename:line' lines (default)\n"
 msgstr ""
 "  -n, --add-location          會加入 '#: 檔案:行號' 格式的源代碼位置 (預設)\n"
 
-#: src/msgattrib.c:499 src/msgcat.c:452 src/msgcomm.c:436 src/msguniq.c:400
-#: src/xgettext.c:946
+#: src/msgattrib.c:519 src/msgcat.c:454 src/msgcomm.c:438 src/msguniq.c:402
+#: src/xgettext.c:1190
 #, c-format
 msgid ""
 "      --strict                write out strict Uniforum conforming .po file\n"
 msgstr ""
 "      --strict                產生的 .po 檔內容跟隨嚴格的 Uniforum 格式\n"
 
-#: src/msgattrib.c:501 src/msgcat.c:454 src/msgcomm.c:438 src/msgconv.c:366
-#: src/msgen.c:361 src/msgfilter.c:462 src/msggrep.c:609 src/msginit.c:410
-#: src/msgmerge.c:587 src/msgunfmt.c:515 src/msguniq.c:402
+#: src/msgattrib.c:521 src/msgcat.c:456 src/msgcomm.c:440 src/msgconv.c:372
+#: src/msgen.c:368 src/msgfilter.c:494 src/msggrep.c:615 src/msginit.c:411
+#: src/msgmerge.c:606 src/msgunfmt.c:516 src/msguniq.c:404
 #, c-format
 msgid "  -p, --properties-output     write out a Java .properties file\n"
 msgstr "  -p, --properties-output    產生 Java .properties 檔案\n"
 
-#: src/msgattrib.c:503 src/msgcat.c:456 src/msgcomm.c:440 src/msgconv.c:368
-#: src/msgen.c:363 src/msgfilter.c:464 src/msggrep.c:611 src/msginit.c:412
-#: src/msgmerge.c:589 src/msgunfmt.c:517 src/msguniq.c:404 src/xgettext.c:950
+#: src/msgattrib.c:523 src/msgcat.c:458 src/msgcomm.c:442 src/msgconv.c:374
+#: src/msgen.c:370 src/msgfilter.c:496 src/msggrep.c:617 src/msginit.c:413
+#: src/msgmerge.c:608 src/msgunfmt.c:518 src/msguniq.c:406 src/xgettext.c:1194
 #, c-format
 msgid ""
 "      --stringtable-output    write out a NeXTstep/GNUstep .strings file\n"
 msgstr "      --stringtable-output    產生 NeXTstep/GNUstep .strings 檔案\n"
 
-#: src/msgattrib.c:505 src/msgcat.c:458 src/msgcomm.c:442 src/msgconv.c:370
-#: src/msgen.c:365 src/msgfilter.c:466 src/msggrep.c:613 src/msginit.c:414
-#: src/msgmerge.c:591 src/msgunfmt.c:519 src/msguniq.c:406 src/xgettext.c:952
+#: src/msgattrib.c:525 src/msgcat.c:460 src/msgcomm.c:444 src/msgconv.c:376
+#: src/msgen.c:372 src/msgfilter.c:498 src/msggrep.c:619 src/msginit.c:415
+#: src/msgmerge.c:610 src/msgunfmt.c:520 src/msguniq.c:408 src/xgettext.c:1200
 #, c-format
 msgid "  -w, --width=NUMBER          set output page width\n"
 msgstr "  -w, --width=NUMBER          指定輸出檔每行寬度\n"
 
-#: src/msgattrib.c:507 src/msgcat.c:460 src/msgcomm.c:444 src/msgconv.c:372
-#: src/msgen.c:367 src/msgfilter.c:468 src/msggrep.c:615 src/msginit.c:416
-#: src/msgmerge.c:593 src/msgunfmt.c:521 src/msguniq.c:408 src/xgettext.c:954
+#: src/msgattrib.c:527 src/msgcat.c:462 src/msgcomm.c:446 src/msgconv.c:378
+#: src/msgen.c:374 src/msgfilter.c:500 src/msggrep.c:621 src/msginit.c:417
+#: src/msgmerge.c:612 src/msgunfmt.c:522 src/msguniq.c:410 src/xgettext.c:1202
 #, c-format
 msgid ""
 "      --no-wrap               do not break long message lines, longer than\n"
@@ -1121,32 +1380,32 @@ msgid ""
 msgstr ""
 "      --no-wrap               即使輸出的訊息超出頁寬,也不將輸出的訊息斷行\n"
 
-#: src/msgattrib.c:510 src/msgcat.c:463 src/msgcomm.c:447 src/msgconv.c:375
-#: src/msgen.c:370 src/msgfilter.c:471 src/msgmerge.c:596 src/msgunfmt.c:524
-#: src/msguniq.c:411 src/xgettext.c:957
+#: src/msgattrib.c:530 src/msgcat.c:465 src/msgcomm.c:449 src/msgconv.c:381
+#: src/msgen.c:377 src/msgfilter.c:503 src/msgmerge.c:615 src/msgunfmt.c:525
+#: src/msguniq.c:413 src/xgettext.c:1205
 #, c-format
 msgid "  -s, --sort-output           generate sorted output\n"
 msgstr "  -s, --sort-output           將輸出結果排序\n"
 
-#: src/msgattrib.c:512 src/msgcat.c:465 src/msgcomm.c:449 src/msgconv.c:377
-#: src/msgen.c:372 src/msgfilter.c:473 src/msgmerge.c:598 src/msguniq.c:413
-#: src/xgettext.c:959
+#: src/msgattrib.c:532 src/msgcat.c:467 src/msgcomm.c:451 src/msgconv.c:383
+#: src/msgen.c:379 src/msgfilter.c:505 src/msgmerge.c:617 src/msguniq.c:415
+#: src/xgettext.c:1207
 #, c-format
 msgid "  -F, --sort-by-file          sort output by file location\n"
 msgstr "  -F, --sort-by-file          根據檔案位置排列輸出結果\n"
 
-#: src/msgcat.c:321 src/msgcomm.c:326
+#: src/msgcat.c:323 src/msgcomm.c:328
 #, c-format
 msgid "impossible selection criteria specified (%d < n < %d)"
 msgstr "不可能出現的選擇條件 (%d < n <%d)"
 
-#: src/msgcat.c:366 src/msgcomm.c:358 src/xgettext.c:816
+#: src/msgcat.c:368 src/msgcomm.c:360 src/xgettext.c:1048
 #, c-format
 msgid "Usage: %s [OPTION] [INPUTFILE]...\n"
 msgstr "用法:%s [選項] [輸入檔]...\n"
 
-#: src/msgcat.c:371
-#, c-format, no-wrap
+#: src/msgcat.c:373
+#, fuzzy, c-format, no-wrap
 msgid ""
 "Concatenates and merges the specified PO files.\n"
 "Find messages which are common to two or more of the specified PO files.\n"
@@ -1154,9 +1413,9 @@ msgid ""
 "before messages are printed.  Conversely, the --less-than option may be\n"
 "used to specify less commonality before messages are printed (i.e.\n"
 "--less-than=2 will only print the unique messages).  Translations,\n"
-"comments and extract comments will be cumulated, except that if --use-first\n"
-"is specified, they will be taken from the first PO file to define them.\n"
-"File positions from all PO files will be cumulated.\n"
+"comments, extracted comments, and file positions will be cumulated, except\n"
+"that if --use-first is specified, they will be taken from the first PO file\n"
+"to define them.\n"
 msgstr ""
 "合併指定的 PO 檔。\n"
 "在兩個或多個指定的 PO 檔中找出共同的翻譯訊息。利用 --more-than 選項,可以\n"
@@ -1166,23 +1425,23 @@ msgstr ""
 "--use-first 選項,那樣則會由第一個含有該翻譯條目的檔案取得資料。\n"
 "所有 PO 檔中的翻譯條目的檔案位置都會累積下來。\n"
 
-#: src/msgcat.c:388 src/msgcomm.c:379 src/xgettext.c:832
+#: src/msgcat.c:390 src/msgcomm.c:381 src/xgettext.c:1064
 #, c-format
 msgid "  INPUTFILE ...               input files\n"
 msgstr "  INPUTFILE ...               輸入檔\n"
 
-#: src/msgcat.c:390 src/msgcomm.c:381 src/xgettext.c:834
+#: src/msgcat.c:392 src/msgcomm.c:383 src/xgettext.c:1066
 #, c-format
 msgid "  -f, --files-from=FILE       get list of input files from FILE\n"
 msgstr "  -f, --files-from=FILE       由 FILE 讀取所有輸入檔的位置\n"
 
-#: src/msgcat.c:394 src/msgcomm.c:385 src/msgen.c:319 src/msgfmt.c:670
-#: src/xgettext.c:838
+#: src/msgcat.c:396 src/msgcomm.c:387 src/msgen.c:326 src/msgfmt.c:938
+#: src/xgettext.c:1070
 #, c-format
 msgid "If input file is -, standard input is read.\n"
 msgstr "如果輸入檔是 - 的話,會由標準輸入讀取資料。\n"
 
-#: src/msgcat.c:407 src/msgcomm.c:398
+#: src/msgcat.c:409 src/msgcomm.c:400
 #, c-format
 msgid ""
 "  -<, --less-than=NUMBER      print messages with less than this many\n"
@@ -1191,7 +1450,7 @@ msgstr ""
 "  -<, --less-than=NUMBER      當一項條目的不同翻譯少於多少種就會顯示,\n"
 "                              預設為無限 (即顯示所有條目)\n"
 
-#: src/msgcat.c:410
+#: src/msgcat.c:412
 #, c-format
 msgid ""
 "  ->, --more-than=NUMBER      print messages with more than this many\n"
@@ -1200,7 +1459,7 @@ msgstr ""
 "  ->, --more-than=NUMBER      當一項條目的不同翻譯多於多少種才會顯示,\n"
 "                              預設為 0 種 (即顯示所有條目)\n"
 
-#: src/msgcat.c:413 src/msgcomm.c:404
+#: src/msgcat.c:415 src/msgcomm.c:406
 #, c-format
 msgid ""
 "  -u, --unique                shorthand for --less-than=2, requests\n"
@@ -1209,15 +1468,15 @@ msgstr ""
 "  -u, --unique                等於 --less-than=2,表示只顯示\n"
 "                              只有一種翻譯的字句\n"
 
-#: src/msgcat.c:419 src/msgcmp.c:252 src/msgcomm.c:410 src/msgfmt.c:735
-#: src/msgmerge.c:557
+#: src/msgcat.c:421 src/msgcmp.c:253 src/msgcomm.c:412 src/msgfmt.c:1042
+#: src/msgmerge.c:576
 #, c-format
 msgid ""
 "  -P, --properties-input      input files are in Java .properties syntax\n"
 msgstr "  -P, --properties-input      輸入檔格式為 Java .properties 格式\n"
 
-#: src/msgcat.c:421 src/msgcmp.c:254 src/msgcomm.c:412 src/msgfmt.c:737
-#: src/msgmerge.c:559
+#: src/msgcat.c:423 src/msgcmp.c:255 src/msgcomm.c:414 src/msgfmt.c:1044
+#: src/msgmerge.c:578
 #, c-format
 msgid ""
 "      --stringtable-input     input files are in NeXTstep/GNUstep .strings\n"
@@ -1225,12 +1484,12 @@ msgid ""
 msgstr ""
 "      --stringtable-input     輸入檔格式為 NeXTstep/GNUstep .strings 格式\n"
 
-#: src/msgcat.c:427 src/msgconv.c:332 src/msguniq.c:377
+#: src/msgcat.c:429 src/msgconv.c:338 src/msguniq.c:379
 #, c-format
 msgid "  -t, --to-code=NAME          encoding for output\n"
 msgstr "  -t, --to-code=名稱          輸出的編碼\n"
 
-#: src/msgcat.c:429 src/msguniq.c:379
+#: src/msgcat.c:431 src/msguniq.c:381
 #, c-format
 msgid ""
 "      --use-first             use first available translation for each\n"
@@ -1239,33 +1498,33 @@ msgstr ""
 "      --use-first             每句只使用第一個出現的翻譯,而不會將所有\n"
 "                              翻譯合併起來\n"
 
-#: src/msgcat.c:432 src/msgen.c:339 src/msgmerge.c:565
+#: src/msgcat.c:434 src/msgen.c:346 src/msgmerge.c:584
 #, c-format
 msgid ""
 "      --lang=CATALOGNAME      set 'Language' field in the header entry\n"
 msgstr ""
 
 #. This is a proper name. See the gettext manual, section Names.
-#: src/msgcmp.c:178 src/msgcomm.c:286 src/msgmerge.c:350
+#: src/msgcmp.c:179 src/msgcomm.c:292 src/msgmerge.c:363
 msgid "Peter Miller"
 msgstr ""
 
-#: src/msgcmp.c:189 src/msgmerge.c:361
+#: src/msgcmp.c:190 src/msgmerge.c:374
 #, c-format
 msgid "no input files given"
 msgstr "未指定輸入檔"
 
-#: src/msgcmp.c:194 src/msgmerge.c:366
+#: src/msgcmp.c:195 src/msgmerge.c:379
 #, c-format
 msgid "exactly 2 input files required"
 msgstr "需要恰好指定兩個輸入檔"
 
-#: src/msgcmp.c:213 src/msgmerge.c:480
+#: src/msgcmp.c:214 src/msgmerge.c:499
 #, c-format
 msgid "Usage: %s [OPTION] def.po ref.pot\n"
 msgstr "用法:%s [選項] def.po ref.pot\n"
 
-#: src/msgcmp.c:218
+#: src/msgcmp.c:219
 #, c-format, no-wrap
 msgid ""
 "Compare two Uniforum style .po files to check that both contain the same\n"
@@ -1281,22 +1540,22 @@ msgstr ""
 "此程式可用來檢查程式中的所有的訊息是否都已經翻譯好了。比較時如果\n"
 "有不完全配合的字串出現,程式會以模糊配對的方式得出較好的結果。\n"
 
-#: src/msgcmp.c:232
+#: src/msgcmp.c:233
 #, c-format
 msgid "  def.po                      translations\n"
 msgstr "  def.po                      翻譯檔\n"
 
-#: src/msgcmp.c:234
+#: src/msgcmp.c:235
 #, c-format
 msgid "  ref.pot                     references to the sources\n"
 msgstr "  ref.pot                     未翻譯檔案\n"
 
-#: src/msgcmp.c:239 src/msgmerge.c:546
+#: src/msgcmp.c:240 src/msgmerge.c:565
 #, c-format
 msgid "Operation modifiers:\n"
 msgstr "運作模式有關選項:\n"
 
-#: src/msgcmp.c:241 src/msgmerge.c:548
+#: src/msgcmp.c:242 src/msgmerge.c:567
 #, c-format
 msgid ""
 "  -m, --multi-domain          apply ref.pot to each of the domains in def."
@@ -1304,71 +1563,71 @@ msgid ""
 msgstr ""
 "  -m, --multi-domain          將 ref.pot 套用於 def.po 中的每一個領域\n"
 
-#: src/msgcmp.c:243 src/msgmerge.c:550
+#: src/msgcmp.c:244 src/msgmerge.c:569
 #, c-format
 msgid "  -N, --no-fuzzy-matching     do not use fuzzy matching\n"
 msgstr "  -N, --no-fuzzy-matching     不進行模糊字串配對\n"
 
-#: src/msgcmp.c:245
+#: src/msgcmp.c:246
 #, fuzzy, c-format
 msgid "      --use-fuzzy             consider fuzzy entries\n"
 msgstr "  -f, --use-fuzzy             在輸出結果中顯示模糊翻譯\n"
 
-#: src/msgcmp.c:247
+#: src/msgcmp.c:248
 #, fuzzy, c-format
 msgid "      --use-untranslated      consider untranslated entries\n"
 msgstr "      --untranslated          只保留未翻譯條目,刪除已翻譯條目\n"
 
-#: src/msgcmp.c:324
+#: src/msgcmp.c:325
 #, fuzzy, c-format
 msgid "this message is untranslated"
 msgstr "警告:沒有使用這個訊息"
 
-#: src/msgcmp.c:330
+#: src/msgcmp.c:331
 #, c-format
 msgid "this message needs to be reviewed by the translator"
 msgstr ""
 
-#: src/msgcmp.c:369 src/msgmerge.c:1500
+#: src/msgcmp.c:370 src/msgmerge.c:1523
 #, c-format
 msgid "this message is used but not defined..."
 msgstr "這個訊息有使用過但沒有定義..."
 
-#: src/msgcmp.c:372 src/msgmerge.c:1503
+#: src/msgcmp.c:373 src/msgmerge.c:1526
 #, c-format
 msgid "...but this definition is similar"
 msgstr "...但這個定義很相似"
 
-#: src/msgcmp.c:377 src/msgmerge.c:1531
+#: src/msgcmp.c:378 src/msgmerge.c:1554
 #, c-format
 msgid "this message is used but not defined in %s"
 msgstr "這個訊息有使用過但在 %s 中沒有定義"
 
-#: src/msgcmp.c:546
+#: src/msgcmp.c:547
 #, c-format
 msgid "warning: this message is not used"
 msgstr "警告:沒有使用這個訊息"
 
-#: src/msgcmp.c:553 src/msgfmt.c:541
+#: src/msgcmp.c:554 src/msgfmt.c:787 src/msgfmt.c:1633 src/xgettext.c:1021
 #, c-format
 msgid "found %d fatal error"
 msgid_plural "found %d fatal errors"
 msgstr[0] "找到 %d 個嚴重錯誤"
 
-#: src/msgcomm.c:315
+#: src/msgcomm.c:317
 #, c-format
 msgid "at least two files must be specified"
 msgstr "必須指定至少兩個檔案"
 
-#: src/msgcomm.c:363
-#, c-format, no-wrap
+#: src/msgcomm.c:365
+#, fuzzy, c-format, no-wrap
 msgid ""
 "Find messages which are common to two or more of the specified PO files.\n"
 "By using the --more-than option, greater commonality may be requested\n"
 "before messages are printed.  Conversely, the --less-than option may be\n"
 "used to specify less commonality before messages are printed (i.e.\n"
 "--less-than=2 will only print the unique messages).  Translations,\n"
-"comments and extract comments will be preserved, but only from the first\n"
+"comments and extracted comments will be preserved, but only from the first\n"
 "PO file to define them.  File positions from all PO files will be\n"
 "cumulated.\n"
 msgstr ""
@@ -1378,7 +1637,7 @@ msgstr ""
 "訊息)。翻譯內容、自行加上的註解和原程式碼的註解都會保留,但只會由第一個\n"
 "含有該翻譯條目的檔案取得。所有 PO 檔中的翻譯條目的檔案位置都會累積下來。\n"
 
-#: src/msgcomm.c:401
+#: src/msgcomm.c:403
 #, c-format
 msgid ""
 "  ->, --more-than=NUMBER      print messages with more than this many\n"
@@ -1386,67 +1645,67 @@ msgid ""
 msgstr ""
 "  ->, --more-than=NUMBER      顯示出現多於指定次數的字句,預設為 1 次\n"
 
-#: src/msgcomm.c:451 src/xgettext.c:961
-#, c-format
+#: src/msgcomm.c:453 src/xgettext.c:1209
+#, fuzzy, c-format
 msgid ""
-"      --omit-header           don't write header with `msgid \"\"' entry\n"
+"      --omit-header           don't write header with 'msgid \"\"' entry\n"
 msgstr "      --omit-header           不顯示標頭 (即 ‘msgid \"\"’ 項目)\n"
 
-#: src/msgconv.c:306
+#: src/msgconv.c:312
 #, c-format
 msgid "Converts a translation catalog to a different character encoding.\n"
 msgstr "將一個翻譯檔的編碼轉換為另一種文字編碼。\n"
 
-#: src/msgconv.c:330
+#: src/msgconv.c:336
 #, c-format
 msgid "Conversion target:\n"
 msgstr "轉換目標:\n"
 
-#: src/msgconv.c:334
+#: src/msgconv.c:340
 #, c-format
 msgid "The default encoding is the current locale's encoding.\n"
 msgstr "預設的編碼為目前語言的編碼。\n"
 
-#: src/msgconv.c:358 src/msgen.c:353 src/msgmerge.c:579
+#: src/msgconv.c:364 src/msgen.c:360 src/msgmerge.c:598
 #, c-format
 msgid "  -i, --indent                indented output style\n"
 msgstr "  -i, --indent                將輸出結果進行縮排\n"
 
-#: src/msgconv.c:360 src/msgen.c:355 src/msgfilter.c:456 src/msggrep.c:603
-#: src/msgmerge.c:581
+#: src/msgconv.c:366 src/msgen.c:362 src/msgfilter.c:488 src/msggrep.c:609
+#: src/msgmerge.c:600
 #, c-format
 msgid "      --no-location           suppress '#: filename:line' lines\n"
 msgstr "      --no-location           不輸出源代碼位置\n"
 
-#: src/msgconv.c:362 src/msgen.c:357 src/msgfilter.c:458 src/msggrep.c:605
-#: src/msgmerge.c:583
-#, c-format
+#: src/msgconv.c:368 src/msgen.c:364 src/msgfilter.c:490 src/msggrep.c:611
+#: src/msgmerge.c:602
+#, fuzzy, c-format
 msgid ""
-"      --add-location          preserve '#: filename:line' lines (default)\n"
+"  -n, --add-location          preserve '#: filename:line' lines (default)\n"
 msgstr "      --add-location          保留源代碼位置 (預設)\n"
 
-#: src/msgconv.c:364 src/msgen.c:359 src/msgfilter.c:460 src/msggrep.c:607
-#: src/msgmerge.c:585
+#: src/msgconv.c:370 src/msgen.c:366 src/msgfilter.c:492 src/msggrep.c:613
+#: src/msgmerge.c:604
 #, c-format
 msgid "      --strict                strict Uniforum output style\n"
 msgstr "      --strict                嚴格遵從 Uniforum 格式\n"
 
-#: src/msgen.c:248 src/msgfmt.c:383 src/xgettext.c:634
+#: src/msgen.c:259 src/msgfmt.c:463 src/xgettext.c:724
 #, c-format
 msgid "no input file given"
 msgstr "未指定輸入檔"
 
-#: src/msgen.c:253
+#: src/msgen.c:264
 #, c-format
 msgid "exactly one input file required"
 msgstr "需要恰好指定一個輸入檔"
 
-#: src/msgen.c:298
+#: src/msgen.c:305
 #, c-format
 msgid "Usage: %s [OPTION] INPUTFILE\n"
 msgstr "用法:%s [選項] 輸入檔\n"
 
-#: src/msgen.c:303
+#: src/msgen.c:310
 #, c-format, no-wrap
 msgid ""
 "Creates an English translation catalog.  The input file is the last\n"
@@ -1457,22 +1716,22 @@ msgstr ""
 "產生英文翻譯檔。輸入檔可以是 PO 檔或 POT 檔 (通常由 xgettext 產生)。\n"
 "未翻譯的條目會填上和 msgid 一樣的字串。\n"
 
-#: src/msgen.c:315
+#: src/msgen.c:322
 #, c-format
 msgid "  INPUTFILE                   input PO or POT file\n"
 msgstr "  輸入檔                      作為輸入的 PO 或 POT 檔\n"
 
-#: src/msgexec.c:196
+#: src/msgexec.c:203
 #, c-format
 msgid "missing command name"
 msgstr "缺少了指令名稱"
 
-#: src/msgexec.c:257
+#: src/msgexec.c:264
 #, c-format
 msgid "Usage: %s [OPTION] COMMAND [COMMAND-OPTION]\n"
 msgstr "用法:%s [選項] 指令 [指令選項]\n"
 
-#: src/msgexec.c:262
+#: src/msgexec.c:269
 #, c-format, no-wrap
 msgid ""
 "Applies a command to all translations of a translation catalog.\n"
@@ -1487,7 +1746,7 @@ msgstr ""
 "即是 msgexec 的輸出結果。msgexec 的回傳值是所有\n"
 "指令執行的回傳值的最大值。\n"
 
-#: src/msgexec.c:271
+#: src/msgexec.c:278
 #, c-format, no-wrap
 msgid ""
 "A special builtin command called '0' outputs the translation, followed by a\n"
@@ -1496,42 +1755,47 @@ msgstr ""
 "有一個稱為 '0' 的特殊內置指令,它會輸出所有翻譯條目,並隨後加上 null 位元。\n"
 "“msgexec 0” 的輸出適用於作為 “xargs -0” 的輸入。\n"
 
-#: src/msgexec.c:281 src/msgfilter.c:401
+#: src/msgexec.c:283
+#, fuzzy, c-format
+msgid "Command input:\n"
+msgstr "標準輸入"
+
+#: src/msgexec.c:285
+#, fuzzy, c-format
+msgid "  --newline                   add newline at the end of input\n"
+msgstr "  -h, --help                  顯示本訊息,然後結束\n"
+
+#: src/msgexec.c:293 src/msgfilter.c:427
 #, c-format
 msgid "  -i, --input=INPUTFILE       input PO file\n"
 msgstr "  -i, --input=INPUTFILE       作為輸入的 PO 檔\n"
 
-#: src/msgexec.c:345
+#: src/msgexec.c:357
 #, c-format
 msgid "write to stdout failed"
 msgstr "寫入至標準輸出時發生錯誤"
 
-#: src/msgexec.c:389
-#, c-format
-msgid "write to %s subprocess failed"
-msgstr "寫入至 %s 副進程時發生錯誤"
-
-#: src/msgfilter.c:289
+#: src/msgfilter.c:305
 #, c-format
 msgid "missing filter name"
 msgstr "未指定過濾器"
 
-#: src/msgfilter.c:313
+#: src/msgfilter.c:325
 #, c-format
 msgid "at least one sed script must be specified"
 msgstr "必須指定至少一個 sed script"
 
-#: src/msgfilter.c:388
+#: src/msgfilter.c:414
 #, c-format
 msgid "Usage: %s [OPTION] FILTER [FILTER-OPTION]\n"
 msgstr "用法:%s [選項] 過濾器 [過濾器選項]\n"
 
-#: src/msgfilter.c:392
+#: src/msgfilter.c:418
 #, c-format
 msgid "Applies a filter to all translations of a translation catalog.\n"
 msgstr "對於翻譯檔中的所有翻譯條目進行過濾。\n"
 
-#: src/msgfilter.c:416
+#: src/msgfilter.c:442
 #, c-format
 msgid ""
 "The FILTER can be any program that reads a translation from standard input\n"
@@ -1540,18 +1804,30 @@ msgstr ""
 "<過濾器>可以是任何由標準輸入讀入翻譯條目\n"
 "並將修改後的翻譯寫進標準輸出的程式。\n"
 
-#: src/msgfilter.c:421
+#: src/msgfilter.c:447
 #, c-format
-msgid "Useful FILTER-OPTIONs when the FILTER is 'sed':\n"
-msgstr "當<過濾器>是 ‘sed’ 時一些比較有用的選項:\n"
+msgid "Filter input and output:\n"
+msgstr ""
 
-#: src/msgfilter.c:423
+#: src/msgfilter.c:449
+#, c-format
+msgid ""
+"  --newline                   add a newline at the end of input and\n"
+"                                remove a newline from the end of output"
+msgstr ""
+
+#: src/msgfilter.c:453
+#, c-format
+msgid "Useful FILTER-OPTIONs when the FILTER is 'sed':\n"
+msgstr "當<過濾器>是 ‘sed’ 時一些比較有用的選項:\n"
+
+#: src/msgfilter.c:455
 #, c-format
 msgid ""
 "  -e, --expression=SCRIPT     add SCRIPT to the commands to be executed\n"
 msgstr ""
 
-#: src/msgfilter.c:425
+#: src/msgfilter.c:457
 #, c-format
 msgid ""
 "  -f, --file=SCRIPTFILE       add the contents of SCRIPTFILE to the "
@@ -1559,13 +1835,13 @@ msgid ""
 "                                to be executed\n"
 msgstr ""
 
-#: src/msgfilter.c:428
+#: src/msgfilter.c:460
 #, c-format
 msgid ""
 "  -n, --quiet, --silent       suppress automatic printing of pattern space\n"
 msgstr "  -n, --quiet, --silent       不會自動顯示過濾後的結果\n"
 
-#: src/msgfilter.c:446 src/msggrep.c:595
+#: src/msgfilter.c:478 src/msggrep.c:601
 #, c-format
 msgid ""
 "      --no-escape             do not use C escapes in output (default)\n"
@@ -1573,106 +1849,130 @@ msgstr ""
 "      --no-escape             輸出結果不使用 C 轉義控制序列\n"
 "                              (escape sequence),這是預設運作方式\n"
 
-#: src/msgfilter.c:452 src/msggrep.c:601
+#: src/msgfilter.c:484 src/msggrep.c:607
 #, c-format
 msgid "      --indent                indented output style\n"
 msgstr "      --indent                將輸出結果進行縮排\n"
 
-#: src/msgfilter.c:454
+#: src/msgfilter.c:486
 #, c-format
 msgid ""
 "      --keep-header           keep header entry unmodified, don't filter it\n"
 msgstr "      --keep-header           保護標頭內容,過濾內容時不會被更改\n"
 
-#: src/msgfmt.c:304
+#: src/msgfilter.c:666
+#, fuzzy, c-format
+msgid "filter output is not terminated with a newline"
+msgstr "檔案 %s 包含並非以 NUL 為結尾的字串"
+
+#: src/msgfmt.c:372
 #, c-format
 msgid "the argument to %s should be a single punctuation character"
-msgstr "%s ç\9a\84å\8f\83數應該是一個標點符號"
+msgstr "%s ç\9a\84å¼\95數應該是一個標點符號"
 
-#: src/msgfmt.c:351
+#: src/msgfmt.c:419
 #, c-format
 msgid "invalid endianness: %s"
 msgstr ""
 
 #. This is a proper name. See the gettext manual, section Names.
-#: src/msgfmt.c:372 src/msgunfmt.c:268 src/xgettext.c:590
+#: src/msgfmt.c:450 src/msgunfmt.c:269 src/xgettext.c:684
 msgid "Ulrich Drepper"
 msgstr ""
 
-#: src/msgfmt.c:425 src/msgfmt.c:447 src/msgfmt.c:469 src/msgunfmt.c:330
-#: src/msgunfmt.c:353
+#: src/msgfmt.c:471
+#, fuzzy, c-format
+msgid "no input file should be given if %s and %s are specified"
+msgstr "如果沒有指定輸入檔或輸入檔是 ‘-’,則由標準輸入讀取內容。\n"
+
+#: src/msgfmt.c:517 src/msgfmt.c:539 src/msgfmt.c:561 src/msgunfmt.c:331
+#: src/msgunfmt.c:354
 #, c-format
 msgid "%s requires a \"-d directory\" specification"
 msgstr "%s 需要指定 “-d 目錄” 選項"
 
-#: src/msgfmt.c:440 src/msgfmt.c:462 src/msgunfmt.c:323 src/msgunfmt.c:346
+#: src/msgfmt.c:532 src/msgfmt.c:554 src/msgfmt.c:589 src/msgfmt.c:617
+#: src/msgunfmt.c:324 src/msgunfmt.c:347
 #, c-format
 msgid "%s requires a \"-l locale\" specification"
 msgstr "%s 需要指定 “-l locale” 選項"
 
-#: src/msgfmt.c:478 src/msgunfmt.c:362 src/msgunfmt.c:368
+#: src/msgfmt.c:571 src/msgfmt.c:599
+#, fuzzy, c-format
+msgid "%s requires a \"--template template\" specification"
+msgstr "%s 需要指定 “-l locale” 選項"
+
+#: src/msgfmt.c:578 src/msgfmt.c:606
+#, fuzzy, c-format
+msgid "%s requires a \"-o file\" specification"
+msgstr "%s 需要指定 “-l locale” 選項"
+
+#: src/msgfmt.c:584 src/msgfmt.c:612
+#, fuzzy, c-format
+msgid "%s and %s are mutually exclusive in %s"
+msgstr "%s 和 %s 兩者是互不相容的"
+
+#: src/msgfmt.c:626 src/msgunfmt.c:363 src/msgunfmt.c:369
 #, c-format
 msgid "%s is only valid with %s or %s"
 msgstr "%s 只能配合 %s 或 %s 一起使用才有效"
 
-#: src/msgfmt.c:484 src/msgfmt.c:490
+#: src/msgfmt.c:632 src/msgfmt.c:638
 #, c-format
 msgid "%s is only valid with %s, %s or %s"
 msgstr "%s 只能配合 %s、%s 或 %s 一起使用才有效"
 
+#: src/msgfmt.c:723
+#, fuzzy, c-format
+msgid "cannot locate ITS rules for %s"
+msgstr "無法產生輸出檔 “%s”"
+
 #. TRANSLATORS: The prefix before a statistics message.  The argument
 #. is a file name or a comma separated list of file names.
-#: src/msgfmt.c:616
+#: src/msgfmt.c:884
 #, c-format
 msgid "%s: "
 msgstr ""
 
-#: src/msgfmt.c:620
+#: src/msgfmt.c:888
 #, c-format
 msgid "%d translated message"
 msgid_plural "%d translated messages"
 msgstr[0] "已翻譯 %d 個條目"
 
-#: src/msgfmt.c:625
+#: src/msgfmt.c:893
 #, c-format
 msgid ", %d fuzzy translation"
 msgid_plural ", %d fuzzy translations"
 msgstr[0] ",有 %d 個條目標記為模糊翻譯"
 
-#: src/msgfmt.c:630
+#: src/msgfmt.c:898
 #, c-format
 msgid ", %d untranslated message"
 msgid_plural ", %d untranslated messages"
 msgstr[0] ",還有 %d 個條目未翻譯"
 
-#: src/msgfmt.c:650
+#: src/msgfmt.c:918
 #, c-format
 msgid "Usage: %s [OPTION] filename.po ...\n"
 msgstr "用法:%s [選項] filename.po ...\n"
 
-#: src/msgfmt.c:654
+#: src/msgfmt.c:922
 #, c-format
 msgid "Generate binary message catalog from textual translation description.\n"
 msgstr "由文字模式翻譯檔產生二元碼翻譯檔。\n"
 
-#: src/msgfmt.c:659 src/xgettext.c:825
-#, c-format, no-wrap
-msgid ""
-"Mandatory arguments to long options are mandatory for short options too.\n"
-"Similarly for optional arguments.\n"
-msgstr "長選項必要的參數在使用短選項時也是必要的。對於選擇性的參數也一樣。\n"
-
-#: src/msgfmt.c:666
+#: src/msgfmt.c:934
 #, c-format
 msgid "  filename.po ...             input files\n"
 msgstr "  filename.po ...             輸入檔\n"
 
-#: src/msgfmt.c:673 src/msgmerge.c:512 src/msgunfmt.c:438 src/xgettext.c:873
+#: src/msgfmt.c:941 src/msgmerge.c:531 src/msgunfmt.c:439 src/xgettext.c:1106
 #, c-format
 msgid "Operation mode:\n"
 msgstr "操作模式:\n"
 
-#: src/msgfmt.c:675
+#: src/msgfmt.c:943
 #, c-format
 msgid ""
 "  -j, --java                  Java mode: generate a Java ResourceBundle "
@@ -1680,7 +1980,7 @@ msgid ""
 msgstr ""
 "  -j, --java                  Java 模式:產生 Java ResourceBundle class\n"
 
-#: src/msgfmt.c:677
+#: src/msgfmt.c:945
 #, c-format
 msgid ""
 "      --java2                 like --java, and assume Java2 (JDK 1.2 or "
@@ -1689,12 +1989,12 @@ msgstr ""
 "      --java2                 類似 --java,假設格式為 Java2 (JDK 1.2 或以"
 "上)\n"
 
-#: src/msgfmt.c:679
+#: src/msgfmt.c:947
 #, c-format
 msgid "      --csharp                C# mode: generate a .NET .dll file\n"
 msgstr "      --csharp                C# 模式,會產生 .NET .dll 檔\n"
 
-#: src/msgfmt.c:681
+#: src/msgfmt.c:949
 #, c-format
 msgid ""
 "      --csharp-resources      C# resources mode: generate a .NET .resources "
@@ -1703,39 +2003,50 @@ msgstr ""
 "      --csharp-resources      C# resources 模式,會產生 .NET .resources 檔"
 "案\n"
 
-#: src/msgfmt.c:683
+#: src/msgfmt.c:951
 #, c-format
 msgid ""
 "      --tcl                   Tcl mode: generate a tcl/msgcat .msg file\n"
 msgstr "      --tcl                   Tcl 模式:產生 tcl/msgcat .msg 檔\n"
 
-#: src/msgfmt.c:685
+#: src/msgfmt.c:953
 #, c-format
 msgid "      --qt                    Qt mode: generate a Qt .qm file\n"
 msgstr "      --qt                    Qt 模式:產生 Qt .qm 檔\n"
 
-#: src/msgfmt.c:692
+#: src/msgfmt.c:955
+#, fuzzy, c-format
+msgid ""
+"      --desktop               Desktop Entry mode: generate a .desktop file\n"
+msgstr "      --qt                    Qt 模式:產生 Qt .qm 檔\n"
+
+#: src/msgfmt.c:957
+#, fuzzy, c-format
+msgid "      --xml                   XML mode: generate XML file\n"
+msgstr "      --qt                    Qt 模式:產生 Qt .qm 檔\n"
+
+#: src/msgfmt.c:964
 #, c-format
 msgid "      --strict                enable strict Uniforum mode\n"
 msgstr "      --strict                強制使用 Uniforum 格式翻譯檔\n"
 
-#: src/msgfmt.c:694 src/xgettext.c:849
+#: src/msgfmt.c:966 src/xgettext.c:1081
 #, c-format
 msgid "If output file is -, output is written to standard output.\n"
 msgstr "如果輸出檔是 - 的話,則會在標準輸出顯示結果。\n"
 
-#: src/msgfmt.c:697
+#: src/msgfmt.c:969
 #, c-format
 msgid "Output file location in Java mode:\n"
 msgstr "Java 模式的輸出檔位置:\n"
 
-#: src/msgfmt.c:699 src/msgfmt.c:713 src/msgunfmt.c:458 src/msgunfmt.c:469
+#: src/msgfmt.c:971 src/msgfmt.c:987 src/msgunfmt.c:459 src/msgunfmt.c:470
 #, c-format
 msgid "  -r, --resource=RESOURCE     resource name\n"
 msgstr "  -r, --resource=RESOURCE     resource 名稱\n"
 
-#: src/msgfmt.c:701 src/msgfmt.c:715 src/msgfmt.c:725 src/msgunfmt.c:460
-#: src/msgunfmt.c:471 src/msgunfmt.c:481
+#: src/msgfmt.c:973 src/msgfmt.c:989 src/msgfmt.c:999 src/msgfmt.c:1009
+#: src/msgfmt.c:1026 src/msgunfmt.c:461 src/msgunfmt.c:472 src/msgunfmt.c:482
 #, c-format
 msgid ""
 "  -l, --locale=LOCALE         locale name, either language or "
@@ -1744,13 +2055,21 @@ msgstr ""
 "  -l, --locale=LOCALE         指定語言,可以用語言名稱或者 xy_XY 格式的\n"
 "                              語言代號\n"
 
-#: src/msgfmt.c:703
+#: src/msgfmt.c:975
+#, fuzzy, c-format
+msgid ""
+"      --source                produce a .java file, instead of a .class "
+"file\n"
+msgstr ""
+"      --tcl                   Tcl 模式:輸入資料是 tcl/msgcat .msg 檔\n"
+
+#: src/msgfmt.c:977
 #, c-format
 msgid ""
 "  -d DIRECTORY                base directory of classes directory hierarchy\n"
 msgstr "  -d 目錄                     class 目錄層的基本目錄\n"
 
-#: src/msgfmt.c:705
+#: src/msgfmt.c:979
 #, c-format
 msgid ""
 "The class name is determined by appending the locale name to the resource "
@@ -1761,48 +2080,95 @@ msgstr ""
 "class 名稱是由語言名稱和 resource 名稱合併來決定的,兩者之間會用底線分隔。\n"
 "-d 選項是必須的。class 檔會存放在指定的目錄。\n"
 
-#: src/msgfmt.c:711
+#: src/msgfmt.c:985
 #, c-format
 msgid "Output file location in C# mode:\n"
 msgstr "C# 模式的輸出檔位置:\n"
 
-#: src/msgfmt.c:717 src/msgunfmt.c:473
+#: src/msgfmt.c:991 src/msgunfmt.c:474
 #, c-format
 msgid ""
 "  -d DIRECTORY                base directory for locale dependent .dll "
 "files\n"
 msgstr ""
 
-#: src/msgfmt.c:719
+#: src/msgfmt.c:993
 #, c-format
 msgid ""
 "The -l and -d options are mandatory.  The .dll file is written in a\n"
 "subdirectory of the specified directory whose name depends on the locale.\n"
 msgstr ""
 
-#: src/msgfmt.c:723
+#: src/msgfmt.c:997
 #, c-format
 msgid "Output file location in Tcl mode:\n"
 msgstr "Tcl 模式的輸出檔位置:\n"
 
-#: src/msgfmt.c:727 src/msgunfmt.c:483
+#: src/msgfmt.c:1001 src/msgunfmt.c:484
 #, c-format
 msgid "  -d DIRECTORY                base directory of .msg message catalogs\n"
 msgstr ""
 
-#: src/msgfmt.c:729
+#: src/msgfmt.c:1003
 #, c-format
 msgid ""
 "The -l and -d options are mandatory.  The .msg file is written in the\n"
 "specified directory.\n"
 msgstr ""
 
-#: src/msgfmt.c:741 src/xgettext.c:865
+#: src/msgfmt.c:1007
+#, c-format
+msgid "Desktop Entry mode options:\n"
+msgstr ""
+
+#: src/msgfmt.c:1013
+#, c-format
+msgid "  --template=TEMPLATE         a .desktop file used as a template\n"
+msgstr ""
+
+#: src/msgfmt.c:1015 src/msgfmt.c:1034
+#, fuzzy, c-format
+msgid "  -d DIRECTORY                base directory of .po files\n"
+msgstr "  -d 目錄                     class 目錄層的基本目錄\n"
+
+#: src/msgfmt.c:1017 src/xgettext.c:1135
+#, fuzzy, c-format
+msgid ""
+"  -kWORD, --keyword=WORD      look for WORD as an additional keyword\n"
+"  -k, --keyword               do not to use default keywords\n"
+msgstr ""
+"  -k, --keyword[=WORD]        要留意的額外關鍵字 (如果沒有指定,\n"
+"                              表示不使用預設的關鍵字)\n"
+
+#: src/msgfmt.c:1020 src/msgfmt.c:1036
+#, c-format
+msgid ""
+"The -l, -o, and --template options are mandatory.  If -D is specified, "
+"input\n"
+"files are read from the directory instead of the command line arguments.\n"
+msgstr ""
+
+#: src/msgfmt.c:1024
+#, c-format
+msgid "XML mode options:\n"
+msgstr ""
+
+#: src/msgfmt.c:1028
+#, c-format
+msgid "  -L, --language=NAME         recognise the specified XML language\n"
+msgstr ""
+
+#: src/msgfmt.c:1032
+#, c-format
+msgid "  --template=TEMPLATE         an XML file used as a template\n"
+msgstr ""
+
+#: src/msgfmt.c:1048 src/xgettext.c:1098
 #, c-format
 msgid "Input file interpretation:\n"
 msgstr "輸入檔處理:\n"
 
-#: src/msgfmt.c:743
+#: src/msgfmt.c:1050
 #, c-format
 msgid ""
 "  -c, --check                 perform all the checks implied by\n"
@@ -1813,19 +2179,19 @@ msgstr ""
 "                                --check-format, --check-header, --check-"
 "domain\n"
 
-#: src/msgfmt.c:746
+#: src/msgfmt.c:1053
 #, c-format
 msgid "      --check-format          check language dependent format strings\n"
 msgstr "      --check-format          檢查各種程式語言的格式字串\n"
 
-#: src/msgfmt.c:748
+#: src/msgfmt.c:1055
 #, c-format
 msgid ""
 "      --check-header          verify presence and contents of the header "
 "entry\n"
 msgstr "      --check-header          確保標頭欄位存在和內容正確\n"
 
-#: src/msgfmt.c:750
+#: src/msgfmt.c:1057
 #, c-format
 msgid ""
 "      --check-domain          check for conflicts between domain directives\n"
@@ -1834,7 +2200,7 @@ msgstr ""
 "      --check-domain          檢查 domain 關鍵字和 --output-file 選項之間\n"
 "                                有沒有衝突\n"
 
-#: src/msgfmt.c:753
+#: src/msgfmt.c:1060
 #, c-format
 msgid ""
 "  -C, --check-compatibility   check that GNU msgfmt behaves like X/Open "
@@ -1843,7 +2209,7 @@ msgstr ""
 "  -C, --check-compatibility   確保 GNU msgfmt 運作的方式和 X/Open msgfmt 兼"
 "容\n"
 
-#: src/msgfmt.c:755
+#: src/msgfmt.c:1062
 #, c-format
 msgid ""
 "      --check-accelerators[=CHAR]  check presence of keyboard accelerators "
@@ -1851,111 +2217,130 @@ msgid ""
 "                                menu items\n"
 msgstr "      --check-accelerators[=CHAR]  檢查選單項目中代表捷徑鍵的字元\n"
 
-#: src/msgfmt.c:758
+#: src/msgfmt.c:1065
 #, c-format
 msgid "  -f, --use-fuzzy             use fuzzy entries in output\n"
 msgstr "  -f, --use-fuzzy             在輸出結果中顯示模糊翻譯\n"
 
-#: src/msgfmt.c:763
+#: src/msgfmt.c:1070
 #, c-format
 msgid ""
 "  -a, --alignment=NUMBER      align strings to NUMBER bytes (default: %d)\n"
 msgstr ""
 "  -a, --alignment=數字        以<數字>個位元組為單位配置字串位置(預設:%d)\n"
 
-#: src/msgfmt.c:765
+#: src/msgfmt.c:1072
+#, c-format
+msgid ""
+"      --endianness=BYTEORDER  write out 32-bit numbers in the given byte "
+"order\n"
+"                                (big or little, default depends on "
+"platform)\n"
+msgstr ""
+
+#: src/msgfmt.c:1075
 #, c-format
 msgid ""
 "      --no-hash               binary file will not include the hash table\n"
 msgstr ""
 "      --no-hash               二元碼檔不會包含雜湊表 (hash table) 在內\n"
 
-#: src/msgfmt.c:774
+#: src/msgfmt.c:1084
 #, c-format
 msgid "      --statistics            print statistics about translations\n"
 msgstr "      --statistics            顯示有關翻譯訊息的統計\n"
 
-#: src/msgfmt.c:776 src/msgmerge.c:607 src/msgunfmt.c:533
+#: src/msgfmt.c:1086 src/msgmerge.c:626 src/msgunfmt.c:534
 #, c-format
 msgid "  -v, --verbose               increase verbosity level\n"
 msgstr "  -v, --verbose               顯示詳細資訊\n"
 
-#: src/msgfmt.c:890
+#: src/msgfmt.c:1199
 #, c-format
 msgid "warning: PO file header missing or invalid\n"
 msgstr "警告:缺少了 PO 檔的標頭或是格式無效\n"
 
-#: src/msgfmt.c:893
+#: src/msgfmt.c:1202
 #, c-format
 msgid "warning: charset conversion will not work\n"
 msgstr "警告:字元集轉換的功能不會生效\n"
 
-#: src/msgfmt.c:903
+#: src/msgfmt.c:1212
 #, c-format
 msgid "warning: PO file header fuzzy\n"
 msgstr "警告:PO 檔的標頭仍然是模糊狀態\n"
 
-#: src/msgfmt.c:905
+#: src/msgfmt.c:1214
 #, c-format
 msgid "warning: older versions of msgfmt will give an error on this\n"
 msgstr "警告:較舊版本的 msgfmt 遇到此檔案時會印出錯誤訊息\n"
 
-#: src/msgfmt.c:929
+#: src/msgfmt.c:1238
 #, c-format
 msgid "domain name \"%s\" not suitable as file name"
-msgstr "領域名稱 “%s” 不適合作為檔案名稱"
+msgstr "領域名稱 %s 不適合作為檔案名稱"
 
-#: src/msgfmt.c:934
+#: src/msgfmt.c:1243
 #, c-format
 msgid "domain name \"%s\" not suitable as file name: will use prefix"
-msgstr "領域名稱 “%s” 不適合作為檔案名稱:將使用字首"
+msgstr "領域名稱 %s 不適合作為檔案名稱:將使用字首"
 
-#: src/msgfmt.c:948
-#, c-format
-msgid "`domain %s' directive ignored"
+#: src/msgfmt.c:1257
+#, fuzzy, c-format
+msgid "'domain %s' directive ignored"
 msgstr "忽略‘domain %s’指令"
 
-#: src/msgfmt.c:1008
-#, c-format
-msgid "empty `msgstr' entry ignored"
+#: src/msgfmt.c:1317
+#, fuzzy, c-format
+msgid "empty 'msgstr' entry ignored"
 msgstr "忽略空的‘msgstr’欄位"
 
-#: src/msgfmt.c:1009
-#, c-format
-msgid "fuzzy `msgstr' entry ignored"
+#: src/msgfmt.c:1318
+#, fuzzy, c-format
+msgid "fuzzy 'msgstr' entry ignored"
 msgstr "忽略模糊的‘msgstr’欄位"
 
-#: src/msgfmt.c:1058
+#: src/msgfmt.c:1367
 #, c-format
 msgid "%s: warning: source file contains fuzzy translation"
 msgstr "%s:警告:原始檔包含模糊翻譯條目"
 
-#: src/msggrep.c:258 src/po-lex.c:657 src/read-mo.c:86
-#: src/read-properties.c:89 src/read-stringtable.c:98 src/x-awk.c:139
-#: src/x-c.c:484 src/x-csharp.c:163 src/x-elisp.c:145 src/x-glade.c:616
-#: src/x-java.c:181 src/x-librep.c:147 src/x-lisp.c:212 src/x-perl.c:227
-#: src/x-perl.c:302 src/x-perl.c:395 src/x-php.c:163 src/x-python.c:174
-#: src/x-rst.c:233 src/x-scheme.c:171 src/x-sh.c:155 src/x-smalltalk.c:91
-#: src/x-tcl.c:150 src/x-ycp.c:91
+#: src/msgfmt.c:1484
+#, c-format
+msgid "%s does not exist"
+msgstr ""
+
+#: src/msgfmt.c:1491
+#, c-format
+msgid "%s exists but cannot read"
+msgstr ""
+
+#: src/msggrep.c:259 src/po-lex.c:657 src/read-desktop.c:127 src/read-mo.c:88
+#: src/read-properties.c:90 src/read-stringtable.c:99 src/x-awk.c:140
+#: src/x-c.c:583 src/x-csharp.c:164 src/x-elisp.c:146 src/x-java.c:181
+#: src/x-javascript.c:172 src/x-librep.c:148 src/x-lisp.c:213 src/x-lua.c:173
+#: src/x-perl.c:227 src/x-perl.c:302 src/x-perl.c:395 src/x-php.c:164
+#: src/x-python.c:177 src/x-rst.c:234 src/x-scheme.c:171 src/x-sh.c:155
+#: src/x-smalltalk.c:92 src/x-tcl.c:151 src/x-vala.c:176 src/x-ycp.c:92
 #, c-format
 msgid "error while reading \"%s\""
-msgstr "讀取 “%s” 時出現錯誤"
+msgstr "讀取 %s 時出現錯誤"
 
-#: src/msggrep.c:496
+#: src/msggrep.c:502
 #, fuzzy, c-format
 msgid ""
 "option '%c' cannot be used before 'J' or 'K' or 'T' or 'C' or 'X' has been "
 "specified"
 msgstr "未指定 ‘K’、‘T’ 或 ‘C’ 選項前不能使用選項 ‘%c’"
 
-#: src/msggrep.c:516
+#: src/msggrep.c:522
 #, c-format, no-wrap
 msgid ""
 "Extracts all messages of a translation catalog that match a given pattern\n"
 "or belong to some given source files.\n"
 msgstr "抽取翻譯檔中的訊息,而這些訊息符合某種樣式或屬於某個指定的來源檔。\n"
 
-#: src/msggrep.c:542
+#: src/msggrep.c:548
 #, fuzzy, c-format, no-wrap
 msgid ""
 "Message selection:\n"
@@ -2024,7 +2409,7 @@ msgstr ""
 "  -f, --file=FILE             PATTERN 採用 FILE 的內容 \n"
 "  -i, --ignore-case           不區分大小寫\n"
 
-#: src/msggrep.c:597
+#: src/msggrep.c:603
 #, c-format
 msgid ""
 "      --escape                use C escapes in output, no extended chars\n"
@@ -2033,17 +2418,17 @@ msgstr ""
 "sequence)\n"
 "                              ,而不使用非 ASCII 字元\n"
 
-#: src/msggrep.c:618
+#: src/msggrep.c:624
 #, c-format
 msgid "      --sort-output           generate sorted output\n"
 msgstr "      --sort-output           將訊息排序\n"
 
-#: src/msggrep.c:620
+#: src/msggrep.c:626
 #, c-format
 msgid "      --sort-by-file          sort output by file location\n"
 msgstr "      --sort-by-file          根據檔案位置排序\n"
 
-#: src/msginit.c:297
+#: src/msginit.c:298
 msgid ""
 "You are in a language indifferent environment.  Please set\n"
 "your LANG environment variable, as described in the ABOUT-NLS\n"
@@ -2052,7 +2437,7 @@ msgstr ""
 "系統環境沒有任何和語言有關的設定。請根據 ABOUT-NLS 檔案所述,\n"
 "設定 LANG 環境變數。這是測試翻譯時的必要步驟。\n"
 
-#: src/msginit.c:321
+#: src/msginit.c:322
 #, c-format
 msgid ""
 "Output file %s already exists.\n"
@@ -2063,24 +2448,24 @@ msgstr ""
 "請透過 --locale 選項指定語系或\n"
 "--output-file 選項指定輸出的 .po 檔。\n"
 
-#: src/msginit.c:347
+#: src/msginit.c:348
 #, c-format
 msgid "Created %s.\n"
 msgstr "已建立 %s。\n"
 
-#: src/msginit.c:367
+#: src/msginit.c:368
 #, c-format, no-wrap
 msgid ""
 "Creates a new PO file, initializing the meta information with values from the\n"
 "user's environment.\n"
 msgstr "建立新的 PO 檔,並由使用者環境取得初始化所需的檔頭資料。\n"
 
-#: src/msginit.c:377
+#: src/msginit.c:378
 #, c-format
 msgid "  -i, --input=INPUTFILE       input POT file\n"
 msgstr "  -i, --input=輸入檔          輸入的 POT 檔\n"
 
-#: src/msginit.c:379
+#: src/msginit.c:380
 #, c-format
 msgid ""
 "If no input file is given, the current directory is searched for the POT "
@@ -2090,12 +2475,12 @@ msgstr ""
 "如果沒有指定輸入檔,會在目前的目錄搜尋 POT 檔。\n"
 "如果輸入檔是 -,則讀取標準輸入的內容。\n"
 
-#: src/msginit.c:385
+#: src/msginit.c:386
 #, c-format
 msgid "  -o, --output-file=FILE      write output to specified PO file\n"
 msgstr "  -o, --output-file=FILE      將輸出的內容寫入指定的 PO 檔\n"
 
-#: src/msginit.c:387
+#: src/msginit.c:388
 #, c-format
 msgid ""
 "If no output file is given, it depends on the --locale option or the user's\n"
@@ -2104,18 +2489,18 @@ msgstr ""
 "如果沒有指定輸出檔,檔名將會由 --locale 選項或使用者的語系決定。\n"
 "如果輸出檔是 -,則會將結果寫至標準輸出。\n"
 
-#: src/msginit.c:400
+#: src/msginit.c:401
 #, c-format
 msgid "  -l, --locale=LL_CC          set target locale\n"
 msgstr "  -l, --locale=LL_CC          指定地區設定\n"
 
-#: src/msginit.c:402
+#: src/msginit.c:403
 #, c-format
 msgid ""
 "      --no-translator         assume the PO file is automatically generated\n"
 msgstr "      --no-translator         假設 PO 檔是自動產生的\n"
 
-#: src/msginit.c:468
+#: src/msginit.c:469
 msgid ""
 "Found more than one .pot file.\n"
 "Please specify the input .pot file through the --input option.\n"
@@ -2123,12 +2508,12 @@ msgstr ""
 "找到多於一個的 .pot 檔。\n"
 "請透過 --input 選項指定作為輸入檔的 .pot 檔。\n"
 
-#: src/msginit.c:476 src/msginit.c:481
+#: src/msginit.c:477 src/msginit.c:482
 #, c-format
 msgid "error reading current directory"
 msgstr "讀取目前的目錄時發生錯誤"
 
-#: src/msginit.c:489
+#: src/msginit.c:490
 msgid ""
 "Found no .pot file in the current directory.\n"
 "Please specify the input .pot file through the --input option.\n"
@@ -2137,11 +2522,11 @@ msgstr ""
 "請透過 --input 選項指定作為輸入檔的 .pot 檔。\n"
 
 #: src/msginit.c:918 src/msginit.c:993 src/msginit.c:1153 src/msginit.c:1248
-#: src/read-csharp.c:83 src/read-java.c:81 src/read-resources.c:84
-#: src/read-tcl.c:127 src/write-resources.c:104
+#: src/msginit.c:1418 src/read-csharp.c:84 src/read-java.c:82
+#: src/read-resources.c:85 src/read-tcl.c:128 src/write-resources.c:105
 #, c-format
 msgid "%s subprocess failed with exit code %d"
-msgstr "%s 副程失敗,錯誤碼為 %d"
+msgstr "%s 副程失敗,錯誤碼為 %d"
 
 #: src/msginit.c:1118
 msgid ""
@@ -2157,47 +2542,47 @@ msgstr ""
 #. TRANSLATORS: "English" needs to be replaced by your language.
 #. For example in it.po write "Traduzioni italiani ...",
 #. *not* "Traduzioni inglesi ...".
-#: src/msginit.c:1534
+#: src/msginit.c:1615
 #, c-format
 msgid "English translations for %s package"
-msgstr "Traditional Chinese translation for %s"
+msgstr "%s 套件的傳統字漢語翻譯"
 
-#: src/msgl-cat.c:177 src/msgl-charset.c:86 src/msgl-iconv.c:247
+#: src/msgl-cat.c:178 src/msgl-charset.c:87 src/msgl-iconv.c:248
 #, c-format
 msgid "present charset \"%s\" is not a portable encoding name"
-msgstr "目前的字元集編碼 “%s” 不是通用的編碼名稱"
+msgstr "目前的字元集編碼 %s 不是通用的編碼名稱"
 
-#: src/msgl-cat.c:188 src/msgl-iconv.c:259
+#: src/msgl-cat.c:189 src/msgl-iconv.c:260
 #, c-format
 msgid "two different charsets \"%s\" and \"%s\" in input file"
-msgstr "輸入檔有兩種不同的字元集編碼 “%s” 和 “%s”"
+msgstr "輸入檔有兩種不同的字元集編碼 %s 和 “%s”"
 
-#: src/msgl-cat.c:203
-#, c-format
+#: src/msgl-cat.c:204
+#, fuzzy, c-format
 msgid ""
-"input file `%s' doesn't contain a header entry with a charset specification"
+"input file '%s' doesn't contain a header entry with a charset specification"
 msgstr "輸入檔‘%s’的標頭欄位中沒有指定字元集"
 
-#: src/msgl-cat.c:207
-#, c-format
+#: src/msgl-cat.c:208
+#, fuzzy, c-format
 msgid ""
-"domain \"%s\" in input file `%s' doesn't contain a header entry with a "
+"domain \"%s\" in input file '%s' doesn't contain a header entry with a "
 "charset specification"
 msgstr "輸入檔 ‘%2$s’ 的 domain “%1$s” 的標頭欄位中沒有指定字元集"
 
-#: src/msgl-cat.c:391 src/msgl-iconv.c:375
+#: src/msgl-cat.c:394 src/msgl-iconv.c:376
 #, c-format
 msgid "target charset \"%s\" is not a portable encoding name."
-msgstr "目標的字元集編碼 “%s” 不是通用的編碼名稱。"
+msgstr "目標的字元集編碼 %s 不是通用的編碼名稱。"
 
-#: src/msgl-cat.c:442 src/msgl-cat.c:448 src/msgl-charset.c:92
-#: src/msgl-charset.c:127 src/po-xerror.c:121 src/po-xerror.c:146
-#: src/xgettext.c:3015
+#: src/msgl-cat.c:445 src/msgl-cat.c:451 src/msgl-charset.c:93
+#: src/msgl-charset.c:128 src/po-xerror.c:122 src/po-xerror.c:147
+#: src/xgettext.c:578 src/xgettext.c:3739
 #, c-format
 msgid "warning: "
 msgstr "警告:"
 
-#: src/msgl-cat.c:443
+#: src/msgl-cat.c:446
 #, c-format
 msgid ""
 "Input files contain messages in different encodings, UTF-8 among others.\n"
@@ -2205,7 +2590,7 @@ msgid ""
 msgstr ""
 "輸入檔含有不同編碼的訊息,其中一種是 UTF-8。會將輸出的編碼轉換為 UTF-8。\n"
 
-#: src/msgl-cat.c:449
+#: src/msgl-cat.c:452
 #, c-format
 msgid ""
 "Input files contain messages in different encodings, %s and %s among "
@@ -2216,7 +2601,7 @@ msgstr ""
 "輸入檔含有不同編碼的訊息,其中包括 %s 和 %s。會將輸出的編碼轉換為 UTF-8。\n"
 "若要選擇另一種輸出編碼,請使用 --to-code 選項。\n"
 
-#: src/msgl-cat.c:488
+#: src/msgl-cat.c:491
 #, c-format
 msgid ""
 "Conversion of file %s from %s encoding to %s encoding\n"
@@ -2225,7 +2610,7 @@ msgid ""
 "UTF-8 encoded from the beginning, i.e. already in your source code files.\n"
 msgstr ""
 
-#: src/msgl-charset.c:93
+#: src/msgl-charset.c:94
 #, c-format
 msgid ""
 "Locale charset \"%s\" is different from\n"
@@ -2237,12 +2622,12 @@ msgstr ""
 "‘%s’的輸出可能有誤。\n"
 "可行的解決方法包括:\n"
 
-#: src/msgl-charset.c:100
+#: src/msgl-charset.c:101
 #, c-format
 msgid "- Set LC_ALL to a locale with encoding %s.\n"
 msgstr "- 設定 LC_ALL 環境變數為使用編碼 %s 的語系。\n"
 
-#: src/msgl-charset.c:105
+#: src/msgl-charset.c:106
 #, c-format
 msgid ""
 "- Convert the translation catalog to %s using 'msgconv',\n"
@@ -2253,7 +2638,7 @@ msgstr ""
 "  然後套用 ‘%s’ 指令過濾內容,\n"
 "  最後再用 ‘msgconv’ 將翻譯檔的字元集還原為 %s。\n"
 
-#: src/msgl-charset.c:114
+#: src/msgl-charset.c:115
 #, c-format
 msgid ""
 "- Set LC_ALL to a locale with encoding %s,\n"
@@ -2266,86 +2651,86 @@ msgstr ""
 "  然後套用 ‘%s’ 指令過濾內容,\n"
 "  最後再用 ‘msgconv’ 將翻譯檔的字元集還原為 %s。\n"
 
-#: src/msgl-charset.c:128
+#: src/msgl-charset.c:129
 #, c-format
 msgid ""
 "Locale charset \"%s\" is not a portable encoding name.\n"
 "Output of '%s' might be incorrect.\n"
 "A possible workaround is to set LC_ALL=C.\n"
 msgstr ""
-"語言的字元集編碼 “%s” 不是通用的編碼名稱。\n"
+"語言的字元集編碼 %s 不是通用的編碼名稱。\n"
 "‘%s’ 的輸出可能有誤。\n"
 "設定 LC_ALL=C 是一個可行的解決方法。\n"
 
-#: src/msgl-check.c:130
+#: src/msgl-check.c:135
 msgid "plural expression can produce negative values"
 msgstr "複數表示式可能產生負數"
 
-#: src/msgl-check.c:141
+#: src/msgl-check.c:146
 #, c-format
 msgid "nplurals = %lu but plural expression can produce values as large as %lu"
 msgstr "nplurals = %lu,但複數表示式的最大值可能等於 %lu"
 
-#: src/msgl-check.c:187
+#: src/msgl-check.c:192
 msgid "plural expression can produce division by zero"
 msgstr "複數表示式會引致被 0 整除的錯誤"
 
-#: src/msgl-check.c:192
+#: src/msgl-check.c:197
 msgid "plural expression can produce integer overflow"
 msgstr "複數表示式會引致整數溢位的錯誤"
 
-#: src/msgl-check.c:197
+#: src/msgl-check.c:202
 msgid ""
 "plural expression can produce arithmetic exceptions, possibly division by "
 "zero"
 msgstr "複數表示式會引致運算錯誤,例如被 0 整除"
 
-#: src/msgl-check.c:266
+#: src/msgl-check.c:271
 #, fuzzy, c-format
 msgid "Try using the following, valid for %s:"
 msgstr "嘗試使用下列 %s 中屬於合法的型態:\n"
 
-#: src/msgl-check.c:352 src/msgl-check.c:376
+#: src/msgl-check.c:363 src/msgl-check.c:387
 #, fuzzy
 msgid "message catalog has plural form translations"
 msgstr "翻譯檔含有複數型態的翻譯..."
 
-#: src/msgl-check.c:354
+#: src/msgl-check.c:365
 #, fuzzy
 msgid "but header entry lacks a \"plural=EXPRESSION\" attribute"
 msgstr "...但檔頭缺少了像 “plural=表示式” 的項目"
 
-#: src/msgl-check.c:378
+#: src/msgl-check.c:389
 #, fuzzy
 msgid "but header entry lacks a \"nplurals=INTEGER\" attribute"
 msgstr "...但檔頭缺少了像 “nplurals=整數” 的項目"
 
-#: src/msgl-check.c:414
+#: src/msgl-check.c:425
 msgid "invalid nplurals value"
 msgstr "無效的 nplurals 值"
 
-#: src/msgl-check.c:436
+#: src/msgl-check.c:447
 msgid "invalid plural expression"
 msgstr "無效的複數表示式"
 
-#: src/msgl-check.c:466 src/msgl-check.c:482
+#: src/msgl-check.c:477 src/msgl-check.c:493
 #, fuzzy, c-format
 msgid "nplurals = %lu"
 msgstr "nplurals = %lu..."
 
-#: src/msgl-check.c:468
+#: src/msgl-check.c:479
 #, fuzzy, c-format
 msgid "but some messages have only one plural form"
 msgid_plural "but some messages have only %lu plural forms"
 msgstr[0] "...但某些訊息只有 %lu 種複數型態"
 
-#: src/msgl-check.c:484
+#: src/msgl-check.c:495
 #, fuzzy, c-format
 msgid "but some messages have one plural form"
 msgid_plural "but some messages have %lu plural forms"
 msgstr[0] "...但某些訊息有 %lu 種複數型態"
 
-#: src/msgl-check.c:508
+#: src/msgl-check.c:519
 msgid ""
 "message catalog has plural form translations, but lacks a header entry with "
 "\"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\""
@@ -2353,118 +2738,129 @@ msgstr ""
 "翻譯檔含有複數型態的翻譯,但缺少了以下的標頭欄位:\n"
 "“Plural-Forms: nplurals=<整數>; plural=<表示式>;”"
 
-#: src/msgl-check.c:602
-msgid "`msgid' and `msgid_plural' entries do not both begin with '\\n'"
+#: src/msgl-check.c:616
+#, fuzzy
+msgid "'msgid' and 'msgid_plural' entries do not both begin with '\\n'"
 msgstr "`msgid' 和 `msgid_plural' 欄位並非同時以 '\\n' 開始"
 
-#: src/msgl-check.c:610
-#, c-format
-msgid "`msgid' and `msgstr[%u]' entries do not both begin with '\\n'"
+#: src/msgl-check.c:624
+#, fuzzy, c-format
+msgid "'msgid' and 'msgstr[%u]' entries do not both begin with '\\n'"
 msgstr "‘msgid’和‘msgstr[%u]’欄位並非同時以‘\\n’開始"
 
-#: src/msgl-check.c:625
-msgid "`msgid' and `msgstr' entries do not both begin with '\\n'"
+#: src/msgl-check.c:639
+#, fuzzy
+msgid "'msgid' and 'msgstr' entries do not both begin with '\\n'"
 msgstr "‘msgid’和‘msgstr’欄位並非同時以‘\\n’開始"
 
-#: src/msgl-check.c:643
-msgid "`msgid' and `msgid_plural' entries do not both end with '\\n'"
+#: src/msgl-check.c:657
+#, fuzzy
+msgid "'msgid' and 'msgid_plural' entries do not both end with '\\n'"
 msgstr "‘msgid’和‘msgid_plural’欄位並非同時以‘\\n’結束"
 
-#: src/msgl-check.c:651
-#, c-format
-msgid "`msgid' and `msgstr[%u]' entries do not both end with '\\n'"
+#: src/msgl-check.c:665
+#, fuzzy, c-format
+msgid "'msgid' and 'msgstr[%u]' entries do not both end with '\\n'"
 msgstr "‘msgid’和‘msgstr[%u]’欄位並非同時以‘\\n’結束"
 
-#: src/msgl-check.c:666
-msgid "`msgid' and `msgstr' entries do not both end with '\\n'"
+#: src/msgl-check.c:680
+#, fuzzy
+msgid "'msgid' and 'msgstr' entries do not both end with '\\n'"
 msgstr "‘msgid’和‘msgstr’欄位並非同時以‘\\n’結束"
 
-#: src/msgl-check.c:678
+#: src/msgl-check.c:692
 msgid "plural handling is a GNU gettext extension"
 msgstr "複數處理是 GNU gettext 的擴展功能"
 
-#: src/msgl-check.c:720
+#: src/msgl-check.c:734
 #, c-format
 msgid "msgstr lacks the keyboard accelerator mark '%c'"
 msgstr "msgstr 缺少了捷徑鍵標記‘%c’"
 
-#: src/msgl-check.c:730
+#: src/msgl-check.c:745
 #, c-format
 msgid "msgstr has too many keyboard accelerator marks '%c'"
 msgstr "msgstr 含有過多的捷徑鍵標記‘%c’"
 
-#: src/msgl-check.c:776
+#: src/msgl-check.c:819
+#, fuzzy, c-format
+msgid "header field '%s' still has the initial default value\n"
+msgstr "某些標頭欄位仍然是預設值\n"
+
+#: src/msgl-check.c:836
 #, fuzzy, c-format
-msgid "header field `%s' missing in header\n"
+msgid "header field '%s' missing in header\n"
 msgstr "缺少了標頭欄位‘%s’\n"
 
-#: src/msgl-check.c:784
-#, c-format
-msgid "header field `%s' should start at beginning of line\n"
-msgstr "標頭欄位‘%s’應該位於行首\n"
+#: src/msgl-check.c:941
+msgid "ASCII ellipsis ('...') instead of Unicode"
+msgstr ""
 
-#: src/msgl-check.c:809
-msgid "some header fields still have the initial default value\n"
-msgstr "某些標頭欄位仍然是預設值\n"
+#: src/msgl-check.c:1014
+msgid "space before ellipsis found in user visible strings"
+msgstr ""
 
-#: src/msgl-check.c:826
-#, fuzzy, c-format
-msgid "header field `%s' still has the initial default value\n"
-msgstr "某些標頭欄位仍然是預設值\n"
+#: src/msgl-check.c:1043
+msgid "ASCII double quote used instead of Unicode"
+msgstr ""
+
+#: src/msgl-check.c:1049
+msgid "ASCII single quote used instead of Unicode"
+msgstr ""
 
-#: src/msgl-iconv.c:65
+#: src/msgl-iconv.c:66
 #, c-format
 msgid "%s: input is not valid in \"%s\" encoding"
 msgstr ""
 
 # lib/copy-file.c:61 src/file-list.c:57 src/po-lex.c:726 src/read-mo.c:171 src/urlget.c:204 src/xgettext.c:823 src/xgettext.c:836 src/xgettext.c:846 #, c-format
-#: src/msgl-iconv.c:69
+#: src/msgl-iconv.c:70
 #, fuzzy, c-format
 msgid "%s: error while converting from \"%s\" encoding to \"%s\" encoding"
-msgstr "當開啟檔案 “%s” 準備讀取時發生錯誤"
+msgstr "當開啟檔案 %s 準備讀取時發生錯誤"
 
-#: src/msgl-iconv.c:290
+#: src/msgl-iconv.c:291
 msgid "input file doesn't contain a header entry with a charset specification"
 msgstr "輸入檔沒有指定字元集的標頭欄位"
 
-#: src/msgl-iconv.c:305 src/recode-sr-latin.c:287 src/recode-sr-latin.c:292
-#: src/x-python.c:622 src/xgettext.c:692
+#: src/msgl-iconv.c:306 src/recode-sr-latin.c:289 src/recode-sr-latin.c:294
+#: src/xgettext.c:813 src/x-python.c:666
 #, c-format
 msgid ""
 "Cannot convert from \"%s\" to \"%s\". %s relies on iconv(), and iconv() does "
 "not support this conversion."
 msgstr ""
-"不支援將字元集由 “%s” 轉換至 “%s”。%s 需要 iconv(),但 iconv() 不支援此種轉換"
-"式。"
+"不支援將字元集由 %s 轉換至 “%s”。%s 需要 iconv(),但 iconv() 不支援此種轉換方"
+"式。"
 
-#: src/msgl-iconv.c:335
+#: src/msgl-iconv.c:336
 #, c-format
 msgid ""
 "Conversion from \"%s\" to \"%s\" introduces duplicates: some different "
 "msgids become equal."
 msgstr ""
-"由 “%s” 轉換至 “%s” 會產生重複訊息:有些本來不同的 msgid 轉換後會變成相同。"
+"由 %s 轉換至 %s 會產生重複訊息:有些本來不同的 msgid 轉換後會變成相同。"
 
-#: src/msgl-iconv.c:341 src/recode-sr-latin.c:301 src/x-python.c:629
-#: src/xgettext.c:699
+#: src/msgl-iconv.c:342 src/recode-sr-latin.c:303 src/xgettext.c:820
+#: src/x-python.c:673
 #, c-format
 msgid ""
 "Cannot convert from \"%s\" to \"%s\". %s relies on iconv(). This version was "
 "built without iconv()."
 msgstr ""
-"不支援將字元集由 “%s” 轉換至 “%s”。%s 需要 iconv(),但編譯此程式時沒有 iconv"
-"() 支援。"
+"不支援將字元集由 %s 轉換至 “%s”。%s 需要 iconv(),但編譯此程式時沒有 iconv() "
+"支援。"
 
-#: src/msgmerge.c:383 src/msgmerge.c:389
+#: src/msgmerge.c:406 src/msgmerge.c:412
 #, c-format
 msgid "%s is only valid with %s"
 msgstr "%s 只能和 %s 配合一起使用才有效"
 
-#: src/msgmerge.c:448
+#: src/msgmerge.c:467
 msgid "backup type"
 msgstr "備份方式"
 
-#: src/msgmerge.c:485
+#: src/msgmerge.c:504
 #, c-format, no-wrap
 msgid ""
 "Merges two Uniforum style .po files together.  The def.po file is an\n"
@@ -2484,51 +2880,51 @@ msgstr ""
 "的註解都會被捨棄,但特殊旗標註解和檔案位置都會被保留。比較時如果有不完全\n"
 "配合的字串出現,程式會以模糊配對的方式得出較好的結果。\n"
 
-#: src/msgmerge.c:502
+#: src/msgmerge.c:521
 #, c-format
 msgid "  def.po                      translations referring to old sources\n"
 msgstr "  def.po                      舊版本的翻譯檔\n"
 
-#: src/msgmerge.c:504
+#: src/msgmerge.c:523
 #, c-format
 msgid "  ref.pot                     references to new sources\n"
 msgstr "  ref.pot                     新版本程式的翻譯檔\n"
 
-#: src/msgmerge.c:508
+#: src/msgmerge.c:527
 #, c-format
 msgid ""
 "  -C, --compendium=FILE       additional library of message translations,\n"
 "                              may be specified more than once\n"
 msgstr "  -C, --compendium=FILE       額外的翻譯記憶庫,選項可以使用多次\n"
 
-#: src/msgmerge.c:514
+#: src/msgmerge.c:533
 #, c-format
 msgid ""
 "  -U, --update                update def.po,\n"
 "                              do nothing if def.po already up to date\n"
 msgstr "  -U, --update                更新 def.po (僅當 def.po 未更新時)\n"
 
-#: src/msgmerge.c:526
+#: src/msgmerge.c:545
 #, c-format
 msgid "Output file location in update mode:\n"
 msgstr "更新模式的檔案輸出位置:\n"
 
-#: src/msgmerge.c:528
+#: src/msgmerge.c:547
 #, c-format
 msgid "The result is written back to def.po.\n"
 msgstr "輸出結果會寫入至 def.po。\n"
 
-#: src/msgmerge.c:530
+#: src/msgmerge.c:549
 #, c-format
 msgid "      --backup=CONTROL        make a backup of def.po\n"
 msgstr "      --backup=CONTROL        將 def.po 備份\n"
 
-#: src/msgmerge.c:532
+#: src/msgmerge.c:551
 #, c-format
 msgid "      --suffix=SUFFIX         override the usual backup suffix\n"
 msgstr "      --suffix=SUFFIX         自行指定備份檔名末端的字串\n"
 
-#: src/msgmerge.c:534
+#: src/msgmerge.c:553
 #, c-format
 msgid ""
 "The version control method may be selected via the --backup option or "
@@ -2546,38 +2942,38 @@ msgstr ""
 "  existing, nil   若有數字的備份檔已經存在則使用數字,否則使用一般名稱\n"
 "  simple, never   永遠使用普通方式備份\n"
 
-#: src/msgmerge.c:541
-#, c-format
+#: src/msgmerge.c:560
+#, fuzzy, c-format
 msgid ""
-"The backup suffix is `~', unless set with --suffix or the "
+"The backup suffix is '~', unless set with --suffix or the "
 "SIMPLE_BACKUP_SUFFIX\n"
 "environment variable.\n"
 msgstr ""
 "備份檔的後置字元為‘~’,除非以 --suffix 選項或是 SIMPLE_BACKUP_SUFFIX\n"
 "環境變數指定。\n"
 
-#: src/msgmerge.c:552
+#: src/msgmerge.c:571
 #, fuzzy, c-format
 msgid ""
 "      --previous              keep previous msgids of translated messages\n"
 msgstr "      --translated            只保留已翻譯條目,刪除未翻譯條目\n"
 
-#: src/msgmerge.c:609 src/urlget.c:192
+#: src/msgmerge.c:628 src/urlget.c:193
 #, c-format
 msgid "  -q, --quiet, --silent       suppress progress indicators\n"
 msgstr "  -q, --quiet, --silent       隱藏進度指示\n"
 
-#: src/msgmerge.c:1604
+#: src/msgmerge.c:1627
 #, c-format
 msgid "this message should define plural forms"
 msgstr "此訊息應該有複數型態"
 
-#: src/msgmerge.c:1627
+#: src/msgmerge.c:1650
 #, c-format
 msgid "this message should not define plural forms"
 msgstr "此訊息不應有複數型態"
 
-#: src/msgmerge.c:2030
+#: src/msgmerge.c:2053
 #, c-format
 msgid ""
 "%sRead %ld old + %ld reference, merged %ld, fuzzied %ld, missing %ld, "
@@ -2587,28 +2983,28 @@ msgstr ""
 "讀入 %ld 舊翻譯 + %ld 參考條目。合併:%ld,模糊:%ld,未譯:%ld,過時:"
 "%ld。\n"
 
-#: src/msgmerge.c:2038 src/urlget.c:306 src/urlget.c:353 src/urlget.c:395
-#: src/urlget.c:437
+#: src/msgmerge.c:2061 src/urlget.c:307 src/urlget.c:354 src/urlget.c:396
+#: src/urlget.c:438
 #, c-format
 msgid " done.\n"
 msgstr " 完成。\n"
 
-#: src/msgunfmt.c:308 src/msgunfmt.c:317 src/msgunfmt.c:340
+#: src/msgunfmt.c:309 src/msgunfmt.c:318 src/msgunfmt.c:341
 #, c-format
 msgid "%s and explicit file names are mutually exclusive"
 msgstr "使用 %s 不能同時指定檔案名稱"
 
-#: src/msgunfmt.c:427
+#: src/msgunfmt.c:428
 #, c-format
 msgid "Usage: %s [OPTION] [FILE]...\n"
 msgstr "用法:%s [選項] [檔案]...\n"
 
-#: src/msgunfmt.c:431
+#: src/msgunfmt.c:432
 #, c-format
 msgid "Convert binary message catalog to Uniforum style .po file.\n"
 msgstr "將二元碼翻譯檔轉換為 Uniforum 型式的 .po 檔。\n"
 
-#: src/msgunfmt.c:440
+#: src/msgunfmt.c:441
 #, c-format
 msgid ""
 "  -j, --java                  Java mode: input is a Java ResourceBundle "
@@ -2616,12 +3012,12 @@ msgid ""
 msgstr ""
 "  -j, --java                  Java 模式:產生 Java ResourceBundle class\n"
 
-#: src/msgunfmt.c:442
+#: src/msgunfmt.c:443
 #, c-format
 msgid "      --csharp                C# mode: input is a .NET .dll file\n"
 msgstr "      --csharp                C# 模式:輸入檔是 .NET .dll 檔\n"
 
-#: src/msgunfmt.c:444
+#: src/msgunfmt.c:445
 #, c-format
 msgid ""
 "      --csharp-resources      C# resources mode: input is a .NET .resources "
@@ -2630,24 +3026,24 @@ msgstr ""
 "      --csharp-resources      C# resources 模式:輸入內容是 .NET .resources "
 "檔案\n"
 
-#: src/msgunfmt.c:446
+#: src/msgunfmt.c:447
 #, c-format
 msgid ""
 "      --tcl                   Tcl mode: input is a tcl/msgcat .msg file\n"
 msgstr ""
 "      --tcl                   Tcl 模式:輸入資料是 tcl/msgcat .msg 檔\n"
 
-#: src/msgunfmt.c:451
+#: src/msgunfmt.c:452
 #, c-format
 msgid "  FILE ...                    input .mo files\n"
 msgstr "  檔案 ...                    作為輸入的 .mo 檔\n"
 
-#: src/msgunfmt.c:456
+#: src/msgunfmt.c:457
 #, c-format
 msgid "Input file location in Java mode:\n"
 msgstr "Java 模式的輸入檔位置:\n"
 
-#: src/msgunfmt.c:462
+#: src/msgunfmt.c:463
 #, c-format
 msgid ""
 "The class name is determined by appending the locale name to the resource "
@@ -2657,41 +3053,41 @@ msgstr ""
 "class 名稱是由語言名稱和 resource 名稱合併來決定的,兩者之間會用底線分隔。\n"
 "class 檔會在 CLASSPATH 變數所指定的目錄中搜尋。\n"
 
-#: src/msgunfmt.c:467
+#: src/msgunfmt.c:468
 #, c-format
 msgid "Input file location in C# mode:\n"
 msgstr "C# 模式的輸入檔位置:\n"
 
-#: src/msgunfmt.c:475
+#: src/msgunfmt.c:476
 #, c-format
 msgid ""
 "The -l and -d options are mandatory.  The .dll file is located in a\n"
 "subdirectory of the specified directory whose name depends on the locale.\n"
 msgstr ""
 
-#: src/msgunfmt.c:479
+#: src/msgunfmt.c:480
 #, c-format
 msgid "Input file location in Tcl mode:\n"
 msgstr "Tcl 模式的輸入檔位置:\n"
 
-#: src/msgunfmt.c:485
+#: src/msgunfmt.c:486
 #, c-format
 msgid ""
 "The -l and -d options are mandatory.  The .msg file is located in the\n"
 "specified directory.\n"
 msgstr ""
 
-#: src/msgunfmt.c:511
+#: src/msgunfmt.c:512
 #, c-format
 msgid "  -i, --indent                write indented output style\n"
 msgstr "  -i, --indent                將輸出結果進行縮排\n"
 
-#: src/msgunfmt.c:513
+#: src/msgunfmt.c:514
 #, c-format
 msgid "      --strict                write strict uniforum style\n"
 msgstr "      --strict                輸出結果嚴格遵從 Uniforum 格式\n"
 
-#: src/msguniq.c:330
+#: src/msguniq.c:332
 #, c-format, no-wrap
 msgid ""
 "Unifies duplicate translations in a translation catalog.\n"
@@ -2711,12 +3107,12 @@ msgstr ""
 "則會由第一個翻譯條目中讀取這些資料。檔案位置是會累積下來的。\n"
 "當使用 --unique 選項時,則會捨棄任何重複的翻譯條目。\n"
 
-#: src/msguniq.c:363
+#: src/msguniq.c:365
 #, c-format
 msgid "  -d, --repeated              print only duplicates\n"
 msgstr "  -d, --repeated              只顯示重複條目\n"
 
-#: src/msguniq.c:365
+#: src/msguniq.c:367
 #, c-format
 msgid ""
 "  -u, --unique                print only unique messages, discard "
@@ -2724,7 +3120,7 @@ msgid ""
 msgstr ""
 "  -u, --unique                只顯示出現一次的條目,捨棄任何重複的條目\n"
 
-#: src/open-catalog.c:56 libgettextpo/gettext-po.c:102
+#: src/open-catalog.c:57 libgettextpo/gettext-po.c:102
 #: libgettextpo/gettext-po.c:150 libgettextpo/gettext-po.c:198
 msgid "<stdin>"
 msgstr "<標準輸入>"
@@ -2738,7 +3134,7 @@ msgstr ""
 "字元集“%s”不是通用的編碼名稱。\n"
 "轉換訊息至使用者字元集的功能將不會運作。\n"
 
-#: src/po-charset.c:556
+#: src/po-charset.c:557
 #, c-format
 msgid ""
 "Charset \"%s\" is not supported. %s relies on iconv(),\n"
@@ -2747,21 +3143,21 @@ msgstr ""
 "不支援字元集 “%s”。%s 需要 iconv(),\n"
 "但 iconv() 不支援 “%s”。\n"
 
-#: src/po-charset.c:563 src/po-charset.c:611
+#: src/po-charset.c:564 src/po-charset.c:612
 msgid ""
 "Installing GNU libiconv and then reinstalling GNU gettext\n"
 "would fix this problem.\n"
 msgstr "先安裝 GNU libiconv,然後再安裝 GNU gettext,將會修正此問題。\n"
 
-#: src/po-charset.c:577 src/po-charset.c:615
+#: src/po-charset.c:578 src/po-charset.c:616
 msgid "Continuing anyway, expect parse errors."
 msgstr "仍會繼續執行,但預計解析內容時會出現錯誤。"
 
-#: src/po-charset.c:579
+#: src/po-charset.c:580
 msgid "Continuing anyway."
 msgstr "仍會繼續執行。"
 
-#: src/po-charset.c:606
+#: src/po-charset.c:607
 #, c-format
 msgid ""
 "Charset \"%s\" is not supported. %s relies on iconv().\n"
@@ -2770,7 +3166,7 @@ msgstr ""
 "不支援字元集 “%s”。%s 需要 iconv(),\n"
 "但編譯此程式時沒有 iconv() 支援。\n"
 
-#: src/po-charset.c:643
+#: src/po-charset.c:644
 msgid ""
 "Charset missing in header.\n"
 "Message conversion to user's charset will not work.\n"
@@ -2778,32 +3174,32 @@ msgstr ""
 "檔頭缺少了指定字元集的欄位。\n"
 "轉換訊息至使用者字元集的功能將不會生效。\n"
 
-#: src/po-gram-gen.y:93
+#: src/po-gram-gen.y:94
 #, c-format
 msgid "inconsistent use of #~"
 msgstr "不一致地使用 #~"
 
-#: src/po-gram-gen.y:240
-#, c-format
-msgid "missing `msgstr[]' section"
+#: src/po-gram-gen.y:244
+#, fuzzy, c-format
+msgid "missing 'msgstr[]' section"
 msgstr "缺少了 ‘msgstr[]’ 段落"
 
-#: src/po-gram-gen.y:249
-#, c-format
-msgid "missing `msgid_plural' section"
+#: src/po-gram-gen.y:253
+#, fuzzy, c-format
+msgid "missing 'msgid_plural' section"
 msgstr "缺少了 ‘msgid_plural’ 段落"
 
-#: src/po-gram-gen.y:257
-#, c-format
-msgid "missing `msgstr' section"
+#: src/po-gram-gen.y:261
+#, fuzzy, c-format
+msgid "missing 'msgstr' section"
 msgstr "缺少了 ‘msgstr’ 段落"
 
-#: src/po-gram-gen.y:396
+#: src/po-gram-gen.y:400
 #, c-format
 msgid "first plural form has nonzero index"
 msgstr "第一個複數格式的索引數字不是 0"
 
-#: src/po-gram-gen.y:398
+#: src/po-gram-gen.y:402
 #, c-format
 msgid "plural form has wrong index"
 msgstr "複數格式含有錯誤的索引數字"
@@ -2813,7 +3209,7 @@ msgstr "複數格式含有錯誤的索引數字"
 msgid "too many errors, aborting"
 msgstr "錯誤太多,必須中斷作業"
 
-#: src/po-lex.c:437 src/po-lex.c:507 src/write-po.c:739 src/write-po.c:868
+#: src/po-lex.c:437 src/po-lex.c:507 src/write-po.c:813 src/write-po.c:951
 #, c-format
 msgid "invalid multibyte sequence"
 msgstr "無效的位元組序列"
@@ -2857,71 +3253,89 @@ msgstr "字串中間突然斷行"
 msgid "context separator <EOT> within string"
 msgstr ""
 
-#: src/read-catalog.c:332 src/xgettext.c:1003
+#: src/read-catalog.c:325 src/xgettext.c:1251
 #, c-format
 msgid "this file may not contain domain directives"
 msgstr "此檔案不能含有 domain 指令"
 
-#: src/read-catalog.c:377
+#: src/read-catalog.c:370
 msgid "duplicate message definition"
 msgstr "訊息被重複定義"
 
-#: src/read-catalog.c:379
+#: src/read-catalog.c:372
 #, fuzzy
 msgid "this is the location of the first definition"
 msgstr "...這是第一次定義的位置"
 
-#: src/read-mo.c:105 src/read-mo.c:126 src/read-mo.c:172 src/read-mo.c:199
+#: src/read-desktop.c:267
+msgid "unterminated group name"
+msgstr ""
+
+#: src/read-desktop.c:286
+msgid "invalid non-blank character"
+msgstr ""
+
+#: src/read-desktop.c:403
+#, fuzzy, c-format
+msgid "missing '=' after \"%s\""
+msgstr "未指定過濾器"
+
+#: src/read-desktop.c:466
+#, fuzzy
+msgid "invalid non-blank line"
+msgstr "無效的 nplurals 值"
+
+#: src/read-mo.c:108 src/read-mo.c:130 src/read-mo.c:168 src/read-mo.c:184
 #, c-format
 msgid "file \"%s\" is truncated"
-msgstr "檔案 “%s” 被截斷了"
+msgstr "檔案 %s 被截斷了"
 
-#: src/read-mo.c:129
+#: src/read-mo.c:133
 #, c-format
 msgid "file \"%s\" contains a not NUL terminated string"
-msgstr "檔案 “%s” 包含並非以 NUL 為結尾的字串"
+msgstr "檔案 %s 包含並非以 NUL 為結尾的字串"
 
-#: src/read-mo.c:165 src/read-mo.c:274
+#: src/read-mo.c:176 src/read-mo.c:284
 #, c-format
 msgid "file \"%s\" is not in GNU .mo format"
-msgstr "檔案 “%s” 並非 GNU .mo 格式檔案"
+msgstr "檔案 %s 並非 GNU .mo 格式檔案"
 
-#: src/read-mo.c:178
+#: src/read-mo.c:190
 #, c-format
 msgid "file \"%s\" contains a not NUL terminated string, at %s"
-msgstr "檔案 “%s” 在 %s 包含並非以 NUL 為結尾的字串"
+msgstr "檔案 %s 在 %s 包含並非以 NUL 為結尾的字串"
 
-#: src/read-properties.c:227
+#: src/read-properties.c:228
 #, fuzzy
 msgid "warning: invalid \\uxxxx syntax for Unicode character"
 msgstr "%s:%lu: 錯誤:Unicode 字元格式 \\uxxxx 無效"
 
-#: src/read-stringtable.c:802
+#: src/read-stringtable.c:803
 #, fuzzy
 msgid "warning: unterminated string"
 msgstr "%s:%d: 警告:字串未完結"
 
-#: src/read-stringtable.c:810
+#: src/read-stringtable.c:811
 #, fuzzy
 msgid "warning: syntax error"
 msgstr "%s:%lu: 警告:格式錯誤"
 
-#: src/read-stringtable.c:871 src/read-stringtable.c:893
+#: src/read-stringtable.c:872 src/read-stringtable.c:894
 #, fuzzy
 msgid "warning: unterminated key/value pair"
 msgstr "%s:%d: 警告:正規表示式不完整"
 
-#: src/read-stringtable.c:939
+#: src/read-stringtable.c:940
 #, fuzzy
 msgid "warning: syntax error, expected ';' after string"
 msgstr "%s:%lu: 警告:格式錯誤,字串後應出現‘;’"
 
-#: src/read-stringtable.c:948
+#: src/read-stringtable.c:949
 #, fuzzy
 msgid "warning: syntax error, expected '=' or ';' after string"
 msgstr "%s:%lu: 警告:格式錯誤,字串後應該出現 ‘=’ 或 ‘;’"
 
-#: src/recode-sr-latin.c:116
+#: src/recode-sr-latin.c:117
 #, fuzzy, c-format
 msgid "Written by %s and %s.\n"
 msgstr "由 %s 編寫。\n"
@@ -2930,71 +3344,81 @@ msgstr "由 %s 編寫。\n"
 #. (with Unicode escapes) "\u0160egan" or (with HTML entities)
 #. "&Scaron;egan".
 #. This is a proper name. See the gettext manual, section Names.
-#: src/recode-sr-latin.c:120
+#: src/recode-sr-latin.c:121
 msgid "Danilo Segan"
 msgstr ""
 
-#: src/recode-sr-latin.c:153
+#: src/recode-sr-latin.c:154
 #, c-format, no-wrap
 msgid "Recode Serbian text from Cyrillic to Latin script.\n"
 msgstr ""
 
-#: src/recode-sr-latin.c:156
+#: src/recode-sr-latin.c:157
 #, c-format, no-wrap
 msgid ""
 "The input text is read from standard input.  The converted text is output to\n"
 "standard output.\n"
 msgstr ""
 
-#: src/recode-sr-latin.c:338
+#: src/recode-sr-latin.c:340
 #, c-format
 msgid "input is not valid in \"%s\" encoding"
 msgstr ""
 
 # lib/copy-file.c:61 src/file-list.c:57 src/po-lex.c:726 src/read-mo.c:171 src/urlget.c:204 src/xgettext.c:823 src/xgettext.c:836 src/xgettext.c:846 #, c-format
-#: src/recode-sr-latin.c:366
+#: src/recode-sr-latin.c:368
 #, fuzzy, c-format
 msgid "error while converting from \"%s\" encoding to \"%s\" encoding"
-msgstr "當開啟檔案 “%s” 準備讀取時發生錯誤"
+msgstr "當開啟檔案 %s 準備讀取時發生錯誤"
 
-#: src/urlget.c:159
+#: src/urlget.c:160
 #, c-format
 msgid "expected two arguments"
-msgstr "é\9c\80è¦\81æ\81°å¥½å\85©å\80\8bå\8f\83數"
+msgstr "é\9c\80è¦\81æ\81°å¥½å\85©å\80\8bå¼\95數"
 
-#: src/urlget.c:176
+#: src/urlget.c:177
 #, c-format
 msgid "Usage: %s [OPTION] URL FILE\n"
 msgstr "用法:%s [選項] 網址 檔案\n"
 
-#: src/urlget.c:181
+#: src/urlget.c:182
 #, c-format, no-wrap
 msgid ""
 "Fetches and outputs the contents of an URL.  If the URL cannot be accessed,\n"
 "the locally accessible FILE is used instead.\n"
 msgstr "擷取並輸出某網址的內容。如果無法存取該網址,則改用指定的本機檔案代替。\n"
 
-#: src/urlget.c:234
+#: src/urlget.c:229
+#, c-format
+msgid "error reading \"%s\""
+msgstr "讀取 %s 時發生錯誤"
+
+#: src/urlget.c:235
 #, c-format
 msgid "error writing stdout"
 msgstr "寫入至標準輸出時發生錯誤"
 
-#: src/urlget.c:264
+#: src/urlget.c:239
+#, c-format
+msgid "error after reading \"%s\""
+msgstr "完成讀取 %s 後發生錯誤"
+
+#: src/urlget.c:265
 #, c-format
 msgid "Retrieving %s..."
 msgstr ""
 
-#: src/urlget.c:308
+#: src/urlget.c:309
 #, c-format
 msgid " timed out.\n"
 msgstr ""
 
-#: src/urlget.c:445
+#: src/urlget.c:446
 #, c-format
 msgid " failed.\n"
 msgstr ""
 
-#: src/write-catalog.c:126
+#: src/write-catalog.c:127
 #, fuzzy
 msgid ""
 "Cannot output multiple translation domains into a single file with the "
@@ -3003,7 +3427,7 @@ msgstr ""
 "不可以將多個屬於不同 domain 的翻譯訊息寫入一個 Java .properties 檔案。請改用"
 "PO 檔案格式。"
 
-#: src/write-catalog.c:129
+#: src/write-catalog.c:130
 #, fuzzy
 msgid ""
 "Cannot output multiple translation domains into a single file with the "
@@ -3011,14 +3435,14 @@ msgid ""
 msgstr ""
 "不可以將多個屬於不同領域的翻譯訊息寫入一個 NeXTstep/GNUstep .strings 檔案。"
 
-#: src/write-catalog.c:162
+#: src/write-catalog.c:163
 #, fuzzy
 msgid ""
 "message catalog has context dependent translations, but the output format "
 "does not support them."
 msgstr "翻譯檔含有複數型態的翻譯,但輸出檔的格式不支援複數型態。"
 
-#: src/write-catalog.c:197
+#: src/write-catalog.c:198
 msgid ""
 "message catalog has plural form translations, but the output format does not "
 "support them. Try generating a Java class using \"msgfmt --java\", instead "
@@ -3027,25 +3451,25 @@ msgstr ""
 "翻譯檔中有複數格式的翻譯字句,但輸出格式不支援複數。請嘗試使用 “msgfmt --"
 "java” 產生 Java class,而不用 properties 檔案。"
 
-#: src/write-catalog.c:202
+#: src/write-catalog.c:203
 msgid ""
 "message catalog has plural form translations, but the output format does not "
 "support them."
 msgstr "翻譯檔含有複數型態的翻譯,但輸出檔的格式不支援複數型態。"
 
-#: src/write-catalog.c:231 src/write-catalog.c:275
+#: src/write-catalog.c:232 src/write-catalog.c:276 src/write-xml.c:58
 #, c-format
 msgid "cannot create output file \"%s\""
 msgstr "無法產生輸出檔 “%s”"
 
-#: src/write-catalog.c:239 src/write-catalog.c:283
+#: src/write-catalog.c:240 src/write-catalog.c:284
 msgid "standard output"
 msgstr "標準輸出"
 
 #: src/write-csharp.c:703
 #, c-format
 msgid "failed to create directory \"%s\""
-msgstr "無法建立 “%s” 目錄"
+msgstr "無法建立 %s 目錄"
 
 #: src/write-csharp.c:766
 #, c-format
@@ -3057,35 +3481,41 @@ msgstr "編譯 C# class 檔出現錯誤,請嘗試使用 --verbose 選項"
 msgid "compilation of C# class failed"
 msgstr "編譯 C# class 檔出現錯誤,請嘗試使用 --verbose 選項"
 
-#: src/write-java.c:1080
+#: src/write-desktop.c:162 src/write-mo.c:800 src/write-qt.c:737
+#: src/write-tcl.c:213
+#, c-format
+msgid "error while opening \"%s\" for writing"
+msgstr "當開啟檔案 %s 來寫入內容時發生錯誤"
+
+#: src/write-java.c:1092
 #, c-format
 msgid "not a valid Java class name: %s"
 msgstr "並非有效的 Java class 名稱:%s"
 
-#: src/write-java.c:1165
+#: src/write-java.c:1211
 #, c-format
 msgid "compilation of Java class failed, please try --verbose or set $JAVAC"
 msgstr ""
 "編譯 Java class 檔出現錯誤,請嘗試使用 --verbose 選項或設定 $JAVAC 環境變數"
 
-#: src/write-java.c:1168
+#: src/write-java.c:1214
 #, fuzzy, c-format
 msgid "compilation of Java class failed, please try to set $JAVAC"
 msgstr ""
 "編譯 Java class 檔出現錯誤,請嘗試使用 --verbose 選項或設定 $JAVAC 環境變數"
 
-#: src/write-mo.c:799 src/write-qt.c:736 src/write-tcl.c:212
-#, c-format
-msgid "error while opening \"%s\" for writing"
-msgstr "ç\95¶é\96\8bå\95\9fæª\94æ¡\88 â\80\9c%sâ\80\9d ä¾\86寫å\85¥å\85§å®¹æ\99\82ç\99¼ç\94\9fé\8c¯èª¤"
+#: src/write-po.c:822
+#, fuzzy
+msgid "incomplete multibyte sequence"
+msgstr "ç\84¡æ\95\88ç\9a\84ä½\8då\85\83çµ\84åº\8få\88\97"
 
-#: src/write-po.c:802
-#, c-format
+#: src/write-po.c:885
+#, fuzzy, c-format
 msgid ""
-"internationalized messages should not contain the `\\%c' escape sequence"
+"internationalized messages should not contain the '\\%c' escape sequence"
 msgstr "國際化的訊息不應含有 ‘\\%c’ 這個轉義控制序列 (escape sequence)"
 
-#: src/write-po.c:1253 src/write-po.c:1382
+#: src/write-po.c:1336 src/write-po.c:1460
 #, fuzzy, c-format
 msgid ""
 "The following msgctxt contains non-ASCII characters.\n"
@@ -3098,7 +3528,7 @@ msgstr ""
 "請考慮使用只有 ASCII 字元的 msgid。\n"
 "%s\n"
 
-#: src/write-po.c:1265 src/write-po.c:1394
+#: src/write-po.c:1348 src/write-po.c:1472
 #, c-format
 msgid ""
 "The following msgid contains non-ASCII characters.\n"
@@ -3111,13 +3541,13 @@ msgstr ""
 "請考慮使用只有 ASCII 字元的 msgid。\n"
 "%s\n"
 
-#: src/write-qt.c:667
+#: src/write-qt.c:668
 msgid ""
 "message catalog has plural form translations\n"
 "but the Qt message catalog format doesn't support plural handling\n"
 msgstr "翻譯檔含有複數型態的翻譯,但 Qt 的翻譯檔不能處理複數型態\n"
 
-#: src/write-qt.c:693
+#: src/write-qt.c:694
 #, fuzzy
 msgid ""
 "message catalog has msgctxt strings containing characters outside "
@@ -3128,7 +3558,7 @@ msgstr ""
 "翻譯檔中某些 msgid 含有 ISO-8859-1 以外的字元,但 Qt 翻譯檔格式只支援翻譯後的"
 "字句使用 Unicode,未翻譯的字句是不支援的。\n"
 
-#: src/write-qt.c:717
+#: src/write-qt.c:718
 msgid ""
 "message catalog has msgid strings containing characters outside ISO-8859-1\n"
 "but the Qt message catalog format supports Unicode only in the translated\n"
@@ -3137,65 +3567,70 @@ msgstr ""
 "翻譯檔中某些 msgid 含有 ISO-8859-1 以外的字元,但 Qt 翻譯檔格式只支援翻譯後的"
 "字句使用 Unicode,未翻譯的字句是不支援的。\n"
 
-#: src/write-resources.c:94
+#: src/write-resources.c:95
 #, c-format
 msgid "error while writing to %s subprocess"
-msgstr "將內容寫入至 %s 副程時發生錯誤"
+msgstr "將內容寫入至 %s 副程時發生錯誤"
 
-#: src/write-resources.c:131
+#: src/write-resources.c:132
 #, fuzzy
 msgid ""
 "message catalog has context dependent translations\n"
 "but the C# .resources format doesn't support contexts\n"
 msgstr "翻譯檔含有複數型態的翻譯,但 C# 的翻譯檔不能處理複數型態\n"
 
-#: src/write-resources.c:150
+#: src/write-resources.c:151
 msgid ""
 "message catalog has plural form translations\n"
 "but the C# .resources format doesn't support plural handling\n"
 msgstr "翻譯檔含有複數型態的翻譯,但 C# 的翻譯檔不能處理複數型態\n"
 
-#: src/write-tcl.c:157
+#: src/write-tcl.c:158
 #, fuzzy
 msgid ""
 "message catalog has context dependent translations\n"
 "but the Tcl message catalog format doesn't support contexts\n"
 msgstr "翻譯檔含有複數型態的翻譯,但 Tcl 的翻譯檔不能處理複數型態\n"
 
-#: src/write-tcl.c:176
+#: src/write-tcl.c:177
 msgid ""
 "message catalog has plural form translations\n"
 "but the Tcl message catalog format doesn't support plural handling\n"
 msgstr "翻譯檔含有複數型態的翻譯,但 Tcl 的翻譯檔不能處理複數型態\n"
 
-#: src/x-awk.c:341 src/x-python.c:1074
+#: src/x-awk.c:342 src/x-javascript.c:796 src/x-python.c:932
 #, c-format
 msgid "%s:%d: warning: unterminated string"
 msgstr "%s:%d: 警告:字串未完結"
 
-#: src/x-awk.c:592
+#: src/x-awk.c:593
 #, c-format
 msgid "%s:%d: warning: unterminated regular expression"
 msgstr "%s:%d: 警告:正規表示式不完整"
 
-#: src/x-c.c:1223 src/x-csharp.c:1509 src/x-java.c:872
+#: src/x-c.c:1161
+#, fuzzy, c-format
+msgid "warning: invalid Unicode character"
+msgstr "%s:%d: 警告:Unicode 字元無效"
+
+#: src/x-c.c:1475 src/x-csharp.c:1510 src/x-java.c:872 src/x-vala.c:619
 #, c-format
 msgid "%s:%d: warning: unterminated character constant"
 msgstr "%s:%d: 警告:字元常數未完結"
 
-#: src/x-c.c:1247
+#: src/x-c.c:1531 src/x-c.c:1582 src/x-vala.c:729
 #, c-format
 msgid "%s:%d: warning: unterminated string literal"
 msgstr "%s:%d: 警告:字串未完結"
 
-#: src/x-csharp.c:224 src/xgettext.c:2020
+#: src/x-csharp.c:225 src/xgettext.c:2375
 #, fuzzy
 msgid "Please specify the source encoding through --from-code."
 msgstr ""
 "%s%s 出現不屬於 ASCII 字元的字串。\n"
 "請使用 --from-code 選項指定源代碼的文字編碼。\n"
 
-#: src/x-csharp.c:269
+#: src/x-csharp.c:270
 #, c-format
 msgid ""
 "%s:%d: Invalid multibyte sequence.\n"
@@ -3204,7 +3639,7 @@ msgstr ""
 "%s:%d: 出現無效的位元組序列。\n"
 "請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
 
-#: src/x-csharp.c:285
+#: src/x-csharp.c:286
 #, c-format
 msgid ""
 "%s:%d: Long incomplete multibyte sequence.\n"
@@ -3213,7 +3648,7 @@ msgstr ""
 "%s:%d: 出現無效而且十分長的位元組序列。\n"
 "請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
 
-#: src/x-csharp.c:297
+#: src/x-csharp.c:298
 #, c-format
 msgid ""
 "%s:%d: Incomplete multibyte sequence at end of file.\n"
@@ -3222,7 +3657,7 @@ msgstr ""
 "%s:%d: 檔案末端出現不完整的位元組序列。\n"
 "請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
 
-#: src/x-csharp.c:306
+#: src/x-csharp.c:307
 #, c-format
 msgid ""
 "%s:%d: Incomplete multibyte sequence at end of line.\n"
@@ -3231,12 +3666,12 @@ msgstr ""
 "%s:%d: 該行末端出現不完整的位元組序列。\n"
 "請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
 
-#: src/x-csharp.c:315 src/x-python.c:332
+#: src/x-csharp.c:316 src/x-javascript.c:322 src/x-python.c:375
 #, c-format
 msgid "%s:%d: iconv failure"
 msgstr "%s:%d: iconv 失敗"
 
-#: src/x-csharp.c:338
+#: src/x-csharp.c:339
 #, c-format
 msgid ""
 "%s:%d: Invalid multibyte sequence.\n"
@@ -3245,221 +3680,107 @@ msgstr ""
 "%s:%d: 出現無效的位元組序列。\n"
 "請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
 
-#: src/x-csharp.c:1390 src/x-python.c:1281
+#: src/x-csharp.c:1391 src/x-python.c:1139
 #, c-format
 msgid "%s:%d: warning: invalid Unicode character"
 msgstr "%s:%d: 警告:Unicode 字元無效"
 
-#: src/x-csharp.c:1512 src/x-java.c:875
+#: src/x-csharp.c:1513 src/x-java.c:875
 #, c-format
 msgid "%s:%d: warning: unterminated string constant"
 msgstr "%s:%d: 警告:字元常數未完結"
 
-#: src/x-csharp.c:2020 src/x-java.c:1369
+#: src/x-csharp.c:2019 src/x-java.c:1369
 #, c-format
 msgid "%s:%d: warning: ')' found where '}' was expected"
 msgstr "%s:%d: 應該有 ‘)’ 的地方出現了 ‘}’"
 
-#: src/x-csharp.c:2054 src/x-java.c:1403
+#: src/x-csharp.c:2053 src/x-java.c:1403
 #, c-format
 msgid "%s:%d: warning: '}' found where ')' was expected"
 msgstr "%s:%d: 應該有 ‘}’ 的地方出現了 ‘)’"
 
-#: src/x-glade.c:623 src/x-glade.c:630
-#, fuzzy, c-format
-msgid "%s:%lu:%lu: %s"
-msgstr "%s:%d:%d: %s"
-
-#: src/x-glade.c:657
+#: src/xgettext.c:579
 #, c-format
-msgid ""
-"Language \"glade\" is not supported. %s relies on expat.\n"
-"This version was built without expat.\n"
+msgid "'%s' is not a valid encoding name.  Using ASCII as fallback.\n"
 msgstr ""
-"不支援 “glade” 語言。%s 是需要 expat 軟體的,\n"
-"但這個版本編譯時沒有加入 expat 支援。\n"
 
-#: src/x-java.c:494
+#: src/xgettext.c:648
 #, fuzzy, c-format
-msgid "%s:%d: warning: lone surrogate U+%04X"
-msgstr "%s:%d: 警告:字串未完結"
+msgid "syntax check '%s' unknown"
+msgstr "不明的語言 ‘%s’"
 
-#: src/x-perl.c:308
+#: src/xgettext.c:657
 #, c-format
-msgid "%s:%d: can't find string terminator \"%s\" anywhere before EOF"
-msgstr "%s:%d: EOF 之前找不到任何表示字串完結的標記 “%s”"
+msgid "sentence end type '%s' unknown"
+msgstr ""
 
-#: src/x-perl.c:1043
+#: src/xgettext.c:711
 #, c-format
-msgid "%s:%d: missing right brace on \\x{HEXNUMBER}"
-msgstr "%s:%d: \\x{HEXNUMBER} 缺少了右邊的大括號"
+msgid "--join-existing cannot be used when output is written to stdout"
+msgstr "當結果被導向至標準輸出時,不可以用 --join-existing 選項"
 
-#: src/x-perl.c:1163
+#: src/xgettext.c:716
 #, c-format
-msgid "%s:%d: invalid interpolation (\"\\l\") of 8bit character \"%c\""
-msgstr "%s:%d: 8bit 字元 “%c” 的轉換 (“\\l”) 無效"
+msgid "xgettext cannot work without keywords to look for"
+msgstr "若無關鍵字,xgettext 將無法運作"
 
-#: src/x-perl.c:1183
+#: src/xgettext.c:868
 #, c-format
-msgid "%s:%d: invalid interpolation (\"\\u\") of 8bit character \"%c\""
-msgstr "%s:%d: 8bit 字元 “%c” 的轉換 (“\\u”) 無效"
+msgid "warning: ITS rule file '%s' does not exist"
+msgstr ""
 
-#: src/x-perl.c:1217
+#: src/xgettext.c:949
 #, c-format
-msgid "%s:%d: invalid variable interpolation at \"%c\""
+msgid ""
+"warning: ITS rule file '%s' does not exist; check your gettext installation"
 msgstr ""
 
-#: src/x-perl.c:1230
-#, c-format
-msgid "%s:%d: invalid interpolation (\"\\L\") of 8bit character \"%c\""
-msgstr "%s:%d: 8bit 字元 “%c” 的轉換 (“\\L”) 無效"
+#: src/xgettext.c:967
+#, fuzzy, c-format
+msgid "warning: file '%s' extension '%s' is unknown; will try C"
+msgstr "警告:無法辨認檔案 ‘%s’ 的副檔名 ‘%s’;會假設是 C 格式來處理"
 
-#: src/x-perl.c:1247
+#: src/xgettext.c:1052
 #, c-format
-msgid "%s:%d: invalid interpolation (\"\\U\") of 8bit character \"%c\""
-msgstr "%s:%d: 8bit 字元 “%c” 的轉換 (“\\U”) 無效"
+msgid "Extract translatable strings from given input files.\n"
+msgstr "由指定的輸入檔抽取可翻譯的字串。\n"
 
-#: src/x-python.c:236
-#, fuzzy
+#: src/xgettext.c:1075
+#, c-format
 msgid ""
-"Please specify the source encoding through --from-code or through a comment\n"
-"as specified in http://www.python.org/peps/pep-0263.html.\n"
+"  -d, --default-domain=NAME   use NAME.po for output (instead of messages."
+"po)\n"
 msgstr ""
-"%s%s 出現不屬於 ASCII 字元的字串。\n"
-"請使用 --from-code 選項指定源代碼的文字編碼。\n"
+"  -d, --default-domain=NAME   使用 NAME.po 作為輸出檔 (而不是 messages.po)\n"
 
-#: src/x-python.c:282
-#, fuzzy, c-format
-msgid ""
-"%s:%d: Invalid multibyte sequence.\n"
-"Please specify the correct source encoding through --from-code or through a\n"
-"comment as specified in http://www.python.org/peps/pep-0263.html.\n"
-msgstr ""
-"%s:%d: 出現無效的位元組序列。\n"
-"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+#: src/xgettext.c:1077
+#, c-format
+msgid "  -o, --output=FILE           write output to specified file\n"
+msgstr "  -o, --output=FILE           將輸出內容寫入至指定檔案\n"
 
-#: src/x-python.c:299
-#, fuzzy, c-format
+#: src/xgettext.c:1079
+#, c-format
 msgid ""
-"%s:%d: Long incomplete multibyte sequence.\n"
-"Please specify the correct source encoding through --from-code or through a\n"
-"comment as specified in http://www.python.org/peps/pep-0263.html.\n"
-msgstr ""
-"%s:%d: 出現無效而且十分長的位元組序列。\n"
-"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+"  -p, --output-dir=DIR        output files will be placed in directory DIR\n"
+msgstr "  -p, --output-dir=DIR        輸出檔會存取在指定目錄\n"
 
-#: src/x-python.c:312
-#, fuzzy, c-format
-msgid ""
-"%s:%d: Incomplete multibyte sequence at end of file.\n"
-"Please specify the correct source encoding through --from-code or through a\n"
-"comment as specified in http://www.python.org/peps/pep-0263.html.\n"
-msgstr ""
-"%s:%d: 檔案末端出現不完整的位元組序列。\n"
-"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+#: src/xgettext.c:1084
+#, c-format
+msgid "Choice of input file language:\n"
+msgstr "輸入檔的語言選擇:\n"
 
-#: src/x-python.c:322
+#: src/xgettext.c:1086
 #, fuzzy, c-format
 msgid ""
-"%s:%d: Incomplete multibyte sequence at end of line.\n"
-"Please specify the correct source encoding through --from-code or through a\n"
-"comment as specified in http://www.python.org/peps/pep-0263.html.\n"
-msgstr ""
-"%s:%d: 該行末端出現不完整的位元組序列。\n"
-"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
-
-#: src/x-python.c:355
-#, fuzzy, c-format
-msgid ""
-"%s:%d: Invalid multibyte sequence.\n"
-"Please specify the source encoding through --from-code or through a comment\n"
-"as specified in http://www.python.org/peps/pep-0263.html.\n"
-msgstr ""
-"%s:%d: 出現無效的位元組序列。\n"
-"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
-
-#: src/x-python.c:679
-#, c-format
-msgid "Unknown encoding \"%s\". Proceeding with ASCII instead."
-msgstr ""
-
-#: src/x-rst.c:108
-#, c-format
-msgid "%s:%d: invalid string definition"
-msgstr "%s:%d: 無效的字串定義"
-
-#: src/x-rst.c:172
-#, c-format
-msgid "%s:%d: missing number after #"
-msgstr "%s:%d: # 後缺少了數字"
-
-#: src/x-rst.c:207
-#, c-format
-msgid "%s:%d: invalid string expression"
-msgstr "%s:%d: 無效的字串表示式"
-
-#: src/x-sh.c:1074
-#, c-format
-msgid ""
-"%s:%lu: warning: the syntax $\"...\" is deprecated due to security reasons; "
-"use eval_gettext instead"
-msgstr ""
-"%s:%lu: 警告:$\"...\" 這種格式因為安全理由已經過時;請改用 eval_gettext"
-
-#: src/xgettext.c:621
-#, c-format
-msgid "--join-existing cannot be used when output is written to stdout"
-msgstr "當結果被導向至標準輸出時,不可以用 --join-existing 選項"
-
-#: src/xgettext.c:626
-#, c-format
-msgid "xgettext cannot work without keywords to look for"
-msgstr "若無關鍵字,xgettext 將無法運作"
-
-#: src/xgettext.c:769
-#, c-format
-msgid "warning: file `%s' extension `%s' is unknown; will try C"
-msgstr "警告:無法辨認檔案 ‘%s’ 的副檔名 ‘%s’;會假設是 C 格式來處理"
-
-#: src/xgettext.c:820
-#, c-format
-msgid "Extract translatable strings from given input files.\n"
-msgstr "由指定的輸入檔抽取可翻譯的字串。\n"
-
-#: src/xgettext.c:843
-#, c-format
-msgid ""
-"  -d, --default-domain=NAME   use NAME.po for output (instead of messages."
-"po)\n"
-msgstr ""
-"  -d, --default-domain=NAME   使用 NAME.po 作為輸出檔 (而不是 messages.po)\n"
-
-#: src/xgettext.c:845
-#, c-format
-msgid "  -o, --output=FILE           write output to specified file\n"
-msgstr "  -o, --output=FILE           將輸出內容寫入至指定檔案\n"
-
-#: src/xgettext.c:847
-#, c-format
-msgid ""
-"  -p, --output-dir=DIR        output files will be placed in directory DIR\n"
-msgstr "  -p, --output-dir=DIR        輸出檔會存取在指定目錄\n"
-
-#: src/xgettext.c:852
-#, c-format
-msgid "Choice of input file language:\n"
-msgstr "輸入檔的語言選擇:\n"
-
-#: src/xgettext.c:854
-#, c-format
-msgid ""
-"  -L, --language=NAME         recognise the specified language\n"
-"                                (C, C++, ObjectiveC, PO, Shell, Python, "
-"Lisp,\n"
-"                                EmacsLisp, librep, Scheme, Smalltalk, Java,\n"
-"                                JavaProperties, C#, awk, YCP, Tcl, Perl, "
-"PHP,\n"
-"                                GCC-source, NXStringTable, RST, Glade)\n"
+"  -L, --language=NAME         recognise the specified language\n"
+"                                (C, C++, ObjectiveC, PO, Shell, Python, "
+"Lisp,\n"
+"                                EmacsLisp, librep, Scheme, Smalltalk, Java,\n"
+"                                JavaProperties, C#, awk, YCP, Tcl, Perl, "
+"PHP,\n"
+"                                GCC-source, NXStringTable, RST, Glade, Lua,\n"
+"                                JavaScript, Vala, Desktop)\n"
 msgstr ""
 "  -L, --language=語言         辨認指定的程式語言\n"
 "                                (C, C++, ObjectiveC, PO, Shell, Python, "
@@ -3469,19 +3790,19 @@ msgstr ""
 "PHP,\n"
 "                                GCC-source, NXStringTable, RST, Glade)\n"
 
-#: src/xgettext.c:860
+#: src/xgettext.c:1093
 #, c-format
 msgid "  -C, --c++                   shorthand for --language=C++\n"
 msgstr "  -C, --c++                   --language=C++ 的簡寫\n"
 
-#: src/xgettext.c:862
+#: src/xgettext.c:1095
 #, c-format
 msgid ""
 "By default the language is guessed depending on the input file name "
 "extension.\n"
 msgstr "預設的語言是由輸入檔的延伸檔名決定的。\n"
 
-#: src/xgettext.c:867
+#: src/xgettext.c:1100
 #, c-format
 msgid ""
 "      --from-code=NAME        encoding of input files\n"
@@ -3490,22 +3811,22 @@ msgstr ""
 "      --from-code=NAME        輸入檔的文字編碼\n"
 "                                (Python, Tcl, Glade 例外)\n"
 
-#: src/xgettext.c:870
+#: src/xgettext.c:1103
 #, c-format
 msgid "By default the input files are assumed to be in ASCII.\n"
 msgstr "輸入檔內容預設會當作 ASCII 看待。\n"
 
-#: src/xgettext.c:875
+#: src/xgettext.c:1108
 #, c-format
 msgid "  -j, --join-existing         join messages with existing file\n"
 msgstr "  -j, --join-existing         合併已存在的訊息檔\n"
 
-#: src/xgettext.c:877
+#: src/xgettext.c:1110
 #, c-format
 msgid "  -x, --exclude-file=FILE.po  entries from FILE.po are not extracted\n"
 msgstr "  -x, --exclude-file=FILE.po  不取出屬於 FILE.po 的訊息\n"
 
-#: src/xgettext.c:879
+#: src/xgettext.c:1112
 #, c-format
 msgid ""
 "  -cTAG, --add-comments=TAG   place comment blocks starting with TAG and\n"
@@ -3515,39 +3836,61 @@ msgid ""
 "                                in output file\n"
 msgstr ""
 
-#: src/xgettext.c:885
+#: src/xgettext.c:1117
+#, c-format
+msgid ""
+"      --check=NAME            perform syntax check on messages\n"
+"                                (ellipsis-unicode, space-ellipsis,\n"
+"                                 quote-unicode)\n"
+msgstr ""
+
+#: src/xgettext.c:1121
+#, c-format
+msgid ""
+"      --sentence-end=TYPE     type describing the end of sentence\n"
+"                                (single-space, which is the default, \n"
+"                                 or double-space)\n"
+msgstr ""
+
+#: src/xgettext.c:1126
 #, c-format
 msgid "Language specific options:\n"
 msgstr "個別語言特殊選項:\n"
 
-#: src/xgettext.c:887
+#: src/xgettext.c:1128
 #, c-format
 msgid "  -a, --extract-all           extract all strings\n"
 msgstr "  -a, --extract-all           抽取所有字串\n"
 
-#: src/xgettext.c:889 src/xgettext.c:896
-#, c-format
+#: src/xgettext.c:1130
+#, fuzzy, c-format
 msgid ""
 "                                (only languages C, C++, ObjectiveC, Shell,\n"
 "                                Python, Lisp, EmacsLisp, librep, Scheme, "
 "Java,\n"
-"                                C#, awk, Tcl, Perl, PHP, GCC-source, Glade)\n"
+"                                C#, awk, Tcl, Perl, PHP, GCC-source, Glade,\n"
+"                                Lua, JavaScript, Vala)\n"
 msgstr ""
 "                                (只適用於 C, C++, ObjectiveC, Shell,\n"
 "                                Python, Lisp, EmacsLisp, librep, Scheme, "
 "Java,\n"
 "                                C#, awk, Tcl, Perl, PHP, GCC-source, Glade)\n"
 
-#: src/xgettext.c:893
+#: src/xgettext.c:1138
 #, fuzzy, c-format
 msgid ""
-"  -kWORD, --keyword=WORD      look for WORD as an additional keyword\n"
-"  -k, --keyword               do not to use default keywords\n"
+"                                (only languages C, C++, ObjectiveC, Shell,\n"
+"                                Python, Lisp, EmacsLisp, librep, Scheme, "
+"Java,\n"
+"                                C#, awk, Tcl, Perl, PHP, GCC-source, Glade,\n"
+"                                Lua, JavaScript, Vala, Desktop)\n"
 msgstr ""
-"  -k, --keyword[=WORD]        要留意的額外關鍵字 (如果沒有指定,\n"
-"                              表示不使用預設的關鍵字)\n"
+"                                (只適用於 C, C++, ObjectiveC, Shell,\n"
+"                                Python, Lisp, EmacsLisp, librep, Scheme, "
+"Java,\n"
+"                                C#, awk, Tcl, Perl, PHP, GCC-source, Glade)\n"
 
-#: src/xgettext.c:900
+#: src/xgettext.c:1143
 #, c-format
 msgid ""
 "      --flag=WORD:ARG:FLAG    additional flag for strings inside the "
@@ -3555,66 +3898,77 @@ msgid ""
 "                              number ARG of keyword WORD\n"
 msgstr ""
 
-#: src/xgettext.c:903
-#, c-format
+#: src/xgettext.c:1146
+#, fuzzy, c-format
 msgid ""
 "                                (only languages C, C++, ObjectiveC, Shell,\n"
 "                                Python, Lisp, EmacsLisp, librep, Scheme, "
 "Java,\n"
-"                                C#, awk, YCP, Tcl, Perl, PHP, GCC-source)\n"
+"                                C#, awk, YCP, Tcl, Perl, PHP, GCC-source,\n"
+"                                Lua, JavaScript, Vala)\n"
 msgstr ""
 "                                (只適用於 C, C++, ObjectiveC, Shell,\n"
 "                                Python, Lisp, EmacsLisp, librep, Scheme, "
 "Java,\n"
 "                                C#, awk, YCP, Tcl, Perl, PHP, GCC-source)\n"
 
-#: src/xgettext.c:907
+#: src/xgettext.c:1151
 #, c-format
 msgid "  -T, --trigraphs             understand ANSI C trigraphs for input\n"
 msgstr "  -T, --trigraphs             支援讀取輸入內容中的 ANSI C trigraph\n"
 
-#: src/xgettext.c:909
+#: src/xgettext.c:1153
 #, c-format
 msgid "                                (only languages C, C++, ObjectiveC)\n"
 msgstr "                                (只適用於 C, C++, ObjectiveC)\n"
 
-#: src/xgettext.c:911
+#: src/xgettext.c:1155
 #, c-format
 msgid "      --qt                    recognize Qt format strings\n"
 msgstr "      --qt                    辨認 Qt 格式的字串\n"
 
-#: src/xgettext.c:913 src/xgettext.c:917 src/xgettext.c:921
+#: src/xgettext.c:1157 src/xgettext.c:1161 src/xgettext.c:1165
 #, c-format
 msgid "                                (only language C++)\n"
 msgstr "                                (只適用於 C++)\n"
 
-#: src/xgettext.c:915
+#: src/xgettext.c:1159
 #, fuzzy, c-format
 msgid "      --kde                   recognize KDE 4 format strings\n"
 msgstr "      --qt                    辨認 Qt 格式的字串\n"
 
-#: src/xgettext.c:919
+#: src/xgettext.c:1163
 #, fuzzy, c-format
 msgid "      --boost                 recognize Boost format strings\n"
 msgstr "      --qt                    辨認 Qt 格式的字串\n"
 
-#: src/xgettext.c:923
+#: src/xgettext.c:1167
 #, c-format
 msgid ""
 "      --debug                 more detailed formatstring recognition result\n"
 msgstr "      --debug                 顯示較詳細的格式字串辨認結果\n"
 
-#: src/xgettext.c:948
+#: src/xgettext.c:1192
 #, c-format
 msgid "      --properties-output     write out a Java .properties file\n"
 msgstr "      --properties-output     輸出檔格式為 Java .properties 檔\n"
 
-#: src/xgettext.c:963
+#: src/xgettext.c:1196
+#, fuzzy, c-format
+msgid "      --its=FILE              apply ITS rules from FILE\n"
+msgstr "  -f, --files-from=FILE       由 FILE 讀取所有輸入檔的位置\n"
+
+#: src/xgettext.c:1198
+#, fuzzy, c-format
+msgid "      --itstool               write out itstool comments\n"
+msgstr "      --indent                將輸出結果進行縮排\n"
+
+#: src/xgettext.c:1211
 #, c-format
 msgid "      --copyright-holder=STRING  set copyright holder in output\n"
 msgstr "      --copyright-holder=STRING  設定輸出檔的版權所有者\n"
 
-#: src/xgettext.c:965
+#: src/xgettext.c:1213
 #, c-format
 msgid ""
 "      --foreign-user          omit FSF copyright in output for foreign user\n"
@@ -3622,24 +3976,24 @@ msgstr ""
 "      --foreign-user          輸出檔不加上 FSF 的版權宣告,適用於 FSF 以外的"
 "專案\n"
 
-#: src/xgettext.c:967
+#: src/xgettext.c:1215
 #, c-format
 msgid "      --package-name=PACKAGE  set package name in output\n"
 msgstr ""
 
-#: src/xgettext.c:969
+#: src/xgettext.c:1217
 #, fuzzy, c-format
 msgid "      --package-version=VERSION  set package version in output\n"
 msgstr "      --copyright-holder=STRING  設定輸出檔的版權所有者\n"
 
-#: src/xgettext.c:971
+#: src/xgettext.c:1219
 #, c-format
 msgid ""
 "      --msgid-bugs-address=EMAIL@ADDRESS  set report address for msgid bugs\n"
 msgstr ""
 "      --msgid-bugs-address=EMAIL@ADDRESS  指定匯報 msgid 問題時的郵件地址\n"
 
-#: src/xgettext.c:973
+#: src/xgettext.c:1221
 #, c-format
 msgid ""
 "  -m[STRING], --msgstr-prefix[=STRING]  use STRING or \"\" as prefix for "
@@ -3647,7 +4001,7 @@ msgid ""
 "                                values\n"
 msgstr ""
 
-#: src/xgettext.c:976
+#: src/xgettext.c:1224
 #, c-format
 msgid ""
 "  -M[STRING], --msgstr-suffix[=STRING]  use STRING or \"\" as suffix for "
@@ -3655,52 +4009,52 @@ msgid ""
 "                                values\n"
 msgstr ""
 
-#: src/xgettext.c:1782
+#: src/xgettext.c:2050
 #, c-format
 msgid ""
 "A --flag argument doesn't have the <keyword>:<argnum>:[pass-]<flag> syntax: "
 "%s"
 msgstr ""
 
-#: src/xgettext.c:1881
+#: src/xgettext.c:2175
 msgid "standard input"
 msgstr "標準輸入"
 
-#: src/xgettext.c:1985
+#: src/xgettext.c:2340
 #, c-format
 msgid "Non-ASCII character at %s%s."
 msgstr ""
 
-#: src/xgettext.c:1989
+#: src/xgettext.c:2344
 #, c-format
 msgid "Non-ASCII comment at or before %s%s."
 msgstr ""
 
-#: src/xgettext.c:1994
+#: src/xgettext.c:2349
 #, c-format
 msgid "Non-ASCII string at %s%s."
 msgstr ""
 
-#: src/xgettext.c:2100 src/xgettext.c:2133 src/xgettext.c:2195
+#: src/xgettext.c:2455 src/xgettext.c:2488 src/xgettext.c:2553
 #, c-format
 msgid "%s%s: warning: "
 msgstr "%s%s: 警告:"
 
-#: src/xgettext.c:2103
+#: src/xgettext.c:2458
 #, c-format
 msgid ""
 "Although being used in a format string position, the %s is not a valid %s "
 "format string. Reason: %s\n"
 msgstr ""
 
-#: src/xgettext.c:2104
+#: src/xgettext.c:2459
 #, c-format
 msgid ""
 "Although declared as such, the %s is not a valid %s format string. Reason: "
 "%s\n"
 msgstr "縱使表面上 %s 宣告了是 %s 格式字串,但實際上不是。原因為:%s\n"
 
-#: src/xgettext.c:2135
+#: src/xgettext.c:2490
 #, c-format
 msgid ""
 "'%s' format string with unnamed arguments cannot be properly localized:\n"
@@ -3709,7 +4063,7 @@ msgid ""
 "and a mapping instead of a tuple for the arguments.\n"
 msgstr ""
 
-#: src/xgettext.c:2197
+#: src/xgettext.c:2555
 msgid ""
 "Empty msgid.  It is reserved by GNU gettext:\n"
 "gettext(\"\") returns the header entry with\n"
@@ -3719,30 +4073,31 @@ msgstr ""
 "gettext(\"\") 會回傳檔案開始部份的資訊,\n"
 "並非空白字串。\n"
 
-#: src/xgettext.c:2834
+#: src/xgettext.c:3292
 #, fuzzy, c-format
 msgid "ambiguous argument specification for keyword '%.*s'"
-msgstr "%2$s ç\9a\84å\8f\83數 %1$s 不明確"
+msgstr "%2$s ç\9a\84å¼\95數 %1$s 不明確"
 
-#: src/xgettext.c:2861
+#: src/xgettext.c:3319
 #, c-format
 msgid "warning: missing context for keyword '%.*s'"
 msgstr ""
 
-#: src/xgettext.c:2886
+#: src/xgettext.c:3344
 #, c-format
 msgid "warning: missing context for plural argument of keyword '%.*s'"
 msgstr ""
 
-#: src/xgettext.c:2907
+#: src/xgettext.c:3365
 #, c-format
 msgid "context mismatch between singular and plural form"
 msgstr ""
 
-#: src/xgettext.c:3016
+#: src/xgettext.c:3740
+#, fuzzy
 msgid ""
 "The option --msgid-bugs-address was not specified.\n"
-"If you are using a `Makevars' file, please specify\n"
+"If you are using a 'Makevars' file, please specify\n"
 "the MSGID_BUGS_ADDRESS variable there; otherwise please\n"
 "specify an --msgid-bugs-address command line option.\n"
 msgstr ""
@@ -3751,38 +4106,354 @@ msgstr ""
 "MSGID_BUGS_ADDRESS 變數;否則請在指令中\n"
 "使用 --msgid-bugs-address 選項。\n"
 
-#: src/xgettext.c:3226
-#, c-format
-msgid "language `%s' unknown"
+#: src/xgettext.c:3958
+#, fuzzy, c-format
+msgid "language '%s' unknown"
 msgstr "不明的語言 ‘%s’"
 
+#: src/x-java.c:494
+#, fuzzy, c-format
+msgid "%s:%d: warning: lone surrogate U+%04X"
+msgstr "%s:%d: 警告:字串未完結"
+
+#: src/x-javascript.c:231
+#, fuzzy
+msgid "Please specify the source encoding through --from-code\n"
+msgstr ""
+"%s%s 出現不屬於 ASCII 字元的字串。\n"
+"請使用 --from-code 選項指定源代碼的文字編碼。\n"
+
+#: src/x-javascript.c:276
+#, fuzzy, c-format
+msgid ""
+"%s:%d: Invalid multibyte sequence.\n"
+"Please specify the correct source encoding through --from-code\n"
+msgstr ""
+"%s:%d: 出現無效的位元組序列。\n"
+"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+
+#: src/x-javascript.c:292
+#, fuzzy, c-format
+msgid ""
+"%s:%d: Long incomplete multibyte sequence.\n"
+"Please specify the correct source encoding through --from-code\n"
+msgstr ""
+"%s:%d: 出現無效而且十分長的位元組序列。\n"
+"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+
+#: src/x-javascript.c:304
+#, fuzzy, c-format
+msgid ""
+"%s:%d: Incomplete multibyte sequence at end of file.\n"
+"Please specify the correct source encoding through --from-code\n"
+msgstr ""
+"%s:%d: 檔案末端出現不完整的位元組序列。\n"
+"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+
+#: src/x-javascript.c:313
+#, fuzzy, c-format
+msgid ""
+"%s:%d: Incomplete multibyte sequence at end of line.\n"
+"Please specify the correct source encoding through --from-code\n"
+msgstr ""
+"%s:%d: 該行末端出現不完整的位元組序列。\n"
+"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+
+#: src/x-javascript.c:345
+#, fuzzy, c-format
+msgid ""
+"%s:%d: Invalid multibyte sequence.\n"
+"Please specify the source encoding through --from-code\n"
+msgstr ""
+"%s:%d: 出現無效的位元組序列。\n"
+"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+
+#: src/x-javascript.c:955
+#, fuzzy, c-format
+msgid "%s:%d: warning: RegExp literal terminated too early"
+msgstr "%s:%d: 警告:字串未完結"
+
+#: src/x-javascript.c:1056
+#, fuzzy, c-format
+msgid "%s:%d: warning: %s is not allowed"
+msgstr "%s:%d: 警告:Unicode 字元無效"
+
+#: src/x-javascript.c:1070
+#, fuzzy, c-format
+msgid "%s:%d: warning: unterminated XML markup"
+msgstr "%s:%d: 警告:字串未完結"
+
+#: src/x-perl.c:308
+#, c-format
+msgid "%s:%d: can't find string terminator \"%s\" anywhere before EOF"
+msgstr "%s:%d: EOF 之前找不到任何表示字串完結的標記 “%s”"
+
+#: src/x-perl.c:1043
+#, c-format
+msgid "%s:%d: missing right brace on \\x{HEXNUMBER}"
+msgstr "%s:%d: \\x{HEXNUMBER} 缺少了右邊的大括號"
+
+#: src/x-perl.c:1163
+#, c-format
+msgid "%s:%d: invalid interpolation (\"\\l\") of 8bit character \"%c\""
+msgstr "%s:%d: 8bit 字元 “%c” 的轉換 (“\\l”) 無效"
+
+#: src/x-perl.c:1183
+#, c-format
+msgid "%s:%d: invalid interpolation (\"\\u\") of 8bit character \"%c\""
+msgstr "%s:%d: 8bit 字元 “%c” 的轉換 (“\\u”) 無效"
+
+#: src/x-perl.c:1217
+#, c-format
+msgid "%s:%d: invalid variable interpolation at \"%c\""
+msgstr ""
+
+#: src/x-perl.c:1230
+#, c-format
+msgid "%s:%d: invalid interpolation (\"\\L\") of 8bit character \"%c\""
+msgstr "%s:%d: 8bit 字元 “%c” 的轉換 (“\\L”) 無效"
+
+#: src/x-perl.c:1247
+#, c-format
+msgid "%s:%d: invalid interpolation (\"\\U\") of 8bit character \"%c\""
+msgstr "%s:%d: 8bit 字元 “%c” 的轉換 (“\\U”) 無效"
+
+#: src/x-python.c:279
+msgid ""
+"Please specify the source encoding through --from-code or through a comment\n"
+"as specified in http://www.python.org/peps/pep-0263.html.\n"
+msgstr ""
+
+#: src/x-python.c:325
+#, fuzzy, c-format
+msgid ""
+"%s:%d: Invalid multibyte sequence.\n"
+"Please specify the correct source encoding through --from-code or through a\n"
+"comment as specified in http://www.python.org/peps/pep-0263.html.\n"
+msgstr ""
+"%s:%d: 出現無效的位元組序列。\n"
+"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+
+#: src/x-python.c:342
+#, fuzzy, c-format
+msgid ""
+"%s:%d: Long incomplete multibyte sequence.\n"
+"Please specify the correct source encoding through --from-code or through a\n"
+"comment as specified in http://www.python.org/peps/pep-0263.html.\n"
+msgstr ""
+"%s:%d: 出現無效而且十分長的位元組序列。\n"
+"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+
+#: src/x-python.c:355
+#, fuzzy, c-format
+msgid ""
+"%s:%d: Incomplete multibyte sequence at end of file.\n"
+"Please specify the correct source encoding through --from-code or through a\n"
+"comment as specified in http://www.python.org/peps/pep-0263.html.\n"
+msgstr ""
+"%s:%d: 檔案末端出現不完整的位元組序列。\n"
+"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+
+#: src/x-python.c:365
+#, fuzzy, c-format
+msgid ""
+"%s:%d: Incomplete multibyte sequence at end of line.\n"
+"Please specify the correct source encoding through --from-code or through a\n"
+"comment as specified in http://www.python.org/peps/pep-0263.html.\n"
+msgstr ""
+"%s:%d: 該行末端出現不完整的位元組序列。\n"
+"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+
+#: src/x-python.c:398
+#, fuzzy, c-format
+msgid ""
+"%s:%d: Invalid multibyte sequence.\n"
+"Please specify the source encoding through --from-code or through a comment\n"
+"as specified in http://www.python.org/peps/pep-0263.html.\n"
+msgstr ""
+"%s:%d: 出現無效的位元組序列。\n"
+"請使用 --from-code 選項指定源代碼的正確文字編碼。\n"
+
+#: src/x-python.c:723
+#, c-format
+msgid "Unknown encoding \"%s\". Proceeding with ASCII instead."
+msgstr ""
+
+#: src/x-rst.c:109
+#, c-format
+msgid "%s:%d: invalid string definition"
+msgstr "%s:%d: 無效的字串定義"
+
+#: src/x-rst.c:173
+#, c-format
+msgid "%s:%d: missing number after #"
+msgstr "%s:%d: # 後缺少了數字"
+
+#: src/x-rst.c:208
+#, c-format
+msgid "%s:%d: invalid string expression"
+msgstr "%s:%d: 無效的字串表示式"
+
+#: src/x-sh.c:1075
+#, c-format
+msgid ""
+"%s:%lu: warning: the syntax $\"...\" is deprecated due to security reasons; "
+"use eval_gettext instead"
+msgstr ""
+"%s:%lu: 警告:$\"...\" 這種格式因為安全理由已經過時;請改用 eval_gettext"
+
+#: src/x-vala.c:414
+#, fuzzy, c-format
+msgid "%s:%d: warning: regular expression literal terminated too early"
+msgstr "%s:%d: 警告:字串未完結"
+
 #: libgettextpo/gettext-po.c:84
 msgid "<unnamed>"
 msgstr "<未命名>"
 
-#~ msgid "%s: illegal option -- %c\n"
-#~ msgstr "%s:選項不合法 -- %c\n"
+#: libgettextpo/markup.c:366 libgettextpo/markup.c:449
+#, fuzzy
+msgid "invalid UTF-8 sequence"
+msgstr "無效的控制序列"
 
-#~ msgid "DuplicateHandle failed with error code 0x%08x"
-#~ msgstr "DuplicateHandle 失敗,錯誤碼為 0x%08x"
+#: libgettextpo/markup.c:377
+#, fuzzy, c-format
+msgid "'%s' is not a valid name: %c"
+msgstr "並非有效的 Java class 名稱:%s"
 
-#~ msgid "Not yet implemented."
-#~ msgstr "功能尚未編寫。"
+#: libgettextpo/markup.c:397
+#, fuzzy, c-format
+msgid "'%s' is not a valid name: '%c'"
+msgstr "並非有效的 Java class 名稱:%s"
 
-#~ msgid "cannot set up nonblocking I/O to %s subprocess"
-#~ msgstr "無法和 %s 副進程建立非專用的 I/O"
+#: libgettextpo/markup.c:523 libgettextpo/markup.c:534
+#: libgettextpo/markup.c:559
+#, fuzzy, c-format
+msgid "invalid character reference: %s"
+msgstr "無效的控制序列"
 
-#~ msgid "communication with %s subprocess failed"
-#~ msgstr "和 %s 副進程溝通時出現錯誤"
+#: libgettextpo/markup.c:526
+msgid "not a valid number specification"
+msgstr ""
 
-#~ msgid "read from %s subprocess failed"
-#~ msgstr "由 %s 副進程讀入資料時出現錯誤"
+#: libgettextpo/markup.c:535 libgettextpo/markup.c:606
+msgid "no ending ';'"
+msgstr ""
 
-#~ msgid "%s subprocess terminated with exit code %d"
-#~ msgstr "%s 副進程已終止,錯誤碼為 %d"
+#: libgettextpo/markup.c:560
+msgid "non-permitted character"
+msgstr ""
 
-#~ msgid "field `%s' still has initial default value\n"
-#~ msgstr "標頭欄位‘%s’仍然是預設值\n"
+#: libgettextpo/markup.c:599
+msgid "empty"
+msgstr ""
+
+#: libgettextpo/markup.c:604
+msgid "unknown"
+msgstr ""
+
+#: libgettextpo/markup.c:608
+#, fuzzy, c-format
+msgid "invalid entity reference: %s"
+msgstr "無效的位元組序列"
+
+#: libgettextpo/markup.c:959
+msgid "document must begin with an element"
+msgstr ""
+
+#: libgettextpo/markup.c:994 libgettextpo/markup.c:1301
+#: libgettextpo/markup.c:1332
+#, fuzzy, c-format
+msgid "invalid character after '%s'"
+msgstr "%2$s 的引數 %1$s 無效"
+
+#: libgettextpo/markup.c:1031 libgettextpo/markup.c:1107
+#, c-format
+msgid "missing '%c'"
+msgstr ""
+
+#: libgettextpo/markup.c:1140 libgettextpo/markup.c:1176
+#, c-format
+msgid "missing '%c' or '%c'"
+msgstr ""
+
+#: libgettextpo/markup.c:1333
+msgid "a close element name"
+msgstr ""
+
+#: libgettextpo/markup.c:1339 libgettextpo/markup.c:1344
+msgid "element is closed"
+msgstr ""
+
+#: libgettextpo/markup.c:1475
+msgid "empty document"
+msgstr ""
+
+#: libgettextpo/markup.c:1488
+msgid "after '<'"
+msgstr ""
+
+#: libgettextpo/markup.c:1495 libgettextpo/markup.c:1527
+msgid "elements still open"
+msgstr ""
+
+#: libgettextpo/markup.c:1500
+msgid "missing '>'"
+msgstr ""
+
+#: libgettextpo/markup.c:1504
+msgid "inside an element name"
+msgstr ""
+
+#: libgettextpo/markup.c:1509
+#, fuzzy
+msgid "inside an attribute name"
+msgstr "未指定過濾器"
+
+#: libgettextpo/markup.c:1513
+msgid "inside an open tag"
+msgstr ""
+
+#: libgettextpo/markup.c:1517
+msgid "after '='"
+msgstr ""
+
+#: libgettextpo/markup.c:1522
+msgid "inside an attribute value"
+msgstr ""
+
+#: libgettextpo/markup.c:1533
+msgid "inside the close tag"
+msgstr ""
+
+#: libgettextpo/markup.c:1537
+msgid "inside a comment or processing instruction"
+msgstr ""
+
+#: libgettextpo/markup.c:1548
+#, c-format
+msgid "document ended unexpectedly: %s"
+msgstr ""
+
+#, fuzzy
+#~ msgid "%s:%lu:%lu: %s"
+#~ msgstr "%s:%d:%d: %s"
+
+#~ msgid ""
+#~ "Language \"glade\" is not supported. %s relies on expat.\n"
+#~ "This version was built without expat.\n"
+#~ msgstr ""
+#~ "不支援 “glade” 語言。%s 是需要 expat 軟體的,\n"
+#~ "但這個版本編譯時沒有加入 expat 支援。\n"
+
+#~ msgid "%s: illegal option -- %c\n"
+#~ msgstr "%s:選項不合法 -- %c\n"
+
+#~ msgid "DuplicateHandle failed with error code 0x%08x"
+#~ msgstr "DuplicateHandle 失敗,錯誤碼為 0x%08x"
+
+#~ msgid "The %%J directive is only allowed at the beginning of the string."
+#~ msgstr "%%J 只允許在字串最開始出現。"
 
 #~ msgid ""
 #~ "Copyright (C) %s Free Software Foundation, Inc.\n"
@@ -3795,20 +4466,29 @@ msgstr "<未命名>"
 #~ "這是自由軟體;請參考原始碼的版權聲明。本軟體不提供任何保證,甚至不會包括\n"
 #~ "可售性或適用於任何特定目的的保證。\n"
 
-#, fuzzy
-#~ msgid ""
-#~ "message catalog has context dependent translations\n"
-#~ "but the C# .dll format doesn't support contexts\n"
-#~ msgstr "翻譯檔含有複數型態的翻譯,但 C# 的翻譯檔不能處理複數型態\n"
+#~ msgid "Not yet implemented."
+#~ msgstr "功能尚未編寫。"
 
-#, fuzzy
-#~ msgid ""
-#~ "message catalog has context dependent translations\n"
-#~ "but the Java ResourceBundle format doesn't support contexts\n"
-#~ msgstr "翻譯檔含有複數型態的翻譯,但 C# 的翻譯檔不能處理複數型態\n"
+#~ msgid "header field `%s' should start at beginning of line\n"
+#~ msgstr "標頭欄位‘%s’應該位於行首\n"
 
-#~ msgid "The %%J directive is only allowed at the beginning of the string."
-#~ msgstr "%%J 只允許在字串最開始出現。"
+#~ msgid "field `%s' still has initial default value\n"
+#~ msgstr "標頭欄位‘%s’仍然是預設值\n"
+
+#~ msgid "conversion failure"
+#~ msgstr "轉換錯誤"
+
+#~ msgid "%s: warning: "
+#~ msgstr "%s:警告:"
+
+#~ msgid "%s\n"
+#~ msgstr "%s\n"
+
+#~ msgid "%s:%lu: warning: unterminated string"
+#~ msgstr "%s:%lu: 警告:字串未結束"
+
+#~ msgid "%s:%d: fatal: plural message seen before singular message\n"
+#~ msgstr "%s:%d: 嚴重錯誤:複數式出現在單數式之前\n"
 
 #~ msgid "Which is your email address?"
 #~ msgstr "請問您的電子郵件地址?"
@@ -3837,18 +4517,3 @@ msgstr "<未命名>"
 
 #~ msgid "Please enter your email address."
 #~ msgstr "請自行輸入電子郵件地址。"
-
-#~ msgid "conversion failure"
-#~ msgstr "轉換錯誤"
-
-#~ msgid "%s: warning: "
-#~ msgstr "%s:警告:"
-
-#~ msgid "%s\n"
-#~ msgstr "%s\n"
-
-#~ msgid "%s:%lu: warning: unterminated string"
-#~ msgstr "%s:%lu: 警告:字串未結束"
-
-#~ msgid "%s:%d: fatal: plural message seen before singular message\n"
-#~ msgstr "%s:%d: 嚴重錯誤:複數式出現在單數式之前\n"