# Esperanto translation of glib.
# Copyright (C) 2003 Free Software Foundation, Inc.
# This file is distributed under the same license as the glib package.
# Charles Voelger <cvoelger@dweasel.com>, 2003.
#
msgid ""
msgstr ""
"Project-Id-Version: glib 2.3.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2006-05-02 21:05-0400\n"
"PO-Revision-Date: 2003-07-01 15:10-0500\n"
"Last-Translator: Charles Voelger <cvoelger@dweasel.com>\n"
"Language-Team: Esperanto <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

#: glib/gbookmarkfile.c:716 glib/gbookmarkfile.c:793 glib/gbookmarkfile.c:872
#: glib/gbookmarkfile.c:919
#, fuzzy, c-format
msgid "Unexpected attribute '%s' for element '%s'"
msgstr ""
"Malbona signo '%s', unu '>' signo estas atendita post atributnomo '%s' "
"deelemento '%s'"

#: glib/gbookmarkfile.c:727 glib/gbookmarkfile.c:804 glib/gbookmarkfile.c:814
#: glib/gbookmarkfile.c:930
#, c-format
msgid "Attribute '%s' of element '%s' not found"
msgstr ""

#: glib/gbookmarkfile.c:1103 glib/gbookmarkfile.c:1168
#: glib/gbookmarkfile.c:1232 glib/gbookmarkfile.c:1242
#, c-format
msgid "Unexpected tag '%s', tag '%s' expected"
msgstr ""

#: glib/gbookmarkfile.c:1128 glib/gbookmarkfile.c:1142
#: glib/gbookmarkfile.c:1210 glib/gbookmarkfile.c:1262
#, c-format
msgid "Unexpected tag '%s' inside '%s'"
msgstr ""

#: glib/gbookmarkfile.c:1792
#, c-format
msgid "No valid bookmark file was be found in data dirs"
msgstr ""

#: glib/gbookmarkfile.c:1993
#, c-format
msgid "A bookmark for URI '%s' already exists"
msgstr ""

#: glib/gbookmarkfile.c:2037 glib/gbookmarkfile.c:2192
#: glib/gbookmarkfile.c:2277 glib/gbookmarkfile.c:2358
#: glib/gbookmarkfile.c:2443 glib/gbookmarkfile.c:2526
#: glib/gbookmarkfile.c:2604 glib/gbookmarkfile.c:2683
#: glib/gbookmarkfile.c:2725 glib/gbookmarkfile.c:2822
#: glib/gbookmarkfile.c:2945 glib/gbookmarkfile.c:3135
#: glib/gbookmarkfile.c:3211 glib/gbookmarkfile.c:3363
#: glib/gbookmarkfile.c:3428 glib/gbookmarkfile.c:3518
#: glib/gbookmarkfile.c:3641
#, c-format
msgid "No bookmark found for URI '%s'"
msgstr ""

#: glib/gbookmarkfile.c:2367
#, c-format
msgid "No MIME type defined in the bookmark for URI '%s'"
msgstr ""

#: glib/gbookmarkfile.c:2452
#, c-format
msgid "No private flag has been defined in bookmark for URI '%s'"
msgstr ""

#: glib/gbookmarkfile.c:2831
#, c-format
msgid "No groups set in bookmark for URI '%s'"
msgstr ""

#: glib/gbookmarkfile.c:3229 glib/gbookmarkfile.c:3373
#, c-format
msgid "No application with name '%s' registered a bookmark for '%s'"
msgstr ""

#: glib/gconvert.c:404 glib/gconvert.c:482 glib/giochannel.c:1150
#, c-format
msgid "Conversion from character set '%s' to '%s' is not supported"
msgstr "Konverto de signaro '%s' el '%s' ne estas subtenata"

#: glib/gconvert.c:408 glib/gconvert.c:486
#, fuzzy, c-format
msgid "Could not open converter from '%s' to '%s'"
msgstr "Ne eblas malfermi konvertilon de '%s' to '%s': %s"

#: glib/gconvert.c:602 glib/gconvert.c:991 glib/giochannel.c:1322
#: glib/giochannel.c:1364 glib/giochannel.c:2206 glib/gutf8.c:943
#: glib/gutf8.c:1392
#, c-format
msgid "Invalid byte sequence in conversion input"
msgstr "Nevalida bitokosekvenco en konverta enigo"

