# Ukrainian translation of libiconv.
# Copyright (C) 2003 Free Software Foundation, Inc.
# This file is distributed under the same license as the libiconv package.
#
# Volodymyr M. Lisivka <lvm@mystery.lviv.net>, 2003.
# Yuri Chornoivan <yurchor@ukr.net>, 2011, 2016.
msgid ""
msgstr ""
"Project-Id-Version: libiconv 1.15-pre1\n"
"Report-Msgid-Bugs-To: bug-gnu-libiconv@gnu.org\n"
"POT-Creation-Date: 2019-04-26 21:02+0200\n"
"PO-Revision-Date: 2016-12-12 14:39+0200\n"
"Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
"Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
"Language: uk\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
"Plural-Forms: nplurals=4; plural=n==1 ? 3 : n%10==1 && n%100!=11 ? 0 : n"
"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Lokalize 1.5\n"

#. TRANSLATORS: The first line of the short usage message.
#: src/iconv.c:104
msgid "Usage: iconv [-c] [-s] [-f fromcode] [-t tocode] [file ...]"
msgstr ""
"Використання: iconv [-c] [-s] [-f з_кодування] [-t у_кодування] [файл ...]"

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

#: src/iconv.c:110
#, c-format
msgid "Try '%s --help' for more information.\n"
msgstr "Щоб дізнатися більше, віддайте команду «%s --help».\n"

#. TRANSLATORS: The first line of the long usage message.
#. The %s placeholder expands to the program name.
#: src/iconv.c:115
#, c-format, no-wrap
msgid "Usage: %s [OPTION...] [-f ENCODING] [-t ENCODING] [INPUTFILE...]\n"
msgstr "Використання: %s [ПАРАМЕТР...] [-f КОДУВАННЯ] [-t КОДУВАННЯ] [ФАЙЛ ВХІДНИХ ДАНИХ...]\n"

#. 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:122
#, c-format, no-wrap
msgid "or:    %s -l\n"
msgstr "або:    %s -l\n"

#. TRANSLATORS: Description of the iconv program.
#: src/iconv.c:128
#, c-format, no-wrap
msgid "Converts text from one encoding to another encoding.\n"
msgstr "Перетворює текст у одному кодуванні на текст у іншому кодуванні.\n"

#: src/iconv.c:132
#, c-format, no-wrap
msgid "Options controlling the input and output format:\n"
msgstr "Параметри керування форматом вхідних та вихідних даних:\n"

#: src/iconv.c:135
#, c-format, no-wrap
msgid ""
"  -f ENCODING, --from-code=ENCODING\n"
"                              the encoding of the input\n"
msgstr ""
"  -f КОДУВАННЯ, --from-code=КОДУВАННЯ\n"
"                              кодування вхідних даних\n"

#: src/iconv.c:139
#, c-format, no-wrap
msgid ""
"  -t ENCODING, --to-code=ENCODING\n"
"                              the encoding of the output\n"
msgstr ""
"  -t КОДУВАННЯ, --to-code=КОДУВАННЯ\n"
"                              кодування вихідних даних\n"

#: src/iconv.c:144
#, c-format, no-wrap
msgid "Options controlling conversion problems:\n"
msgstr "Параметри керування обробкою помилок під час перетворення:\n"

#: src/iconv.c:147
#, c-format, no-wrap
msgid "  -c                          discard unconvertible characters\n"
msgstr "  -c                          викидати символи, непридатні до перетворення\n"

#: src/iconv.c:150
#, c-format, no-wrap
msgid ""
"  --unicode-subst=FORMATSTRING\n"
"                              substitution for unconvertible Unicode characters\n"
msgstr ""
"  --unicode-subst=РЯДОК_ФОРМАТУВАННЯ\n"
"                              заміна непридатних до перетворення символів Unicode\n"

#: src/iconv.c:154
#, c-format, no-wrap
msgid "  --byte-subst=FORMATSTRING   substitution for unconvertible bytes\n"
msgstr "  --byte-subst=РЯДОК_ФОРМАТУВАННЯ заміна непридатних до перетворення байтів\n"

