# Traditional Chinese Messages for libiconv
# Copyright (C) 2003, 05 Free Software Foundation, Inc.
# Wang Jian <lark@linux.net.cn>, 2003
# Wei-Lun Chao <chaoweilun@pcmail.com.tw>, 2005
#
msgid ""
msgstr ""
"Project-Id-Version: libiconv 1.9.1\n"
"Report-Msgid-Bugs-To: bug-gnu-libiconv@gnu.org\n"
"POT-Creation-Date: 2006-01-23 14:26+0100\n"
"PO-Revision-Date: 2005-08-25 10:54+0800\n"
"Last-Translator: Wei-Lun Chao <chaoweilun@pcmail.com.tw>\n"
"Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"

#: src/iconv.c:80
msgid "Usage: iconv [-c] [-s] [-f fromcode] [-t tocode] [file ...]"
msgstr "用法：iconv [-c] [-s] [-f 來源編碼] [-t 目的編碼] [檔案 ...]"

#: src/iconv.c:82
msgid "or:    iconv -l"
msgstr "或：  iconv -l"

#: src/iconv.c:84
#, c-format
msgid "Try `%s --help' for more information.\n"
msgstr ""

#: src/iconv.c:87
#, c-format, no-wrap
msgid "Usage: %s [OPTION...] [-f ENCODING] [-t ENCODING] [INPUTFILE...]\n"
msgstr ""

#: src/iconv.c:91
#, fuzzy, c-format, no-wrap
msgid "or:    %s -l\n"
msgstr "或：  iconv -l"

#: src/iconv.c:96
#, c-format, no-wrap
msgid "Converts text from one encoding to another encoding.\n"
msgstr ""

#: src/iconv.c:100
#, c-format, no-wrap
msgid "Options controlling the input and output format:\n"
msgstr ""

#: src/iconv.c:103
#, c-format, no-wrap
msgid ""
"  -f ENCODING, --from-code=ENCODING\n"
"                              the encoding of the input\n"
msgstr ""

#: src/iconv.c:107
#, c-format, no-wrap
msgid ""
"  -t ENCODING, --to-code=ENCODING\n"
"                              the encoding of the output\n"
msgstr ""

#: src/iconv.c:112
#, c-format, no-wrap
msgid "Options controlling conversion problems:\n"
msgstr ""

#: src/iconv.c:115
#, c-format, no-wrap
msgid "  -c                          discard unconvertible characters\n"
msgstr ""

#: src/iconv.c:118
#, c-format, no-wrap
msgid ""
"  --unicode-subst=FORMATSTRING\n"
"                              substitution for unconvertible Unicode characters\n"
msgstr ""

#: src/iconv.c:122
#, c-format, no-wrap
msgid "  --byte-subst=FORMATSTRING   substitution for unconvertible bytes\n"
msgstr ""

#: src/iconv.c:125
#, c-format, no-wrap
msgid ""
"  --widechar-subst=FORMATSTRING\n"
"                              substitution for unconvertible wide characters\n"
msgstr ""

#: src/iconv.c:130
#, c-format, no-wrap
msgid "Options controlling error output:\n"
msgstr ""

#: src/iconv.c:133
#, c-format, no-wrap
msgid "  -s, --silent                suppress error messages about conversion problems\n"
msgstr ""

#: src/iconv.c:137
#, c-format, no-wrap
msgid "Informative output:\n"
msgstr ""

#: src/iconv.c:140
#, c-format, no-wrap
msgid "  -l, --list                  list the supported encodings\n"
msgstr ""

#: src/iconv.c:143
#, c-format, no-wrap
msgid "  --help                      display this help and exit\n"
msgstr ""

#: src/iconv.c:146
#, c-format, no-wrap
msgid "  --version                   output version information and exit\n"
msgstr ""

#: src/iconv.c:149
msgid "Report bugs to <bug-gnu-libiconv@gnu.org>.\n"
msgstr ""