#: glib/gconvert.c:608 glib/gconvert.c:918 glib/giochannel.c:1329
#: glib/giochannel.c:2218
#, c-format
msgid "Error during conversion: %s"
msgstr "Eraro dum konverto: %s"

#: glib/gconvert.c:643 glib/gutf8.c:939 glib/gutf8.c:1143 glib/gutf8.c:1284
#: glib/gutf8.c:1388
#, c-format
msgid "Partial character sequence at end of input"
msgstr "Parta signosekvenco je enigofino"

#: glib/gconvert.c:893
#, c-format
msgid "Cannot convert fallback '%s' to codeset '%s'"
msgstr "Ne povas konverti fallback '%s' al kodaro '%s'"

#: glib/gconvert.c:1702
#, fuzzy, c-format
msgid "The URI '%s' is not an absolute URI using the \"file\" scheme"
msgstr "La URI '%s' ne estas absolutan URI uzanta la dosiermodelo"

#: glib/gconvert.c:1712
#, c-format
msgid "The local file URI '%s' may not include a '#'"
msgstr "La loka dosiera URI '%s' eble ne enhavas '#'"

#: glib/gconvert.c:1729
#, c-format
msgid "The URI '%s' is invalid"
msgstr "La URI '%s' estas nevalida"

#: glib/gconvert.c:1741
#, c-format
msgid "The hostname of the URI '%s' is invalid"
msgstr "La komputilnomo de la URI '%s' ne estas valida"

#: glib/gconvert.c:1757
#, c-format
msgid "The URI '%s' contains invalidly escaped characters"
msgstr "La URI '%s' enhavas nevalidajn eskapajn signojn"

#: glib/gconvert.c:1852
#, c-format
msgid "The pathname '%s' is not an absolute path"
msgstr "La padnomo '%s' ne estas absolutan padon"

#: glib/gconvert.c:1862
#, c-format
msgid "Invalid hostname"
msgstr "Nevalida komputilnomo"

#: glib/gdir.c:121 glib/gdir.c:141
#, c-format
msgid "Error opening directory '%s': %s"
msgstr "Eraro dum malfermado de dosierujo '%s': %s"

#: glib/gfileutils.c:572 glib/gfileutils.c:645
#, c-format
msgid "Could not allocate %lu bytes to read file \"%s\""
msgstr "Ne eblis akiri %lu bitokojn por lego de dosiero \"%s\""

#: glib/gfileutils.c:587
#, c-format
msgid "Error reading file '%s': %s"
msgstr "Eraro dum legado de dosiero '%s': %s"

#: glib/gfileutils.c:669
#, c-format
msgid "Failed to read from file '%s': %s"
msgstr "Malsukcesis legi de dosieron '%s': %s"

#: glib/gfileutils.c:720 glib/gfileutils.c:807
#, c-format
msgid "Failed to open file '%s': %s"
msgstr "Malsukcesis malfermi dosieron '%s': %s"

#: glib/gfileutils.c:737 glib/gmappedfile.c:133
#, c-format
msgid "Failed to get attributes of file '%s': fstat() failed: %s"
msgstr "Malsukcesis ricevi atributojn de dosiero '%s': fstat() malsukcesis: %s"

#: glib/gfileutils.c:771
#, c-format
msgid "Failed to open file '%s': fdopen() failed: %s"
msgstr "Malsukcesis malfermi dosieron '%s': fdopen() malsukcesis: %s"

#: glib/gfileutils.c:905
#, fuzzy, c-format
msgid "Failed to rename file '%s' to '%s': g_rename() failed: %s"
msgstr "Malsukcesis malfermi dosieron '%s': fdopen() malsukcesis: %s"

#: glib/gfileutils.c:946 glib/gfileutils.c:1411
#, c-format
msgid "Failed to create file '%s': %s"
msgstr "Malsukcesis krei dosieron '%s': %s"

#: glib/gfileutils.c:960
#, fuzzy, c-format
msgid "Failed to open file '%s' for writing: fdopen() failed: %s"
msgstr "Malsukcesis malfermi dosieron '%s': fdopen() malsukcesis: %s"

#: glib/gfileutils.c:985
#, fuzzy, c-format
msgid "Failed to write file '%s': fwrite() failed: %s"
msgstr "Malsukcesis malfermi dosieron '%s': fdopen() malsukcesis: %s"

