# Czech translations for GNU sed package.
# Copyright (C) 1998 Free Software Foundation, Inc.
# This file is distributed under the same license as the sed package.
# Jaroslav Fojtik <fojtik@cmp.felk.cvut.cz>, 1998.
# Petr Pisar <petr.pisar@atlas.cz>, 2008.
#
msgid ""
msgstr ""
"Project-Id-Version: sed 4.2.0\n"
"Report-Msgid-Bugs-To: bug-gnu-utils@gnu.org\n"
"POT-Creation-Date: 2009-06-27 15:08+0200\n"
"PO-Revision-Date: 2008-05-27 20:33+0200\n"
"Last-Translator: Petr Pisar <petr.pisar@atlas.cz>\n"
"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"

#: sed/compile.c:161
msgid "multiple `!'s"
msgstr "vícenásobný „!“"

#: sed/compile.c:162
msgid "unexpected `,'"
msgstr "neočekávaná „,“"

#: sed/compile.c:163
msgid "invalid usage of +N or ~N as first address"
msgstr "+N nebo ~N nelze použít jako první adresu"

#: sed/compile.c:164
msgid "unmatched `{'"
msgstr "neodpovídající „{“"

#: sed/compile.c:165
msgid "unexpected `}'"
msgstr "neočekávaná „}“"

#: sed/compile.c:166
msgid "extra characters after command"
msgstr "nadbytečné znaky po příkazu"

#: sed/compile.c:167
msgid "expected \\ after `a', `c' or `i'"
msgstr "po „a“, „c“ nebo „i“ je očekávané „\\“"

#: sed/compile.c:168
msgid "`}' doesn't want any addresses"
msgstr "„}“ nevyžaduje jakoukoliv adresu"

#: sed/compile.c:169
msgid ": doesn't want any addresses"
msgstr ": nechce jakoukoliv adresu"

#: sed/compile.c:170
msgid "comments don't accept any addresses"
msgstr "komentáře nepřipouštějí žádnou adresu"

#: sed/compile.c:171
msgid "missing command"
msgstr "chybějící příkaz"

#: sed/compile.c:172
msgid "command only uses one address"
msgstr "příkaz používá pouze jedinou adresu"

#: sed/compile.c:173
msgid "unterminated address regex"
msgstr "neukončená adresa regulárního výrazu"

#: sed/compile.c:174
msgid "unterminated `s' command"
msgstr "neukončený příkaz „s“"

#: sed/compile.c:175
msgid "unterminated `y' command"
msgstr "neukončený příkaz „y“"

#: sed/compile.c:176
msgid "unknown option to `s'"
msgstr "neznámý přepínač pro „s“"

#: sed/compile.c:177
msgid "multiple `p' options to `s' command"
msgstr "vícenásobné použití přepínače „p“ s příkazem „s“"

#: sed/compile.c:178
msgid "multiple `g' options to `s' command"
msgstr "vícenásobné použití přepínače „g“ s příkazem „s“"

#: sed/compile.c:179
msgid "multiple number options to `s' command"
msgstr "příkaz „s“ může mít maximálně jednu číselný přepínač"

#: sed/compile.c:180
msgid "number option to `s' command may not be zero"
msgstr "číselný přepínač příkazu „s“ nemůže být nula"

#: sed/compile.c:181
msgid "strings for `y' command are different lengths"
msgstr "řetězce pro příkaz „y“ mají rozdílnou délku"

#: sed/compile.c:182
msgid "delimiter character is not a single-byte character"
msgstr "oddělovací znak není jednobajtovým znakem"

#: sed/compile.c:183
msgid "expected newer version of sed"
msgstr "očekávána nová verze sedu"

#: sed/compile.c:184
msgid "invalid usage of line address 0"
msgstr "chybné použití adresy řádku 0"

#: sed/compile.c:185
#, c-format
msgid "unknown command: `%c'"
msgstr "neznámý příkaz: „%c“"

#: sed/compile.c:208
#, c-format
msgid "%s: file %s line %lu: %s\n"
msgstr "%s: soubor %s, řádek %'lu: %s\n"