#: src/iconv.c:159
#, c-format
msgid ""
"This is free software; see the source for copying conditions.  There is NO\n"
"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
msgstr ""
"這是自由軟體；請檢視原始碼中的複製條件。本軟體不提供任何擔保，包括銷售\n"
"或是適用性擔保。\n"

#: src/iconv.c:162
#, c-format
msgid "Written by %s.\n"
msgstr "作者 %s。\n"

#: src/iconv.c:253
#, c-format
msgid ""
"%s argument: A format directive with a variable width is not allowed here."
msgstr ""

#: src/iconv.c:264
#, c-format
msgid ""
"%s argument: A format directive with a variable precision is not allowed "
"here."
msgstr ""

#: src/iconv.c:276
#, c-format
msgid "%s argument: A format directive with a size is not allowed here."
msgstr ""

#: src/iconv.c:314
#, c-format
msgid "%s argument: The string ends in the middle of a directive."
msgstr ""

#: src/iconv.c:316
#, c-format
msgid "%s argument: The character '%c' is not a valid conversion specifier."
msgstr ""

#: src/iconv.c:318
#, c-format
msgid ""
"%s argument: The character that terminates the format directive is not a "
"valid conversion specifier."
msgstr ""

#: src/iconv.c:329
#, c-format
msgid ""
"%s argument: The format string consumes more than one argument: %u arguments."
msgstr ""

#: src/iconv.c:381
#, c-format
msgid "cannot convert byte substitution to Unicode: %s"
msgstr ""

#: src/iconv.c:417
#, c-format
msgid "cannot convert unicode substitution to target encoding: %s"
msgstr ""

#: src/iconv.c:454
#, c-format
msgid "cannot convert byte substitution to wide string: %s"
msgstr ""

#: src/iconv.c:491
#, c-format
msgid "iconv: cannot convert widechar substitution to target encoding: %s"
msgstr ""

#: src/iconv.c:528
#, c-format
msgid "iconv: cannot convert byte substitution to target encoding: %s"
msgstr ""

#: src/iconv.c:562 src/iconv.c:606 src/iconv.c:680
#, fuzzy, c-format
msgid "%s:%u:%u: incomplete character or shift sequence"
msgstr "iconv：%s：不完整的字元或是換碼序列\n"

#: src/iconv.c:595 src/iconv.c:670
#, fuzzy, c-format
msgid "%s:%u:%u: cannot convert"
msgstr "iconv：%s：無法轉換\n"

#: src/iconv.c:637 src/iconv.c:700
#, fuzzy, c-format
msgid "%s:%u:%u"
msgstr "iconv：%s："

#: src/iconv.c:712
#, fuzzy, c-format
msgid "%s: I/O error"
msgstr "iconv：%s：輸入輸出錯誤\n"

#: src/iconv.c:896
#, fuzzy, c-format
msgid "conversion from %s unsupported"
msgstr "iconv：不支援從 %s 進行轉換\n"

#: src/iconv.c:898
#, fuzzy, c-format
msgid "conversion to %s unsupported"
msgstr "iconv：不支援轉換到 %s\n"

#: src/iconv.c:900
#, fuzzy, c-format
msgid "conversion from %s to %s unsupported"
msgstr "iconv：不支援從 %s 轉換到 %s\n"

#: src/iconv.c:901
#, c-format
msgid "try '%s -l' to get the list of supported encodings"
msgstr ""

#: src/iconv.c:955
msgid "(stdin)"
msgstr "(標準輸入)"

#: src/iconv.c:963
#, c-format
msgid "%s"
msgstr ""

#: src/iconv.c:974
#, fuzzy
msgid "I/O error"
msgstr "iconv：輸入輸出錯誤\n"

#~ msgid "iconv: %s: "
#~ msgstr "iconv：%s："

#~ msgid ""
#~ "Usage: iconv [--binary] [-c] [-s] [-f fromcode] [-t tocode] [file ...]"
#~ msgstr ""
#~ "用法：iconv [--binary] [-c] [-s] [-f 來源編碼] [-t 目的編碼] [檔案 ...]"