#: glib/gfileutils.c:1004
#, fuzzy, c-format
msgid "Failed to close file '%s': fclose() failed: %s"
msgstr "Malsukcesis malfermi dosieron '%s': fdopen() malsukcesis: %s"

#: glib/gfileutils.c:1122
#, c-format
msgid "Existing file '%s' could not be removed: g_unlink() failed: %s"
msgstr ""

#: glib/gfileutils.c:1372
#, c-format
msgid "Template '%s' invalid, should not contain a '%s'"
msgstr "Ŝablono '%s' ne estas valida, ĝi devus ne enhavi '%s'"

#: glib/gfileutils.c:1386
#, c-format
msgid "Template '%s' doesn't end with XXXXXX"
msgstr "Ŝablono '%s' ne finiĝas je XXXXXX"

#: glib/gfileutils.c:1861
#, fuzzy, c-format
msgid "Failed to read the symbolic link '%s': %s"
msgstr "Malsukcesis krei dosieron '%s': %s"

#: glib/gfileutils.c:1882
#, c-format
msgid "Symbolic links not supported"
msgstr ""

#: glib/giochannel.c:1154
#, fuzzy, c-format
msgid "Could not open converter from '%s' to '%s': %s"
msgstr "Ne eblis malfermi konvertilon de '%s al '%s: %s"

#: glib/giochannel.c:1499
#, c-format
msgid "Can't do a raw read in g_io_channel_read_line_string"
msgstr "Ne povas fari krudan legon en g_io_channel_read_line_string"

#: glib/giochannel.c:1546 glib/giochannel.c:1803 glib/giochannel.c:1889
#, c-format
msgid "Leftover unconverted data in read buffer"
msgstr "Kroma nekonvertinta datumo en legbufro"

#: glib/giochannel.c:1626 glib/giochannel.c:1703
#, c-format
msgid "Channel terminates in a partial character"
msgstr "Kanalo finas kun parta signo"

#: glib/giochannel.c:1689
#, c-format
msgid "Can't do a raw read in g_io_channel_read_to_end"
msgstr "Ne povas fari krudan legon en g_io_channel_read_to_end"

#: glib/gmappedfile.c:116
#, fuzzy, c-format
msgid "Failed to open file '%s': open() failed: %s"
msgstr "Malsukcesis malfermi dosieron '%s': fdopen() malsukcesis: %s"

#: glib/gmappedfile.c:193
#, fuzzy, c-format
msgid "Failed to map file '%s': mmap() failed: %s"
msgstr "Malsukcesis malfermi dosieron '%s': fdopen() malsukcesis: %s"

#: glib/gmarkup.c:227
#, c-format
msgid "Error on line %d char %d: %s"
msgstr "Eraro ĉe linio %d signo %d: %s"

#: glib/gmarkup.c:325
#, c-format
msgid "Error on line %d: %s"
msgstr "Eraro ĉe linio %d: %s"

#: glib/gmarkup.c:429
msgid ""
"Empty entity '&;' seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
msgstr "Malplena ero '&;'; validaj eroj estas : &amp; &quot; &lt; &gt; &apos;"

#: glib/gmarkup.c:439
#, c-format
msgid ""
"Character '%s' is not valid at the start of an entity name; the & character "
"begins an entity; if this ampersand isn't supposed to be an entity, escape "
"it as &amp;"
msgstr ""
"Signo '%s' ne estas valida en la komenco de eronomo; la & signo komencas unu "
"ero;se la kaj-signo ne estas ero, eskapu ĝin kiel &amp;"

#: glib/gmarkup.c:473
#, c-format
msgid "Character '%s' is not valid inside an entity name"
msgstr "Signo '%s' ne estas valida en unu eronomo"

#: glib/gmarkup.c:510
#, c-format
msgid "Entity name '%s' is not known"
msgstr "Eronomo '%s' ne estas konata"

#: glib/gmarkup.c:521
msgid ""
"Entity did not end with a semicolon; most likely you used an ampersand "
"character without intending to start an entity - escape ampersand as &amp;"
msgstr ""
"Ero ne finis kun punktokomo; vi eble uzis kaj-signo sen voli komenci eron."
"Eskapu kaj-signon kiel &amp;"

#: glib/gmarkup.c:574
#, fuzzy, c-format
msgid ""
"Failed to parse '%-.*s', which should have been a digit inside a character "
"reference (&#234; for example) - perhaps the digit is too large"
msgstr ""
"Analizo de '%s' malsuksesis. Une cifero devus esti en la signoreferenco "
"(&#234; ekzemple)- eble la cifero estas tro granda"