#: sed/compile.c:211
#, c-format
msgid "%s: -e expression #%lu, char %lu: %s\n"
msgstr "%s: -e výraz č. %'lu, znak %'lu: %s\n"

#: sed/compile.c:1665
#, c-format
msgid "can't find label for jump to `%s'"
msgstr "návěští pro skok na „%s“ nelze najít"

#: sed/execute.c:709
#, c-format
msgid "%s: can't read %s: %s\n"
msgstr "%s: %s nelze číst: %s\n"

#: sed/execute.c:740
#, c-format
msgid "couldn't edit %s: is a terminal"
msgstr "%s nelze upravovat: je to terminál"

#: sed/execute.c:745
#, c-format
msgid "couldn't edit %s: not a regular file"
msgstr "%s nelze upravovat: není obyčejným souborem"

#: sed/execute.c:757
#, c-format
msgid "%s: warning: failed to set default file creation context to %s: %s"
msgstr ""

#: sed/execute.c:764
#, c-format
msgid "%s: warning: failed to get security context of %s: %s"
msgstr ""

#: sed/execute.c:783 sed/utils.c:227
#, c-format
msgid "couldn't open temporary file %s: %s"
msgstr "dočasný soubor %s nelze otevřít: %s"

#: sed/execute.c:1317 sed/execute.c:1497
msgid "error in subprocess"
msgstr "chyba v podprocesu"

#: sed/execute.c:1319
msgid "option `e' not supported"
msgstr "přepínač „e“ není podporován"

#: sed/execute.c:1499
msgid "`e' command not supported"
msgstr "příkaz „e“ není podporován"

#: sed/execute.c:1843
msgid "no input files"
msgstr "žádné vstupní soubory"

#: sed/regexp.c:41
msgid "no previous regular expression"
msgstr "žádný předcházející regulární výraz"

#: sed/regexp.c:42
msgid "cannot specify modifiers on empty regexp"
msgstr "prázdný regulární výraz nemůže mít modifikátory"

#: sed/regexp.c:131
#, c-format
msgid "invalid reference \\%d on `s' command's RHS"
msgstr "chybný odkaz \\%d na pravé straně příkazu „s“"

#: sed/sed.c:97
#, c-format
msgid ""
"GNU sed home page: <http://www.gnu.org/software/sed/>.\n"
"General help using GNU software: <http://www.gnu.org/gethelp/>.\n"
msgstr ""

#: sed/sed.c:104
#, fuzzy, c-format
msgid ""
"E-mail bug reports to: <%s>.\n"
"Be sure to include the word ``%s'' somewhere in the ``Subject:'' field.\n"
msgstr ""
"Chyby v programu oznamujte na adrese <%s> (anglicky) a\n"
"kamkoliv do položky „Předmět:“ vložte „%s“. Připomínky k překladu\n"
"zasílejte na adresu <translation-team-cs@lists.sourceforge.net> (česky).\n"

#: sed/sed.c:117
msgid ""
"  -R, --regexp-perl\n"
"                 use Perl 5's regular expressions syntax in the script.\n"
msgstr ""
"  -R, --regexp-perl\n"
"                 použije syntaxi regulárních výrazů podle Perlu verze 5\n"

#: sed/sed.c:122
#, c-format
msgid ""
"Usage: %s [OPTION]... {script-only-if-no-other-script} [input-file]...\n"
"\n"
msgstr ""
"Použití: %s [PŘEPÍNAČ]… {SKRIPT_JEN_KDYŽ_JE_JEDINÝ} [VSTUPNÍ_SOUBOR]…\n"
"\n"

#: sed/sed.c:126
#, c-format
msgid ""
"  -n, --quiet, --silent\n"
"                 suppress automatic printing of pattern space\n"
msgstr ""
"  -n, --quiet, --silent\n"
"                 potlačí automatické vypisování prostoru vzorů\n"

#: sed/sed.c:128
#, c-format
msgid ""
"  -e script, --expression=script\n"
"                 add the script to the commands to be executed\n"
msgstr ""
"  -e script, --expression=SKRIPT\n"
"                 přidá skript mezi příkazy k provedení\n"

