# Përkthimi i mesazheve të libiconv në shqip.
# Copyright (C) 2004 Free Software Foundation, Inc.
# Laurent Dhima <laurenti@alblinux.net>, 2004.
#
msgid ""
msgstr ""
"Project-Id-Version: libiconv 1.9.1\n"
"Report-Msgid-Bugs-To: bug-gnu-libiconv@gnu.org\n"
"POT-Creation-Date: 2007-10-25 00:19+0200\n"
"PO-Revision-Date: 2004-08-08 00:36+0200\n"
"Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
"Language-Team: Albanian <translation-team-sq@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#. TRANSLATORS: The first line of the short usage message.
#: src/iconv.c:105
msgid "Usage: iconv [-c] [-s] [-f fromcode] [-t tocode] [file ...]"
msgstr "Përdorimi: iconv [-c] [-s] [-f ngakodi] [-t tekkodi] [file ...]"

#. TRANSLATORS: The second line of the short usage message.
#. Align it correctly against the first line.
#: src/iconv.c:109
msgid "or:    iconv -l"
msgstr "ose:    iconv -l"

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

#. TRANSLATORS: The first line of the long usage message.
#. The %s placeholder expands to the program name.
#: src/iconv.c:116
#, c-format, no-wrap
msgid "Usage: %s [OPTION...] [-f ENCODING] [-t ENCODING] [INPUTFILE...]\n"
msgstr ""

#. TRANSLATORS: The second line of the long usage message.
#. Align it correctly against the first line.
#. The %s placeholder expands to the program name.
#: src/iconv.c:123
#, fuzzy, c-format, no-wrap
msgid "or:    %s -l\n"
msgstr "ose:    iconv -l"

#. TRANSLATORS: Description of the iconv program.
#: src/iconv.c:129
#, c-format, no-wrap
msgid "Converts text from one encoding to another encoding.\n"
msgstr ""

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

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

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

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

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

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

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

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

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

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

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

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

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

#: src/iconv.c:179
#, c-format, no-wrap
msgid "  --version                   output version information and exit\n"
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/iconv.c:186
msgid "Report bugs to <bug-gnu-libiconv@gnu.org>.\n"
msgstr ""

#: src/iconv.c:197
#, no-wrap
msgid ""
"License GPLv2+: GNU GPL version 2 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 ""

#. TRANSLATORS: The %s placeholder expands to an author's name.
#: src/iconv.c:203
#, c-format
msgid "Written by %s.\n"
msgstr "Shkruar nga %s.\n"

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#: src/iconv.c:297
#, c-format
msgid ""
"%s argument: A format directive with a variable width is not allowed here."
msgstr ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#: src/iconv.c:312
#, c-format
msgid ""
"%s argument: A format directive with a variable precision is not allowed "
"here."
msgstr ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#: src/iconv.c:328
#, c-format
msgid "%s argument: A format directive with a size is not allowed here."
msgstr ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#: src/iconv.c:370
#, c-format
msgid "%s argument: The string ends in the middle of a directive."
msgstr ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#. The %c placeholder expands to an unknown format directive.
#: src/iconv.c:377
#, c-format
msgid "%s argument: The character '%c' is not a valid conversion specifier."
msgstr ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#: src/iconv.c:383
#, c-format
msgid ""
"%s argument: The character that terminates the format directive is not a "
"valid conversion specifier."
msgstr ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#. The %u placeholder expands to the number of arguments consumed by the format string.
#: src/iconv.c:399
#, c-format
msgid ""
"%s argument: The format string consumes more than one argument: %u argument."
msgid_plural ""
"%s argument: The format string consumes more than one argument: %u arguments."
msgstr[0] ""
msgstr[1] ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a piece of text, specified through --byte-subst.
#: src/iconv.c:457
#, c-format
msgid "cannot convert byte substitution to Unicode: %s"
msgstr ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a piece of text, specified through --unicode-subst.
#: src/iconv.c:497
#, c-format
msgid "cannot convert unicode substitution to target encoding: %s"
msgstr ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a piece of text, specified through --byte-subst.
#: src/iconv.c:538
#, c-format
msgid "cannot convert byte substitution to wide string: %s"
msgstr ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a piece of text, specified through --widechar-subst.
#: src/iconv.c:579
#, c-format
msgid "cannot convert widechar substitution to target encoding: %s"
msgstr ""

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a piece of text, specified through --byte-subst.
#: src/iconv.c:620
#, c-format
msgid "cannot convert byte substitution to target encoding: %s"
msgstr ""