#: glib/gmarkup.c:599
#, fuzzy, c-format
msgid "Character reference '%-.*s' does not encode a permitted character"
msgstr "Signorefrenco '%s' ne faras kodigu permesatan signon"

#: glib/gmarkup.c:614
msgid "Empty character reference; should include a digit such as &#454;"
msgstr "Malplena signa referenco; devus enhavi ciferon kiel &#454;"

#: glib/gmarkup.c:624
msgid ""
"Character reference did not end with a semicolon; most likely you used an "
"ampersand character without intending to start an entity - escape ampersand "
"as &amp;"
msgstr ""
"Signa referenco ne finis kun punktokomo; vi verŝajne uzas kaj-signon sen "
"volikomenci eron - eskapu kaj-signon kiel &amp;"

#: glib/gmarkup.c:710
msgid "Unfinished entity reference"
msgstr "Nefinita erorefrenco"

#: glib/gmarkup.c:716
msgid "Unfinished character reference"
msgstr "Nefinita signorefrenco"

#: glib/gmarkup.c:959 glib/gmarkup.c:987 glib/gmarkup.c:1018
msgid "Invalid UTF-8 encoded text"
msgstr "Nevalida UTF-8 kodiginta teksto"

#: glib/gmarkup.c:1054
msgid "Document must begin with an element (e.g. <book>)"
msgstr "Dokumento devas komenci kun elemento (ekz. <book>)"

#: glib/gmarkup.c:1094
#, c-format
msgid ""
"'%s' is not a valid character following a '<' character; it may not begin an "
"element name"
msgstr ""
"'%s' ne estas valida signo post la signo '<'; ĝi ne eblas "
"komcencielementnomon"

#: glib/gmarkup.c:1158
#, c-format
msgid ""
"Odd character '%s', expected a '>' character to end the start tag of element "
"'%s'"
msgstr ""
"Malbona signo '%s', unu '>' signo estas atendita por fini la "
"komencetikedonde elemento '%s'"

#: glib/gmarkup.c:1247
#, c-format
msgid ""
"Odd character '%s', expected a '=' after attribute name '%s' of element '%s'"
msgstr ""
"Malbona signo '%s', unu '>' signo estas atendita post atributnomo '%s' "
"deelemento '%s'"

#: glib/gmarkup.c:1289
#, c-format
msgid ""
"Odd character '%s', expected a '>' or '/' character to end the start tag of "
"element '%s', or optionally an attribute; perhaps you used an invalid "
"character in an attribute name"
msgstr ""
"Malbona signo '%s', unu '>' aŭ '/' signo estas atendita por fini "
"lakomencetikedon de elemento '%s' aŭ unu atributo; eble vi uzas nevalidan "
"signon enunu atributnomo"

#: glib/gmarkup.c:1378
#, c-format
msgid ""
"Odd character '%s', expected an open quote mark after the equals sign when "
"giving value for attribute '%s' of element '%s'"
msgstr ""
"Malbona signo '%s', malferma citilo estas atendita post la egalsigno "
"kiamdonita valoro por atributo '%s' de elemento '%s'"

#: glib/gmarkup.c:1523
#, c-format
msgid ""
"'%s' is not a valid character following the characters '</'; '%s' may not "
"begin an element name"
msgstr ""
"'%s' ne estas valida signo post la signoj '</'; '%s' ne eblas "
"komcencielementnomon"

#: glib/gmarkup.c:1563
#, c-format
msgid ""
"'%s' is not a valid character following the close element name '%s'; the "
"allowed character is '>'"
msgstr ""
"'%s' ne estas valida signo post la ferma elementnomo '%s'; la valida signo "
"estas'>'"

#: glib/gmarkup.c:1574
#, c-format
msgid "Element '%s' was closed, no element is currently open"
msgstr "Elemento '%s' estis fermita, neniu elemento estas malfermita"

#: glib/gmarkup.c:1583
#, c-format
msgid "Element '%s' was closed, but the currently open element is '%s'"
msgstr ""
"Elemento '%s' estis fermita, sed la momente malfermita elemento estas '%s'"

#: glib/gmarkup.c:1730
msgid "Document was empty or contained only whitespace"
msgstr "Dokumento estis malpena aŭ enhavis nur blankspaco"