#: sed/sed.c:130
#, c-format
msgid ""
"  -f script-file, --file=script-file\n"
"                 add the contents of script-file to the commands to be "
"executed\n"
msgstr ""
"  -f script-file, --file=SKRIPTOVÝ_SOUBOR\n"
"                 přidá obsah SKRIPTOVÉHO_SOUBORU mezi příkazy k provedení\n"

#: sed/sed.c:133
#, c-format
msgid ""
"  --follow-symlinks\n"
"                 follow symlinks when processing in place\n"
msgstr ""
"  --follow-symlinks\n"
"                 následuje symbolické odkazy, když zapisuje do vstupního\n"
"                 souboru\n"

#: sed/sed.c:136
#, c-format
msgid ""
"  -i[SUFFIX], --in-place[=SUFFIX]\n"
"                 edit files in place (makes backup if extension supplied)\n"
msgstr ""
"  -i[PŘÍPONA], --in-place[=PŘÍPONA]\n"
"                 upravuje přímo vstupní soubory (vytváří zálohy, pokud je\n"
"                 poskytnuta PŘÍPONA)\n"

#: sed/sed.c:139
#, c-format
msgid ""
"  -b, --binary\n"
"                 open files in binary mode (CR+LFs are not processed "
"specially)\n"
msgstr ""
"  -b, --binary\n"
"                 otevře soubory v binárním režimu (znaky CR+LF nejsou\n"
"                 zpracovávány zvláštně)\n"

#: sed/sed.c:142
#, c-format
msgid ""
"  -l N, --line-length=N\n"
"                 specify the desired line-wrap length for the `l' command\n"
msgstr ""
"  -l N, --line-length=N\n"
"                 určuje délku zarovnání řádku u příkazu „l“\n"

#: sed/sed.c:144
#, c-format
msgid ""
"  --posix\n"
"                 disable all GNU extensions.\n"
msgstr ""
"  --posix\n"
"                 vypne všechna GNU rozšíření\n"

#: sed/sed.c:146
#, c-format
msgid ""
"  -r, --regexp-extended\n"
"                 use extended regular expressions in the script.\n"
msgstr ""
"  -r, --regexp-extended\n"
"                 použije rozšířené regulární výrazy\n"

#: sed/sed.c:151
#, c-format
msgid ""
"  -s, --separate\n"
"                 consider files as separate rather than as a single "
"continuous\n"
"                 long stream.\n"
msgstr ""
"  -s, --separate\n"
"                 považuje soubory za samostatné a ne za jeden dlouhý\n"
"                 souvislý proud\n"

#: sed/sed.c:154
#, c-format
msgid ""
"  -u, --unbuffered\n"
"                 load minimal amounts of data from the input files and "
"flush\n"
"                 the output buffers more often\n"
msgstr ""
"  -u, --unbuffered\n"
"                 čte co nejméně dat ze vstupních souborů a výstupní\n"
"                 buffery vyprazdňuje častěji\n"

#: sed/sed.c:157
#, c-format
msgid "      --help     display this help and exit\n"
msgstr "      --help     zobrazí tuto nápovědu a skončí\n"

#: sed/sed.c:158
#, c-format
msgid "      --version  output version information and exit\n"
msgstr "      --version  vypíše informace o verzi a skončí\n"

#: sed/sed.c:159
#, c-format
msgid ""
"\n"
"If no -e, --expression, -f, or --file option is given, then the first\n"
"non-option argument is taken as the sed script to interpret.  All\n"
"remaining arguments are names of input files; if no input files are\n"
"specified, then the standard input is read.\n"
"\n"
msgstr ""
"\n"
"Ne-li zadán žádný z přepínačů -e, --expression, -f nebo --file, pak první\n"
"argument, který není přepínačem, je považován za sedový skript a bude\n"
"vykonán. Všechny zbývající argumenty jsou jména vstupních souborů. Nejsou-"
"li\n"
"zadány žádné vstupní soubory, bude čten standardní vstup.\n"
"\n"