#. TRANSLATORS: An error message.
#. The placeholders expand to the input file name, a line number, and a column number.
#: src/iconv.c:639
#, fuzzy, c-format
msgid "%s:%u:%u: cannot convert"
msgstr "iconv: %s: konvertimi është i pamundur\n"

#. TRANSLATORS: An error message.
#. The placeholders expand to the input file name, a line number, and a column number.
#. A "shift sequence" is a sequence of bytes that changes the state of the converter;
#. this concept exists only for "stateful" encodings like ISO-2022-JP.
#: src/iconv.c:653
#, fuzzy, c-format
msgid "%s:%u:%u: incomplete character or shift sequence"
msgstr "iconv: %s: simbol apo sekuencë ndryshuesish e paplotë\n"

#. TRANSLATORS: The first part of an error message.
#. It is followed by a colon and a detail message.
#. The placeholders expand to the input file name, a line number, and a column number.
#: src/iconv.c:666
#, fuzzy, c-format
msgid "%s:%u:%u"
msgstr "iconv: %s: "

#. TRANSLATORS: An error message.
#. The placeholder expands to the input file name.
#: src/iconv.c:821
#, fuzzy, c-format
msgid "%s: I/O error"
msgstr "iconv: %s: gabim I/O\n"

#. TRANSLATORS: An error message.
#. The placeholder expands to the encoding name, specified through --from-code.
#: src/iconv.c:1009
#, fuzzy, c-format
msgid "conversion from %s unsupported"
msgstr "iconv: konvertimi nga %s nuk suportohet\n"

#. TRANSLATORS: An error message.
#. The placeholder expands to the encoding name, specified through --to-code.
#: src/iconv.c:1015
#, fuzzy, c-format
msgid "conversion to %s unsupported"
msgstr "iconv: konvertimi në %s nuk suportohet\n"

#. TRANSLATORS: An error message.
#. The placeholders expand to the encoding names, specified through --from-code and --to-code, respectively.
#: src/iconv.c:1021
#, fuzzy, c-format
msgid "conversion from %s to %s unsupported"
msgstr "iconv: konvertimi nga %s në %s nuk suportohet\n"

#. TRANSLATORS: Additional advice after an error message.
#. The %s placeholder expands to the program name.
#: src/iconv.c:1026
#, c-format
msgid "try '%s -l' to get the list of supported encodings"
msgstr ""

#. TRANSLATORS: A filename substitute denoting standard input.
#: src/iconv.c:1083
msgid "(stdin)"
msgstr "(stdin)"

#. TRANSLATORS: The first part of an error message.
#. It is followed by a colon and a detail message.
#. The %s placeholder expands to the input file name.
#: src/iconv.c:1095
#, c-format
msgid "%s"
msgstr ""

#. TRANSLATORS: An error message.
#: src/iconv.c:1109
#, fuzzy, c-format
msgid "I/O error"
msgstr "iconv: gabim I/O\n"

#~ 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 ""
#~ "Ky është software i lirë; shiko burimin për kushtet e kopjimit.  NUK "
#~ "jepet asnjë\n"
#~ "garanci; as për TREGËTI apo PËRDORIM PËR NJË QËLLIM TË VEÇANTË.\n"

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

#~ msgid ""
#~ "Usage: iconv [--binary] [-c] [-s] [-f fromcode] [-t tocode] [file ...]"
#~ msgstr ""
#~ "Përdorimi: iconv [--binary] [-c] [-s] [-f ngakodi] [-t tekkodi] [file ...]"