#: glib/gmarkup.c:1744
msgid "Document ended unexpectedly just after an open angle bracket '<'"
msgstr "Dokumento neatendite finis post malfermi-angulkrampon '<'"

#: glib/gmarkup.c:1752 glib/gmarkup.c:1796
#, c-format
msgid ""
"Document ended unexpectedly with elements still open - '%s' was the last "
"element opened"
msgstr ""
"Dokumento neatendite finis kun elementoj ankoraŭ malfermi - '%s' estis la "
"lasta elemento malfermita"

#: glib/gmarkup.c:1760
#, c-format
msgid ""
"Document ended unexpectedly, expected to see a close angle bracket ending "
"the tag <%s/>"
msgstr ""
"Dokumento neatendite finis, atendis vidi etikedon finiĝanta je fermi-"
"angulkrampo <%s/>"

#: glib/gmarkup.c:1766
msgid "Document ended unexpectedly inside an element name"
msgstr "Dokumento neatendite finis en elementa nomo"

#: glib/gmarkup.c:1771
msgid "Document ended unexpectedly inside an attribute name"
msgstr "Dokumento neatendite finis en atributa nomo"

#: glib/gmarkup.c:1776
msgid "Document ended unexpectedly inside an element-opening tag."
msgstr "Dokumento neatendite finis en elemento-malfermanta etikedo."

#: glib/gmarkup.c:1782
msgid ""
"Document ended unexpectedly after the equals sign following an attribute "
"name; no attribute value"
msgstr ""
"Dokumento neatendite finis post le egalsigno sekvita de atributnomo; ne "
"atributvaloro"

#: glib/gmarkup.c:1789
msgid "Document ended unexpectedly while inside an attribute value"
msgstr "Dokumento neatendite finis dum en atributvaloro"

#: glib/gmarkup.c:1804
#, c-format
msgid "Document ended unexpectedly inside the close tag for element '%s'"
msgstr "Dokumento neatendite finis en la fermetikedo por elemento '%s'"

#: glib/gmarkup.c:1810
msgid "Document ended unexpectedly inside a comment or processing instruction"
msgstr "Dokumento neatendite finis en komento aŭ komputanta instrukcio"

#: glib/gshell.c:70
#, c-format
msgid "Quoted text doesn't begin with a quotation mark"
msgstr "Citita teksto ne komencas je citilo"

#: glib/gshell.c:160
#, c-format
msgid "Unmatched quotation mark in command line or other shell-quoted text"
msgstr "Konvenita citilo en komandlinio aŭ alia programeto"

#: glib/gshell.c:538
#, c-format
msgid "Text ended just after a '\\' character. (The text was '%s')"
msgstr "Teksto finis post '\\' signon. (La teksto estis '%s')"

#: glib/gshell.c:545
#, c-format
msgid "Text ended before matching quote was found for %c. (The text was '%s')"
msgstr "Teksto finis antaŭ konvenan citilon por %c. (La teksto estis '%s')"

#: glib/gshell.c:557
#, c-format
msgid "Text was empty (or contained only whitespace)"
msgstr "Teksto estis malplena (aŭ enhavis nur blankspacon)"

#: glib/gspawn-win32.c:273
#, c-format
msgid "Failed to read data from child process"
msgstr "Malsukesis legi datumon de procezido"

#: glib/gspawn-win32.c:288 glib/gspawn.c:1361
#, c-format
msgid "Failed to create pipe for communicating with child process (%s)"
msgstr "Malsukcesis krei dukton por komunikado kun procezido (%s)"

#: glib/gspawn-win32.c:326 glib/gspawn.c:1025
#, c-format
msgid "Failed to read from child pipe (%s)"
msgstr "Malsukcesis legi de duktido (%s)"

#: glib/gspawn-win32.c:352 glib/gspawn.c:1230
#, c-format
msgid "Failed to change to directory '%s' (%s)"
msgstr "Malsukcesis ŝanĝi al dosierujo '%s' (%s)"

#: glib/gspawn-win32.c:358 glib/gspawn-win32.c:578
#, c-format
msgid "Failed to execute child process (%s)"
msgstr "Malsukcesis lanĉi procezidon (%s)"

#: glib/gspawn-win32.c:468 glib/gspawn-win32.c:524
#, fuzzy, c-format
msgid "Invalid program name: %s"
msgstr "Nevalida komputilnomo"