#: src/iconv.c:157
#, c-format, no-wrap
msgid ""
"  --widechar-subst=FORMATSTRING\n"
"                              substitution for unconvertible wide characters\n"
msgstr ""
"  --wide-subst=РЯДОК_ФОРМАТУВАННЯ\n"
"                              заміна непридатних до перетворення «широких» символів\n"

#: src/iconv.c:162
#, c-format, no-wrap
msgid "Options controlling error output:\n"
msgstr "Параметри керування показом повідомлень про помилки:\n"

#: src/iconv.c:165
#, c-format, no-wrap
msgid "  -s, --silent                suppress error messages about conversion problems\n"
msgstr "  -s, --silent                придушити повідомлення щодо проблем під час перетворення\n"

#: src/iconv.c:169
#, c-format, no-wrap
msgid "Informative output:\n"
msgstr "Показ інформації:\n"

#: src/iconv.c:172
#, c-format, no-wrap
msgid "  -l, --list                  list the supported encodings\n"
msgstr "  -l, --list                  показати список підтримуваних кодувань\n"

#: src/iconv.c:175
#, c-format, no-wrap
msgid "  --help                      display this help and exit\n"
msgstr "  --help                      показати ці довідкові дані і завершити роботу\n"

#: src/iconv.c:178
#, c-format, no-wrap
msgid "  --version                   output version information and exit\n"
msgstr "  --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/iconv.c:185
msgid "Report bugs to <bug-gnu-libiconv@gnu.org>.\n"
msgstr "Про вади слід повідомляти на адресу <bug-gnu-libiconv@gnu.org>.\n"

#: src/iconv.c:196
#, fuzzy, no-wrap
#| msgid ""
#| "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"
msgid ""
"License GPLv3+: GNU GPL version 3 or later <https://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 ""
"Умови ліцензування викладено у GPLv3+: GNU GPL версії 3 або новішій, <http://gnuorg/licenses/gpl.html>\n"
"Це вільне програмне забезпечення: ви можете вільно змінювати і поширювати його.\n"
"Вам не надається ЖОДНИХ ГАРАНТІЙ, окрім гарантій передбачених законодавством.\n"

#. TRANSLATORS: The %s placeholder expands to an author's name.
#: src/iconv.c:202
#, c-format
msgid "Written by %s.\n"
msgstr "Автор — %s.\n"

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#: src/iconv.c:296
#, c-format
msgid ""
"%s argument: A format directive with a variable width is not allowed here."
msgstr ""
"Аргумент %s: тут не можна використовувати команду форматування з визначенням "
"ширини змінної."

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#: src/iconv.c:311
#, c-format
msgid ""
"%s argument: A format directive with a variable precision is not allowed "
"here."
msgstr ""
"Аргумент %s: тут не можна використовувати команду форматування з визначенням "
"точності змінної."

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#: src/iconv.c:327
#, c-format
msgid "%s argument: A format directive with a size is not allowed here."
msgstr ""
"Аргумент %s: тут не можна використовувати команду форматування з визначенням "
"розміру."

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#: src/iconv.c:369
#, c-format
msgid "%s argument: The string ends in the middle of a directive."
msgstr "Аргумент %s: завершення рядка посередині команди."

#. 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:376
#, c-format
msgid "%s argument: The character '%c' is not a valid conversion specifier."
msgstr ""
"Аргумент %s: символ «%c» не є коректним символом визначення перетворення."

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a command-line option.
#: src/iconv.c:382
#, c-format
msgid ""
"%s argument: The character that terminates the format directive is not a "
"valid conversion specifier."
msgstr ""
"Аргумент %s: символ, що перериває команду форматування не є коректним "
"символом визначення перетворення."