#: sed/sed.c:315
#, c-format
msgid "super-sed version %s\n"
msgstr "super-sed verze %s\n"

#: sed/sed.c:316
#, c-format
msgid ""
"based on GNU sed version %s\n"
"\n"
msgstr ""
"založeno na GNU sedu verze %s\n"
"\n"

#: sed/sed.c:318
#, c-format
msgid "GNU sed version %s\n"
msgstr "GNU sed verze %s\n"

#: sed/sed.c:320
#, fuzzy, c-format
msgid ""
"Copyright (C) %d Free Software Foundation, Inc.\n"
"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"
"to the extent permitted by law.\n"
msgstr ""
"%s\n"
"Toto je volné programové vybavení; podmínky pro kopírování a rozšiřování\n"
"naleznete ve zdrojových textech. Toto programové vybavení je zcela BEZ "
"ZÁRUKY,\n"
"a to i bez záruky PRODEJNOSTI nebo VHODNOSTI PRO NĚJAKÝ KONKRÉTNÍ ÚČEL,\n"
"jak jen zákon dovoluje.\n"

#: sed/utils.c:93 sed/utils.c:438
#, c-format
msgid "cannot remove %s: %s"
msgstr "%s nelze odstranit: %s"

#: sed/utils.c:163
#, c-format
msgid "couldn't open file %s: %s"
msgstr "soubor %s nelze otevřít: %s"

#: sed/utils.c:186
#, c-format
msgid "couldn't attach to %s: %s"
msgstr "do %s nelze připisovat: %s"

#: sed/utils.c:245
#, c-format
msgid "couldn't write %d item to %s: %s"
msgid_plural "couldn't write %d items to %s: %s"
msgstr[0] "do %2$s nelze zapsat %1$d položku: %3$s"
msgstr[1] "do %2$s nelze zapsat %1$d položky: %3$s"
msgstr[2] "do %2$s nelze zapsat %1$d položek: %3$s"

#: sed/utils.c:260 sed/utils.c:276
#, c-format
msgid "read error on %s: %s"
msgstr "chyba při čtení z %s: %s"

#: sed/utils.c:378
#, c-format
msgid "couldn't follow symlink %s: %s"
msgstr "symbolický odkaz %s nelze následovat: %s"

#: sed/utils.c:412
#, c-format
msgid "cannot stat %s: %s"
msgstr "o %s nelze získat údaje: %s"

#: sed/utils.c:443
#, c-format
msgid "cannot rename %s: %s"
msgstr "%s nelze přejmenovat: %s"

#: lib/regcomp.c:134
msgid "Success"
msgstr "Úspěch"

#: lib/regcomp.c:137
msgid "No match"
msgstr "Žádná shoda"

#: lib/regcomp.c:140
msgid "Invalid regular expression"
msgstr "Chybný regulární výraz"

#: lib/regcomp.c:143
msgid "Invalid collation character"
msgstr "Chybný srovnávací znak"

#: lib/regcomp.c:146
msgid "Invalid character class name"
msgstr "Chybný název třídu znaků"

#: lib/regcomp.c:149
msgid "Trailing backslash"
msgstr "Zpětné lomítko na konci"

#: lib/regcomp.c:152
msgid "Invalid back reference"
msgstr "Chybný zpětný odkaz"

#: lib/regcomp.c:155
msgid "Unmatched [ or [^"
msgstr "Neodpovídající [ nebo [^"

#: lib/regcomp.c:158
msgid "Unmatched ( or \\("
msgstr "Neodpovídající ( nebo \\("

#: lib/regcomp.c:161
msgid "Unmatched \\{"
msgstr "Neodpovídající \\{"

#: lib/regcomp.c:164
msgid "Invalid content of \\{\\}"
msgstr "Chybný obsah \\{\\}"

#: lib/regcomp.c:167
msgid "Invalid range end"
msgstr "Chybný konec rozsahu"

#: lib/regcomp.c:170
msgid "Memory exhausted"
msgstr "Paměť vyčerpána"

#: lib/regcomp.c:173
msgid "Invalid preceding regular expression"
msgstr "Chybný předešlý regulární výraz"