#: glib/gspawn-win32.c:478 glib/gspawn-win32.c:534 glib/gspawn-win32.c:777
#: glib/gspawn-win32.c:832 glib/gspawn-win32.c:1367
#, c-format
msgid "Invalid string in argument vector at %d: %s"
msgstr ""

#: glib/gspawn-win32.c:489 glib/gspawn-win32.c:545 glib/gspawn-win32.c:791
#: glib/gspawn-win32.c:845 glib/gspawn-win32.c:1400
#, fuzzy, c-format
msgid "Invalid string in environment: %s"
msgstr "Nevalida sekvenco en konverta enigo"

#: glib/gspawn-win32.c:773 glib/gspawn-win32.c:828 glib/gspawn-win32.c:1348
#, fuzzy, c-format
msgid "Invalid working directory: %s"
msgstr "Eraro dum malfermado de dosierujo '%s': %s"

#: glib/gspawn-win32.c:887
#, fuzzy, c-format
msgid "Failed to execute helper program (%s)"
msgstr "Malsukcesis lanĉi helpant-programon"

#: glib/gspawn-win32.c:1087
#, c-format
msgid ""
"Unexpected error in g_io_channel_win32_poll() reading data from a child "
"process"
msgstr ""
"Neatendita eraro dum g_io_channel_win32_poll() legado de datumo de procezido"

#: glib/gspawn.c:165
#, c-format
msgid "Failed to read data from child process (%s)"
msgstr "Malsukcesis legi datumon de procezido (%s)"

#: glib/gspawn.c:297
#, c-format
msgid "Unexpected error in select() reading data from a child process (%s)"
msgstr "Neatendita eraro en select() dum datumlegado de procezido (%s)"

#: glib/gspawn.c:380
#, c-format
msgid "Unexpected error in waitpid() (%s)"
msgstr "Neatendita eraro en waitpid() (%s)"

#: glib/gspawn.c:1090
#, c-format
msgid "Failed to fork (%s)"
msgstr "Malsukcesis branĉiĝi (%s)"

#: glib/gspawn.c:1240
#, c-format
msgid "Failed to execute child process \"%s\" (%s)"
msgstr "Malsukcesis lanĉi procezidon \"%s\" (%s)"

#: glib/gspawn.c:1250
#, c-format
msgid "Failed to redirect output or input of child process (%s)"
msgstr "Malsukcesis alidirekti enigon aŭ eligon de procezido (%s)"

#: glib/gspawn.c:1259
#, c-format
msgid "Failed to fork child process (%s)"
msgstr "Malsukcesis branĉiĝi procezidon (%s)"

#: glib/gspawn.c:1267
#, c-format
msgid "Unknown error executing child process \"%s\""
msgstr "Nekonata eraro dum la lanĉando de la procezido \"%s\""

#: glib/gspawn.c:1289
#, c-format
msgid "Failed to read enough data from child pid pipe (%s)"
msgstr "Malsukcesis legi sufiĉe datumon de ida pid-dukto (%s)"

#: glib/gutf8.c:1017
#, c-format
msgid "Character out of range for UTF-8"
msgstr "Signo ne estas en la UTF-8 intervalo"

#: glib/gutf8.c:1111 glib/gutf8.c:1120 glib/gutf8.c:1252 glib/gutf8.c:1261
#: glib/gutf8.c:1402 glib/gutf8.c:1498
#, c-format
msgid "Invalid sequence in conversion input"
msgstr "Nevalida sekvenco en konverta enigo"

#: glib/gutf8.c:1413 glib/gutf8.c:1509
#, c-format
msgid "Character out of range for UTF-16"
msgstr "Signo ne estas en la UTF-16 intervalo"

#: glib/goption.c:480
msgid "Usage:"
msgstr ""

#: glib/goption.c:480
msgid "[OPTION...]"
msgstr ""

#: glib/goption.c:568
msgid "Help Options:"
msgstr ""

#: glib/goption.c:569
msgid "Show help options"
msgstr ""

#: glib/goption.c:574
msgid "Show all help options"
msgstr ""

#: glib/goption.c:624
msgid "Application Options:"
msgstr ""

#: glib/goption.c:665
#, c-format
msgid "Cannot parse integer value '%s' for %s"
msgstr ""