#. 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:398
#, 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] ""
"Аргумент %s: слід вказати декілька аргументів, а саме %u аргументів."
msgstr[1] ""
"Аргумент %s: слід вказати декілька аргументів, а саме %u аргументів."
msgstr[2] ""
"Аргумент %s: слід вказати декілька аргументів, а саме %u аргументів."
msgstr[3] ""
"Аргумент %s: слід вказати декілька аргументів, а саме %u аргументів."

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a piece of text, specified through --byte-subst.
#: src/iconv.c:456
#, c-format
msgid "cannot convert byte substitution to Unicode: %s"
msgstr "не вдалося перетворити замінник байтів у символ Unicode: %s"

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a piece of text, specified through --unicode-subst.
#: src/iconv.c:496
#, c-format
msgid "cannot convert unicode substitution to target encoding: %s"
msgstr "не вдалося перетворити замінник unicode у кодування призначення: %s"

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a piece of text, specified through --byte-subst.
#: src/iconv.c:537
#, c-format
msgid "cannot convert byte substitution to wide string: %s"
msgstr "не вдалося перетворити замінник байтів у «широкий» рядок: %s"

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a piece of text, specified through --widechar-subst.
#: src/iconv.c:578
#, c-format
msgid "cannot convert widechar substitution to target encoding: %s"
msgstr ""
"не вдалося перетворити замінник «широкого» символу у кодування призначення: "
"%s"

#. TRANSLATORS: An error message.
#. The %s placeholder expands to a piece of text, specified through --byte-subst.
#: src/iconv.c:619
#, c-format
msgid "cannot convert byte substitution to target encoding: %s"
msgstr "не вдалося перетворити замінник байтів у кодування призначення: %s"

#. TRANSLATORS: An error message.
#. The placeholders expand to the input file name, a line number, and a column number.
#: src/iconv.c:638
#, c-format
msgid "%s:%u:%u: cannot convert"
msgstr "%s:%u:%u: не вдалося перетворити"

#. 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:652
#, c-format
msgid "%s:%u:%u: incomplete character or shift sequence"
msgstr "%s:%u:%u: незавершений символ чи послідовність зміни регістру"

#. 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:665
#, c-format
msgid "%s:%u:%u"
msgstr "%s:%u:%u"

#. TRANSLATORS: An error message.
#. The placeholder expands to the input file name.
#: src/iconv.c:826
#, c-format
msgid "%s: I/O error"
msgstr "%s: помилка вводу-виводу"

#. TRANSLATORS: An error message.
#. The placeholder expands to the encoding name, specified through --from-code.
#: src/iconv.c:1024
#, c-format
msgid "conversion from %s unsupported"
msgstr "підтримки перетворення з %s не передбачено"

#. TRANSLATORS: An error message.
#. The placeholder expands to the encoding name, specified through --to-code.
#: src/iconv.c:1030
#, c-format
msgid "conversion to %s unsupported"
msgstr "підтримки перетворення у %s не передбачено"

#. TRANSLATORS: An error message.
#. The placeholders expand to the encoding names, specified through --from-code and --to-code, respectively.
#: src/iconv.c:1036
#, c-format
msgid "conversion from %s to %s unsupported"
msgstr "підтримки перетворення з %s у %s не передбачено"

#. TRANSLATORS: Additional advice after an error message.
#. The %s placeholder expands to the program name.
#: src/iconv.c:1041
#, c-format
msgid "try '%s -l' to get the list of supported encodings"
msgstr ""
"список кодувань, які підтримуються програмою, можна отримати командою «%s -l»"

#. TRANSLATORS: A filename substitute denoting standard input.
#: src/iconv.c:1098
msgid "(stdin)"
msgstr "(стд. ввід)"

#. 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:1110
#, c-format
msgid "%s"
msgstr "%s"

#. TRANSLATORS: An error message.
#: src/iconv.c:1124
#, c-format
msgid "I/O error"
msgstr "помилка вводу-виводу"

#~ msgid ""
#~ "Usage: iconv [--binary] [-c] [-s] [-f fromcode] [-t tocode] [file ...]"
#~ msgstr ""
#~ "Використання:\n"
#~ "  iconv [--binary] [-c] [-s] [-f з_кодування] [-t у_кодування] [файл ...]"

#~ 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"
#~ "ЦІННОСТІ або ПРИДАТНОСТІ ДЛЯ КОНКРЕТНОЇ ЦІЛІ.\n"

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