#: lib/regcomp.c:176
msgid "Premature end of regular expression"
msgstr "Předčasný konec regulárního výrazu"

#: lib/regcomp.c:179
msgid "Regular expression too big"
msgstr "Regulární výraz je příliš velký"

#: lib/regcomp.c:182
msgid "Unmatched ) or \\)"
msgstr "Neodpovídající ) nebo \\)"

#: lib/regcomp.c:703
msgid "No previous regular expression"
msgstr "Žádný předcházející regulární výraz"

#~ msgid "bad regexp: %s\n"
#~ msgstr "špatný regulární výraz: %s\n"

#~ msgid "Unexpected End-of-file"
#~ msgstr "Neočekávaný konec souboru (EOF)"

#~ msgid "Called savchar() with unexpected pushback (%x)"
#~ msgstr "Voláno savchar() s nečekaným pushback (%x)"

#~ msgid "input read error: %s"
#~ msgstr "chyba při čtení: %s"

#~ msgid "INTERNAL ERROR: bad address type"
#~ msgstr "INTERNÍ CHYBA: špatný typ adresy"

#~ msgid "INTERNAL ERROR: Bad cmd %c"
#~ msgstr "INTERNÍ CHYBA: špatný příkaz %c"

#~ msgid ""
#~ "Usage: %s [OPTION]... {script-only-if-no-other-script} [input-file]...\n"
#~ "\n"
#~ "  -n, --quiet, --silent\n"
#~ "                 suppress automatic printing of pattern space\n"
#~ "  -e script, --expression=script\n"
#~ "                 add the script to the commands to be executed\n"
#~ "  -f script-file, --file=script-file\n"
#~ "                 add the contents of script-file to the commands to be "
#~ "executed\n"
#~ "  -l N, --line-length=N\n"
#~ "                 specify the desired line-wrap length for the `l' "
#~ "command\n"
#~ "  -u, --unbuffered\n"
#~ "\n"
#~ "      --help     display this help and exit\n"
#~ "  -V, --version  output version information and exit\n"
#~ "\n"
#~ "If no -e, --expression, -f, or --file option is given, then the first\n"
#~ "non-option argument is taken as the sed script to interpret.  All\n"
#~ "remaining arguments are names of input files; if no input files are\n"
#~ "specified, then the standard input is read.\n"
#~ "\n"
#~ msgstr ""
#~ "Použití: %s [PŘEPÍNAČ]... {skript-pouze-není-li-jiný-skript} [vst.-"
#~ "soubor]...\n"
#~ "\n"
#~ "  -n, --quiet, --silent\n"
#~ "                 potlačí automatické vypisování vzorového úložiště "
#~ "(pattern\n"
#~ "                 space)\n"
#~ "  -e script, --expression=SKRIPT\n"
#~ "                 přidá seznam příkazů z řetězce SKRIPT k seznamu "
#~ "příkazů,\n"
#~ "                 které mají být vykonány\n"
#~ "  -f script-file, --file=SKRIPT-SOUBOR\n"
#~ "                 přidá obsah SKRIPT-SOUBORu k seznamu příkazů, které "
#~ "mají\n"
#~ "                 být vykonány\n"
#~ "  -l N, --line-length=N\n"
#~ "                 zadání pozice, na které má být řádek zalamován, pro "
#~ "příkaz `l'\n"
#~ "  -u, --unbuffered\n"
#~ "                 nebufferovaný výstup\n"
#~ "      --help     vypíše tuto nápovědu a skončí\n"
#~ "  -V, --version  vypíše označení verze a skončí\n"
#~ "\n"
#~ "  Nebude-li žádný z přepínačů -e, --expression, -f, nebo --file zadán, "
#~ "pak\n"
#~ "první argument, který není přepínačem, bude považován za sed skript, "
#~ "který má\n"
#~ "být interpretován. Všechny zbylé argumenty představují jména vstupních "
#~ "souborů.\n"
#~ "Nebudou-li vstupní soubory zadány, bude čten standardní vstup.\n"
#~ "\n"