#: glib/goption.c:675
#, c-format
msgid "Integer value '%s' for %s out of range"
msgstr ""

#: glib/goption.c:700
#, c-format
msgid "Cannot parse double value '%s' for %s"
msgstr ""

#: glib/goption.c:708
#, c-format
msgid "Double value '%s' for %s out of range"
msgstr ""

#: glib/goption.c:993
#, fuzzy, c-format
msgid "Error parsing option %s"
msgstr "Eraro dum konverto: %s"

#: glib/goption.c:1024 glib/goption.c:1135
#, c-format
msgid "Missing argument for %s"
msgstr ""

#: glib/goption.c:1521
#, c-format
msgid "Unknown option %s"
msgstr ""

#: glib/gkeyfile.c:337
#, c-format
msgid "Valid key file could not be found in data dirs"
msgstr ""

#: glib/gkeyfile.c:372
#, c-format
msgid "Not a regular file"
msgstr ""

#: glib/gkeyfile.c:380
#, c-format
msgid "File is empty"
msgstr ""

#: glib/gkeyfile.c:695
#, c-format
msgid ""
"Key file contains line '%s' which is not a key-value pair, group, or comment"
msgstr ""

#: glib/gkeyfile.c:763
#, c-format
msgid "Key file does not start with a group"
msgstr ""

#: glib/gkeyfile.c:806
#, c-format
msgid "Key file contains unsupported encoding '%s'"
msgstr ""

#: glib/gkeyfile.c:1015 glib/gkeyfile.c:1174 glib/gkeyfile.c:2387
#: glib/gkeyfile.c:2452 glib/gkeyfile.c:2571 glib/gkeyfile.c:2706
#: glib/gkeyfile.c:2859 glib/gkeyfile.c:3035 glib/gkeyfile.c:3092
#, c-format
msgid "Key file does not have group '%s'"
msgstr ""

#: glib/gkeyfile.c:1186
#, c-format
msgid "Key file does not have key '%s'"
msgstr ""

#: glib/gkeyfile.c:1287 glib/gkeyfile.c:1396
#, c-format
msgid "Key file contains key '%s' with value '%s' which is not UTF-8"
msgstr ""

#: glib/gkeyfile.c:1305 glib/gkeyfile.c:1414 glib/gkeyfile.c:1786
#, c-format
msgid "Key file contains key '%s' which has value that cannot be interpreted."
msgstr ""

#: glib/gkeyfile.c:2002 glib/gkeyfile.c:2215
#, c-format
msgid ""
"Key file contains key '%s' in group '%s' which has value that cannot be "
"interpreted."
msgstr ""

#: glib/gkeyfile.c:2402 glib/gkeyfile.c:2586 glib/gkeyfile.c:3103
#, c-format
msgid "Key file does not have key '%s' in group '%s'"
msgstr ""

#: glib/gkeyfile.c:3276
#, c-format
msgid "Key file contains escape character at end of line"
msgstr ""

#: glib/gkeyfile.c:3298
#, fuzzy, c-format
msgid "Key file contains invalid escape sequence '%s'"
msgstr "La URI '%s' enhavas nevalidajn eskapajn signojn"

#: glib/gkeyfile.c:3439
#, c-format
msgid "Value '%s' cannot be interpreted as a number."
msgstr ""

#: glib/gkeyfile.c:3449
#, c-format
msgid "Integer value '%s' out of range"
msgstr ""

#: glib/gkeyfile.c:3477
#, c-format
msgid "Value '%s' cannot be interpreted as a float number."
msgstr ""

#: glib/gkeyfile.c:3497
#, c-format
msgid "Value '%s' cannot be interpreted as a boolean."
msgstr ""

#, fuzzy
#~ msgid "Could not change file mode: fork() failed: %s"
#~ msgstr "Malsukcesis malfermi dosieron '%s': fdopen() malsukcesis: %s"

#, fuzzy
#~ msgid "Could not change file mode: waitpid() failed: %s"
#~ msgstr "Ne eblis akiri %lu bitokojn por lego de dosiero \"%s\""

#, fuzzy
#~ msgid "Could not change file mode: chmod() failed: %s"
#~ msgstr "Malsukcesis malfermi dosieron '%s': fdopen() malsukcesis: %s"

#~ msgid "Conversion from character set `%s' to `%s' is not supported"
#~ msgstr "Konverto de signaro '%s' al '%s' ne estas subtenata"
