From DONOTREPLY at icculus.org Sat Mar 1 00:02:58 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 1 Mar 2008 00:02:58 -0500 Subject: r533 - trunk/scripts Message-ID: <20080301050258.6702.qmail@icculus.org> Author: icculus Date: 2008-03-01 00:02:58 -0500 (Sat, 01 Mar 2008) New Revision: 533 Modified: trunk/scripts/mojosetup_init.lua Log: Print out the original string when a translation has an escape sequence error, since I don't know how to search for Russian characters. :) Modified: trunk/scripts/mojosetup_init.lua =================================================================== --- trunk/scripts/mojosetup_init.lua 2008-03-01 04:13:51 UTC (rev 532) +++ trunk/scripts/mojosetup_init.lua 2008-03-01 05:02:58 UTC (rev 533) @@ -433,7 +433,7 @@ end if val ~= "%" then if tonumber(val) > maxval then - MojoSetup.fatal("BUG: '" .. k .. "' localization ['" .. v .. "'] has escape sequence > max for translation.") + MojoSetup.fatal("BUG: '" .. k .. "' localization ['" .. v .. "'] has escape sequence > max for translation of ['" .. str .. "'].") end end end From DONOTREPLY at icculus.org Sat Mar 1 00:20:16 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 1 Mar 2008 00:20:16 -0500 Subject: r534 - trunk/scripts Message-ID: <20080301052016.13846.qmail@icculus.org> Author: icculus Date: 2008-03-01 00:20:16 -0500 (Sat, 01 Mar 2008) New Revision: 534 Modified: trunk/scripts/localization.lua Log: Russian localization had a duplicate string ("Type '%0' to go back." where "Accept this license?" should be). Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-01 05:02:58 UTC (rev 533) +++ trunk/scripts/localization.lua 2008-03-01 05:20:16 UTC (rev 534) @@ -3,8 +3,8 @@ -- Please see the file LICENSE.txt in the source's root directory. -- -- DO NOT EDIT BY HAND. --- This file was generated with po2localization.pl, version svn-530 ... --- on 2008-02-29 18:13:18-0500 +-- This file was generated with po2localization.pl, version svn-533 ... +-- on 2008-03-01 00:01:48-0500 -- -- Your own installer's localizations go into app_localization.lua instead. -- If you want to add strings to be translated to this file, contact Ryan @@ -369,7 +369,6 @@ nb = "Akseptere denne lisensen?", nds = "Akzeptiere diese Lizenz?", nl = "Accepteert u deze licentie?", - ru = "??????? '%0' ????? ?????????", sv = "Acceptera licensen?" }; From DONOTREPLY at icculus.org Sat Mar 1 22:03:27 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 1 Mar 2008 22:03:27 -0500 Subject: r535 - trunk/scripts Message-ID: <20080302030327.8475.qmail@icculus.org> Author: icculus Date: 2008-03-01 22:03:25 -0500 (Sat, 01 Mar 2008) New Revision: 535 Modified: trunk/scripts/localization.lua Log: Latest translation work from launchpad.net. Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-01 05:20:16 UTC (rev 534) +++ trunk/scripts/localization.lua 2008-03-02 03:03:25 UTC (rev 535) @@ -3,8 +3,8 @@ -- Please see the file LICENSE.txt in the source's root directory. -- -- DO NOT EDIT BY HAND. --- This file was generated with po2localization.pl, version svn-533 ... --- on 2008-03-01 00:01:48-0500 +-- This file was generated with po2localization.pl, version svn-534 ... +-- on 2008-03-01 22:00:16-0500 -- -- Your own installer's localizations go into app_localization.lua instead. -- If you want to add strings to be translated to this file, contact Ryan @@ -15,7 +15,7 @@ -- -- ...and that work eventually ends up in this file. -- --- X-Launchpad-Export-Date: 2008-02-29 10:16+0000 +-- X-Launchpad-Export-Date: 2008-03-02 02:32+0000 -- X-Generator: Launchpad (build Unknown) MojoSetup.languages = { @@ -30,6 +30,7 @@ nb = "Norwegian Bokmal", nds = "German, Low", nl = "Dutch", + pt = "Portuguese", ru = "Russian", sv = "Swedish", uk = "Ukrainian" @@ -47,6 +48,7 @@ nb = "trenger ordbok", nds = "W?rterbuch ben?tigt", nl = "woordenboek nodig", + pt = "? necess?rio um dicion?rio", ru = "????????? ???????", sv = "beh?ver ordbok", uk = "???????? ???????" @@ -63,6 +65,7 @@ nb = "datafeil", nds = "Datenfehler", nl = "data fout", + pt = "erro de dados", ru = "?????? ??????", sv = "datafel", uk = "??????? ?????" @@ -79,6 +82,7 @@ nb = "minnefeil", nds = "Speicherfehler", nl = "geheugen fout", + pt = "erro na mem?ria", ru = "?????? ??????", sv = "minnesfel", uk = "??????? ???'???" @@ -95,6 +99,7 @@ nb = "bufferfeil", nds = "Pufferfehler", nl = "buffer fout", + pt = "erro no tamp?o", ru = "?????? ??????", sv = "bufferfel", uk = "??????? ??????" @@ -111,6 +116,7 @@ nb = "versjonsfeil", nds = "Versionsfehler", nl = "versie fout", + pt = "erro na vers?o", ru = "?????? ??????", sv = "versionsfel", uk = "??????? ??????" @@ -128,6 +134,7 @@ nb = "ukjent feil", nds = "unbekannter Fehler", nl = "onbekende fout", + pt = "erro desconhecido", ru = "??????????? ??????", sv = "ok?nt fel", uk = "???????? ???????" @@ -148,6 +155,7 @@ nb = "%0 [J/n]: ", nds = "%0 [J/n] ", nl = "%0 [J/n]: ", + pt = "%0 [S/n] ", ru = "%0 [Y/n]: ", sv = "%0 [J/n]: ", uk = "%0 [???/??] " @@ -166,6 +174,7 @@ nb = "%0 [j/N]: ", nds = "%0 [j/N] ", nl = "%0 [j/N]: ", + pt = "% [s/N] ", ru = "%0 [y/N]: ", sv = "%0 [j/N]: ", uk = "%0 [???/??] " @@ -184,6 +193,7 @@ nb = "%0 [j/n/Alltid/Aldri]: ", nds = "%0 [j/n/Immer/Niemals] ", nl = "%0 [j/n/Altijd/Nooit]: ", + pt = "%0 [s/n/Sempre/Nunca] ", ru = "%0 [y/n/??????(A)/???????(N)]: ", sv = "%0 [j/n/Alltid/Aldrig]: ", uk = "%0 [???/??/??????/??????]: " @@ -201,6 +211,7 @@ nb = "J", nds = "J", nl = "J", + pt = "S", ru = "Y", sv = "J" }; @@ -217,6 +228,7 @@ nb = "N", nds = "N", nl = "N", + pt = "N", ru = "N", sv = "N" }; @@ -234,6 +246,7 @@ nb = "Alltid", nds = "Immer", nl = "Altijd", + pt = "Sempre", ru = "??????", sv = "Alltid" }; @@ -251,6 +264,7 @@ nb = "Aldri", nds = "Niemals", nl = "Nooit", + pt = "Nunca", ru = "???????", sv = "Aldrig" }; @@ -268,7 +282,8 @@ nb = "(%0-%1 av %2 linjer, se mer?)", nds = "%0-%1 vom %2 lines, mehr?", nl = "(%0-%1 van %2 regels, meer zien?)", - ru = "%0-%1 ?? %2 ?????, ???????", + pt = "(%0-%1 de %2 linhas, ver mais?)", + ru = "(%0-%1 ?? %2 ?????, ???????)", sv = "(%0-%1 av %2 rader, visa fler?)" }; @@ -286,6 +301,7 @@ nb = "Skriv '%0' for ? g? tilbake.", nds = "Dr?cken Sie '%0' um zur?ckzukehren", nl = "Typ %0 om terug te gaan.", + pt = "Escreva '%0' para regressar.", ru = "??????? '%0' ????? ?????????.", sv = "Skriv '%0' f?r att g? tillbaka." }; @@ -305,6 +321,7 @@ nb = "tilbake", nds = "Zur?ck", nl = "terug", + pt = "retroceder", ru = "?????", sv = "tillbaka" }; @@ -320,6 +337,7 @@ it = "> ", nb = "> ", nl = "> ", + pt = "> ", ru = "> ", sv = "> " }; @@ -334,7 +352,9 @@ fr = "%0?: %1%%", it = "%0: %1%%", nb = "%0: %1%%", + nds = "%0: %1%%", nl = "%0: %1%%", + pt = "%0: %1%%", ru = "%0: %1%%", sv = "%0: %1%%" }; @@ -351,6 +371,7 @@ nb = "%0 (totalt: %1%%)", nds = "%0 (Fortschritt insgesamt: %1%%)", nl = "%0 (totale voortgang: %1%%)", + pt = "%0 (progresso total: %1%%)", ru = "%0 (?????: %1%%)", sv = "%0 (totalt: %1%%)" }; @@ -369,6 +390,8 @@ nb = "Akseptere denne lisensen?", nds = "Akzeptiere diese Lizenz?", nl = "Accepteert u deze licentie?", + pt = "Aceita esta licen?a?", + ru = "?? ?????????????", sv = "Acceptera licensen?" }; @@ -385,6 +408,7 @@ nb = "_Alltid", nds = "Immer", nl = "_Altijd", + pt = "_Sempre", ru = "_??????", sv = "_Alltid" }; @@ -401,6 +425,7 @@ nb = "Fant ikke arkiv", nds = "Archiv nicht gefunden", nl = "Archief niet gevonden", + pt = "O Arquivo n?o foi encontrado", ru = "????? ?? ??????", sv = "Hittade inte arkivet" }; @@ -418,6 +443,7 @@ nb = "Er du sikker p? at du vil avbryte installasjonen?", nds = "Sind Sie sicher, dass Sie die Installation abbrechen wollen?", nl = "Weet u zeker dat u de installatie wilt afbreken?", + pt = "Tem a certeza que quer cancelar a instala??o?", ru = "?? ??????? ??? ?? ?????? ?????????? ??????????", sv = "?r du s?ker p? att du vill avbryta installationen?" }; @@ -434,6 +460,7 @@ nb = "Tilbake", nds = "Zur?ck", nl = "Vorige", + pt = "Anterior", ru = "?????", sv = "Tillbaka" }; @@ -452,6 +479,8 @@ nb = "B_la gjennom...", nds = "Du_rchsuchen", nl = "Bl_aderen...", + pt = "_Procurar...", + ru = "???????...", sv = "B_l?ddra" }; @@ -472,6 +501,7 @@ nb = "FEIL: duplisert media-id", nds = "BUG: Doppelte media id", nl = "BUG: dubbele media id", + pt = "BUG: media id duplicada", sv = "FEL: dupliserat media id" }; @@ -484,9 +514,11 @@ en_GB = "BUG: no options", es = "FALLO: sin opciones", fi = "BUGI: ei vaihtoehtoja", + fr = "BOGUE: Pas d'options", nb = "FEIL: ingen valg", nds = "BUG: keine Optionen", nl = "BUG: geen opties", + pt = "BUG: sem op??es", ru = "???: ???? ?????", sv = "FEL: inget option" }; @@ -504,6 +536,7 @@ nb = "FEIL: support_uninstall krever write_manifest", nds = "BUG: support_uninstall ben?tigt write_manifest", nl = "BUG: ondersteuning_deinstalleren heeft schrijf_manifest nodig", + pt = "BUG: support_uninstall requer write_manifest", ru = "???: support_uninstall ????????? ? write_manifest", sv = "FEL: support_uninstall kr?ver write_manifest" }; @@ -519,6 +552,7 @@ es = "FALLO: write_manifest requiere el soporte de un int?rprete Lua", fi = "BUGI: write_manifest vaatii Lua parser -tuen", nb = "FEIL: write_manifest krever st?tte for Lua-parser", + pt = "BUG: write_manifest requer suporte do analisador da linguagem Lua", ru = "???: write_manifest ????????? ? ????????? Lua parser", sv = "FEL: write_manifest kr?ver Lua parser st?d" }; @@ -534,6 +568,7 @@ es = "FALLO: Setup.DesktopMenuItem requiere support_uninstall", fi = "BUGI: Setup.DesktopMenuItem vaatii support_uninstall:n", nds = "BUG: Setup.DesktopMenuItem ben?tigt support_uninstall", + pt = "BUG: Setup.DesktopMenuItem requer support_uninstall", ru = "???: Setup.DesktopMenuItem ????????? ? support_uninstall", sv = "FEL: Setup.DesktopMenuItem kr?ver support_uninstall" }; @@ -544,13 +579,15 @@ -- valid and would cause this error. ["BUG: '%0' is not a valid permission string"] = { cs = "CHYBA: '%0' nen? platn?m ?et?zcem vyjad?uj?c?m opr?vn?n?", - de = "FEHLER: '%0' ist keine zul?ssiger Berechtigungs-String", + de = "FEHLER: '%0' ist kein zul?ssiger Berechtigungs-String", en_GB = "BUG: '%0' is not a valid permission string", es = "FALLO: '%0' no es una cadena de permisos v?lida", fi = "BUGI: \"%0\" ei ole kelvollinen oikeuksia m??ritt?v? merkkijono", nb = "FEIL: '%0' er ikke en gyldig rettighetsstreng", nds = "BUG: '%0' ist kein g?ltiger \"permission string\"", nl = "BUG: '%0' is geen geldige permissie string", + pt = "BUG: '%0' n?o ? uma express?o v?lida", + ru = "???: '%0' ?? ?????????? ????? ??? ????.", sv = "FEL: '%0' ?r inte en giltig r?ttighetsstr?ng" }; @@ -565,6 +602,8 @@ es = "FALLO: Cadena format() no v?lida", fi = "BUGI: Ep?kelpo format()-merkkijono", nb = "FEIL: Ugyldig format()-streng", + nds = "Fehler: Ung?ltiger format() string", + pt = "BUG: format() inv?lido da express?o", ru = "???: ??????????e????? ????? format()", sv = "FEL: Ogiltig format() str?ng" }; @@ -580,7 +619,10 @@ es = "FALLO: la etapa ha devuelto tipo err?neo", fi = "BUGI: vaihe palautti v??r?? tyyppi?", nb = "FEIL: niv? returnerte feil type", + nds = "Fehler: Stage R?ckgabewert ist vom falschen Typ", nl = "BUG: stadium gaf verkeerd type op", + pt = "BUG: A etapa retornou um tipo errado", + ru = "???: ???? ????? ??????????? ??? ??????????", sv = "FEL: niv? returnerade fel typ" }; @@ -596,6 +638,8 @@ fi = "BUGI: vaihe palautti v??r?n arvon", nb = "FEIL: niv? returnerte feil verdi", nl = "BUG: stadium gaf verkeerde waarde terug", + pt = "BUG: A etapa retornou um valor errado", + ru = "???: ???? ????? ??????????? ?????????", sv = "FEL: niv? returnerade fel v?rde" }; @@ -611,6 +655,8 @@ fi = "BUGI: palattiin ensimm?isen vaiheen ohi", nb = "FEIL: Gikk tilbake forbi startniv?", nl = "BUG: teruggegaan naar voor eerste stadium.", + pt = "BUG: Retrocedeu na primeira etapa", + ru = "???: ???? ????? ????? ??????? ?????", sv = "FEL: Gick tillbaka f?rbi startniv?" }; @@ -624,6 +670,7 @@ fi = "BUGI: K?sittelem?t?n datatyyppi", nb = "FEIL: Uh?ndtert datatype", nl = "BUG: onbekend data type", + pt = "BUG: tipo sem tratamento", sv = "FEL: Ohanterad datatyp" }; @@ -638,6 +685,7 @@ fi = "BUGI: tar-sy?tteit? ei voida kahdentaa", nb = "FEIL: Kan ikke duplisere innfiler for tar", nl = "BUG: kan tar input kan niet gedupliceerd woorden.", + pt = "BUG: Imposs?vel duplicar as entradas do tar", ru = "???: ?? ????? ??????????? ???? tar", sv = "FEL: Kan inte duplicera infiler f?r tar" }; @@ -653,6 +701,7 @@ fi = "BUGI: Odottamaton arvo", nds = "Unerwarteter Wert", nl = "BUG: Onverwachte waarde", + pt = "BUG: Valor inexperado", ru = "???: ??????????? ?????", sv = "FEL: Ov?ntat v?rde" }; @@ -670,7 +719,9 @@ fi = "BUGI: Config %0 %1", it = "BUG: Config %0 %1", nb = "FEIL: Konfigurasjon %0 %1", + nds = "Fehler: Config %0 %1", nl = "BUG: configuratie %0 %1", + pt = "BUG: Configura??o %0 %1", ru = "???: ????? %0 %1", sv = "FEL: Konfiguration %0 %1" }; @@ -684,7 +735,9 @@ fi = "t?ytyy m??ritell? t?sm?llisesti", fr = "doit ?tre sp?cifi? explicitement", nb = "m? spesifiseres eksplisitt", + nds = "muss ausdr?cklich spezifiziert werden", nl = "moet expliciet gespecifieerd worden", + pt = "Tem que ser especificado explicitamente", ru = "?????? ???? ??????? ?????", sv = "m?ste vara explicit specifierad" }; @@ -698,7 +751,10 @@ fi = "t?ytyy olla merkkijono tai merkkijonotaulukko", fr = "doit ?tre une cha?ne de caract?res ou un tableau de cha?nes de caract?res", nb = "m? v?re streng eller tabell av strenger", + nds = "muss String oder Tabelle von Strings sein", nl = "moet een string of een tabel met strings zijn", + pt = "Tem que ser uma express?o ou uma tabela de express?es", + ru = "?????? ???? ??????? ??? ???????? ? ????????", sv = "m?ste vara en str?ng eller en tabell av str?ngar" }; @@ -713,6 +769,7 @@ nb = "m? v?re streng eller nummer", nds = "muss string oder number sein", nl = "moet een string of een nummer zijn", + pt = "Tem que ser uma express?o ou um n?mero", ru = "?????? ??????? ??? ???????", sv = "m?ste vara en str?ng eller ett nummer" }; @@ -726,7 +783,9 @@ fi = "ei saa olla tyhj? merkkijono", fr = "ne peut ?tre une cha?ne de caract?res vide", nb = "kan ikke v?re tom streng", + nds = "kann String nicht leeren", nl = "kan geen lege string zijn", + pt = "N?o pode ser uma express?o vazia", ru = "?? ????? ???? ?????? ???????", sv = "kan inte vara en tom str?ng" }; @@ -742,6 +801,7 @@ nb = "URL har ikke protokoll", nds = "URL hat kein Protokoll", nl = "URL heeft geen protocol", + pt = "O URL n?o tem o protocolo", ru = "?? ????? ????????? ??? URL", sv = "URL saknar protokoll" }; @@ -757,6 +817,7 @@ nb = "URL har ikke ver", nds = "URL hat keinen Host", nl = "URL heeft geen host", + pt = "O URL n?o tem servidor", sv = "URL saknar v?rd" }; @@ -770,6 +831,7 @@ fr = "L'URL manque un chemin", nb = "URL har ikke sti", nds = "URL hat keinen Pfad", + pt = "O URL n?o tem recurso", sv = "URL saknar s?kv?g" }; @@ -784,6 +846,8 @@ nb = "URL-protokollen er ikke st?ttet", nds = "URL Protokoll wird nicht unterst?tzt", nl = "protocol van URL wordt niet ondersteund", + pt = "O protocolo do URL n?o ? suportado", + ru = "URL ????????? ?? ?????????", sv = "URL-protokollet har inget st?d" }; @@ -799,7 +863,10 @@ fr = "Chaine de permissions invalide", it = "Stringa dei permessi non valida", nb = "Rettighetsstrengen er ugyldig", + nds = "Zugriffsberechtigungs String ist ung?ltig", nl = "Permissie string is niet geldig", + pt = "A express?o de permiss?o n?o ? v?lida", + ru = "????? ?? ??????????", sv = "R?ttighetsstr?ngen ?r ogiltig" }; @@ -814,7 +881,9 @@ fr = "n'est pas une propri?t? valide", it = "non ? una propriet? valida", nb = "er ikke en gyldig egenskap", + nds = "ist keine g?ltige Eigenschaft", nl = "is geen geldige eigenschap", + pt = "n?o ? uma propriedade v?lida", sv = "?r inte ett giltigt attribut" }; @@ -831,6 +900,8 @@ nb = "m? v?re %0", nds = "muss %0 sein", nl = "moet %0 zijn", + pt = "tem que ser %0", + ru = "?????? ???? %0", sv = "m?ste vara %0" }; @@ -846,7 +917,8 @@ nb = "streng", nds = "string", nl = "string", - ru = "??????", + pt = "express?o", + ru = "???????", sv = "str?ng" }; @@ -862,6 +934,7 @@ nb = "boolsk verdi", nds = "boolean", nl = "boolean", + pt = "boleano", sv = "boolskt v?rde" }; @@ -877,7 +950,8 @@ nb = "nummer", nds = "number", nl = "nummer", - ru = "?????", + pt = "n?mero", + ru = "??????", sv = "nummer" }; @@ -891,8 +965,10 @@ fr = "fonction", it = "funzione", nb = "funksjon", + nds = "Funktion", nl = "functie", - ru = "???????", + pt = "fun??o", + ru = "????????", sv = "funktion" }; @@ -906,8 +982,10 @@ fr = "tableau", it = "tabella", nb = "tabell", + nds = "Tabelle", nl = "tabel", - ru = "???????", + pt = "tabela", + ru = "????????", sv = "tabell" }; @@ -919,8 +997,11 @@ en_GB = "bzlib triggered an internal error: %0", es = "bzlib ha provocado un error interno: %0", fi = "bzlib laukaisi sis?isen virheen: %0", + fr = "bzlib a caus? une erreur interne: %0", nb = "intern feil i bzlib: %0", + nds = "bzlib l?ste eine internen Fehler aus: %0", nl = "bzlib heeft een interne fout veroorzaakt: %0", + pt = "A bzlib despoletou um erro interno: %0", sv = "internt fel i bzlib: %0" }; @@ -937,6 +1018,7 @@ nb = "Avbryt", nds = "Abbrechen", nl = "Annuleren", + pt = "Cancelar", ru = "????????", sv = "Avbryt" }; @@ -954,6 +1036,7 @@ nb = "Avbryt installasjonen", nds = "Installation abbrechen", nl = "Installatie afbreken?", + pt = "Cancelar a instala??o", ru = "???????? ?????????", sv = "Avbryt installationen" }; @@ -968,6 +1051,7 @@ fi = "Paketin tiedostojen listaus ep?onnistui", fr = "Ne peux pas ?num?rer les fichiers de l'archive", nb = "Kunne ikke liste filer i arkivet", + pt = "Foi imposs?vel enumerar o arquivo", sv = "Kunde inte lista filen" }; @@ -984,6 +1068,8 @@ nb = "Kunne ikke ?pne arkivet", nds = "Kann Archiv nicht ?ffnen", nl = "Kon archief niet openen", + pt = "Foi imposs?vel abrir o arquivo", + ru = "?? ????? ??????? ?????", sv = "Kunde inte ?ppna filen" }; @@ -1002,8 +1088,12 @@ en_GB = "Choose number to change.", es = "Elegir n?mero para cambiar", fi = "Valitse muutettavan numero.", + fr = "Entrez le num?ro de l'option ? changer.", nb = "Velg nummer som skal endres.", + nds = "W?hle eine Nummer zum ?ndern", nl = "Kies een nummer om te veranderen", + pt = "Escolha um n?mero para alterar", + ru = "???????? ????? ????? ????????", sv = "V?lj nummer som skall ?ndras." }; @@ -1019,6 +1109,8 @@ nb = "Konflikt!", nds = "Konflikt!", nl = "Conflict!", + pt = "Conflito!", + ru = "????????!", sv = "Konflikt!" }; @@ -1029,12 +1121,13 @@ -- This error is shown if we can't move a file out of the way. ["Couldn't backup file for rollback"] = { cs = "Nemohu zaz?lohovat soubor pro obnovu", - de = "Konnte Datei nicht zur Wiederherstellung speichern", + de = "Konnte Datei nicht zur Wiederherstellung sichern", en_GB = "Couldn't backup file for rollback", es = "No se pudo guardar el archivo para inversi?n", fi = "Tiedoston varmuuskopionti ei onnistunut", nb = "Kunne ikke sikkerhetskopiere fil for tilbakerulling", nl = "Kon bestand niet backupen om de installatie terug te kunnen draaien", + pt = "Foi imposs?vel salvaguardar o ficheiro para refazer as ac??es", sv = "Kunde inte s?kerhetskopiera filen f?r ?terst?llning" }; @@ -1046,8 +1139,11 @@ en_GB = "Couldn't create manifest", es = "No se pod?a crear manifest", fi = "Asennusluettelon luominen ep?onnistui", + fr = "Echec de cr?ation du fichier manifest", nb = "Kunne ikke lage manifest", + nds = "Erstellen des Manifests schlug fehl.", nl = "Kon het installatiemanifest niet maken", + pt = "Foi imposs?vel criar o manifesto", sv = "Kunde inte skapa manifest" }; @@ -1064,6 +1160,8 @@ nb = "Kunne ikke slette!", nds = "L?schen fehlgeschlagen!", nl = "Verwijderen mislukt!", + pt = "A remo??o falhou!", + ru = "?? ?????? ???????!", sv = "Kunde inte radera!" }; @@ -1081,6 +1179,8 @@ nb = "Katalog:", nds = "Ordner:", nl = "Map:", + pt = "Directoria:", + ru = "?????:", sv = "Katalog:" }; @@ -1096,6 +1196,8 @@ nb = "Destinasjon", nds = "Ziel", nl = "Bestemming", + pt = "Destino", + ru = "??????????", sv = "M?l" }; @@ -1112,6 +1214,8 @@ nb = "Laster ned", nds = "Lade herunter", nl = "Bezig met downloaden", + pt = "A descarregar", + ru = "???? ??????????", sv = "H?mtar" }; @@ -1119,7 +1223,7 @@ -- a destination for newly-installed files. ["Enter path where files will be installed."] = { cs = "Zadejte cestu, kam maj? b?t soubory nainstalov?ny.", - de = "Geben Sie den Pfad an, wo Dateien installiert werden sollen.", + de = "Geben Sie den Pfad an, wohin die Dateien installiert werden sollen.", en_GB = "Enter path where files will be installed.", es = "Introduce la ruta donde los archivos ser?n instalados", fi = "Sy?t? polku, johon tiedostot asennetaan.", @@ -1128,6 +1232,7 @@ nb = "Skriv inn destinasjonssti for installasjonen.", nds = "Pfad eingeben, in den installiert werden soll.", nl = "Geef de map op waar de bestanden geinstalleerd zullen worden", + pt = "Introduza o caminho para os ficheiros que ser?o instalados.", sv = "V?lj den mapp d?r filerna ska installeras." }; @@ -1138,9 +1243,12 @@ en_GB = "failed to load file '%0'", es = "no se pudo leer el archivo '%0'", fi = "tiedoston \"%0\" lukeminen ep?onnistui", + fr = "Echec du chargement du fichier '%0'", nb = "kunne ikke laste fil '%0'", nds = "Fehler beim Laden von '%0'", nl = "laden van bestand \"%0\" mislukt", + pt = "falhou a carregar o filheiro '%0'", + ru = "?? ?????? ????????? ???? '%0'", sv = "Misslyckades med att l?sa filen '%0'" }; @@ -1156,6 +1264,8 @@ nb = "Fatal feil", nds = "Fataler Fehler", nl = "Fatale fout", + pt = "Erro fatal", + ru = "????????? ??????", sv = "Allvarligt fel" }; @@ -1170,6 +1280,8 @@ it = "Creazione file fallita", nb = "Kunne ikke lage fil!", nl = "aanmaken bestand mislukt!", + pt = "Falhou a cria??o do ficheiro!", + ru = "?? ?????? ??????? ????!", sv = "Misslyckades med att skapa fil!" }; @@ -1185,6 +1297,8 @@ nb = "Kunne ikke laste ned fil!", nds = "Dateidownload fehlgeschlagen!", nl = "downloaden van bestand mislukt!", + pt = "Falhou a descarregar!", + ru = "?? ?????? ??????? ????!", sv = "H?mtning av fil misslyckades!" }; @@ -1201,6 +1315,8 @@ nb = "Filen '%0' eksisterer allerede! Skrive over?", nds = "Datei '%0' existiert bereits! ?berschreiben?", nl = "Bestand \"%0\" bestaat al! Vervangen?", + pt = "O ficheiro '%0' j? existe! Substituir?", + ru = "??? ???? ???? '%0'. ?????? ?????????", sv = "Filen '%0' existerar redan! Vill du ers?tta filen?" }; @@ -1208,7 +1324,7 @@ -- stages to move forward to. ["Finish"] = { cs = "Dokon?it", - de = "Fertig", + de = "Fertig stellen", en_GB = "Finish", es = "Terminar", fi = "Valmis", @@ -1217,6 +1333,8 @@ nb = "Ferdig", nds = "Fertig", nl = "Voltooien", + pt = "Finalizar", + ru = "?????????", sv = "Slutf?r" }; @@ -1228,9 +1346,12 @@ en_GB = "GUI failed to start", es = "El interfaz gr?fico de usuario ha fallado al arrancar", fi = "Graafinen k?ytt?liittym? ei k?ynnistynyt", + fr = "Echec du d?marrage de l'interface", nb = "Kunne ikke starte grafisk grensesnitt", nds = "Fehler beim starten der GUI", nl = "Opstarten GUI mislukt", + pt = "O GUI falhou a iniciar", + ru = "??????????? ??????? ?? ???? ??????????", sv = "Kunde inte starta grafisk gr?nssnitt" }; @@ -1245,7 +1366,9 @@ fi = "Asennus j?i kesken. Tehdyt muutokset perutaan.", fr = "Installation incompl?te. Tous les changements effectu?s seront annul?s.", nb = "Installasjonen ble ikke ferdig. Vi vil tilbakestille alle endringer som ble gjort.", - nl = "Incomplete installatie. We zullen de gemaakte veranderingen ongedaan maken.", + nl = "Incomplete installatie. De veranderingen zullen ongedaan gemaakt worden.", + pt = "Instala??o incompleta. Todas as altera??es ser?o desfeitas.", + ru = "?? ?????? ?????????? ?????????. ?? ??????? ??? ????????? ?????????.", sv = "Ofullst?ndig installation. ?terst?llning av alla gjorda ?ndringar utf?rs." }; @@ -1259,7 +1382,10 @@ fr = "Installation r?ussie.", it = "Installazione riuscita.", nb = "Installasjonen var en suksess.", + nds = "Die Installation war erfolgreich", nl = "De installatie is succesvol verlopen.", + pt = "A instala??o foi bem sucedida.", + ru = "????????? ???? ???????.", sv = "Installationen lyckades." }; @@ -1274,7 +1400,10 @@ fr = "En cours d'installation", it = "Installazione in corso", nb = "Installerer", + nds = "Installiere ...", nl = "Installeren", + pt = "A instalar", + ru = "?????????????", sv = "Installerar" }; @@ -1289,7 +1418,10 @@ fr = "Options", it = "Opzioni", nb = "Valg", + nds = "Optionen", nl = "Opties", + pt = "Op??es", + ru = "?????????", sv = "Alternativ" }; @@ -1306,6 +1438,7 @@ it = "(Voglio specificare un percorso)", nb = "(Jeg vil skrive inn min egen sti.)", nl = "(Ik wil een pad specificeren.)", + pt = "(Eu quero especificar o caminho.)", sv = "(Jag vill skriva in en egen s?kv?g.)" }; @@ -1319,7 +1452,10 @@ fr = "Ko/s", it = "KB/s", nb = "KB/s", + nds = "kB/s", nl = "KB/s", + pt = "KB/s", + ru = "??/?", sv = "KB/s" }; @@ -1333,7 +1469,10 @@ fr = "octets/s", it = "B/s", nb = "B/s", + nds = "B/s", nl = "B/s", + pt = "B/s", + ru = "?/?", sv = "B/s" }; @@ -1348,7 +1487,10 @@ fr = "%0 %1", it = "%0 %1", nb = "%0 %1", + nds = "%0 %1", nl = "%0 %1", + pt = "%0 %1", + ru = "0% %1", sv = "%0 %1" }; @@ -1361,22 +1503,29 @@ en_GB = "%0 %1, %2:%3:%4 remaining", es = "%0 %1, %2:%3:%4 restantes", fi = "%0 %1, %2:%3:%4 j?ljell?", + fr = "%0 %1, %2:%3:%4 restantes", nb = "%0 %1, %2:%3:%4 igjen", + nds = "%0 %1, %2:%3:%4 verbleiben", nl = "%0 %1, %2:%3:%4 resterend", + pt = "restam %0 %1, %2:%3:%4", + ru = "%0 %1, ???????? %2:%3:%4", sv = "%0 %1, %2:%3:%4 ?terst?r" }; -- download rate when download isn't progressing at all. ["stalled"] = { cs = "zaseknut?", - de = "Stillstand", + de = "wartend", en_GB = "stalled", es = "parado", fi = "seisahtunut", fr = "bloqu?", it = "in stallo", nb = "st?r fast", + nds = "Angehalten", nl = "geen progressie", + pt = "Parado", + ru = "????????", sv = "avstannad" }; @@ -1388,8 +1537,12 @@ en_GB = "%0: %1%% (%2)", es = "%0: %1%% (%2)", fi = "%0: %1%% (%2)", + fr = "%0: %1%% (%2)", nb = "%0: %1%% (%2)", + nds = "%0: %1%% (%2)", nl = "%0: %1%% (%2)", + pt = "%0: %1%% (%2)", + ru = "%0: %1%% (%2)", sv = "%0: %1%% (%2)" }; @@ -1403,6 +1556,7 @@ fr = "Changement de m?dia", nb = "Mediaendring", nl = "Verwissel medium", + pt = "Mudan?a de media", sv = "Mediabyte" }; @@ -1418,6 +1572,8 @@ it = "Creazione directory fallita", nb = "Kunne ikke lage katalog", nl = "Aanmaken folder mislukt", + pt = "A cria??o da directoria falhou", + ru = "?? ?????? ??????? ?????", sv = "Kunde inte skapa katalog" }; @@ -1432,6 +1588,9 @@ fr = "_Jamais", it = "_Mai", nb = "Al_dri", + nds = "N_ie", + pt = "N_unca", + ru = "???????", sv = "Al_drig" }; @@ -1446,7 +1605,10 @@ fr = "Suivant", it = "Avanti", nb = "Neste", + nds = "Weiter", nl = "Volgende", + pt = "Seguinte", + ru = "?????", sv = "N?sta" }; @@ -1460,7 +1622,10 @@ fr = "Non", it = "No", nb = "Nei", + nds = "Nein", nl = "Nee", + pt = "N?o", + ru = "???", sv = "Nej" }; @@ -1474,7 +1639,10 @@ fr = "Oui", it = "Si", nb = "Ja", + nds = "Ja", nl = "Ja", + pt = "Sim", + ru = "??", sv = "Ja" }; @@ -1489,7 +1657,10 @@ fr = "Introuvable", it = "Non Trovato", nb = "Ikke funnet", + nds = "Nicht gefunden", nl = "Niet Gevonden", + pt = "Inexistente", + ru = "?? ???????", sv = "Hittades inte" }; @@ -1503,7 +1674,10 @@ fi = "Ei teht?v??!", fr = "Rien ? faire!", nb = "Ingenting ? gj?re!", + nds = "Nichts zu tun!", nl = "Niets te doen!", + pt = "Nada por fazer!", + ru = "?????? ??????!", sv = "Ingenting att g?ra!" }; @@ -1514,9 +1688,13 @@ en_GB = "OK", es = "Aceptar", fi = "Hyv?ksy", + fr = "OK", it = "OK", nb = "OK", + nds = "OK", nl = "OK", + pt = "Aceitar", + ru = "?????", sv = "OK" }; @@ -1531,8 +1709,12 @@ en_GB = "PANIC", es = "P?NICO", fi = "H?T?TILA", + fr = "PANIC", nb = "PANIKK", + nds = "PANIK", nl = "PROBLEEM", + pt = "P?NICO", + ru = "??????", sv = "PANIK" }; @@ -1543,8 +1725,11 @@ en_GB = "Please insert '%0'", es = "Por favor introduce '%0'", fi = "Sy?t? \"%0\"", + fr = "Veuillez ins?rer '%0'", nb = "Sett inn '%0'", + nds = "Bitte '%0' in das Laufwerk legen.", nl = "Laadt '%0' a.u.b.", + pt = "Por favor insira '%0'", sv = "S?tt in '%0'" }; @@ -1560,7 +1745,9 @@ fr = "Veuillez appuyer sur Entr?e pour continuer.", it = "Premere invio per continuare.", nb = "Trykk enter for ? fortsette.", - nl = "Druk 'enter' om door te gaan.", + nds = "Dr?cke Enter, um fortzufahren.", + nl = "Toets enter om door te gaan", + pt = "Pressione enter para continuar.", sv = "Tryck enter f?r att forts?tta." }; @@ -1575,7 +1762,9 @@ fi = "Vakava ongelma", fr = "Probl?me grave", nb = "Alvorlig problem", + nds = "Ernstzunehmender Fehler", nl = "Serieus probleem", + pt = "Problema s?rio", sv = "Allvarligt problem" }; @@ -1589,6 +1778,7 @@ fr = "Fermeture en cours...", nb = "Avslutter...", nl = "Afsluiten...", + pt = "A terminar...", sv = "Avslutar..." }; @@ -1602,7 +1792,9 @@ fr = "Vous pouvez maintenant fermer ce navigateur", it = "Puoi chiudere il browser adesso.", nb = "Du kan lukke denne nettleseren n?.", + nds = "Sie k?nnen den Browser nun schlie?en.", nl = "U kunt dit scherm nu sluiten.", + pt = "J? pode fechar este browser.", sv = "Du kan st?nga denna webbl?sare nu." }; @@ -1618,6 +1810,7 @@ it = "Creazione del collegamento fallita!", nb = "Kunne ikke lage symbolsk lenke!", nl = "Aanmaken Symlink mislukt!", + pt = "A cria??o de uma liga??o simb?lica falhou!", sv = "Kunde inte skapa symbolisk l?nk!" }; @@ -1632,6 +1825,7 @@ fr = "L'installeur a ?t? interrompu par le syst?me.", nb = "Installasjonsprogrammet ble stoppet av systemet.", nl = "Het installatieprogramma is door het systeem gestopt.", + pt = "O instalador foi parado pelo sistema.", sv = "Installationsprogrammet blev stoppat av systemet." }; @@ -1643,8 +1837,10 @@ en_GB = "The installer has crashed due to a bug.", es = "El instalador se ha bloqueado por un fallo de memoria.", fi = "Bugi kaatoi asennusohjelman.", + fr = "L'installateur a quitt? inopin?ment ? cause d'un bogue.", nb = "Installasjonsprogrammet kr?sjet pga. en feil.", nl = "Het installatieprogramma is door een bug gecrasht.", + pt = "O instalador terminou acidentalmente devido a um erro.", sv = "Installationsprogrammet kraschade pga. ett fel." }; @@ -1659,6 +1855,7 @@ it = "Attiva/Disattiva", nb = "Inverter valg", nl = "Aan/Uit", + pt = "Alternar", sv = "V?xla" }; @@ -1671,8 +1868,10 @@ en_GB = "Unknown file type in archive", es = "Tipo de fichero desconocido en el archivo", fi = "Paketissa on tiedosto, jonka tyyppi? ei tunneta.", + fr = "Type de fichier inconnu dans cette archive.", nb = "Ukjent filtype i arkivet", nl = "Onbekend bestandstype in archief", + pt = "Tipo de ficheiro desconhecido no arquivo", sv = "Ok?nd filtyp p?tr?ffad i arkivet" }; @@ -1688,6 +1887,7 @@ nb = "Lisensen m? godkjennes f?r du kan installere", nds = "Du must den Lizenzbedingungen zustimmen, um die Installation fortzusetzen", nl = "U moet akkoord gaan met de licentie om te kunnen installeren", + pt = "Tem que aceitar a licen?a antes de prosseguir com a instala??o", sv = "Du m?ste acceptera licensavtalet innan du kan forts?tta med installationen" }; @@ -1704,6 +1904,8 @@ fr = "M?tadonn?es", it = "Metadati", nb = "Metadata", + nl = "Metadata", + pt = "Meta-Informa??o", sv = "Metadata" }; @@ -1718,6 +1920,7 @@ it = "Linea di comando non valida", nb = "Ugyldig kommandolinje", nl = "Ongeldige opdrachtregel", + pt = "Argumento da linha de comandos inv?lido", sv = "Ogiltigt argument" }; @@ -1730,6 +1933,7 @@ es = "No pudo cargar el archivo manifest de '%0'", fi = "Asennusluetteloa paketille \"%0\" ei kyetty lukemaan.", nb = "Kunne ikke laste manifestfil for '%0'", + pt = "Foi imposs?vel carregar o ficheiro de manifesto para '%0'", sv = "Kunde inte ladda manifestfil f?r '%0'" }; @@ -1741,9 +1945,11 @@ en_GB = "File %0 not found", es = "Archivo %0 no encontrado", fi = "Tiedostoa \"%0\" ei ole.", + fr = "Fichier %0 introuvable", nb = "Filen '%0' ble ikke funnet", nds = "Datei %0 wurde nicht gefunden", nl = "Bestand %0 niet gevonden", + pt = "O ficheiro %0 n?o foi encontrado", sv = "Filen '%0' hittades inte" }; @@ -1760,6 +1966,7 @@ nb = "Avinstallasjon", nds = "Deinstalleren", nl = "De?nstalleren", + pt = "Desinstalar", sv = "Avinstallera" }; @@ -1774,6 +1981,7 @@ fr = "?tes-vous s?r de vouloir d?sinstaller '%0' ?", nb = "Er du sikker p? at du vil avinstallere '%0'?", nl = "Bent u er zeker van dat u '%0' wilt de?nstalleren?", + pt = "Tem a certeza que quer desinstalar '%0'?", sv = "?r du s?ker p? att du vill avinstallera '%0'?" }; @@ -1789,6 +1997,7 @@ nb = "Avinstallerer", nds = "Deinstallation", nl = "De?nstallatie", + pt = "A desinstalar", sv = "Avinstallerar" }; @@ -1803,6 +2012,7 @@ nb = "Avinstallasjonen er ferdig", nds = "Deinstallation abgeschlossen", nl = "De?nstallatie voltooid", + pt = "A desinstala??o foi bem sucedida", sv = "Avinstallation slutf?rd" }; @@ -1815,12 +2025,14 @@ -- aren't required. ["[Make the window wider!]"] = { cs = "[Zv?t?it ???ku okna!]", - de = "[Verbreitern Sie das Fenster!]", + de = "[Fenster breiter machen!]", en_GB = "[Make the window wider!]", es = "[?Ensancha la ventana!]", fi = "[Levenn? ikkunaa!]", + fr = "[?largissez la fen?tre!]", nb = "[Gj?r vinduet bredere!]", nl = "[Maak het scherm breder!]", + pt = "[Torne a janela mais larga!]", sv = "[G?r f?nstret bredare!]" }; @@ -1833,12 +2045,14 @@ -- aren't required. ["[Make the window taller!]"] = { cs = "[Zv?t?it v??ku okna!]", - de = "[Vergr??ern Sie das Fenster!]", + de = "[Fenster h?her machen!]", en_GB = "[Make the window taller!]", es = "[?Estira la ventana!]", fi = "[Tee ikkunasta korkeampi!]", + fr = "[Agrandissez la fen?tre!]", nb = "[Gj?r vinduet h?yere!]", nl = "[Maak het scherm langer!]", + pt = "[Torne a janela mais alta!]", sv = "[G?r f?nstret h?gre!]" }; @@ -1853,6 +2067,7 @@ fi = "Kohdan lis??minen ty?p?yt?valikkoon ep?onnistui.", fr = "Echec de l'installation des ?l?ments du bureau", nl = "Installatie van het bureaublad menu item is mislukt", + pt = "A instala??o do menu no desktop falhou", sv = "Misslycklades med att l?gga till genv?g i programmenyn" }; @@ -1866,7 +2081,8 @@ es = "Fallo al quitar un elemento del men? de escritorio", fi = "Kohdan poistaminen ty?p?yt?valikkosta ep?onnistui.", fr = "Echec de la d?sinstallation des ?l?ments du bureau", - nl = "De?nstallatie van het bureaublad-menu-item is mislukt", + nl = "De?nstallatie van het bureaublad menu item is mislukt", + pt = "A desinstala??o do menu no desktop falhou", sv = "Misslyckades med att ta bort genv?g i programmenyn" }; }; From DONOTREPLY at icculus.org Sun Mar 2 01:14:36 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 2 Mar 2008 01:14:36 -0500 Subject: r536 - trunk/scripts Message-ID: <20080302061436.10356.qmail@icculus.org> Author: icculus Date: 2008-03-02 01:14:36 -0500 (Sun, 02 Mar 2008) New Revision: 536 Modified: trunk/scripts/mojosetup_init.lua Log: More localization debugging: write out untranslated string here, too. Modified: trunk/scripts/mojosetup_init.lua =================================================================== --- trunk/scripts/mojosetup_init.lua 2008-03-02 03:03:25 UTC (rev 535) +++ trunk/scripts/mojosetup_init.lua 2008-03-02 06:14:36 UTC (rev 536) @@ -429,7 +429,7 @@ for val in string.gmatch(v, "%%.") do val = string.sub(val, 2) if string.match(val, "^[^%%0-9]$") ~= nil then - MojoSetup.fatal("BUG: '" .. k .. "' localization ['" .. v .. "'] has invalid escape sequence.") + MojoSetup.fatal("BUG: '" .. k .. "' localization ['" .. v .. "'] has invalid escape sequence for translation of ['" .. str .. "'].") end if val ~= "%" then if tonumber(val) > maxval then From DONOTREPLY at icculus.org Sun Mar 2 01:18:26 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 2 Mar 2008 01:18:26 -0500 Subject: r537 - trunk/scripts Message-ID: <20080302061826.14310.qmail@icculus.org> Author: icculus Date: 2008-03-02 01:18:26 -0500 (Sun, 02 Mar 2008) New Revision: 537 Modified: trunk/scripts/localization.lua Log: Escape sequence fixes in localizations. Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-02 06:14:36 UTC (rev 536) +++ trunk/scripts/localization.lua 2008-03-02 06:18:26 UTC (rev 537) @@ -174,7 +174,7 @@ nb = "%0 [j/N]: ", nds = "%0 [j/N] ", nl = "%0 [j/N]: ", - pt = "% [s/N] ", + pt = "%0 [s/N] ", ru = "%0 [y/N]: ", sv = "%0 [j/N]: ", uk = "%0 [???/??] " @@ -1490,7 +1490,7 @@ nds = "%0 %1", nl = "%0 %1", pt = "%0 %1", - ru = "0% %1", + ru = "%0 %1", sv = "%0 %1" }; From DONOTREPLY at icculus.org Sun Mar 2 01:22:09 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 2 Mar 2008 01:22:09 -0500 Subject: r538 - trunk Message-ID: <20080302062209.19632.qmail@icculus.org> Author: icculus Date: 2008-03-02 01:22:08 -0500 (Sun, 02 Mar 2008) New Revision: 538 Modified: trunk/gui.h trunk/gui_gtkplus2.c trunk/gui_macosx.c trunk/gui_ncurses.c trunk/gui_stdio.c trunk/gui_www.c Log: Cleaned up the entry-> spam in the GUI plugins. Modified: trunk/gui.h =================================================================== --- trunk/gui.h 2008-03-02 06:18:26 UTC (rev 537) +++ trunk/gui.h 2008-03-02 06:22:08 UTC (rev 538) @@ -116,13 +116,6 @@ void MojoGui_deinitGuiPlugin(void); #else -// can't use normal STUBBED in gui plugins, since it references logDebug -// without entry-> ... -#ifndef DOXYGEN_SHOULD_IGNORE_THIS -#undef STUBBED -#define STUBBED(x) STUBBED2(entry->,x) -#endif - __EXPORT__ const MojoGui *MOJOGUI_ENTRY_POINT(int revision, const MojoSetupEntryPoints *e); @@ -191,9 +184,74 @@ return MojoGuiPlugin_##module(rev, e); \ } \ + +// Redefine things that need to go through the plugin entry point interface, +// so plugins calling into the MojoSetup core can use the same code as the +// rest of the app. + +#ifdef _ +#undef _ #endif +#define _(x) entry->translate(x) +#ifdef xmalloc +#undef xmalloc +#endif +#define xmalloc(x) entry->xmalloc(x) +#ifdef xrealloc +#undef xrealloc +#endif +#define xrealloc(x,y) entry->xrealloc(x,y) + +#ifdef xstrdup +#undef xstrdup +#endif +#define xstrdup(x) entry->xstrdup(x) + +#ifdef xstrncpy +#undef xstrncpy +#endif +#define xstrncpy(x,y,z) entry->xstrcpy(x,y,z) + +#ifdef logWarning +#undef logWarning +#endif +#define logWarning entry->logWarning + +#ifdef logError +#undef logError +#endif +#define logError entry->logError + +#ifdef logInfo +#undef logInfo +#endif +#define logInfo entry->logInfo + +#ifdef logDebug +#undef logDebug +#endif +#define logDebug entry->logDebug + +#ifdef format +#undef format +#endif +#define format entry->format + +#ifdef numstr +#undef numstr +#endif +#define numstr(x) entry->numstr(x) + +#ifdef ticks +#undef ticks +#endif +#define ticks() entry->ticks() + +#endif + + /* * make some decisions about which GUI plugins to build... * We list them all here, but some are built, some aren't. Some are DLLs, Modified: trunk/gui_gtkplus2.c =================================================================== --- trunk/gui_gtkplus2.c 2008-03-02 06:18:26 UTC (rev 537) +++ trunk/gui_gtkplus2.c 2008-03-02 06:22:08 UTC (rev 538) @@ -27,14 +27,16 @@ CREATE_MOJOGUI_ENTRY_POINT(gtkplus2) #endif +#undef format #include +#define format entry->format typedef enum { PAGE_INTRO, PAGE_README, PAGE_OPTIONS, - PAGE_DESTINATION, + PAGE_DEST, PAGE_PROGRESS, PAGE_FINAL } WizardPages; @@ -99,8 +101,8 @@ gtk_main_iteration(); if (click_value == CLICK_CANCEL) { - char *title = entry->xstrdup(entry->_("Cancel installation")); - char *text = entry->xstrdup(entry->_("Are you sure you want to cancel installation?")); + char *title = xstrdup(_("Cancel installation")); + char *text = xstrdup(_("Are you sure you want to cancel installation?")); if (!MojoGui_gtkplus2_promptyn(title, text, false)) click_value = CLICK_NONE; free(title); @@ -162,7 +164,7 @@ static void signal_browse_clicked(GtkButton *_button, gpointer data) { GtkWidget *dialog = gtk_file_chooser_dialog_new ( - entry->_("Destination"), + _("Destination"), NULL, GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER, GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, @@ -198,7 +200,7 @@ static void signal_dest_changed(GtkComboBox *combo, gpointer user_data) { // Disable the forward button when the destination entry is blank. - if ((currentpage == PAGE_DESTINATION) && (canfwd)) + if ((currentpage == PAGE_DEST) && (canfwd)) { gchar *str = gtk_combo_box_get_active_text(combo); const gboolean filled_in = ((str != NULL) && (*str != '\0')); @@ -225,7 +227,7 @@ char **tmpargv = args; if (!gtk_init_check(&tmpargc, &tmpargv)) { - entry->logInfo("gtkplus2: gtk_init_check() failed, use another UI."); + logInfo("gtkplus2: gtk_init_check() failed, use another UI."); return false; } // if return true; @@ -292,8 +294,8 @@ static void promptynanButtonCallback(GtkWidget *_msgbox) { - char *always = entry->xstrdup(entry->_("_Always")); - char *never = entry->xstrdup(entry->_("N_ever")); + char *always = xstrdup(_("_Always")); + char *never = xstrdup(_("N_ever")); gtk_dialog_add_buttons(GTK_DIALOG(_msgbox), GTK_STOCK_YES, GTK_RESPONSE_YES, GTK_STOCK_NO, GTK_RESPONSE_NO, @@ -362,7 +364,7 @@ if ((splash->rgba == NULL) || (splashlen == 0)) return NULL; - rgba = (guchar *) entry->xmalloc(splashlen); + rgba = (guchar *) xmalloc(splashlen); memcpy(rgba, splash->rgba, splashlen); pixbuf = gdk_pixbuf_new_from_data(rgba, GDK_COLORSPACE_RGB, TRUE, 8, splash->w, splash->h, splash->w * 4, @@ -462,10 +464,10 @@ gtk_button_box_set_spacing(GTK_BUTTON_BOX (widget), 6); box = widget; - cancel = create_button(box, "gtk-cancel", entry->_("Cancel"), signal_clicked); - back = create_button(box, "gtk-go-back", entry->_("Back"), signal_clicked); - next = create_button(box, "gtk-go-forward", entry->_("Next"), signal_clicked); - finish = create_button(box, "gtk-goto-last", entry->_("Finish"), signal_clicked); + cancel = create_button(box, "gtk-cancel", _("Cancel"), signal_clicked); + back = create_button(box, "gtk-go-back", _("Back"), signal_clicked); + next = create_button(box, "gtk-go-forward", _("Next"), signal_clicked); + finish = create_button(box, "gtk-goto-last", _("Finish"), signal_clicked); gtk_widget_hide(finish); // !!! FIXME: intro page. @@ -503,7 +505,7 @@ gtk_widget_show(box); hbox = gtk_hbox_new (FALSE, 6); - widget = gtk_label_new(entry->_("Folder:")); + widget = gtk_label_new(_("Folder:")); gtk_widget_show(widget); gtk_box_pack_start(GTK_BOX(hbox), widget, FALSE, TRUE, 0); gtk_label_set_justify(GTK_LABEL(widget), GTK_JUSTIFY_CENTER); @@ -515,7 +517,7 @@ gtk_container_add(GTK_CONTAINER(alignment), destination); gtk_box_pack_start(GTK_BOX(hbox), alignment, TRUE, TRUE, 0); browse = create_button(hbox, "gtk-open", - entry->_("B_rowse..."), signal_browse_clicked); + _("B_rowse..."), signal_browse_clicked); gtk_widget_show_all (hbox); gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 0); gtk_container_add(GTK_CONTAINER(notebook), box); @@ -736,10 +738,7 @@ gtk_box_pack_start(GTK_BOX(page), box, FALSE, FALSE, 0); build_options(opts, box, TRUE); - - retval = run_wizard(entry->_("Options"), PAGE_OPTIONS, - can_back, can_fwd, true); - + retval = run_wizard(_("Options"), PAGE_OPTIONS, can_back, can_fwd, true); gtk_widget_destroy(box); return retval; } // MojoGui_gtkplus2_options @@ -758,15 +757,14 @@ gtk_combo_box_prepend_text(combo, recommends[i]); gtk_combo_box_set_active (combo, 0); - *command = run_wizard(entry->_("Destination"), PAGE_DESTINATION, - can_back, can_fwd, true); + *command = run_wizard(_("Destination"),PAGE_DEST,can_back,can_fwd,true); str = gtk_combo_box_get_active_text(combo); // shouldn't ever be empty ("next" should be disabled in that case). assert( (*command <= 0) || ((str != NULL) && (*str != '\0')) ); - retval = entry->xstrdup(str); + retval = xstrdup(str); g_free(str); for (i = recnum-1; i >= 0; i--) @@ -781,10 +779,10 @@ gint rc = 0; // !!! FIXME: Use stock GTK icon for "media"? // !!! FIXME: better text. - const char *title = entry->xstrdup(entry->_("Media change")); + const char *title = xstrdup(_("Media change")); // !!! FIXME: better text. - const char *fmt = entry->xstrdup(entry->_("Please insert '%0'")); - const char *text = entry->format(fmt, medianame); + const char *fmt = xstrdup(_("Please insert '%0'")); + const char *text = format(fmt, medianame); rc = do_msgbox(title, text, GTK_MESSAGE_WARNING, GTK_BUTTONS_OK_CANCEL, GTK_RESPONSE_OK, NULL); free((void *) text); @@ -805,7 +803,7 @@ boolean can_cancel) { static uint32 lastTicks = 0; - const uint32 ticks = entry->ticks(); + const uint32 ticks = ticks(); int rc; if ((ticks - lastTicks) > 200) // just not to spam this... @@ -833,7 +831,7 @@ gtk_widget_hide(next); gtk_widget_show(finish); gtk_label_set_text(GTK_LABEL(finallabel), msg); - run_wizard(entry->_("Finish"), PAGE_FINAL, false, true, false); + run_wizard(_("Finish"), PAGE_FINAL, false, true, false); } // MojoGui_gtkplus2_final // end of gui_gtkplus2.c ... Modified: trunk/gui_macosx.c =================================================================== --- trunk/gui_macosx.c 2008-03-02 06:18:26 UTC (rev 537) +++ trunk/gui_macosx.c 2008-03-02 06:22:08 UTC (rev 538) @@ -133,7 +133,7 @@ static boolean MojoGui_macosx_promptyn(const char *title, const char *text, boolean defval) { - return do_prompt(title, text, defval, entry->_("Yes"), entry->_("No")); + return do_prompt(title, text, defval, _("Yes"), _("No")); } // MojoGui_macosx_promptyn @@ -183,7 +183,7 @@ // !!! FIXME: write me. STUBBED("macosx destination"); *command = 1; - return entry->xstrdup("/Applications"); + return xstrdup("/Applications"); } // MojoGui_macosx_destination @@ -191,8 +191,7 @@ { // !!! FIXME: "please insert '%s' ..." // !!! FIXME: localization. - return do_prompt("Please insert", medianame, true, - entry->_("OK"), entry->_("Cancel")); + return do_prompt("Please insert", medianame, true, _("OK"), _("Cancel")); } // MojoGui_macosx_insertmedia Modified: trunk/gui_ncurses.c =================================================================== --- trunk/gui_ncurses.c 2008-03-02 06:18:26 UTC (rev 537) +++ trunk/gui_ncurses.c 2008-03-02 06:22:08 UTC (rev 538) @@ -111,10 +111,9 @@ if ((ch == '\r') || (ch == '\n')) { count++; - retval = (char **) entry->xrealloc(retval, - count * sizeof (char *)); + retval = (char **) xrealloc(retval, count * sizeof (char *)); text[i] = '\0'; - retval[count-1] = entry->xstrdup(text); + retval[count-1] = xstrdup(text); text += i; *text = ch; if ((ch == '\r') && (text[1] == '\n')) @@ -145,9 +144,9 @@ { char ch = text[pos]; count++; - retval = (char **) entry->xrealloc(retval, count * sizeof (char*)); + retval = (char **) xrealloc(retval, count * sizeof (char*)); text[pos] = '\0'; - retval[count-1] = entry->xstrdup(text); + retval[count-1] = xstrdup(text); text += pos; *text = ch; if (pos > w) @@ -250,9 +249,9 @@ scrh--; // -1 to save the title at the top of the screen... if (scrw < 30) // too thin - msg = entry->xstrdup(entry->_("[Make the window wider!]")); + msg = xstrdup(_("[Make the window wider!]")); else if (scrh < 10) // too short - msg = entry->xstrdup(entry->_("[Make the window taller!]")); + msg = xstrdup(_("[Make the window taller!]")); else break; // we're good, get out. @@ -300,18 +299,18 @@ getmaxyx(stdscr, scrh, scrw); scrh--; // -1 to save the title at the top of the screen... - retval = (MojoBox *) entry->xmalloc(sizeof (MojoBox)); + retval = (MojoBox *) xmalloc(sizeof (MojoBox)); retval->hidecursor = hidecursor; retval->ndelay = ndelay; retval->cursval = ((hidecursor) ? curs_set(0) : ERR); - retval->title = entry->xstrdup(title); - retval->text = entry->xstrdup(text); + retval->title = xstrdup(title); + retval->text = xstrdup(text); retval->buttoncount = bcount; - retval->buttons = (WINDOW **) entry->xmalloc(sizeof (WINDOW*) * bcount); - retval->buttontext = (char **) entry->xmalloc(sizeof (char*) * bcount); + retval->buttons = (WINDOW **) xmalloc(sizeof (WINDOW*) * bcount); + retval->buttontext = (char **) xmalloc(sizeof (char*) * bcount); for (i = 0; i < bcount; i++) - retval->buttontext[i] = entry->xstrdup(buttons[i]); + retval->buttontext[i] = xstrdup(buttons[i]); retval->textlines = splitText(retval->text, &retval->textlinecount, &w); @@ -628,7 +627,7 @@ { if (initscr() == NULL) { - entry->logInfo("ncurses: initscr() failed, use another UI."); + logInfo("ncurses: initscr() failed, use another UI."); return false; } // if @@ -676,7 +675,7 @@ static void MojoGui_ncurses_msgbox(const char *title, const char *text) { - char *localized_ok = entry->xstrdup(entry->_("OK")); + char *localized_ok = xstrdup(_("OK")); MojoBox *mojobox = makeBox(title, text, &localized_ok, 1, false, true); while (upkeepBox(&mojobox, wgetch(mojobox->mainwin)) == -1) {} freeBox(mojobox, true); @@ -687,8 +686,8 @@ static boolean MojoGui_ncurses_promptyn(const char *title, const char *text, boolean defval) { - char *localized_yes = entry->xstrdup(entry->_("Yes")); - char *localized_no = entry->xstrdup(entry->_("No")); + char *localized_yes = xstrdup(_("Yes")); + char *localized_no = xstrdup(_("No")); char *buttons[] = { localized_yes, localized_no }; MojoBox *mojobox = makeBox(title, text, buttons, 2, false, true); int rc = 0; @@ -715,10 +714,10 @@ const char *text, boolean defval) { - char *loc_yes = entry->xstrdup(entry->_("Yes")); - char *loc_no = entry->xstrdup(entry->_("No")); - char *loc_always = entry->xstrdup(entry->_("Always")); - char *loc_never = entry->xstrdup(entry->_("Never")); + char *loc_yes = xstrdup(_("Yes")); + char *loc_no = xstrdup(_("No")); + char *loc_always = xstrdup(_("Always")); + char *loc_never = xstrdup(_("Never")); char *buttons[] = { loc_yes, loc_always, loc_never, loc_no }; MojoBox *mojobox = makeBox(title, text, buttons, 4, false, true); int rc = 0; @@ -757,7 +756,7 @@ const MojoGuiSplash *splash) { free(title); - title = entry->xstrdup(_title); + title = xstrdup(_title); drawBackground(stdscr); wrefresh(stdscr); return true; @@ -788,16 +787,16 @@ if (can_fwd) { fwdbutton = bcount++; - buttons[fwdbutton] = entry->xstrdup(entry->_("Next")); + buttons[fwdbutton] = xstrdup(_("Next")); } // if if (can_back) { backbutton = bcount++; - buttons[backbutton] = entry->xstrdup(entry->_("Back")); + buttons[backbutton] = xstrdup(_("Back")); } // if - buttons[bcount++] = entry->xstrdup(entry->_("Cancel")); + buttons[bcount++] = xstrdup(_("Cancel")); mojobox = makeBox(name, (char *) data, buttons, bcount, false, true); while ((rc = upkeepBox(&mojobox, wgetch(mojobox->mainwin))) == -1) {} @@ -873,8 +872,8 @@ if (opts != NULL) { const char *desc = opts->description; - char *spacebuf = (char *) entry->xmalloc(maxw + 1); - char *buf = (char *) entry->xmalloc(maxw + 1); + char *spacebuf = (char *) xmalloc(maxw + 1); + char *buf = (char *) xmalloc(maxw + 1); int len = 0; int spacing = level * 2; @@ -907,7 +906,7 @@ if (len > 0) { const size_t newlen = strlen(*lines) + strlen(buf) + 2; - *lines = (char*) entry->xrealloc(*lines, newlen); + *lines = (char*) xrealloc(*lines, newlen); strcat(*lines, buf); strcat(*lines, "\n"); // I'm sorry, Joel Spolsky! } // if @@ -946,19 +945,19 @@ if (can_fwd) { fwdbutton = bcount++; - buttons[fwdbutton] = entry->xstrdup(entry->_("Next")); + buttons[fwdbutton] = xstrdup(_("Next")); } // if if (can_back) { backbutton = bcount++; - buttons[backbutton] = entry->xstrdup(entry->_("Back")); + buttons[backbutton] = xstrdup(_("Back")); } // if lasthoverover = togglebutton = bcount++; - buttons[togglebutton] = entry->xstrdup(entry->_("Toggle")); + buttons[togglebutton] = xstrdup(_("Toggle")); cancelbutton = bcount++; - buttons[cancelbutton] = entry->xstrdup(entry->_("Cancel")); + buttons[cancelbutton] = xstrdup(_("Cancel")); do { @@ -968,7 +967,7 @@ int line = 0; int maxw, maxh; getmaxyx(stdscr, maxh, maxw); - char *text = entry->xstrdup(""); + char *text = xstrdup(""); build_options(opts, &line, 0, maxw-6, &text); mojobox = makeBox(title, text, buttons, bcount, false, true); free(text); @@ -1119,7 +1118,7 @@ static int MojoGui_ncurses_options(MojoGuiSetupOptions *opts, boolean can_back, boolean can_fwd) { - char *title = entry->xstrdup(entry->_("Options")); + char *title = xstrdup(_("Options")); int rc = optionBox(title, opts, can_back, can_fwd); free(title); return rc; @@ -1136,7 +1135,7 @@ MojoBox *mojobox = NULL; size_t retvalalloc = 64; size_t retvallen = 0; - char *retval = (char *) entry->xmalloc(retvalalloc); + char *retval = (char *) xmalloc(retvalalloc); char *buttons[3] = { NULL, NULL, NULL }; int drawpos = 0; int drawlen = 0; @@ -1144,20 +1143,20 @@ int backbutton = -1; int cancelbutton = -1; - buttons[bcount++] = entry->xstrdup(entry->_("OK")); + buttons[bcount++] = xstrdup(_("OK")); if (can_back) { backbutton = bcount++; - buttons[backbutton] = entry->xstrdup(entry->_("Back")); + buttons[backbutton] = xstrdup(_("Back")); } // if cancelbutton = bcount++; - buttons[cancelbutton] = entry->xstrdup(entry->_("Cancel")); + buttons[cancelbutton] = xstrdup(_("Cancel")); getmaxyx(stdscr, h, w); w -= 10; - text = (char *) entry->xmalloc(w+4); + text = (char *) xmalloc(w+4); text[0] = '\n'; memset(text+1, ' ', w); text[w+1] = '\n'; @@ -1189,7 +1188,7 @@ if (retvalalloc <= retvallen) { retvalalloc *= 2; - retval = entry->xrealloc(retval, retvalalloc); + retval = xrealloc(retval, retvalalloc); } // if retval[retvallen++] = (char) ch; retval[retvallen] = '\0'; @@ -1206,7 +1205,7 @@ wrefresh(stdscr); getmaxyx(stdscr, h, w); w -= 10; - text = (char *) entry->xrealloc(mojobox->text, w+4); + text = (char *) xrealloc(mojobox->text, w+4); text[0] = '\n'; memset(text+1, ' ', w); text[w+1] = '\n'; @@ -1268,15 +1267,15 @@ int i; for (i = 0; i < recnum; i++) { - opt = (MojoGuiSetupOptions *) entry->xmalloc(sizeof (*opt)); + opt = (MojoGuiSetupOptions *) xmalloc(sizeof (*opt)); opt->description = recommends[i]; opt->size = -1; prev->next_sibling = opt; prev = opt; } // for - choosetxt = entry->xstrdup(entry->_("(I want to specify a path.)")); - opt = (MojoGuiSetupOptions *) entry->xmalloc(sizeof (*opt)); + choosetxt = xstrdup(_("(I want to specify a path.)")); + opt = (MojoGuiSetupOptions *) xmalloc(sizeof (*opt)); opt->description = choosetxt; opt->size = -1; prev->next_sibling = opt; @@ -1288,7 +1287,7 @@ opts.is_group_parent = true; opts.size = -1; - title = entry->xstrdup(entry->_("Destination")); + title = xstrdup(_("Destination")); rc = optionBox(title, &opts, can_back, can_fwd); free(title); @@ -1308,13 +1307,13 @@ return NULL; else if ((chosen >= 0) && (chosen < recnum)) // a specific entry - return entry->xstrdup(recommends[chosen]); + return xstrdup(recommends[chosen]); } // if // either no recommendations or user wants to enter own path... - localized = entry->_("Enter path where files will be installed."); - title = entry->xstrdup(localized); + localized = _("Enter path where files will be installed."); + title = xstrdup(localized); retval = inputBox(title, &rc, (can_back) || (recnum > 0)); free(title); @@ -1337,15 +1336,15 @@ static boolean MojoGui_ncurses_insertmedia(const char *medianame) { - char *fmt = entry->xstrdup(entry->_("Please insert '%0'")); - char *text = entry->format(fmt, medianame); - char *localized_ok = entry->xstrdup(entry->_("OK")); - char *localized_cancel = entry->xstrdup(entry->_("Cancel")); + char *fmt = xstrdup(_("Please insert '%0'")); + char *text = format(fmt, medianame); + char *localized_ok = xstrdup(_("OK")); + char *localized_cancel = xstrdup(_("Cancel")); char *buttons[] = { localized_ok, localized_cancel }; MojoBox *mojobox = NULL; int rc = 0; - mojobox = makeBox(entry->_("Media change"), text, buttons, 2, false, true); + mojobox = makeBox(_("Media change"), text, buttons, 2, false, true); while ((rc = upkeepBox(&mojobox, wgetch(mojobox->mainwin))) == -1) {} freeBox(mojobox, true); @@ -1367,7 +1366,7 @@ int percent, const char *item, boolean can_cancel) { - const uint32 now = entry->ticks(); + const uint32 now = ticks(); boolean rebuild = (progressBox == NULL); int ch = 0; int rc = -1; @@ -1380,8 +1379,8 @@ { free(lastProgressType); free(lastComponent); - lastProgressType = entry->xstrdup(type); - lastComponent = entry->xstrdup(component); + lastProgressType = xstrdup(type); + lastComponent = xstrdup(component); lastCanCancel = can_cancel; rebuild = true; } // if @@ -1390,18 +1389,17 @@ { int w, h; char *text = NULL; - char *localized_cancel = - (can_cancel) ? entry->xstrdup(entry->_("Cancel")) : NULL; + char *localized_cancel = (can_cancel) ? xstrdup(_("Cancel")) : NULL; char *buttons[] = { localized_cancel }; const int buttoncount = (can_cancel) ? 1 : 0; char *spacebuf = NULL; getmaxyx(stdscr, h, w); w -= 10; - text = (char *) entry->xmalloc((w * 3) + 16); + text = (char *) xmalloc((w * 3) + 16); if (snprintf(text, w, "%s", component) > (w-4)) strcpy((text+w)-4, "..."); // !!! FIXME: Unicode problem. strcat(text, "\n\n"); - spacebuf = (char *) entry->xmalloc(w+1); + spacebuf = (char *) xmalloc(w+1); memset(spacebuf, ' ', w); // xmalloc provides null termination. strcat(text, spacebuf); free(spacebuf); @@ -1422,7 +1420,7 @@ int w, h; getmaxyx(win, h, w); w -= 2; - buf = (char *) entry->xmalloc(w+1); + buf = (char *) xmalloc(w+1); if (percent < 0) { @@ -1483,7 +1481,7 @@ static void MojoGui_ncurses_final(const char *msg) { - char *title = entry->xstrdup(entry->_("Finish")); + char *title = xstrdup(_("Finish")); MojoGui_ncurses_msgbox(title, msg); free(title); } // MojoGui_ncurses_final Modified: trunk/gui_stdio.c =================================================================== --- trunk/gui_stdio.c 2008-03-02 06:18:26 UTC (rev 537) +++ trunk/gui_stdio.c 2008-03-02 06:22:08 UTC (rev 538) @@ -46,15 +46,15 @@ // !!! FIXME: abort in read_stdin() if i/o fails? int retval = 0; - char *backstr = (back) ? entry->xstrdup(entry->_("back")) : NULL; + char *backstr = (back) ? xstrdup(_("back")) : NULL; if (prompt != NULL) printf("%s\n", prompt); if (back) { - char *fmt = entry->xstrdup(entry->_("Type '%0' to go back.")); - char *msg = entry->format(fmt, backstr); + char *fmt = xstrdup(_("Type '%0' to go back.")); + char *msg = format(fmt, backstr); printf("%s\n", msg); free(msg); free(fmt); @@ -62,11 +62,11 @@ if (fwd) { - printf(entry->_("Press enter to continue.")); + printf(_("Press enter to continue.")); printf("\n"); } // if - printf(entry->_("> ")); + printf(_("> ")); fflush(stdout); if ((retval = read_stdin(buf, len)) >= 0) @@ -113,8 +113,8 @@ static void MojoGui_stdio_msgbox(const char *title, const char *text) { char buf[128]; - char *fmt = entry->xstrdup(entry->_("NOTICE: %0\n[hit enter]")); - char *msg = entry->format(fmt, text); + char *fmt = xstrdup(_("NOTICE: %0\n[hit enter]")); + char *msg = format(fmt, text); printf("%s\n", msg); free(msg); free(fmt); @@ -129,14 +129,11 @@ boolean retval = false; if (!feof(stdin)) { - const char *_fmt = ((defval) ? - entry->_("%0 [Y/n]: ") : - entry->_("%0 [y/N]: ")); - - char *fmt = entry->xstrdup(_fmt); - char *msg = entry->format(fmt, text); - char *localized_no = entry->xstrdup(entry->_("N")); - char *localized_yes = entry->xstrdup(entry->_("Y")); + const char *_fmt = ((defval) ? _("%0 [Y/n]: ") : _("%0 [y/N]: ")); + char *fmt = xstrdup(_fmt); + char *msg = format(fmt, text); + char *localized_no = xstrdup(_("N")); + char *localized_yes = xstrdup(_("Y")); boolean getout = false; char buf[128]; @@ -177,12 +174,12 @@ MojoGuiYNAN retval = MOJOGUI_NO; if (!feof(stdin)) { - char *fmt = entry->xstrdup(_("%0\n[y/n/Always/Never]: ")); - char *msg = entry->format(fmt, txt); - char *localized_no = entry->xstrdup(entry->_("N")); - char *localized_yes = entry->xstrdup(entry->_("Y")); - char *localized_always = entry->xstrdup(entry->_("Always")); - char *localized_never = entry->xstrdup(entry->_("Never")); + char *fmt = xstrdup(_("%0\n[y/n/Always/Never]: ")); + char *msg = format(fmt, txt); + char *localized_no = xstrdup(_("N")); + char *localized_yes = xstrdup(_("Y")); + char *localized_always = xstrdup(_("Always")); + char *localized_never = xstrdup(_("Never")); boolean getout = false; char buf[128]; @@ -242,7 +239,7 @@ // !!! FIXME: this is not really Unicode friendly... static char **splitText(const char *_text, int *_count, int *_w) { - char *ptr = entry->xstrdup(_text); + char *ptr = xstrdup(_text); char *text = ptr; int i; int scrw = 80; @@ -262,10 +259,9 @@ if ((ch == '\r') || (ch == '\n')) { count++; - retval = (char **) entry->xrealloc(retval, - count * sizeof (char *)); + retval = (char **) xrealloc(retval, count * sizeof (char *)); text[i] = '\0'; - retval[count-1] = entry->xstrdup(text); + retval[count-1] = xstrdup(text); text += i; *text = ch; if ((ch == '\r') && (text[1] == '\n')) @@ -296,9 +292,9 @@ { char ch = text[pos]; count++; - retval = (char **) entry->xrealloc(retval, count * sizeof (char*)); + retval = (char **) xrealloc(retval, count * sizeof (char*)); text[pos] = '\0'; - retval[count-1] = entry->xstrdup(text); + retval[count-1] = xstrdup(text); text += pos; *text = ch; if (pos > w) @@ -316,7 +312,7 @@ static void dumb_pager(const char *name, const char *data, size_t datalen) { const int MAX_PAGE_LINES = 21; - char *fmt = entry->xstrdup(entry->_("(%0-%1 of %2 lines, see more?)")); + char *fmt = xstrdup(_("(%0-%1 of %2 lines, see more?)")); int i = 0; int w = 0; int linecount = 0; @@ -343,9 +339,8 @@ { char *msg = NULL; printf("\n"); - msg = entry->format(fmt, entry->numstr((printed-i)+1), - entry->numstr(printed), - entry->numstr(linecount)); + msg = format(fmt, numstr((printed-i)+1), + numstr(printed), numstr(linecount)); getout = !MojoGui_stdio_promptyn("", msg, true); free(msg); printf("\n"); @@ -485,8 +480,8 @@ static int MojoGui_stdio_options(MojoGuiSetupOptions *opts, boolean can_back, boolean can_fwd) { - const char *inst_opts_str = entry->xstrdup(entry->_("Options")); - const char *prompt = entry->xstrdup(entry->_("Choose number to change.")); + const char *inst_opts_str = xstrdup(_("Options")); + const char *prompt = xstrdup(_("Choose number to change.")); int retval = -1; boolean getout = false; char buf[128]; @@ -532,7 +527,7 @@ int *command, boolean can_back, boolean can_fwd) { - const char *instdeststr = entry->xstrdup(entry->_("Destination")); + const char *instdeststr = xstrdup(_("Destination")); const char *prompt = NULL; char *retval = NULL; boolean getout = false; @@ -543,9 +538,9 @@ *command = -1; if (recnum > 0) - prompt = entry->xstrdup(entry->_("Choose install destination by number (hit enter for #1), or enter your own.")); + prompt = xstrdup(_("Choose install destination by number (hit enter for #1), or enter your own.")); else - prompt = entry->xstrdup(entry->_("Enter path where files will be installed.")); + prompt = xstrdup(_("Enter path where files will be installed.")); while (!getout) { @@ -559,7 +554,7 @@ else if ((len == 0) && (recnum > 0)) // default to first in list. { - retval = entry->xstrdup(recommends[0]); + retval = xstrdup(recommends[0]); *command = 1; getout = true; } // else if @@ -570,9 +565,9 @@ int target = (int) strtol(buf, &endptr, 10); // complete string was a valid number? if ((*endptr == '\0') && (target > 0) && (target <= recnum)) - retval = entry->xstrdup(recommends[target-1]); + retval = xstrdup(recommends[target-1]); else - retval = entry->xstrdup(buf); + retval = xstrdup(buf); *command = 1; getout = true; @@ -589,9 +584,9 @@ static boolean MojoGui_stdio_insertmedia(const char *medianame) { char buf[32]; - char *fmt = entry->xstrdup(entry->_("Please insert '%0'")); - char *msg = entry->format(fmt, medianame); - printf("%s\n", entry->_("Media change")); + char *fmt = xstrdup(_("Please insert '%0'")); + char *msg = format(fmt, medianame); + printf("%s\n", _("Media change")); printf("%s\n", msg); free(msg); free(fmt); @@ -610,7 +605,7 @@ int percent, const char *item, boolean can_cancel) { - const uint32 now = entry->ticks(); + const uint32 now = ticks(); if ( (lastComponent == NULL) || (strcmp(lastComponent, component) != 0) || @@ -619,8 +614,8 @@ { free(lastProgressType); free(lastComponent); - lastProgressType = entry->xstrdup(type); - lastComponent = entry->xstrdup(component); + lastProgressType = xstrdup(type); + lastComponent = xstrdup(component); printf("%s\n%s\n", type, component); } // if @@ -636,8 +631,8 @@ printf("%s\n", item); else { - fmt = entry->xstrdup(entry->_("%0 (total progress: %1%%)")); - msg = entry->format(fmt, item, entry->numstr(percent)); + fmt = xstrdup(_("%0 (total progress: %1%%)")); + msg = format(fmt, item, numstr(percent)); printf("%s\n", msg); free(msg); free(fmt); Modified: trunk/gui_www.c =================================================================== --- trunk/gui_www.c 2008-03-02 06:18:26 UTC (rev 537) +++ trunk/gui_www.c 2008-03-02 06:22:08 UTC (rev 538) @@ -53,19 +53,18 @@ int rc = WSAStartup(MAKEWORD(1, 1), &data); if (rc != 0) { - entry->logError("www: WSAStartup() failed: %0", sockStrErrVal(rc)); + logError("www: WSAStartup() failed: %0", sockStrErrVal(rc)); return false; } // if - entry->logInfo("www: WinSock initialized (want %0.%1, got %2.%3).", - entry->numstr((int) (LOBYTE(data.wVersion))), - entry->numstr((int) (HIBYTE(data.wVersion))), - entry->numstr((int) (LOBYTE(data.wHighVersion))), - entry->numstr((int) (HIBYTE(data.wHighVersion)))); - entry->logInfo("www: WinSock description: %0", data.szDescription); - entry->logInfo("www: WinSock system status: %0", data.szSystemStatus); - entry->logInfo("www: WinSock max sockets: %0", - entry->numstr((int) data.iMaxSockets)); + logInfo("www: WinSock initialized (want %0.%1, got %2.%3).", + numstr((int) (LOBYTE(data.wVersion))), + numstr((int) (HIBYTE(data.wVersion))), + numstr((int) (LOBYTE(data.wHighVersion))), + numstr((int) (HIBYTE(data.wHighVersion)))); + logInfo("www: WinSock description: %0", data.szDescription); + logInfo("www: WinSock system status: %0", data.szSystemStatus); + logInfo("www: WinSock max sockets: %0", numstr((int) data.iMaxSockets)); return true; } // initSocketSupport @@ -155,12 +154,12 @@ { if ((key != NULL) && (*key != '\0')) { - WebRequest *req = (WebRequest *) entry->xmalloc(sizeof (WebRequest)); - req->key = entry->xstrdup(key); - req->value = entry->xstrdup(val); + WebRequest *req = (WebRequest *) xmalloc(sizeof (WebRequest)); + req->key = xstrdup(key); + req->value = xstrdup(val); req->next = webRequest; webRequest = req; - entry->logDebug("www: request element '%0' = '%1'", key, val); + logDebug("www: request element '%0' = '%1'", key, val); } // if } // addWebRequest @@ -218,7 +217,7 @@ const size_t add = (*alloc + (bw + 1)); // double plus the new len. *alloc += add; avail += add; - *ptr = entry->xrealloc(*ptr, *alloc); + *ptr = xrealloc(*ptr, *alloc); va_start(ap, fmt); bw = vsnprintf(*ptr + *len, avail, fmt, ap); va_end(ap); @@ -310,7 +309,7 @@ const int err = sockErrno(); if (!intrError(err)) { - entry->logError("www: send() failed: %0", sockStrErrVal(err)); + logError("www: send() failed: %0", sockStrErrVal(err)); break; } // if } // else @@ -323,7 +322,7 @@ static void respond404(SOCKET *s) { - char *text = htmlescape(entry->_("Not Found")); + char *text = htmlescape(_("Not Found")); char *str = NULL; size_t len = 0, alloc = 0; char *html = NULL; @@ -458,7 +457,7 @@ assert(!blocking); else { - entry->logError("www: accept() failed: %0", sockStrErrVal(err)); + logError("www: accept() failed: %0", sockStrErrVal(err)); closesocket(listenSocket); // make all future i/o fail too. listenSocket = INVALID_SOCKET; } // else @@ -476,7 +475,7 @@ const int err = sockErrno(); if (!intrError(err)) // just try again on interrupt. { - entry->logError("www: recv() failed: %0", sockStrErrVal(err)); + logError("www: recv() failed: %0", sockStrErrVal(err)); FREE_AND_NULL(reqstr); closesocket(s); s = INVALID_SOCKET; @@ -509,7 +508,7 @@ } // if // reqstr is the GET (or whatever) request, ptr is the rest. - get = entry->xstrdup(reqstr); + get = xstrdup(reqstr); if (ptr == NULL) { *ptr = '\0'; @@ -521,15 +520,15 @@ memmove(reqstr, ptr, len+1); } // else - entry->logDebug("www: request '%0'", get); + logDebug("www: request '%0'", get); // okay, now (get) and (reqptr) are separate strings. // These parse*() functions update (webRequest). if ( (parseGet(get)) && (parseRequest(reqstr)) ) - entry->logDebug("www: accepted request"); + logDebug("www: accepted request"); else { - entry->logError("www: rejected bogus request"); + logError("www: rejected bogus request"); freeWebRequest(); respond404(&s); } // else @@ -556,7 +555,7 @@ s = socket(PF_INET, SOCK_STREAM, protocol); if (s == INVALID_SOCKET) - entry->logInfo("www: socket() failed ('%0')", sockStrError()); + logInfo("www: socket() failed ('%0')", sockStrError()); else { boolean success = false; @@ -574,13 +573,13 @@ #endif if (bind(s, (struct sockaddr *) &addr, sizeof (addr)) == SOCKET_ERROR) - entry->logError("www: bind() failed ('%0')", sockStrError()); + logError("www: bind() failed ('%0')", sockStrError()); else if (listen(s, 5) == SOCKET_ERROR) - entry->logError("www: listen() failed ('%0')", sockStrError()); + logError("www: listen() failed ('%0')", sockStrError()); else { - entry->logInfo("www: socket created on port %0", - entry->numstr(portnum)); + logInfo("www: socket created on port %0", + numstr(portnum)); success = true; } // else @@ -603,14 +602,14 @@ if (!initSocketSupport()) { - entry->logInfo("www: socket subsystem init failed, use another UI."); + logInfo("www: socket subsystem init failed, use another UI."); return false; } // if listenSocket = create_listen_socket(portnum); if (listenSocket < 0) { - entry->logInfo("www: no listen socket, use another UI."); + logInfo("www: no listen socket, use another UI."); return false; } // if @@ -624,8 +623,8 @@ static void MojoGui_www_deinit(void) { // Catch any waiting browser connections...and tell them to buzz off! :) - char *donetitle = htmlescape(entry->_("Shutting down...")); - char *donetext = htmlescape(entry->_("You can close this browser now.")); + char *donetitle = htmlescape(_("Shutting down...")); + char *donetext = htmlescape(_("You can close this browser now.")); size_t len = 0, alloc = 0; char *html = NULL; @@ -733,7 +732,7 @@ static void MojoGui_www_msgbox(const char *title, const char *text) { const char *buttons[] = { "ok" }; - const char *locButtons[] = { htmlescape(entry->_("OK")) }; + const char *locButtons[] = { htmlescape(_("OK")) }; char *htmltext = htmlescape(text); doPromptPage(title, htmltext, true, "msgbox", buttons, locButtons, 1); free(htmltext); @@ -750,10 +749,8 @@ int i, rc; char *htmltext = htmlescape(text); const char *buttons[] = { "no", "yes" }; - const char *locButtons[] = { - htmlescape(entry->_("No")), - htmlescape(entry->_("Yes")), - }; + const char *locButtons[] = { htmlescape(_("No")), htmlescape(_("Yes")) }; + assert(STATICARRAYLEN(buttons) == STATICARRAYLEN(locButtons)); rc = doPromptPage(title, htmltext, true, "promptyn", buttons, locButtons, @@ -777,10 +774,10 @@ char *htmltext = htmlescape(text); const char *buttons[] = { "no", "yes", "always", "never" }; const char *locButtons[] = { - htmlescape(entry->_("No")), - htmlescape(entry->_("Yes")), - htmlescape(entry->_("Always")), - htmlescape(entry->_("Never")), + htmlescape(_("No")), + htmlescape(_("Yes")), + htmlescape(_("Always")), + htmlescape(_("Never")), }; assert(STATICARRAYLEN(buttons) == STATICARRAYLEN(locButtons)); @@ -826,20 +823,20 @@ cancelbutton = bcount++; buttons[cancelbutton] = "cancel"; - locButtons[cancelbutton] = entry->xstrdup(entry->_("Cancel")); + locButtons[cancelbutton] = xstrdup(_("Cancel")); if (can_back) { backbutton = bcount++; buttons[backbutton] = "back"; - locButtons[backbutton] = entry->xstrdup(entry->_("Back")); + locButtons[backbutton] = xstrdup(_("Back")); } // if if (can_fwd) { fwdbutton = bcount++; buttons[fwdbutton] = "next"; - locButtons[fwdbutton] = entry->xstrdup(entry->_("Next")); + locButtons[fwdbutton] = xstrdup(_("Next")); } // if strAdd(&text, &len, &alloc, "
\n%s\n
", htmldata); @@ -873,7 +870,7 @@ boolean can_fwd) { char *retval = NULL; - char *title = entry->xstrdup(entry->_("Destination")); + char *title = xstrdup(_("Destination")); char *html = NULL; size_t len = 0, alloc = 0; boolean checked = true; @@ -889,20 +886,20 @@ cancelbutton = bcount++; buttons[cancelbutton] = "cancel"; - locButtons[cancelbutton] = entry->xstrdup(entry->_("Cancel")); + locButtons[cancelbutton] = xstrdup(_("Cancel")); if (can_back) { backbutton = bcount++; buttons[backbutton] = "back"; - locButtons[backbutton] = entry->xstrdup(entry->_("Back")); + locButtons[backbutton] = xstrdup(_("Back")); } // if if (can_fwd) { fwdbutton = bcount++; buttons[fwdbutton] = "next"; - locButtons[fwdbutton] = entry->xstrdup(entry->_("Next")); + locButtons[fwdbutton] = xstrdup(_("Next")); } // if strAdd(&html, &len, &alloc, @@ -969,7 +966,7 @@ *command = 0; // !!! FIXME: maybe loop with doPromptPage again. else { - retval = entry->xstrdup(dest); + retval = xstrdup(dest); *command = 1; } // else } // else @@ -986,14 +983,11 @@ int i, rc; const char *buttons[] = { "cancel", "ok" }; - const char *locButtons[] = { - htmlescape(entry->_("Cancel")), - htmlescape(entry->_("OK")), - }; + const char *locButtons[] = { htmlescape(_("Cancel")), htmlescape(_("OK")) }; - char *title = entry->xstrdup(entry->_("Media change")); - char *fmt = entry->xstrdup(entry->_("Please insert '%0'")); - char *msg = entry->format(fmt, medianame); + char *title = xstrdup(_("Media change")); + char *fmt = xstrdup(_("Please insert '%0'")); + char *msg = format(fmt, medianame); strAdd(&text, &len, &alloc, msg); free(msg); free(fmt); @@ -1031,7 +1025,7 @@ static void MojoGui_www_final(const char *msg) { - MojoGui_www_msgbox(entry->_("Finish"), msg); + MojoGui_www_msgbox(_("Finish"), msg); } // MojoGui_www_final // end of gui_www.c ... From DONOTREPLY at icculus.org Sun Mar 2 01:37:37 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 2 Mar 2008 01:37:37 -0500 Subject: r539 - trunk Message-ID: <20080302063737.4098.qmail@icculus.org> Author: icculus Date: 2008-03-02 01:37:37 -0500 (Sun, 02 Mar 2008) New Revision: 539 Modified: trunk/gui.h trunk/mojosetup.c trunk/platform_windows.c trunk/universal.h Log: Moved utf8codepoint() out of platform_windows.c and into the core, with hooks for the GUI plugins, so I can clean up the unicode FIXMEs in the stdio and ncurses targets. Modified: trunk/gui.h =================================================================== --- trunk/gui.h 2008-03-02 06:22:08 UTC (rev 538) +++ trunk/gui.h 2008-03-02 06:37:37 UTC (rev 539) @@ -249,9 +249,14 @@ #endif #define ticks() entry->ticks() +#ifdef utf8codepoint +#undef utf8codepoint #endif +#define utf8codepoint(x) entry->utf8codepoint(x) +#endif + /* * make some decisions about which GUI plugins to build... * We list them all here, but some are built, some aren't. Some are DLLs, Modified: trunk/mojosetup.c =================================================================== --- trunk/mojosetup.c 2008-03-02 06:22:08 UTC (rev 538) +++ trunk/mojosetup.c 2008-03-02 06:37:37 UTC (rev 539) @@ -39,6 +39,7 @@ format, numstr, MojoPlatform_ticks, + utf8codepoint, }; int GArgc = 0; @@ -629,6 +630,153 @@ } // xstrncpy +uint32 utf8codepoint(const char **_str) +{ + const char *str = *_str; + uint32 retval = 0; + uint32 octet = (uint32) ((uint8) *str); + uint32 octet2, octet3, octet4; + + if (octet == 0) // null terminator, end of string. + return 0; + + else if (octet < 128) // one octet char: 0 to 127 + { + (*_str)++; // skip to next possible start of codepoint. + return octet; + } // else if + + else if ((octet > 127) && (octet < 192)) // bad (starts with 10xxxxxx). + { + // Apparently each of these is supposed to be flagged as a bogus + // char, instead of just resyncing to the next valid codepoint. + (*_str)++; // skip to next possible start of codepoint. + return UNICODE_BOGUS_CHAR_VALUE; + } // else if + + else if (octet < 224) // two octets + { + octet -= (128+64); + octet2 = (uint32) ((uint8) *(++str)); + if ((octet2 & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + *_str += 2; // skip to next possible start of codepoint. + retval = ((octet << 6) | (octet2 - 128)); + if ((retval >= 0x80) && (retval <= 0x7FF)) + return retval; + } // else if + + else if (octet < 240) // three octets + { + octet -= (128+64+32); + octet2 = (uint32) ((uint8) *(++str)); + if ((octet2 & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + octet3 = (uint32) ((uint8) *(++str)); + if ((octet3 & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + *_str += 3; // skip to next possible start of codepoint. + retval = ( ((octet << 12)) | ((octet2-128) << 6) | ((octet3-128)) ); + + // There are seven "UTF-16 surrogates" that are illegal in UTF-8. + switch (retval) + { + case 0xD800: + case 0xDB7F: + case 0xDB80: + case 0xDBFF: + case 0xDC00: + case 0xDF80: + case 0xDFFF: + return UNICODE_BOGUS_CHAR_VALUE; + } // switch + + // 0xFFFE and 0xFFFF are illegal, too, so we check them at the edge. + if ((retval >= 0x800) && (retval <= 0xFFFD)) + return retval; + } // else if + + else if (octet < 248) // four octets + { + octet -= (128+64+32+16); + octet2 = (uint32) ((uint8) *(++str)); + if ((octet2 & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + octet3 = (uint32) ((uint8) *(++str)); + if ((octet3 & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + octet4 = (uint32) ((uint8) *(++str)); + if ((octet4 & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + *_str += 4; // skip to next possible start of codepoint. + retval = ( ((octet << 18)) | ((octet2 - 128) << 12) | + ((octet3 - 128) << 6) | ((octet4 - 128)) ); + if ((retval >= 0x10000) && (retval <= 0x10FFFF)) + return retval; + } // else if + + // Five and six octet sequences became illegal in rfc3629. + // We throw the codepoint away, but parse them to make sure we move + // ahead the right number of bytes and don't overflow the buffer. + + else if (octet < 252) // five octets + { + octet = (uint32) ((uint8) *(++str)); + if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + octet = (uint32) ((uint8) *(++str)); + if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + octet = (uint32) ((uint8) *(++str)); + if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + octet = (uint32) ((uint8) *(++str)); + if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + *_str += 5; // skip to next possible start of codepoint. + return UNICODE_BOGUS_CHAR_VALUE; + } // else if + + else // six octets + { + octet = (uint32) ((uint8) *(++str)); + if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + octet = (uint32) ((uint8) *(++str)); + if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + octet = (uint32) ((uint8) *(++str)); + if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + octet = (uint32) ((uint8) *(++str)); + if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + octet = (uint32) ((uint8) *(++str)); + if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? + return UNICODE_BOGUS_CHAR_VALUE; + + *_str += 6; // skip to next possible start of codepoint. + return UNICODE_BOGUS_CHAR_VALUE; + } // else if + + return UNICODE_BOGUS_CHAR_VALUE; +} // utf8codepoint + + static void outOfMemory(void) { // Try to translate "out of memory", but not if it causes recursion. Modified: trunk/platform_windows.c =================================================================== --- trunk/platform_windows.c 2008-03-02 06:22:08 UTC (rev 538) +++ trunk/platform_windows.c 2008-03-02 06:37:37 UTC (rev 539) @@ -71,155 +71,8 @@ #endif -#define UNICODE_BOGUS_CHAR_VALUE 0xFFFFFFFF -#define UNICODE_BOGUS_CHAR_CODEPOINT '?' +// these utf-8 functions may move to mojosetup.c some day... -static uint32 utf8codepoint(const char **_str) -{ - const char *str = *_str; - uint32 retval = 0; - uint32 octet = (uint32) ((uint8) *str); - uint32 octet2, octet3, octet4; - - if (octet == 0) // null terminator, end of string. - return 0; - - else if (octet < 128) // one octet char: 0 to 127 - { - (*_str)++; // skip to next possible start of codepoint. - return octet; - } // else if - - else if ((octet > 127) && (octet < 192)) // bad (starts with 10xxxxxx). - { - // Apparently each of these is supposed to be flagged as a bogus - // char, instead of just resyncing to the next valid codepoint. - (*_str)++; // skip to next possible start of codepoint. - return UNICODE_BOGUS_CHAR_VALUE; - } // else if - - else if (octet < 224) // two octets - { - octet -= (128+64); - octet2 = (uint32) ((uint8) *(++str)); - if ((octet2 & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - *_str += 2; // skip to next possible start of codepoint. - retval = ((octet << 6) | (octet2 - 128)); - if ((retval >= 0x80) && (retval <= 0x7FF)) - return retval; - } // else if - - else if (octet < 240) // three octets - { - octet -= (128+64+32); - octet2 = (uint32) ((uint8) *(++str)); - if ((octet2 & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - octet3 = (uint32) ((uint8) *(++str)); - if ((octet3 & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - *_str += 3; // skip to next possible start of codepoint. - retval = ( ((octet << 12)) | ((octet2-128) << 6) | ((octet3-128)) ); - - // There are seven "UTF-16 surrogates" that are illegal in UTF-8. - switch (retval) - { - case 0xD800: - case 0xDB7F: - case 0xDB80: - case 0xDBFF: - case 0xDC00: - case 0xDF80: - case 0xDFFF: - return UNICODE_BOGUS_CHAR_VALUE; - } // switch - - // 0xFFFE and 0xFFFF are illegal, too, so we check them at the edge. - if ((retval >= 0x800) && (retval <= 0xFFFD)) - return retval; - } // else if - - else if (octet < 248) // four octets - { - octet -= (128+64+32+16); - octet2 = (uint32) ((uint8) *(++str)); - if ((octet2 & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - octet3 = (uint32) ((uint8) *(++str)); - if ((octet3 & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - octet4 = (uint32) ((uint8) *(++str)); - if ((octet4 & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - *_str += 4; // skip to next possible start of codepoint. - retval = ( ((octet << 18)) | ((octet2 - 128) << 12) | - ((octet3 - 128) << 6) | ((octet4 - 128)) ); - if ((retval >= 0x10000) && (retval <= 0x10FFFF)) - return retval; - } // else if - - // Five and six octet sequences became illegal in rfc3629. - // We throw the codepoint away, but parse them to make sure we move - // ahead the right number of bytes and don't overflow the buffer. - - else if (octet < 252) // five octets - { - octet = (uint32) ((uint8) *(++str)); - if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - octet = (uint32) ((uint8) *(++str)); - if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - octet = (uint32) ((uint8) *(++str)); - if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - octet = (uint32) ((uint8) *(++str)); - if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - *_str += 5; // skip to next possible start of codepoint. - return UNICODE_BOGUS_CHAR_VALUE; - } // else if - - else // six octets - { - octet = (uint32) ((uint8) *(++str)); - if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - octet = (uint32) ((uint8) *(++str)); - if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - octet = (uint32) ((uint8) *(++str)); - if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - octet = (uint32) ((uint8) *(++str)); - if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - octet = (uint32) ((uint8) *(++str)); - if ((octet & (128+64)) != 128) // Format isn't 10xxxxxx? - return UNICODE_BOGUS_CHAR_VALUE; - - *_str += 6; // skip to next possible start of codepoint. - return UNICODE_BOGUS_CHAR_VALUE; - } // else if - - return UNICODE_BOGUS_CHAR_VALUE; -} // utf8codepoint - void utf8ToUcs2(const char *src, uint16 *dst, uint64 len) { len -= sizeof (uint16); // save room for null char. Modified: trunk/universal.h =================================================================== --- trunk/universal.h 2008-03-02 06:22:08 UTC (rev 538) +++ trunk/universal.h 2008-03-02 06:37:37 UTC (rev 539) @@ -96,6 +96,13 @@ // Static, non-stack memory for scratch work...not thread safe! extern uint8 scratchbuf_128k[128 * 1024]; + +#define UNICODE_BOGUS_CHAR_VALUE 0xFFFFFFFF +#define UNICODE_BOGUS_CHAR_CODEPOINT '?' +// !!! FIXME: document me! +uint32 utf8codepoint(const char **_str); + + // Format a string, sort of (but not exactly!) like sprintf(). // The only formatters accepted are %0 through %9 (and %%), which do not // have to appear in order in the string, but match the varargs passed to the @@ -347,6 +354,7 @@ char *(*format)(const char *fmt, ...); const char *(*numstr)(int val); uint32 (*ticks)(void); + uint32 (*utf8codepoint)(const char **_str); } MojoSetupEntryPoints; extern MojoSetupEntryPoints GEntryPoints; From DONOTREPLY at icculus.org Mon Mar 3 02:01:54 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 3 Mar 2008 02:01:54 -0500 Subject: r540 - trunk Message-ID: <20080303070154.2465.qmail@icculus.org> Author: icculus Date: 2008-03-03 02:01:54 -0500 (Mon, 03 Mar 2008) New Revision: 540 Modified: trunk/CMakeLists.txt trunk/gui_ncurses.c trunk/universal.h Log: Fixed Unicode output in gui_ncurses.c, so ./mojosetup --locale=ru doesn't dump ASCII crapola to your terminal anymore. Modified: trunk/CMakeLists.txt =================================================================== --- trunk/CMakeLists.txt 2008-03-02 06:37:37 UTC (rev 539) +++ trunk/CMakeLists.txt 2008-03-03 07:01:54 UTC (rev 540) @@ -358,10 +358,10 @@ IF(MOJOSETUP_GUI_NCURSES_STATIC) ADD_DEFINITIONS(-DGUI_STATIC_LINK_NCURSES=1) SET(OPTIONAL_SRCS ${OPTIONAL_SRCS} gui_ncurses.c) - SET(OPTIONAL_LIBS ${OPTIONAL_LIBS} -lncurses) # !!! FIXME + SET(OPTIONAL_LIBS ${OPTIONAL_LIBS} -lncursesw) # !!! FIXME ELSE(MOJOSETUP_GUI_NCURSES_STATIC) MOJOSETUP_ADD_LIBRARY(mojosetupgui_ncurses gui_ncurses.c) - TARGET_LINK_LIBRARIES(mojosetupgui_ncurses "-lncurses") # !!! FIXME + TARGET_LINK_LIBRARIES(mojosetupgui_ncurses "-lncursesw") # !!! FIXME ENDIF(MOJOSETUP_GUI_NCURSES_STATIC) ENDIF(MOJOSETUP_GUI_NCURSES) ENDIF(NOT MACOSX) Modified: trunk/gui_ncurses.c =================================================================== --- trunk/gui_ncurses.c 2008-03-02 06:37:37 UTC (rev 539) +++ trunk/gui_ncurses.c 2008-03-03 07:01:54 UTC (rev 540) @@ -21,7 +21,8 @@ #include #include -#include +#include +#include // This was built to look roughly like dialog(1), but it's not nearly as // robust. Also, I didn't use any of dialog's code, as it is GPL/LGPL, @@ -37,6 +38,14 @@ // Pradeep Padala's ncurses HOWTO was very helpful in teaching me curses // quickly: http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/index.html +// !!! FIXME: this should all be UTF-8 and Unicode clean with ncursesw, but +// !!! FIXME: it relies on the terminal accepting UTF-8 output (we don't +// !!! FIXME: attempt to convert) and assumes all characters fit in one +// !!! FIXME: column, which they don't necessarily for some Asian languages, +// !!! FIXME: etc. I'm not sure how to properly figure out column width, if +// !!! FIXME: it's possible at all, but for that, you should probably +// !!! FIXME: go to a proper GUI plugin like GTK+ anyhow. + typedef enum { MOJOCOLOR_BACKGROUND=1, @@ -53,11 +62,13 @@ } MojoColor; -static int strcells(const char *str) +static int strchars(const char *str) { - // !!! FIXME: how to know how many _cells_ UTF-8 strings take in cursesw? - return (int) strlen(str); -} // strcells + int retval = 0; + while (utf8codepoint(&str)) + retval++; + return retval; +} // strchars typedef struct @@ -89,7 +100,7 @@ // !!! FIXME: cut and pasted in gui_stdio.c, too...fix bugs in both copies! // !!! FIXME: (or move this somewhere else...) -// !!! FIXME: this is not really Unicode friendly... +// !!! FIXME: this handles Unicode, but assumes each glyph takes one column. static char **splitText(char *text, int *_count, int *_w) { int i; @@ -102,53 +113,63 @@ *_count = *_w = 0; while (*text) { + const char *utf8text = text; + uint32 ch = 0; int pos = 0; int furthest = 0; - for (i = 0; (text[i]) && (i < (scrw-4)); i++) + for (i = 0; ((ch = utf8codepoint(&utf8text)) && (i < (scrw-4))); i++) { - const int ch = text[i]; if ((ch == '\r') || (ch == '\n')) { + char *endptr = (char *) utf8text; + const char nextbyte = *utf8text; count++; retval = (char **) xrealloc(retval, count * sizeof (char *)); - text[i] = '\0'; + *endptr = '\0'; retval[count-1] = xstrdup(text); - text += i; - *text = ch; - if ((ch == '\r') && (text[1] == '\n')) - text++; - text++; + *endptr = nextbyte; + if ((ch == '\r') && (nextbyte == '\n')) // DOS endlines! + utf8text++; // skip it. + text = (char *) utf8text; // update to start of new line. if (i > w) w = i; i = -1; // will be zero on next iteration... } // if - else if (isspace(ch)) + else if ((ch == ' ') || (ch == '\t')) { furthest = i; } // else if } // for // line overflow or end of stream... - pos = (text[i]) ? furthest : i; - if ((text[i]) && (furthest == 0)) // uhoh, no split at all...hack it. + pos = (ch) ? furthest : i; + if ((ch) && (furthest == 0)) // uhoh, no split at all...hack it. { - // !!! FIXME: might be chopping in the middle of a UTF-8 seq. - pos = strlen(text); - if (pos > scrw-4) + pos = strchars(text); + if (pos > scrw-4) // too big, have to chop a string in the middle. pos = scrw-4; } // if if (pos > 0) { - char ch = text[pos]; + char *endptr = NULL; + int j = 0; + char tmpch = 0; + + utf8text = text; // adjust pointer by redecoding from start... + for (j = 0; j < pos; j++) + utf8codepoint(&utf8text); + + endptr = (char *) utf8text; + tmpch = *utf8text; count++; retval = (char **) xrealloc(retval, count * sizeof (char*)); - text[pos] = '\0'; + *endptr = '\0'; retval[count-1] = xstrdup(text); - text += pos; - *text = ch; + text = (char *) utf8text; + *endptr = tmpch; if (pos > w) w = pos; } // if @@ -255,7 +276,7 @@ else break; // we're good, get out. - len = strcells(msg); + len = strchars(msg); y = scrh / 2; x = ((scrw - len) / 2); @@ -314,7 +335,7 @@ retval->textlines = splitText(retval->text, &retval->textlinecount, &w); - len = strcells(title); + len = strchars(title); if (len > scrw-4) { len = scrw-4; @@ -327,7 +348,7 @@ if (bcount > 0) { for (i = 0; i < bcount; i++) - buttonsw += strcells(buttons[i]) + 5; // '<', ' ', ' ', '>', ' ' + buttonsw += strchars(buttons[i]) + 5; // '<', ' ', ' ', '>', ' ' if (buttonsw > w) w = buttonsw; // !!! FIXME: what if these overflow the screen? @@ -369,7 +390,7 @@ wmove(win, h-1, w-1); waddch(win, ACS_LRCORNER | COLOR_PAIR(MOJOCOLOR_BORDERBOTTOM)); - len = strcells(retval->title); + len = strchars(retval->title); wmove(win, 0, ((w-len)/2)-1); wattron(win, COLOR_PAIR(MOJOCOLOR_BORDERTITLE) | A_BOLD); waddch(win, ' '); @@ -386,7 +407,7 @@ whline(win, ACS_HLINE | A_BOLD | COLOR_PAIR(MOJOCOLOR_BORDERTOP), w-2); for (i = 0; i < bcount; i++) { - len = strcells(buttons[i]) + 4; + len = strchars(buttons[i]) + 4; buttonx -= len+1; win = retval->buttons[i] = newwin(1, len, buttony, buttonx); keypad(win, TRUE); @@ -625,6 +646,7 @@ static boolean MojoGui_ncurses_init(void) { + setlocale(LC_CTYPE, ""); // !!! FIXME: we assume you have a UTF-8 terminal. if (initscr() == NULL) { logInfo("ncurses: initscr() failed, use another UI."); @@ -1441,7 +1463,7 @@ { int cells = (int) ( ((double) w) * (((double) percent) / 100.0) ); snprintf(buf, w+1, "%d%%", percent); - mvwaddstr(win, h-3, ((w+2) - strcells(buf)) / 2, buf); + mvwaddstr(win, h-3, ((w+2) - strchars(buf)) / 2, buf); mvwchgat(win, h-3, 1, cells, A_BOLD, MOJOCOLOR_DONE, NULL); mvwchgat(win, h-3, 1+cells, w-cells, A_BOLD, MOJOCOLOR_TODO, NULL); } // else @@ -1451,7 +1473,7 @@ if (snprintf(buf, w+1, "%s", item) > (w-4)) strcpy((buf+w)-4, "..."); // !!! FIXME: Unicode problem. mvwhline(win, h-2, 1, ' ', w); - mvwaddstr(win, h-2, ((w+2) - strcells(buf)) / 2, buf); + mvwaddstr(win, h-2, ((w+2) - strchars(buf)) / 2, buf); free(buf); wrefresh(win); Modified: trunk/universal.h =================================================================== --- trunk/universal.h 2008-03-02 06:37:37 UTC (rev 539) +++ trunk/universal.h 2008-03-03 07:01:54 UTC (rev 540) @@ -100,7 +100,7 @@ #define UNICODE_BOGUS_CHAR_VALUE 0xFFFFFFFF #define UNICODE_BOGUS_CHAR_CODEPOINT '?' // !!! FIXME: document me! -uint32 utf8codepoint(const char **_str); +uint32 utf8codepoint(const char **str); // Format a string, sort of (but not exactly!) like sprintf(). From DONOTREPLY at icculus.org Mon Mar 3 02:24:11 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 3 Mar 2008 02:24:11 -0500 Subject: r541 - trunk Message-ID: <20080303072411.14250.qmail@icculus.org> Author: icculus Date: 2008-03-03 02:24:10 -0500 (Mon, 03 Mar 2008) New Revision: 541 Modified: trunk/gui.h trunk/gui_ncurses.c trunk/gui_stdio.c trunk/mojosetup.c trunk/universal.h Log: Moved splitText() and strchars() out of ncurses UI so the stdio UI (etc) can use them. Modified: trunk/gui.h =================================================================== --- trunk/gui.h 2008-03-03 07:01:54 UTC (rev 540) +++ trunk/gui.h 2008-03-03 07:24:10 UTC (rev 541) @@ -254,9 +254,19 @@ #endif #define utf8codepoint(x) entry->utf8codepoint(x) +#ifdef utf8len +#undef utf8len #endif +#define utf8len(x) entry->utf8len(x) +#ifdef splitText +#undef splitText +#endif +#define splitText(w,x,y,z) entry->splitText(w,x,y,z) +#endif + + /* * make some decisions about which GUI plugins to build... * We list them all here, but some are built, some aren't. Some are DLLs, Modified: trunk/gui_ncurses.c =================================================================== --- trunk/gui_ncurses.c 2008-03-03 07:01:54 UTC (rev 540) +++ trunk/gui_ncurses.c 2008-03-03 07:24:10 UTC (rev 541) @@ -62,15 +62,6 @@ } MojoColor; -static int strchars(const char *str) -{ - int retval = 0; - while (utf8codepoint(&str)) - retval++; - return retval; -} // strchars - - typedef struct { WINDOW *mainwin; @@ -98,89 +89,6 @@ static MojoBox *progressBox = NULL; -// !!! FIXME: cut and pasted in gui_stdio.c, too...fix bugs in both copies! -// !!! FIXME: (or move this somewhere else...) -// !!! FIXME: this handles Unicode, but assumes each glyph takes one column. -static char **splitText(char *text, int *_count, int *_w) -{ - int i; - int scrw, scrh; - char **retval = NULL; - getmaxyx(stdscr, scrh, scrw); - int count = 0; - int w = 0; - - *_count = *_w = 0; - while (*text) - { - const char *utf8text = text; - uint32 ch = 0; - int pos = 0; - int furthest = 0; - - for (i = 0; ((ch = utf8codepoint(&utf8text)) && (i < (scrw-4))); i++) - { - if ((ch == '\r') || (ch == '\n')) - { - char *endptr = (char *) utf8text; - const char nextbyte = *utf8text; - count++; - retval = (char **) xrealloc(retval, count * sizeof (char *)); - *endptr = '\0'; - retval[count-1] = xstrdup(text); - *endptr = nextbyte; - if ((ch == '\r') && (nextbyte == '\n')) // DOS endlines! - utf8text++; // skip it. - text = (char *) utf8text; // update to start of new line. - - if (i > w) - w = i; - i = -1; // will be zero on next iteration... - } // if - else if ((ch == ' ') || (ch == '\t')) - { - furthest = i; - } // else if - } // for - - // line overflow or end of stream... - pos = (ch) ? furthest : i; - if ((ch) && (furthest == 0)) // uhoh, no split at all...hack it. - { - pos = strchars(text); - if (pos > scrw-4) // too big, have to chop a string in the middle. - pos = scrw-4; - } // if - - if (pos > 0) - { - char *endptr = NULL; - int j = 0; - char tmpch = 0; - - utf8text = text; // adjust pointer by redecoding from start... - for (j = 0; j < pos; j++) - utf8codepoint(&utf8text); - - endptr = (char *) utf8text; - tmpch = *utf8text; - count++; - retval = (char **) xrealloc(retval, count * sizeof (char*)); - *endptr = '\0'; - retval[count-1] = xstrdup(text); - text = (char *) utf8text; - *endptr = tmpch; - if (pos > w) - w = pos; - } // if - } // while - - *_count = count; - *_w = w; - return retval; -} // splitText - - static void drawButton(MojoBox *mojobox, int button) { const boolean hover = (mojobox->hoverover == button); @@ -276,7 +184,7 @@ else break; // we're good, get out. - len = strchars(msg); + len = utf8len(msg); y = scrh / 2; x = ((scrw - len) / 2); @@ -333,9 +241,10 @@ for (i = 0; i < bcount; i++) retval->buttontext[i] = xstrdup(buttons[i]); - retval->textlines = splitText(retval->text, &retval->textlinecount, &w); + retval->textlines = splitText(retval->text, scrw-4, + &retval->textlinecount, &w); - len = strchars(title); + len = utf8len(title); if (len > scrw-4) { len = scrw-4; @@ -348,7 +257,7 @@ if (bcount > 0) { for (i = 0; i < bcount; i++) - buttonsw += strchars(buttons[i]) + 5; // '<', ' ', ' ', '>', ' ' + buttonsw += utf8len(buttons[i]) + 5; // '<', ' ', ' ', '>', ' ' if (buttonsw > w) w = buttonsw; // !!! FIXME: what if these overflow the screen? @@ -390,7 +299,7 @@ wmove(win, h-1, w-1); waddch(win, ACS_LRCORNER | COLOR_PAIR(MOJOCOLOR_BORDERBOTTOM)); - len = strchars(retval->title); + len = utf8len(retval->title); wmove(win, 0, ((w-len)/2)-1); wattron(win, COLOR_PAIR(MOJOCOLOR_BORDERTITLE) | A_BOLD); waddch(win, ' '); @@ -407,7 +316,7 @@ whline(win, ACS_HLINE | A_BOLD | COLOR_PAIR(MOJOCOLOR_BORDERTOP), w-2); for (i = 0; i < bcount; i++) { - len = strchars(buttons[i]) + 4; + len = utf8len(buttons[i]) + 4; buttonx -= len+1; win = retval->buttons[i] = newwin(1, len, buttony, buttonx); keypad(win, TRUE); @@ -1463,7 +1372,7 @@ { int cells = (int) ( ((double) w) * (((double) percent) / 100.0) ); snprintf(buf, w+1, "%d%%", percent); - mvwaddstr(win, h-3, ((w+2) - strchars(buf)) / 2, buf); + mvwaddstr(win, h-3, ((w+2) - utf8len(buf)) / 2, buf); mvwchgat(win, h-3, 1, cells, A_BOLD, MOJOCOLOR_DONE, NULL); mvwchgat(win, h-3, 1+cells, w-cells, A_BOLD, MOJOCOLOR_TODO, NULL); } // else @@ -1473,7 +1382,7 @@ if (snprintf(buf, w+1, "%s", item) > (w-4)) strcpy((buf+w)-4, "..."); // !!! FIXME: Unicode problem. mvwhline(win, h-2, 1, ' ', w); - mvwaddstr(win, h-2, ((w+2) - strchars(buf)) / 2, buf); + mvwaddstr(win, h-2, ((w+2) - utf8len(buf)) / 2, buf); free(buf); wrefresh(win); Modified: trunk/gui_stdio.c =================================================================== --- trunk/gui_stdio.c 2008-03-03 07:01:54 UTC (rev 540) +++ trunk/gui_stdio.c 2008-03-03 07:24:10 UTC (rev 541) @@ -234,81 +234,6 @@ } // MojoGui_stdio_stop -// !!! FIXME: cut and pasted in gui_ncurses.c, too...fix bugs in both copies! -// !!! FIXME: (or move this somewhere else...) -// !!! FIXME: this is not really Unicode friendly... -static char **splitText(const char *_text, int *_count, int *_w) -{ - char *ptr = xstrdup(_text); - char *text = ptr; - int i; - int scrw = 80; - char **retval = NULL; - int count = 0; - int w = 0; - - *_count = *_w = 0; - while (*text) - { - int pos = 0; - int furthest = 0; - - for (i = 0; (text[i]) && (i < (scrw-4)); i++) - { - const int ch = text[i]; - if ((ch == '\r') || (ch == '\n')) - { - count++; - retval = (char **) xrealloc(retval, count * sizeof (char *)); - text[i] = '\0'; - retval[count-1] = xstrdup(text); - text += i; - *text = ch; - if ((ch == '\r') && (text[1] == '\n')) - text++; - text++; - - if (i > w) - w = i; - i = -1; // will be zero on next iteration... - } // if - else if (isspace(ch)) - { - furthest = i; - } // else if - } // for - - // line overflow or end of stream... - pos = (text[i]) ? furthest : i; - if ((text[i]) && (furthest == 0)) // uhoh, no split at all...hack it. - { - // !!! FIXME: might be chopping in the middle of a UTF-8 seq. - pos = strlen(text); - if (pos > scrw-4) - pos = scrw-4; - } // if - - if (pos > 0) - { - char ch = text[pos]; - count++; - retval = (char **) xrealloc(retval, count * sizeof (char*)); - text[pos] = '\0'; - retval[count-1] = xstrdup(text); - text += pos; - *text = ch; - if (pos > w) - w = pos; - } // if - } // while - - free(ptr); - *_count = count; - *_w = w; - return retval; -} // splitText - - static void dumb_pager(const char *name, const char *data, size_t datalen) { const int MAX_PAGE_LINES = 21; @@ -317,7 +242,7 @@ int w = 0; int linecount = 0; boolean getout = false; - char **lines = splitText(data, &linecount, &w); + char **lines = splitText(data, 80, &linecount, &w); assert(linecount >= 0); Modified: trunk/mojosetup.c =================================================================== --- trunk/mojosetup.c 2008-03-03 07:01:54 UTC (rev 540) +++ trunk/mojosetup.c 2008-03-03 07:24:10 UTC (rev 541) @@ -40,6 +40,8 @@ numstr, MojoPlatform_ticks, utf8codepoint, + utf8len, + splitText, }; int GArgc = 0; @@ -777,6 +779,92 @@ } // utf8codepoint +int utf8len(const char *str) +{ + int retval = 0; + while (utf8codepoint(&str)) + retval++; + return retval; +} // utf8len + + +static char *strfrombuf(const char *text, int len) +{ + char *retval = xmalloc(len + 1); + memcpy(retval, text, len); + retval[len] = '\0'; + return retval; +} // strfrombuf + + +char **splitText(const char *text, int scrw, int *_count, int *_w) +{ + int i = 0; + int j = 0; + char **retval = NULL; + int count = 0; + int w = 0; + + *_count = *_w = 0; + while (*text) + { + const char *utf8text = text; + uint32 ch = 0; + int pos = 0; + int furthest = 0; + + for (i = 0; ((ch = utf8codepoint(&utf8text))) && (i < scrw); i++) + { + if ((ch == '\r') || (ch == '\n')) + { + const char nextbyte = *utf8text; + count++; + retval = (char **) xrealloc(retval, count * sizeof (char *)); + retval[count-1] = strfrombuf(text, utf8text - text); + if ((ch == '\r') && (nextbyte == '\n')) // DOS endlines! + utf8text++; // skip it. + text = (char *) utf8text; // update to start of new line. + + if (i > w) + w = i; + i = -1; // will be zero on next iteration... + } // if + else if ((ch == ' ') || (ch == '\t')) + { + furthest = i; + } // else if + } // for + + // line overflow or end of stream... + pos = (ch) ? furthest : i; + if ((ch) && (furthest == 0)) // uhoh, no split at all...hack it. + { + pos = utf8len(text); + if (pos > scrw) // too big, have to chop a string in the middle. + pos = scrw; + } // if + + if (pos > 0) + { + utf8text = text; // adjust pointer by redecoding from start... + for (j = 0; j < pos; j++) + utf8codepoint(&utf8text); + + count++; + retval = (char **) xrealloc(retval, count * sizeof (char*)); + retval[count-1] = strfrombuf(text, utf8text - text); + text = (char *) utf8text; + if (pos > w) + w = pos; + } // if + } // while + + *_count = count; + *_w = w; + return retval; +} // splitText + + static void outOfMemory(void) { // Try to translate "out of memory", but not if it causes recursion. Modified: trunk/universal.h =================================================================== --- trunk/universal.h 2008-03-03 07:01:54 UTC (rev 540) +++ trunk/universal.h 2008-03-03 07:24:10 UTC (rev 541) @@ -102,7 +102,13 @@ // !!! FIXME: document me! uint32 utf8codepoint(const char **str); +// !!! FIXME: document me! +int utf8len(const char *str); +// !!! FIXME: document me! +char **splitText(const char *text, int scrw, int *_count, int *_w); + + // Format a string, sort of (but not exactly!) like sprintf(). // The only formatters accepted are %0 through %9 (and %%), which do not // have to appear in order in the string, but match the varargs passed to the @@ -355,6 +361,8 @@ const char *(*numstr)(int val); uint32 (*ticks)(void); uint32 (*utf8codepoint)(const char **_str); + int (*utf8len)(const char *str); + char **(*splitText)(const char *text, int scrw, int *_count, int *_w); } MojoSetupEntryPoints; extern MojoSetupEntryPoints GEntryPoints; From DONOTREPLY at icculus.org Mon Mar 3 02:32:28 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 3 Mar 2008 02:32:28 -0500 Subject: r542 - trunk Message-ID: <20080303073228.1277.qmail@icculus.org> Author: icculus Date: 2008-03-03 02:32:28 -0500 (Mon, 03 Mar 2008) New Revision: 542 Modified: trunk/mojosetup.c Log: When splitting up text, trim whitespace from the left side of the line. Modified: trunk/mojosetup.c =================================================================== --- trunk/mojosetup.c 2008-03-03 07:24:10 UTC (rev 541) +++ trunk/mojosetup.c 2008-03-03 07:32:28 UTC (rev 542) @@ -831,7 +831,13 @@ } // if else if ((ch == ' ') || (ch == '\t')) { - furthest = i; + if (i != 0) // trim spaces from start of line... + furthest = i; + else + { + text++; + i = -1; // it'll be zero on next iteration. + } // else } // else if } // for From DONOTREPLY at icculus.org Mon Mar 3 16:00:49 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 3 Mar 2008 16:00:49 -0500 Subject: r543 - trunk/scripts Message-ID: <20080303210049.24397.qmail@icculus.org> Author: icculus Date: 2008-03-03 16:00:47 -0500 (Mon, 03 Mar 2008) New Revision: 543 Modified: trunk/scripts/localization.lua Log: Improved my localization comments after translator feedback (thanks, Thierry!). Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-03 07:32:28 UTC (rev 542) +++ trunk/scripts/localization.lua 2008-03-03 21:00:47 UTC (rev 543) @@ -523,10 +523,10 @@ sv = "FEL: inget option" }; - -- This is shown if the config file wants us to add an installer to the - -- files we write to disk, but didn't enable the manifest support the - -- installer needs. This is a bug the developer must fix before shipping - -- her installer. + -- This is shown if the config file wants us to include the uninstaller + -- program with the rest of the files we write to disk, but didn't enable + -- the manifest support the installer needs. This is a bug the developer + -- must fix before shipping her installer. ["BUG: support_uninstall requires write_manifest"] = { cs = "CHYBA: support_uninstall vy?aduje write_manifest", de = "FEHLER: support_uninstall ben?tigt write_manifest", @@ -541,10 +541,12 @@ sv = "FEL: support_uninstall kr?ver write_manifest" }; - -- This is shown if the config file wants us to add a manifest to the - -- files we write to disk, but didn't enable Lua parser support in the - -- binary (this is done through CMake when compiling the C code). This is - -- a bug the developer must fix before shipping her installer. + -- This is shown if the config file wants us to install a manifest (a list + -- of everything we wrote to disk) but didn't enable Lua parser support + -- in the binary, which they need to handle Lua source code without + -- compiling it first (as it needs to be "parsed")...the manifest is + -- ultimately just an uncompiled Lua program that the installer generates. + -- This is a bug the developer must fix before shipping her installer. ["BUG: write_manifest requires Lua parser support"] = { cs = "CHYBA: write_manifest vy?aduje podporu Lua parseru", de = "FEHLER: write_manifest ben?tigt Lua Parser Unterst?tzung", @@ -1132,7 +1134,10 @@ }; -- This error is shown if we aren't able to write the list of files - -- that were installed (the "manifest") to disk. + -- that were installed (the "manifest") to disk. Apparently some languages + -- don't have a convenient translation of "manifest" ... it is not + -- important that this word maps directly for end-users, as long as the + -- general concept is explained. ["Couldn't create manifest"] = { cs = "Nemohu vytvo?it manifest", de = "Konnte Manifest nicht erstellen", @@ -1894,7 +1899,9 @@ -- Installations display the currently-installing component, such as -- "Base game" or "Bonus pack content" or whatnot. The installer lists -- the current component as "Metadata" when writing out its own - -- information, such as file manifests, uninstall support, etc. + -- information, such as the final list of installed files, the uninstall + -- support application, etc. It's a catch-all category: data about the + -- actual data, basically. ["Metadata"] = { cs = "Metadata", de = "Metadaten", @@ -1924,8 +1931,9 @@ sv = "Ogiltigt argument" }; - -- This error is shown when updating the manifest, if it can't load the - -- file for some reason. '%0' is the manifest's package name. + -- This error is shown when updating the manifest (the list of files that + -- we installed), if it can't load the file for some reason. '%0' is the + -- manifest's package name. ["Couldn't load manifest file for '%0'"] = { cs = "Nemohu na??st soubor s manifestem pro '%0'", de = "Konnte Manifestdatei f?r '%0' nicht laden", From DONOTREPLY at icculus.org Mon Mar 3 19:01:12 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 3 Mar 2008 19:01:12 -0500 Subject: r544 - trunk/scripts Message-ID: <20080304000112.23427.qmail@icculus.org> Author: icculus Date: 2008-03-03 19:01:12 -0500 (Mon, 03 Mar 2008) New Revision: 544 Modified: trunk/scripts/localization.lua Log: Latest translations from launchpad.net. Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-03 21:00:47 UTC (rev 543) +++ trunk/scripts/localization.lua 2008-03-04 00:01:12 UTC (rev 544) @@ -3,8 +3,8 @@ -- Please see the file LICENSE.txt in the source's root directory. -- -- DO NOT EDIT BY HAND. --- This file was generated with po2localization.pl, version svn-534 ... --- on 2008-03-01 22:00:16-0500 +-- This file was generated with po2localization.pl, version svn-543 ... +-- on 2008-03-03 18:57:17-0500 -- -- Your own installer's localizations go into app_localization.lua instead. -- If you want to add strings to be translated to this file, contact Ryan @@ -15,13 +15,15 @@ -- -- ...and that work eventually ends up in this file. -- --- X-Launchpad-Export-Date: 2008-03-02 02:32+0000 +-- X-Launchpad-Export-Date: 2008-03-03 23:52+0000 -- X-Generator: Launchpad (build Unknown) MojoSetup.languages = { en_US = "English (United States)", cs = "Czech", de = "German", + el = "Greek", + en_CA = "English (Canada)", en_GB = "English (United Kingdom)", es = "Spanish", fi = "Finnish", @@ -32,8 +34,10 @@ nl = "Dutch", pt = "Portuguese", ru = "Russian", + sk = "Slovak", sv = "Swedish", - uk = "Ukrainian" + uk = "Ukrainian", + zh_TW = "Traditional Chinese" }; MojoSetup.localization = { @@ -41,6 +45,7 @@ ["need dictionary"] = { cs = "je t?eba slovn?k", de = "W?rterbuch ben?tigt", + el = "?????????? ??????", en_GB = "need dictionary", es = "necesita diccionario", fi = "tarve sanastolle", @@ -50,14 +55,17 @@ nl = "woordenboek nodig", pt = "? necess?rio um dicion?rio", ru = "????????? ???????", + sk = "potrebujem slovn?k", sv = "beh?ver ordbok", - uk = "???????? ???????" + uk = "???????? ???????", + zh_TW = "????" }; -- zlib error message ["data error"] = { cs = "datov? chyba", de = "Datenfehler", + el = "?????? ?????????", en_GB = "data error", es = "error de datos", fi = "datavirhe", @@ -67,14 +75,17 @@ nl = "data fout", pt = "erro de dados", ru = "?????? ??????", + sk = "chyba d?t", sv = "datafel", - uk = "??????? ?????" + uk = "??????? ?????", + zh_TW = "????" }; -- zlib error message ["memory error"] = { cs = "pam??ov? chyba", de = "Speicherfehler", + el = "?????? ??????", en_GB = "memory error", es = "error de memoria", fi = "muistivirhe", @@ -84,14 +95,17 @@ nl = "geheugen fout", pt = "erro na mem?ria", ru = "?????? ??????", + sk = "chyba pam?te", sv = "minnesfel", - uk = "??????? ???'???" + uk = "??????? ???'???", + zh_TW = "?????" }; -- zlib error message ["buffer error"] = { cs = "chyba bufferu", de = "Pufferfehler", + el = "?????? ?????????? ????? ???????????", en_GB = "buffer error", es = "error de buffer", fi = "puskurivirhe", @@ -101,14 +115,17 @@ nl = "buffer fout", pt = "erro no tamp?o", ru = "?????? ??????", + sk = "chyba vyrovn?vacej pam?te", sv = "bufferfel", - uk = "??????? ??????" + uk = "??????? ??????", + zh_TW = "?????" }; -- zlib error message ["version error"] = { cs = "chyba verze", de = "Versionsfehler", + el = "????????? ?????? ??????????", en_GB = "version error", es = "error de versi?n", fi = "versiovirhe", @@ -118,14 +135,17 @@ nl = "versie fout", pt = "erro na vers?o", ru = "?????? ??????", + sk = "chyba verzie", sv = "versionsfel", - uk = "??????? ??????" + uk = "??????? ??????", + zh_TW = "????" }; -- zlib error message ["unknown error"] = { cs = "nezn?m? chyba", de = "Unbekannter Fehler", + el = "??????? ??????", en_GB = "unknown error", es = "error desconocido", fi = "tuntematon virhe", @@ -136,8 +156,10 @@ nl = "onbekende fout", pt = "erro desconhecido", ru = "??????????? ??????", + sk = "nezn?ma chyba", sv = "ok?nt fel", - uk = "???????? ???????" + uk = "???????? ???????", + zh_TW = "?????" }; -- stdio UI plugin says this for "OK"-only msgboxes. "%0" is the message @@ -147,6 +169,7 @@ ["%0 [Y/n]: "] = { cs = "%0 [A/n]: ", de = "%0 [J/n]: ", + el = "%0 [?/?]: ", en_GB = "%0 [Y/n] ", es = "%0 [S/n]: ", fi = "%0 [K/e]: ", @@ -157,8 +180,10 @@ nl = "%0 [J/n]: ", pt = "%0 [S/n] ", ru = "%0 [Y/n]: ", + sk = "%0 [A/n]: ", sv = "%0 [J/n]: ", - uk = "%0 [???/??] " + uk = "%0 [???/??] ", + zh_TW = "%0 [Y/n]: " }; -- stdio UI plugin says this for yes/no prompts that default to no. @@ -166,6 +191,7 @@ ["%0 [y/N]: "] = { cs = "%0 [a/N] ", de = "%0 [j/N]: ", + el = "%0 [?/?]: ", en_GB = "%0 [y/N]: ", es = "%0 [s/N]: ", fi = "%0 [k/E]: ", @@ -176,8 +202,10 @@ nl = "%0 [j/N]: ", pt = "%0 [s/N] ", ru = "%0 [y/N]: ", + sk = "%0 [a/N]: ", sv = "%0 [j/N]: ", - uk = "%0 [???/??] " + uk = "%0 [???/??] ", + zh_TW = "%0 [y/N]: " }; -- stdio UI plugin says this for yes/no/always/never prompts. @@ -185,6 +213,7 @@ ["%0 [y/n/Always/Never]: "] = { cs = "%0 [a/n/V?dy/niKdy] ", de = "%0 [j/n/Immer/Niemals]: ", + el = "%0 [?/?/?????/????]: ", en_GB = "%0 [y/n/Always/Never]: ", es = "%0 [s/n/Siempre/Nunca]: ", fi = "%0 [k/e/Aina/ei Koskaan]: ", @@ -195,14 +224,17 @@ nl = "%0 [j/n/Altijd/Nooit]: ", pt = "%0 [s/n/Sempre/Nunca] ", ru = "%0 [y/n/??????(A)/???????(N)]: ", + sk = "%0 [a/n/Vzdy/Nikdy]: ", sv = "%0 [j/n/Alltid/Aldrig]: ", - uk = "%0 [???/??/??????/??????]: " + uk = "%0 [???/??/??????/??????]: ", + zh_TW = "%0[y/n/??(A)/??(N)]: " }; -- This is used for "yes" in stdio UI's yes/no prompts (case insensitive). ["Y"] = { cs = "A", de = "J", + el = "?", en_GB = "Y", es = "S", fi = "K", @@ -213,13 +245,16 @@ nl = "J", pt = "S", ru = "Y", - sv = "J" + sk = "A", + sv = "J", + zh_TW = "?" }; -- This is used for "no" in stdio UI's yes/no prompts (case insensitive). ["N"] = { cs = "N", de = "N", + el = "?", en_GB = "N", es = "N", fi = "E", @@ -230,7 +265,9 @@ nl = "N", pt = "N", ru = "N", - sv = "N" + sk = "N", + sv = "N", + zh_TW = "?" }; -- This is used for "always" in stdio UI's yes/no/always/never prompts @@ -238,6 +275,7 @@ ["Always"] = { cs = "V?dy", de = "Immer", + el = "?????", en_GB = "Always", es = "Siempre", fi = "Aina", @@ -248,7 +286,9 @@ nl = "Altijd", pt = "Sempre", ru = "??????", - sv = "Alltid" + sk = "V?dy", + sv = "Alltid", + zh_TW = "??" }; -- This is used for "never" in stdio UI's yes/no/always/never prompts @@ -256,6 +296,7 @@ ["Never"] = { cs = "niKdy", de = "Niemals", + el = "????", en_GB = "Never", es = "Nunca", fi = "ei Koskaan", @@ -266,7 +307,9 @@ nl = "Nooit", pt = "Nunca", ru = "???????", - sv = "Aldrig" + sk = "Nikdy", + sv = "Aldrig", + zh_TW = "??" }; -- This is shown when using stdio UI's built-in README pager, to @@ -275,6 +318,7 @@ ["(%0-%1 of %2 lines, see more?)"] = { cs = "(%0-%1 z %2 ??dk?, zobrazit v?ce?)", de = "(%0-%1 von %2 Zeilen, mehr anschauen?)", + el = "(%0-%1 ??? %2 ???????, ?????? ?? ????? ?????????????)", en_GB = "(%0-%1 of %2 lines, see more?)", es = "(%0-%1 de %2 l?neas, ?ves m?s?)", fi = "(%0-%1 %2:sta rivist?, lue lis???)", @@ -284,7 +328,9 @@ nl = "(%0-%1 van %2 regels, meer zien?)", pt = "(%0-%1 de %2 linhas, ver mais?)", ru = "(%0-%1 ?? %2 ?????, ???????)", - sv = "(%0-%1 av %2 rader, visa fler?)" + sk = "(%0-%1 of %2 riadkov, zobrazi? ?al?ie?)", + sv = "(%0-%1 av %2 rader, visa fler?)", + zh_TW = "?%2 ?????? %0-%1 ????????" }; -- The stdio UI uses this sentence in the prompt if the user is able @@ -293,6 +339,7 @@ ["Type '%0' to go back."] = { cs = "Napi?te '%0' pro n?vrat zp?t.", de = "Dr?cken Sie '%0' um zur?ckzugehen.", + el = "??????? '%0' ??? ?? ???? ????.", en_GB = "Type '%0' to go back.", es = "Pulsa '%0' para ir atr?s.", fi = "Kirjoita '%0' palataksesi edelliseen osioon.", @@ -300,10 +347,12 @@ it = "Digita %0 per andare indietro.", nb = "Skriv '%0' for ? g? tilbake.", nds = "Dr?cken Sie '%0' um zur?ckzukehren", - nl = "Typ %0 om terug te gaan.", + nl = "Typ '%0' om terug te gaan.", pt = "Escreva '%0' para regressar.", ru = "??????? '%0' ????? ?????????.", - sv = "Skriv '%0' f?r att g? tillbaka." + sk = "Zadajte '%0' pre n?vrat spa?.", + sv = "Skriv '%0' f?r att g? tillbaka.", + zh_TW = "?? '%0' ???" }; -- This is the string used for the '%0' in the above string. @@ -313,6 +362,7 @@ ["back"] = { cs = "zp?t", de = "zur?ck", + el = "????", en_GB = "back", es = "atr?s", fi = "takaisin", @@ -323,29 +373,36 @@ nl = "terug", pt = "retroceder", ru = "?????", - sv = "tillbaka" + sk = "sp??", + sv = "tillbaka", + zh_TW = "??" }; -- This is the prompt in the stdio driver when user input is expected. ["> "] = { cs = "> ", de = "> ", + el = "> ", en_GB = "> ", es = "> ", fi = "> ", fr = "> ", it = "> ", nb = "> ", + nds = "> ", nl = "> ", pt = "> ", ru = "> ", - sv = "> " + sk = "> ", + sv = "> ", + zh_TW = "> " }; -- That's meant to be the name of an item (%0) and the percent done (%1). ["%0: %1%%"] = { cs = "%0: %1%%", de = "%0: %1%%", + el = "%0: %1%%", en_GB = "%0: %1%%", es = "%0: %1%%", fi = "%0: %1%%", @@ -356,7 +413,9 @@ nl = "%0: %1%%", pt = "%0: %1%%", ru = "%0: %1%%", - sv = "%0: %1%%" + sk = "%0: %1%%", + sv = "%0: %1%%", + zh_TW = "%0: %1%%" }; -- The stdio UI uses this to show current status (%0), @@ -364,6 +423,7 @@ ["%0 (total progress: %1%%)"] = { cs = "%0 (celkov? pr?b?h: %1%%)", de = "%0 (Gesamtfortschritt: %1%%)", + el = "%0 (???????? ???????: %1%%)", en_GB = "%0 (total progress: %1%%)", es = "%0 (Progreso total: %1%%)", fi = "%0 (kokonaisedistyminen: %1%%)", @@ -373,7 +433,9 @@ nl = "%0 (totale voortgang: %1%%)", pt = "%0 (progresso total: %1%%)", ru = "%0 (?????: %1%%)", - sv = "%0 (totalt: %1%%)" + sk = "%0 (celkovo priebeh: %1%%)", + sv = "%0 (totalt: %1%%)", + zh_TW = "%0??????%1%%?" }; -- This prompt is shown to the end-user after an End User License Agreement @@ -382,17 +444,20 @@ ["Accept this license?"] = { cs = "P?ij?m?te podm?nky licence?", de = "Nehmen Sie die Lizenzbedingungen an?", + el = "??????? ???? ??? ????? ???????", en_GB = "Accept this licence?", es = "?Acepta esta licencia?", fi = "Hyv?ksy lisenssi?", fr = "Accepter cette licence??", it = "Accetti questa licenza?", nb = "Akseptere denne lisensen?", - nds = "Akzeptiere diese Lizenz?", + nds = "Diese Lizenz akzeptieren?", nl = "Accepteert u deze licentie?", pt = "Aceita esta licen?a?", ru = "?? ?????????????", - sv = "Acceptera licensen?" + sk = "S?hlas?te s licensiou?", + sv = "Acceptera licensen?", + zh_TW = "???????" }; -- This is a GTK+ button label for yes/no/always/never questions. @@ -400,17 +465,20 @@ ["_Always"] = { cs = "_V?dy", de = "_Immer", + el = "_?????", en_GB = "_Always", es = "_Siempre", fi = "_Aina", fr = "_Toujours", it = "_Sempre", nb = "_Alltid", - nds = "Immer", + nds = "_Immer", nl = "_Altijd", pt = "_Sempre", ru = "_??????", - sv = "_Alltid" + sk = "_V?dy", + sv = "_Alltid", + zh_TW = "??(_A)" }; -- This is an error message reported when a .zip file (or whatever) that @@ -418,6 +486,7 @@ ["Archive not found"] = { cs = "Archiv nenalezen", de = "Archiv nicht gefunden", + el = "?? ?????? ??? ???????.", en_GB = "Archive not found", es = "Archivo no encontrado", fi = "Pakettia ei l?ydy", @@ -427,7 +496,9 @@ nl = "Archief niet gevonden", pt = "O Arquivo n?o foi encontrado", ru = "????? ?? ??????", - sv = "Hittade inte arkivet" + sk = "Arch?v nen?jden?", + sv = "Hittade inte arkivet", + zh_TW = "??????" }; -- This prompt is shown to the user when they click the "Cancel" button, @@ -435,6 +506,7 @@ ["Are you sure you want to cancel installation?"] = { cs = "Opravdu chcete zru?it instalaci?", de = "Sind Sie sicher, dass Sie die Installation abbrechen wollen?", + el = "????? ???????? ??? ?????? ?? ????????? ??? ????????????", en_GB = "Are you sure you want to cancel installation?", es = "?Est?s seguro de que quieres cancelar la instalaci?n?", fi = "Haluatko varmasti keskeytt?? asennuksen?", @@ -445,13 +517,16 @@ nl = "Weet u zeker dat u de installatie wilt afbreken?", pt = "Tem a certeza que quer cancelar a instala??o?", ru = "?? ??????? ??? ?? ?????? ?????????? ??????????", - sv = "?r du s?ker p? att du vill avbryta installationen?" + sk = "Ste si ist? ?e chcete preru?i? in?tal?ciu?", + sv = "?r du s?ker p? att du vill avbryta installationen?", + zh_TW = "?????????" }; -- The opposite of "next", used as a UI button label. ["Back"] = { cs = "Zp?t", de = "Zur?ck", + el = "???????????", en_GB = "Back", es = "Atr?s", fi = "Takaisin", @@ -462,7 +537,9 @@ nl = "Vorige", pt = "Anterior", ru = "?????", - sv = "Tillbaka" + sk = "Sp??", + sv = "Tillbaka", + zh_TW = "??" }; -- This is a GTK+ button label. The '_' comes before the hotkey character. @@ -471,6 +548,7 @@ ["B_rowse..."] = { cs = "_Proch?zet...", de = "Du_rchsuchen", + el = "_?????????...", en_GB = "B_rowse...", es = "_Navegar...", fi = "_Selaa", @@ -481,7 +559,9 @@ nl = "Bl_aderen...", pt = "_Procurar...", ru = "???????...", - sv = "B_l?ddra" + sk = "_Vybra?", + sv = "B_l?ddra", + zh_TW = "??(_R)..." }; -- All the "BUG:" strings are generally meant to be seen by developers, @@ -495,6 +575,7 @@ ["BUG: duplicate media id"] = { cs = "CHYBA: duplik?tn? id m?dia", de = "FEHLER: Doppelte Medien-ID", + el = "??????: ????? ??????? ??? ???? media id", en_GB = "BUG: duplicate media id", es = "FALLO: id de medio duplicada", fi = "BUGI: kaksi identtist? media id:t?", @@ -502,7 +583,10 @@ nds = "BUG: Doppelte media id", nl = "BUG: dubbele media id", pt = "BUG: media id duplicada", - sv = "FEL: dupliserat media id" + ru = "??????: ???????????? media_id", + sk = "CHYBA: duplicitn? media id", + sv = "FEL: dupliserat media id", + zh_TW = "??????????" }; -- This is shown if the configuration file has no installable options, @@ -511,16 +595,19 @@ ["BUG: no options"] = { cs = "CHYBA: nejsou dostupn? ??dn? volby", de = "FEHLER: Keine Optionen", + el = "??????: ??? ???????? ????????? ????????????", en_GB = "BUG: no options", es = "FALLO: sin opciones", fi = "BUGI: ei vaihtoehtoja", - fr = "BOGUE: Pas d'options", + fr = "BUG: Pas d'options", nb = "FEIL: ingen valg", nds = "BUG: keine Optionen", nl = "BUG: geen opties", pt = "BUG: sem op??es", - ru = "???: ???? ?????", - sv = "FEL: inget option" + ru = "??????: ??????????? ?????", + sk = "CHYBA: ?iadne in?tala?n? mo?nosti", + sv = "FEL: inget option", + zh_TW = "???????" }; -- This is shown if the config file wants us to include the uninstaller @@ -530,6 +617,7 @@ ["BUG: support_uninstall requires write_manifest"] = { cs = "CHYBA: support_uninstall vy?aduje write_manifest", de = "FEHLER: support_uninstall ben?tigt write_manifest", + el = "??????: ?? \"support_uninstall\" ??????? ?? \"write_manifest\"", en_GB = "BUG: support_uninstall requires write_manifest", es = "FALLO: support_uninstall requiere write_manifest", fi = "BUGI: support_uninstall vaatii write_manifest:n", @@ -537,8 +625,10 @@ nds = "BUG: support_uninstall ben?tigt write_manifest", nl = "BUG: ondersteuning_deinstalleren heeft schrijf_manifest nodig", pt = "BUG: support_uninstall requer write_manifest", - ru = "???: support_uninstall ????????? ? write_manifest", - sv = "FEL: support_uninstall kr?ver write_manifest" + ru = "??????: support_uninstall ????????? ? write_manifest", + sk = "CHYBA: support_uninstall potrebuje write_manifest", + sv = "FEL: support_uninstall kr?ver write_manifest", + zh_TW = "???support_uninstall ?? write_manifest" }; -- This is shown if the config file wants us to install a manifest (a list @@ -550,13 +640,17 @@ ["BUG: write_manifest requires Lua parser support"] = { cs = "CHYBA: write_manifest vy?aduje podporu Lua parseru", de = "FEHLER: write_manifest ben?tigt Lua Parser Unterst?tzung", + el = "??????: ?? \"write_manifest\" ??????? ?? ??????? ?????????? ??? \"Lua parser\"", en_GB = "BUG: write_manifest requires Lua parser support", es = "FALLO: write_manifest requiere el soporte de un int?rprete Lua", fi = "BUGI: write_manifest vaatii Lua parser -tuen", nb = "FEIL: write_manifest krever st?tte for Lua-parser", + nds = "Fehler: write_manifest ben?tift Lua Parser Unterst?tzung", pt = "BUG: write_manifest requer suporte do analisador da linguagem Lua", - ru = "???: write_manifest ????????? ? ????????? Lua parser", - sv = "FEL: write_manifest kr?ver Lua parser st?d" + ru = "??????: write_manifest ??????? ????????? Lua parser", + sk = "CHYBA: write_manifest potrebuje zapnut? podporu Lua parsera (Lua parser support)", + sv = "FEL: write_manifest kr?ver Lua parser st?d", + zh_TW = "???write_manifest ?? Lua ??????" }; -- This is shown if the config file wants us to add desktop menu items @@ -566,13 +660,16 @@ ["BUG: Setup.DesktopMenuItem requires support_uninstall"] = { cs = "CHYBA: Setup.DesktopMenuItem vy?aduje support_uninstall", de = "FEHLER: Setup.DesktopMenuItem ben?tigt support_uninstall", + el = "??????: ?? Setup.DesktopMenuItem ??????? ?? \"support_uninstall\"", en_GB = "BUG: Setup.DesktopMenuItem requires support_uninstall", es = "FALLO: Setup.DesktopMenuItem requiere support_uninstall", fi = "BUGI: Setup.DesktopMenuItem vaatii support_uninstall:n", nds = "BUG: Setup.DesktopMenuItem ben?tigt support_uninstall", pt = "BUG: Setup.DesktopMenuItem requer support_uninstall", - ru = "???: Setup.DesktopMenuItem ????????? ? support_uninstall", - sv = "FEL: Setup.DesktopMenuItem kr?ver support_uninstall" + ru = "??????: Setup.DesktopMenuItem ????????? ? support_uninstall", + sk = "CHYBA: Setup.DesktopMenuItem potrebuje support_uninstall", + sv = "FEL: Setup.DesktopMenuItem kr?ver support_uninstall", + zh_TW = "???Setup.DesktopMenuItem ?? support_uninstall" }; -- This is a file's permissions. Programmers give these as strings, and @@ -582,14 +679,17 @@ ["BUG: '%0' is not a valid permission string"] = { cs = "CHYBA: '%0' nen? platn?m ?et?zcem vyjad?uj?c?m opr?vn?n?", de = "FEHLER: '%0' ist kein zul?ssiger Berechtigungs-String", + el = "??????: '%0' ??? ????? ?????? ????????????? ?????????? ???????????", en_GB = "BUG: '%0' is not a valid permission string", es = "FALLO: '%0' no es una cadena de permisos v?lida", fi = "BUGI: \"%0\" ei ole kelvollinen oikeuksia m??ritt?v? merkkijono", + fr = "BUG \"%0\" n'est pas une cha?ne de permission valide", nb = "FEIL: '%0' er ikke en gyldig rettighetsstreng", nds = "BUG: '%0' ist kein g?ltiger \"permission string\"", nl = "BUG: '%0' is geen geldige permissie string", pt = "BUG: '%0' n?o ? uma express?o v?lida", - ru = "???: '%0' ?? ?????????? ????? ??? ????.", + ru = "??????: '%0' ???????????? ???????? ??? ????.", + sk = "CHYBA: '%0' nieje spr?vny sp?sob z?pisu pr?v", sv = "FEL: '%0' ?r inte en giltig r?ttighetsstr?ng" }; @@ -600,14 +700,18 @@ ["BUG: Invalid format() string"] = { cs = "CHYBA: Neplatn? ?et?zec pro format()", de = "FEHLER: Unzul?ssiger format() String", + el = "??????: ????? format() ?????????????", en_GB = "BUG: Invalid format() string", es = "FALLO: Cadena format() no v?lida", fi = "BUGI: Ep?kelpo format()-merkkijono", + fr = "BUG: Cha?ne format() invalide", nb = "FEIL: Ugyldig format()-streng", - nds = "Fehler: Ung?ltiger format() string", + nds = "BUG: Ung?ltiger format() string", pt = "BUG: format() inv?lido da express?o", - ru = "???: ??????????e????? ????? format()", - sv = "FEL: Ogiltig format() str?ng" + ru = "??????: ???????????? ?????? format()", + sk = "CHYBA: nespr?vny format() re?azec", + sv = "FEL: Ogiltig format() str?ng", + zh_TW = "?????? format() ??" }; -- The program runs in "stages" and as it transitions from one stage to @@ -617,14 +721,17 @@ ["BUG: stage returned wrong type"] = { cs = "CHYBA: instala?n? krok vr?til chybn? datov? typ", de = "FEHLER: Abschnitt gab falschen Typ zur?ck", + el = "??????: ? ???? ???????????? ????????? ????? ???? ?????????", en_GB = "BUG: stage returned wrong type", es = "FALLO: la etapa ha devuelto tipo err?neo", fi = "BUGI: vaihe palautti v??r?? tyyppi?", + fr = "BUG: L'?tape renvoie un mauvais type de donn?es", nb = "FEIL: niv? returnerte feil type", - nds = "Fehler: Stage R?ckgabewert ist vom falschen Typ", + nds = "BUG: Stage R?ckgabewert ist vom falschen Typ", nl = "BUG: stadium gaf verkeerd type op", pt = "BUG: A etapa retornou um tipo errado", - ru = "???: ???? ????? ??????????? ??? ??????????", + ru = "??????: ???? ????? ??????????? ???", + sk = "CHYBA: f?za vr?tila nespr?vny typ", sv = "FEL: niv? returnerade fel typ" }; @@ -635,13 +742,17 @@ ["BUG: stage returned wrong value"] = { cs = "CHYBA: instala?n? krok vr?til chybnou hodnotu", de = "FEHLER: Abschnitt gab falschen Wert zur?ck", + el = "??????: ? ???? ???????????? ????????? ????? ????", en_GB = "BUG: stage returned wrong value", es = "FALLO: la etapa ha devuelto valor err?neo", fi = "BUGI: vaihe palautti v??r?n arvon", + fr = "BUG: L'?tape renvoie une mauvaise valeur", nb = "FEIL: niv? returnerte feil verdi", + nds = "Fehler: stage gab falschen Wert zur?ck", nl = "BUG: stadium gaf verkeerde waarde terug", pt = "BUG: A etapa retornou um valor errado", - ru = "???: ???? ????? ??????????? ?????????", + ru = "??????: ???? ????? ??????????? ?????????", + sk = "CHYBA: f?za vr?tila nespr?vnu hodnotu", sv = "FEL: niv? returnerade fel v?rde" }; @@ -652,13 +763,17 @@ ["BUG: stepped back over start of stages"] = { cs = "CHYBA: pokus o krok zp?t p?ed za??tek instalace", de = "FEHLER: ?ber den Startabschnitt hinaus zur?ckgegangen", + el = "??????: ???????? ? ????????? ?? ??????????? ???? ??? ??? ???????", en_GB = "BUG: stepped back over start of stages", es = "FALLO: retroceso m?s atr?s del inicio de las etapas", fi = "BUGI: palattiin ensimm?isen vaiheen ohi", + fr = "BUG: Retourn? au d?but des ?tapes", nb = "FEIL: Gikk tilbake forbi startniv?", + nds = "BUG: Zur?ck vor dem ersten Vorgang", nl = "BUG: teruggegaan naar voor eerste stadium.", pt = "BUG: Retrocedeu na primeira etapa", - ru = "???: ???? ????? ????? ??????? ?????", + ru = "??????: ?????? ???? ???????? ?????? \"?????\"", + sk = "CHYBA: vr?tili ste sa pred za?iatok po?iato?nej f?zy", sv = "FEL: Gick tillbaka f?rbi startniv?" }; @@ -670,9 +785,13 @@ en_GB = "BUG: Unhandled data type", es = "FALLO: Tipo de datos sin manipular", fi = "BUGI: K?sittelem?t?n datatyyppi", + fr = "BUG: Type de fichier inconnu", nb = "FEIL: Uh?ndtert datatype", + nds = "BUG: Unbehandelter Datentyp", nl = "BUG: onbekend data type", pt = "BUG: tipo sem tratamento", + ru = "??????: ???????????????? ??? ??????", + sk = "CHYBA: Nespracovate?n? typ d?t", sv = "FEL: Ohanterad datatyp" }; @@ -682,13 +801,17 @@ ["BUG: Can't duplicate tar inputs"] = { cs = "CHYBA: Nemohu zduplikovat vstupy z taru", de = "FEHLER: Tar-Eingaben k?nnen nicht dupliziert werden", + el = "??????: ??? ????? ??????? ????????? ??? ????????? ??????? ??? \"tar\"", en_GB = "BUG: Can't duplicate tar inputs", es = "FALLO: No se pueden duplicar las entradas tar", fi = "BUGI: tar-sy?tteit? ei voida kahdentaa", + fr = "BUG: Impossible de dupliquer les entr?es tar", nb = "FEIL: Kan ikke duplisere innfiler for tar", + nds = "Fehler: Kann tar-Eingabe nicht duplizieren", nl = "BUG: kan tar input kan niet gedupliceerd woorden.", pt = "BUG: Imposs?vel duplicar as entradas do tar", - ru = "???: ?? ????? ??????????? ???? tar", + ru = "??????: ?????? ??????????? ???????? ?????? ??? tar", + sk = "CHYBA: Nem??ete duplikova? tar vstupy", sv = "FEL: Kan inte duplicera infiler f?r tar" }; @@ -698,13 +821,16 @@ ["BUG: Unexpected value"] = { cs = "CHYBA: Neo?ek?van? hodnota", de = "FEHLER: Unerwarteter Wert", + el = "??????: ?? ??????????? ????", en_GB = "BUG: Unexpected value", es = "FALLO: Valor inesperado", fi = "BUGI: Odottamaton arvo", - nds = "Unerwarteter Wert", + fr = "BUG: Valeur inattendue", + nds = "BUG: Unerwarteter Wert", nl = "BUG: Onverwachte waarde", pt = "BUG: Valor inexperado", - ru = "???: ??????????? ?????", + ru = "??????: ??????????? ????????", + sk = "CHYBA: Neo?ak?van? hodnota", sv = "FEL: Ov?ntat v?rde" }; @@ -716,15 +842,18 @@ ["BUG: Config %0 %1"] = { cs = "CHYBA: Konfigura?n? hodnota %0 %1", de = "FEHLER: Konfiguration %0 %1", + el = "??????: ?????????? %0 %1", en_GB = "BUG: Config %0 %1", es = "FALLO: Configuraci?n %0 %1", fi = "BUGI: Config %0 %1", + fr = "BUG: Config %0 %1", it = "BUG: Config %0 %1", nb = "FEIL: Konfigurasjon %0 %1", - nds = "Fehler: Config %0 %1", + nds = "BUG: Config %0 %1", nl = "BUG: configuratie %0 %1", pt = "BUG: Configura??o %0 %1", - ru = "???: ????? %0 %1", + ru = "??????: ????? %0 %1", + sk = "CHYBA: Config %0 %1", sv = "FEL: Konfiguration %0 %1" }; @@ -732,6 +861,7 @@ ["must be explicitly specified"] = { cs = "mus? b?t explicitn? ur?en", de = "muss explizit angegeben werden", + el = "?????? ?? ??????? ????", en_GB = "must be explicitly specified", es = "debe ser especificado expl?citamente", fi = "t?ytyy m??ritell? t?sm?llisesti", @@ -740,14 +870,17 @@ nds = "muss ausdr?cklich spezifiziert werden", nl = "moet expliciet gespecifieerd worden", pt = "Tem que ser especificado explicitamente", - ru = "?????? ???? ??????? ?????", - sv = "m?ste vara explicit specifierad" + ru = "?????? ???? ??????? ????", + sk = "mus? by? explicitne ?pecifikovan?", + sv = "m?ste vara explicit specifierad", + zh_TW = "??????" }; -- This is an error string for a buggy config element. See notes above. ["must be string or table of strings"] = { cs = "mus? b?t ?et?zcem nebo tabulkou ?et?zc?", de = "muss ein String oder eine Tabelle von Strings sein", + el = "?????? ?? ????? ??? ????????????? ? ??????? ??? ?????????????", en_GB = "must be string or table of strings", es = "debe ser una cadena o tabla de cadenas", fi = "t?ytyy olla merkkijono tai merkkijonotaulukko", @@ -756,7 +889,8 @@ nds = "muss String oder Tabelle von Strings sein", nl = "moet een string of een tabel met strings zijn", pt = "Tem que ser uma express?o ou uma tabela de express?es", - ru = "?????? ???? ??????? ??? ???????? ? ????????", + ru = "?????? ???? ??????? ??? ???????? ?????", + sk = "mus? by? re?azec alebo tabu?ka re?azcov", sv = "m?ste vara en str?ng eller en tabell av str?ngar" }; @@ -764,22 +898,26 @@ ["must be a string or number"] = { cs = "mus? b?t ?et?zcem nebo ??slem", de = "muss ein String oder eine Zahl sein", + el = "?????? ?? ????? ????????????? ? ???????", en_GB = "must be a string or number", es = "debe ser una cadena o un n?mero", fi = "t?ytyy olla merkkijono tai luku", fr = "doit ?tre une cha?ne de caract?res ou un nombre", nb = "m? v?re streng eller nummer", - nds = "muss string oder number sein", + nds = "muss String oder Nummer sein", nl = "moet een string of een nummer zijn", pt = "Tem que ser uma express?o ou um n?mero", - ru = "?????? ??????? ??? ???????", - sv = "m?ste vara en str?ng eller ett nummer" + ru = "?????? ???? ??????? ??? ??????", + sk = "mus? by? re?azec alebo ??slo", + sv = "m?ste vara en str?ng eller ett nummer", + zh_TW = "????????" }; -- This is an error string for a buggy config element. See notes above. ["can't be empty string"] = { cs = "nem??e b?t pr?zdn?m ?et?zcem", de = "darf kein leerer String sein", + el = "??? ?????? ?? ????? ????? ?????????????", en_GB = "can't be empty string", es = "no puede ser una cadena vac?a", fi = "ei saa olla tyhj? merkkijono", @@ -788,14 +926,17 @@ nds = "kann String nicht leeren", nl = "kan geen lege string zijn", pt = "N?o pode ser uma express?o vazia", - ru = "?? ????? ???? ?????? ???????", - sv = "kan inte vara en tom str?ng" + ru = "?? ????? ???? ?????? ???????", + sk = "nem??e by? re?azec", + sv = "kan inte vara en tom str?ng", + zh_TW = "??????" }; -- This is an error string for a buggy config element. See notes above. ["URL doesn't have protocol"] = { cs = "URL nem? ur?en? protokol", de = "URL hat kein Protokoll", + el = "?? URL ??? ???????? ????????? ??????????", en_GB = "URL doesn't have protocol", es = "URL sin especificar protocolo", fi = "URL ei sis?ll? protokollaa", @@ -804,14 +945,17 @@ nds = "URL hat kein Protokoll", nl = "URL heeft geen protocol", pt = "O URL n?o tem o protocolo", - ru = "?? ????? ????????? ??? URL", - sv = "URL saknar protokoll" + ru = "URL ?? ???????? ????????", + sk = "URL neur?uje protokol", + sv = "URL saknar protokoll", + zh_TW = "URL ??????" }; -- This is an error string for a buggy config element. See notes above. ["URL doesn't have host"] = { cs = "URL nem? ur?en?ho hostitele", de = "URL hat keinen Host", + el = "?? URL ??? ???????? ????????? ??????????", en_GB = "URL doesn't have host", es = "URL sin especificar host", fi = "URL ei sis?ll? palvelinta", @@ -820,13 +964,17 @@ nds = "URL hat keinen Host", nl = "URL heeft geen host", pt = "O URL n?o tem servidor", - sv = "URL saknar v?rd" + ru = "URL ?? ???????? ????", + sk = "URL neobsahuje hostite?a", + sv = "URL saknar v?rd", + zh_TW = "URL ????" }; -- This is an error string for a buggy config element. See notes above. ["URL doesn't have path"] = { cs = "URL nem? ur?enou cestu", de = "URL hat keinen Pfad", + el = "?? URL ??? ???????? ?? ????????", en_GB = "URL doesn't have path", es = "URL sin especificar ruta", fi = "URL ei sis?ll? polkua", @@ -834,13 +982,17 @@ nb = "URL har ikke sti", nds = "URL hat keinen Pfad", pt = "O URL n?o tem recurso", - sv = "URL saknar s?kv?g" + ru = "URL ?? ???????? ????", + sk = "URL neobsahuje cestu", + sv = "URL saknar s?kv?g", + zh_TW = "URL ????" }; -- This is an error string for a buggy config element. See notes above. ["URL protocol is unsupported"] = { cs = "Protokol v URL je nepodporovan?", de = "URL Protokoll wird nicht unterst?tzt", + el = "?? ????????? ??? ???????? ?? URL ??? ?????????????", en_GB = "URL protocol is unsupported", es = "Protocolo de URL no soportado", fi = "URL:n protokollaa ei tueta", @@ -849,8 +1001,10 @@ nds = "URL Protokoll wird nicht unterst?tzt", nl = "protocol van URL wordt niet ondersteund", pt = "O protocolo do URL n?o ? suportado", - ru = "URL ????????? ?? ?????????", - sv = "URL-protokollet har inget st?d" + ru = "???????? URL ?? ??????????????", + sk = "URL protokol nieje podporovan?", + sv = "URL-protokollet har inget st?d", + zh_TW = "URL ???????" }; -- This is an error string for a buggy config element. See notes above. @@ -859,6 +1013,7 @@ ["Permission string is invalid"] = { cs = "?et?zec s opr?vn?n?mi je neplatn?", de = "Berechtigungsstring ist ung?ltig", + el = "?? ????????????? ??? ?????????? ?? ?????????? ????? ?????.", en_GB = "Permission string is invalid", es = "Cadena de permisos no v?lida", fi = "oikeuksia m??ritt?v? merkkijono ei ole kelvollinen", @@ -868,7 +1023,8 @@ nds = "Zugriffsberechtigungs String ist ung?ltig", nl = "Permissie string is niet geldig", pt = "A express?o de permiss?o n?o ? v?lida", - ru = "????? ?? ??????????", + ru = "?????? ???? ??????? ???????????", + sk = "Re?azec pr?v je neplatn?", sv = "R?ttighetsstr?ngen ?r ogiltig" }; @@ -877,6 +1033,7 @@ ["is not a valid property"] = { cs = "nen? platnou vlastnost?", de = "ist keine g?ltige Eigenschaft", + el = "??? ????? ?????? ????????", en_GB = "is not a valid property", es = "no es un atributo v?lido", fi = "ei ole kelvollinen m??rite", @@ -886,6 +1043,8 @@ nds = "ist keine g?ltige Eigenschaft", nl = "is geen geldige eigenschap", pt = "n?o ? uma propriedade v?lida", + ru = "???????????? ????????", + sk = "nieje spr?vnym atrib?tom", sv = "?r inte ett giltigt attribut" }; @@ -894,6 +1053,7 @@ ["must be %0"] = { cs = "mus? b?t %0", de = "muss vom Typ %0 sein", + el = "?????? ?? ????? %0", en_GB = "must be %0", es = "debe ser %0", fi = "t?ytyy olla %0", @@ -904,13 +1064,16 @@ nl = "moet %0 zijn", pt = "tem que ser %0", ru = "?????? ???? %0", - sv = "m?ste vara %0" + sk = "mus? by? %0", + sv = "m?ste vara %0", + zh_TW = "??? %0" }; -- Data type for "must be %0" above... ["string"] = { cs = "?et?zec", de = "String", + el = "?????????????", en_GB = "string", es = "cadena", fi = "merkkijono", @@ -921,13 +1084,16 @@ nl = "string", pt = "express?o", ru = "???????", - sv = "str?ng" + sk = "re?azec", + sv = "str?ng", + zh_TW = "??" }; -- Data type for "must be %0" above... ["boolean"] = { cs = "booleovsk? hodnota", de = "Bool", + el = "boolean", en_GB = "boolean", es = "booleano", fi = "totuusarvo", @@ -937,30 +1103,37 @@ nds = "boolean", nl = "boolean", pt = "boleano", - sv = "boolskt v?rde" + ru = "???????", + sk = "booleovsk? hodnota", + sv = "boolskt v?rde", + zh_TW = "???" }; -- Data type for "must be %0" above... ["number"] = { cs = "??slo", de = "Zahl", + el = "???????", en_GB = "number", es = "n?mero", fi = "luku", fr = "nombre", it = "numero", nb = "nummer", - nds = "number", + nds = "Nummer", nl = "nummer", pt = "n?mero", ru = "??????", - sv = "nummer" + sk = "??slo", + sv = "nummer", + zh_TW = "??" }; -- Data type for "must be %0" above... ["function"] = { cs = "funkce", de = "Funktion", + el = "function", en_GB = "function", es = "funci?n", fi = "funktio", @@ -971,13 +1144,16 @@ nl = "functie", pt = "fun??o", ru = "????????", - sv = "funktion" + sk = "funkcia", + sv = "funktion", + zh_TW = "??" }; -- Data type for "must be %0" above... ["table"] = { cs = "tabulka", de = "Tabelle", + el = "???????", en_GB = "table", es = "tabla", fi = "taulukko", @@ -988,7 +1164,9 @@ nl = "tabel", pt = "tabela", ru = "????????", - sv = "tabell" + sk = "tabu?ka", + sv = "tabell", + zh_TW = "??" }; -- bzlib is a proper name. The error message (%0) may not be localized, @@ -996,6 +1174,7 @@ ["bzlib triggered an internal error: %0"] = { cs = "bzlib vyvolalo vnit?n? chybu: %0", de = "bzlib hat einen internen Fehler ausgel?st: %0", + el = "?? bzlib ?????????? ????????? ??????: %0", en_GB = "bzlib triggered an internal error: %0", es = "bzlib ha provocado un error interno: %0", fi = "bzlib laukaisi sis?isen virheen: %0", @@ -1004,6 +1183,8 @@ nds = "bzlib l?ste eine internen Fehler aus: %0", nl = "bzlib heeft een interne fout veroorzaakt: %0", pt = "A bzlib despoletou um erro interno: %0", + ru = "????????? ?????? ? bzlib: %0", + sk = "bzlib sp?sobilo vn?torn? chybu: %0", sv = "internt fel i bzlib: %0" }; @@ -1012,6 +1193,7 @@ ["Cancel"] = { cs = "Zru?it", de = "Abbrechen", + el = "?????", en_GB = "Cancel", es = "Cancelar", fi = "Peru", @@ -1022,7 +1204,9 @@ nl = "Annuleren", pt = "Cancelar", ru = "????????", - sv = "Avbryt" + sk = "Zru?", + sv = "Avbryt", + zh_TW = "??" }; -- This is a message box title when prompting for confirmation when the @@ -1030,6 +1214,7 @@ ["Cancel installation"] = { cs = "Zru?it instalaci", de = "Installation abbrechen", + el = "??????? ????????????", en_GB = "Cancel installation", es = "Cancelar instalaci?n", fi = "Peru asennus", @@ -1040,7 +1225,9 @@ nl = "Installatie afbreken?", pt = "Cancelar a instala??o", ru = "???????? ?????????", - sv = "Avbryt installationen" + sk = "Zru? in?tal?ciu", + sv = "Avbryt installationen", + zh_TW = "????" }; -- This error is reported for i/o failures while listing files contained @@ -1048,12 +1235,16 @@ ["Couldn't enumerate archive"] = { cs = "Nemohu proj?t archiv", de = "Archiv kann nicht aufgelistet werden", + el = "??? ????? ?????? ? ?????????? ??? ??????? ???????", en_GB = "Couldn't enumerate archive", es = "No se puede enumerar el archivo", fi = "Paketin tiedostojen listaus ep?onnistui", fr = "Ne peux pas ?num?rer les fichiers de l'archive", nb = "Kunne ikke liste filer i arkivet", + nds = "Konnte Archive nicht nummerieren", pt = "Foi imposs?vel enumerar o arquivo", + ru = "?? ???? ????????? ?????", + sk = "Nem??em prelistova? arch?v", sv = "Kunde inte lista filen" }; @@ -1062,6 +1253,7 @@ ["Couldn't open archive"] = { cs = "Nemohu otev??t archiv", de = "Archiv kann nicht ge?ffnet werden", + el = "??? ??????? ?? ??????? ?? ??????", en_GB = "Couldn't open archive", es = "No se puede abrir el archivo", fi = "Paketin purkaminen ep?onnistui", @@ -1071,7 +1263,8 @@ nds = "Kann Archiv nicht ?ffnen", nl = "Kon archief niet openen", pt = "Foi imposs?vel abrir o arquivo", - ru = "?? ????? ??????? ?????", + ru = "?? ???? ??????? ?????", + sk = "Nem??em otvori? arch?v", sv = "Kunde inte ?ppna filen" }; @@ -1087,15 +1280,17 @@ ["Choose number to change."] = { cs = "Zadejte ??slo pro zm?nu.", de = "W?hlen Sie eine Nummer zum ?ndern.", + el = "???????? ??? ?????? ??? ?????? ?? ????????.", en_GB = "Choose number to change.", es = "Elegir n?mero para cambiar", fi = "Valitse muutettavan numero.", - fr = "Entrez le num?ro de l'option ? changer.", + fr = "Entrez le num?ro de l'option ? modifier.", nb = "Velg nummer som skal endres.", nds = "W?hle eine Nummer zum ?ndern", nl = "Kies een nummer om te veranderen", pt = "Escolha um n?mero para alterar", - ru = "???????? ????? ????? ????????", + ru = "???????? ????? ??? ?????????", + sk = "Vyberte pomocou ??sla ak chcete zmeni? nastavenie", sv = "V?lj nummer som skall ?ndras." }; @@ -1104,6 +1299,7 @@ ["Conflict!"] = { cs = "Konflikt!", de = "Konflikt!", + el = "???????!", en_GB = "Conflict!", es = "?Conflicto!", fi = "Ristiriita!", @@ -1113,7 +1309,9 @@ nl = "Conflict!", pt = "Conflito!", ru = "????????!", - sv = "Konflikt!" + sk = "Konflikt!", + sv = "Konflikt!", + zh_TW = "???" }; -- This is an error message shown to the user. When a file is to be @@ -1124,12 +1322,17 @@ ["Couldn't backup file for rollback"] = { cs = "Nemohu zaz?lohovat soubor pro obnovu", de = "Konnte Datei nicht zur Wiederherstellung sichern", + el = "??? ????? ?????? ? ????????? ????????? ??? ????? ?? ????????? ??????????", en_GB = "Couldn't backup file for rollback", es = "No se pudo guardar el archivo para inversi?n", fi = "Tiedoston varmuuskopionti ei onnistunut", + fr = "Impossible de faire une copie de secours du fichier", nb = "Kunne ikke sikkerhetskopiere fil for tilbakerulling", + nds = "Datei konnte f?r die Wiederherstellung nicht gesichert werden", nl = "Kon bestand niet backupen om de installatie terug te kunnen draaien", pt = "Foi imposs?vel salvaguardar o ficheiro para refazer as ac??es", + ru = "?? ???? ????????? ????? ????? ??? ??????????????", + sk = "Nem??em z?lohova? s?bor pre obnovu", sv = "Kunde inte s?kerhetskopiera filen f?r ?terst?llning" }; @@ -1141,6 +1344,7 @@ ["Couldn't create manifest"] = { cs = "Nemohu vytvo?it manifest", de = "Konnte Manifest nicht erstellen", + el = "??? ??????? ?? ???????????? ?? \"manifest\"", en_GB = "Couldn't create manifest", es = "No se pod?a crear manifest", fi = "Asennusluettelon luominen ep?onnistui", @@ -1149,6 +1353,8 @@ nds = "Erstellen des Manifests schlug fehl.", nl = "Kon het installatiemanifest niet maken", pt = "Foi imposs?vel criar o manifesto", + ru = "?? ???? ??????? ????????", + sk = "Nem??em vytvori? manifest", sv = "Kunde inte skapa manifest" }; @@ -1157,6 +1363,7 @@ ["Deletion failed!"] = { cs = "Maz?n? selhalo!", de = "L?schen fehlgeschlagen!", + el = "??????? ? ????????!", en_GB = "Deletion failed!", es = "?Borrado fallido!", fi = "Tiedoston poisto ep?onnistui!", @@ -1166,8 +1373,10 @@ nds = "L?schen fehlgeschlagen!", nl = "Verwijderen mislukt!", pt = "A remo??o falhou!", - ru = "?? ?????? ???????!", - sv = "Kunde inte radera!" + ru = "?? ???? ???????!", + sk = "Odstra?ovanie s?boru zlyhalo!", + sv = "Kunde inte radera!", + zh_TW = "????" }; -- This is a label displayed next to the text entry in the GTK+ UI where @@ -1176,6 +1385,7 @@ ["Folder:"] = { cs = "Slo?ka:", de = "Verzeichnis:", + el = "???????:", en_GB = "Folder:", es = "Carpeta:", fi = "Kansio:", @@ -1186,13 +1396,16 @@ nl = "Map:", pt = "Directoria:", ru = "?????:", - sv = "Katalog:" + sk = "Adres?r:", + sv = "Katalog:", + zh_TW = "????" }; -- This is a window title when user is selecting a path to install files. ["Destination"] = { cs = "C?l", de = "Ziel", + el = "??????????", en_GB = "Destination", es = "Destino", fi = "Kohde", @@ -1203,7 +1416,9 @@ nl = "Bestemming", pt = "Destino", ru = "??????????", - sv = "M?l" + sk = "Cie?", + sv = "M?l", + zh_TW = "???" }; -- This is a window title while the program is downloading external files @@ -1211,6 +1426,7 @@ ["Downloading"] = { cs = "Stahuji", de = "Lade herunter", + el = "??????? ????", en_GB = "Downloading", es = "Descargando", fi = "Noudetaan", @@ -1220,8 +1436,10 @@ nds = "Lade herunter", nl = "Bezig met downloaden", pt = "A descarregar", - ru = "???? ??????????", - sv = "H?mtar" + ru = "?????????? ??????", + sk = "S?ahujem", + sv = "H?mtar", + zh_TW = "???" }; -- Several UIs use this string as a prompt to the end-user when selecting @@ -1229,6 +1447,7 @@ ["Enter path where files will be installed."] = { cs = "Zadejte cestu, kam maj? b?t soubory nainstalov?ny.", de = "Geben Sie den Pfad an, wohin die Dateien installiert werden sollen.", + el = "????? ?? ???????? ??? ?? ????????????? ?? ??????.", en_GB = "Enter path where files will be installed.", es = "Introduce la ruta donde los archivos ser?n instalados", fi = "Sy?t? polku, johon tiedostot asennetaan.", @@ -1238,13 +1457,17 @@ nds = "Pfad eingeben, in den installiert werden soll.", nl = "Geef de map op waar de bestanden geinstalleerd zullen worden", pt = "Introduza o caminho para os ficheiros que ser?o instalados.", - sv = "V?lj den mapp d?r filerna ska installeras." + ru = "??????? ???? ???? ????? ??????????? ?????????.", + sk = "Zadajte cestu kam chcete in?talova?", + sv = "V?lj den mapp d?r filerna ska installeras.", + zh_TW = "??????????" }; -- Error message when a file we expect to load can't be read from disk. ["failed to load file '%0'"] = { cs = "nepoda?ilo se na??st soubor '%0'", de = "Laden von Datei '%0' fehlgeschlagen", + el = "??????? ?? ??????? ??? ??????? '%0'", en_GB = "failed to load file '%0'", es = "no se pudo leer el archivo '%0'", fi = "tiedoston \"%0\" lukeminen ep?onnistui", @@ -1253,14 +1476,17 @@ nds = "Fehler beim Laden von '%0'", nl = "laden van bestand \"%0\" mislukt", pt = "falhou a carregar o filheiro '%0'", - ru = "?? ?????? ????????? ???? '%0'", - sv = "Misslyckades med att l?sa filen '%0'" + ru = "?? ???? ????????? ???? '%0'", + sk = "nem??em nahra? s?bor '%0'", + sv = "Misslyckades med att l?sa filen '%0'", + zh_TW = "?????? '%0'" }; -- This is a window title when something goes very wrong. ["Fatal error"] = { cs = "Kritick? chyba", de = "Schwerer Fehler", + el = "??????? ??????", en_GB = "Fatal error", es = "Error grave", fi = "Ylitsep??sem?t?n virhe", @@ -1271,29 +1497,36 @@ nl = "Fatale fout", pt = "Erro fatal", ru = "????????? ??????", - sv = "Allvarligt fel" + sk = "Z?VA?N? CHYBA", + sv = "Allvarligt fel", + zh_TW = "????" }; -- This is an error message when failing to write a file to disk. ["File creation failed!"] = { cs = "Nepoda?ilo se vytvo?it soubor!", de = "Dateierstellung fehlgeschlagen!", + el = "? ??????????? ??????? ???????!", en_GB = "File creation failed!", es = "?Escritura de archivo ha fallado!", fi = "Tiedoston luominen ep?onnistui!", fr = "Cr?ation de fichier ?chou?e!", it = "Creazione file fallita", nb = "Kunne ikke lage fil!", + nds = "Datei Erstellung ist fehlgeschlagen!", nl = "aanmaken bestand mislukt!", pt = "Falhou a cria??o do ficheiro!", - ru = "?? ?????? ??????? ????!", - sv = "Misslyckades med att skapa fil!" + ru = "?? ???? ??????? ????!", + sk = "Nem??em vytvori? s?bor!", + sv = "Misslyckades med att skapa fil!", + zh_TW = "???????" }; -- This is an error message when failing to get a file from the network. ["File download failed!"] = { cs = "Nepoda?ilo se st?hnout soubor!", de = "Dateidownload fehlgeschlagen!", + el = "? ???? ??????? ???????!", en_GB = "File download failed!", es = "?Descarga de archivo ha fallado!", fi = "Tiedoston noutaminen ep?onnistui!", @@ -1303,7 +1536,8 @@ nds = "Dateidownload fehlgeschlagen!", nl = "downloaden van bestand mislukt!", pt = "Falhou a descarregar!", - ru = "?? ?????? ??????? ????!", + ru = "?????? ?????????? ?????!", + sk = "S?ahovanie zlyhalo!", sv = "H?mtning av fil misslyckades!" }; @@ -1312,6 +1546,7 @@ ["File '%0' already exists! Replace?"] = { cs = "Soubor '%0' ji? existuje! P?epsat?", de = "Datei '%0' existiert bereits! Ersetzen?", + el = "?? ?????? '%0' ??????? ???! ??????????????", en_GB = "File '%0' already exists! Replace?", es = "?El archivo '%0' ya existe! ?Sustituirlo?", fi = "Tiedosto \"%0\" on jo olemassa! Korvaa?", @@ -1321,8 +1556,10 @@ nds = "Datei '%0' existiert bereits! ?berschreiben?", nl = "Bestand \"%0\" bestaat al! Vervangen?", pt = "O ficheiro '%0' j? existe! Substituir?", - ru = "??? ???? ???? '%0'. ?????? ?????????", - sv = "Filen '%0' existerar redan! Vill du ers?tta filen?" + ru = "???? '%0' ??? ??????????! ?????????", + sk = "S?bor '%0' u? existuje! Prep?sa??", + sv = "Filen '%0' existerar redan! Vill du ers?tta filen?", + zh_TW = "?? '%0' ??????????" }; -- This is a button in the UI. It replaces "Next" when there are no more @@ -1330,6 +1567,7 @@ ["Finish"] = { cs = "Dokon?it", de = "Fertig stellen", + el = "?????", en_GB = "Finish", es = "Terminar", fi = "Valmis", @@ -1339,8 +1577,10 @@ nds = "Fertig", nl = "Voltooien", pt = "Finalizar", - ru = "?????????", - sv = "Slutf?r" + ru = "??????????", + sk = "Dokon?i?", + sv = "Slutf?r", + zh_TW = "??" }; -- This error message is (hopefully) shown to the user if the UI @@ -1348,6 +1588,7 @@ ["GUI failed to start"] = { cs = "Nepoda?ilo se spustit GUI", de = "GUI konnte nicht gestartet werden", + el = "?? ??????? ?????????? ??????? ?? ?????????", en_GB = "GUI failed to start", es = "El interfaz gr?fico de usuario ha fallado al arrancar", fi = "Graafinen k?ytt?liittym? ei k?ynnistynyt", @@ -1356,8 +1597,10 @@ nds = "Fehler beim starten der GUI", nl = "Opstarten GUI mislukt", pt = "O GUI falhou a iniciar", - ru = "??????????? ??????? ?? ???? ??????????", - sv = "Kunde inte starta grafisk gr?nssnitt" + ru = "?????? ??????? ???????????? ??????????", + sk = "Nieje mo?n? spusti? GUI", + sv = "Kunde inte starta grafisk gr?nssnitt", + zh_TW = "???????????" }; -- This message is shown to the user if an installation encounters a fatal @@ -1366,21 +1609,26 @@ ["Incomplete installation. We will revert any changes we made."] = { cs = "Instalace nebyla dokon?ena. V?e bude uvedeno do p?vodn?ho stavu.", de = "Unvollst?ndige Installation. ?nderungen werden r?ckg?ngig gemacht.", + el = "?????????????? ???????????. ?? ??????????? ???? ??????? ??????.", en_GB = "Incomplete installation. We will revert any changes we made.", es = "Instalaci?n incompleta. Vamos a deshacer cualquier cambio que hayamos hecho.", fi = "Asennus j?i kesken. Tehdyt muutokset perutaan.", fr = "Installation incompl?te. Tous les changements effectu?s seront annul?s.", nb = "Installasjonen ble ikke ferdig. Vi vil tilbakestille alle endringer som ble gjort.", + nds = "Unvollst?ndige Installation. Alle Ver?nderungen werden r?ckg?ngig gemacht.", nl = "Incomplete installatie. De veranderingen zullen ongedaan gemaakt worden.", pt = "Instala??o incompleta. Todas as altera??es ser?o desfeitas.", - ru = "?? ?????? ?????????? ?????????. ?? ??????? ??? ????????? ?????????.", - sv = "Ofullst?ndig installation. ?terst?llning av alla gjorda ?ndringar utf?rs." + ru = "?????? ?????????. ??? ????????? ????? ????????.", + sk = "Ne?pln? in?tal?cia. Vraciam spa? vykonan? zmeny.", + sv = "Ofullst?ndig installation. ?terst?llning av alla gjorda ?ndringar utf?rs.", + zh_TW = "?????????????????" }; -- Reported to the user if everything worked out. ["Installation was successful."] = { cs = "Instalace byla ?sp??n?.", de = "Installation war erfolgreich.", + el = "? ??????????? ??????.", en_GB = "Installation was successful.", es = "La instalaci?n fue un ?xito.", fi = "Asentaminen onnistui.", @@ -1391,7 +1639,9 @@ nl = "De installatie is succesvol verlopen.", pt = "A instala??o foi bem sucedida.", ru = "????????? ???? ???????.", - sv = "Installationen lyckades." + sk = "In?tal?cia je hotov?.", + sv = "Installationen lyckades.", + zh_TW = "???????" }; -- This is a window title, shown while the actual installation to disk @@ -1399,17 +1649,20 @@ ["Installing"] = { cs = "Instaluji", de = "Installiere", + el = "??????? ???????????", en_GB = "Installing", es = "Instalando", fi = "Asennetaan", - fr = "En cours d'installation", + fr = "Installation en cours", it = "Installazione in corso", nb = "Installerer", nds = "Installiere ...", nl = "Installeren", pt = "A instalar", - ru = "?????????????", - sv = "Installerar" + ru = "?????????", + sk = "In?talujem", + sv = "Installerar", + zh_TW = "????" }; -- This is a window title, shown while the user is choosing @@ -1417,6 +1670,7 @@ ["Options"] = { cs = "Volby", de = "Optionen", + el = "????????", en_GB = "Options", es = "Opciones", fi = "Valinnat", @@ -1426,8 +1680,10 @@ nds = "Optionen", nl = "Opties", pt = "Op??es", - ru = "?????????", - sv = "Alternativ" + ru = "?????????", + sk = "Mo?nosti", + sv = "Alternativ", + zh_TW = "??" }; -- Shown as an option in the ncurses UI as the final element in a list of @@ -1436,21 +1692,27 @@ ["(I want to specify a path.)"] = { cs = "(Chci ur?it cestu.)", de = "(Ich m?chte einen Pfad angeben.)", + el = "(???? ?? ????? ????????.)", en_GB = "(I want to specify a path.)", es = "(Quiero especificar una ruta.)", fi = "(Haluan sy?tt?? polun.)", fr = "(Je veux sp?cifier une destination.)", it = "(Voglio specificare un percorso)", nb = "(Jeg vil skrive inn min egen sti.)", + nds = "(Ich m?chte einen Pfad angeben.)", nl = "(Ik wil een pad specificeren.)", pt = "(Eu quero especificar o caminho.)", - sv = "(Jag vill skriva in en egen s?kv?g.)" + ru = "(??????? ????.)", + sk = "(Chcem zada? cestu ru?ne)", + sv = "(Jag vill skriva in en egen s?kv?g.)", + zh_TW = "?????????" }; -- "kilobytes per second" ... download rate. ["KB/s"] = { cs = "KB/s", de = "KB/s", + el = "KB/????.", en_GB = "KB/s", es = "KB/s", fi = "kt/s", @@ -1460,14 +1722,17 @@ nds = "kB/s", nl = "KB/s", pt = "KB/s", - ru = "??/?", - sv = "KB/s" + ru = "??/?", + sk = "KB/s", + sv = "KB/s", + zh_TW = "KB/?" }; -- "bytes per second" ... download rate. ["B/s"] = { cs = "B/s", de = "B/s", + el = "B/????", en_GB = "B/s", es = "B/s", fi = "t/s", @@ -1477,7 +1742,8 @@ nds = "B/s", nl = "B/s", pt = "B/s", - ru = "?/?", + ru = "?/?", + sk = "B/s", sv = "B/s" }; @@ -1486,6 +1752,7 @@ ["%0 %1"] = { cs = "%0 %1", de = "%0 %1", + el = "%0 %1", en_GB = "%0 %1", es = "%0 %1", fi = "%0 %1", @@ -1496,6 +1763,7 @@ nl = "%0 %1", pt = "%0 %1", ru = "%0 %1", + sk = "%0 %1", sv = "%0 %1" }; @@ -1505,6 +1773,7 @@ ["%0 %1, %2:%3:%4 remaining"] = { cs = "%0 %1, %2:%3:%4 zb?v?", de = "%0 %1, %2:%3:%4 verbleibend", + el = "%0 %1, ????????? %2:%3:%4", en_GB = "%0 %1, %2:%3:%4 remaining", es = "%0 %1, %2:%3:%4 restantes", fi = "%0 %1, %2:%3:%4 j?ljell?", @@ -1514,6 +1783,7 @@ nl = "%0 %1, %2:%3:%4 resterend", pt = "restam %0 %1, %2:%3:%4", ru = "%0 %1, ???????? %2:%3:%4", + sk = "%0 %1, %2:%3:%4 zost?va", sv = "%0 %1, %2:%3:%4 ?terst?r" }; @@ -1521,6 +1791,7 @@ ["stalled"] = { cs = "zaseknut?", de = "wartend", + el = "????? ???????", en_GB = "stalled", es = "parado", fi = "seisahtunut", @@ -1531,6 +1802,7 @@ nl = "geen progressie", pt = "Parado", ru = "????????", + sk = "zastaven?", sv = "avstannad" }; @@ -1539,6 +1811,7 @@ ["%0: %1%% (%2)"] = { cs = "%0: %1%% (%2)", de = "%0: %1%% (%2)", + el = "%0: %1%% (%2)", en_GB = "%0: %1%% (%2)", es = "%0: %1%% (%2)", fi = "%0: %1%% (%2)", @@ -1548,6 +1821,7 @@ nl = "%0: %1%% (%2)", pt = "%0: %1%% (%2)", ru = "%0: %1%% (%2)", + sk = "%0: %1%% (%2)", sv = "%0: %1%% (%2)" }; @@ -1555,14 +1829,19 @@ ["Media change"] = { cs = "V?m?na m?dia", de = "Medienwechsel", + el = "?????? ???? ???????????", en_GB = "Media change", es = "Cambio de disco", fi = "Median vaihto", fr = "Changement de m?dia", nb = "Mediaendring", + nds = "Medien Wechsel", nl = "Verwissel medium", pt = "Mudan?a de media", - sv = "Mediabyte" + ru = "????? ?????", + sk = "V?mena m?dia", + sv = "Mediabyte", + zh_TW = "????" }; -- This error message is shown to the end-user when we can't make a new @@ -1570,16 +1849,20 @@ ["Directory creation failed"] = { cs = "Selhalo vytv??en? adres??e", de = "Erstellung eines Verzeichnisses fehlgeschlagen", + el = "? ??????????? ??????? ???????", en_GB = "Directory creation failed", es = "Fallo en la creaci?n de directorio", fi = "Hakemiston luominen ep?onnistui", fr = "Cr?ation de r?pertoire ?chou?e", it = "Creazione directory fallita", nb = "Kunne ikke lage katalog", + nds = "Ordner erstellen schlug fehl!", nl = "Aanmaken folder mislukt", pt = "A cria??o da directoria falhou", - ru = "?? ?????? ??????? ?????", - sv = "Kunde inte skapa katalog" + ru = "?????? ???????? ????????", + sk = "Nem??em vytvori? adres?r", + sv = "Kunde inte skapa katalog", + zh_TW = "??????" }; -- This is a GTK+ button label. The '_' comes before the hotkey character. @@ -1587,6 +1870,7 @@ ["N_ever"] = { cs = "Ni_kdy", de = "Ni_emals", + el = "_????", en_GB = "N_ever", es = "N_unca", fi = "Ei _koskaan", @@ -1595,7 +1879,8 @@ nb = "Al_dri", nds = "N_ie", pt = "N_unca", - ru = "???????", + ru = "?_??????", + sk = "N_ikdy", sv = "Al_drig" }; @@ -1604,6 +1889,7 @@ ["Next"] = { cs = "Dal??", de = "Weiter", + el = "???????", en_GB = "Next", es = "Siguiente", fi = "Seuraava", @@ -1613,14 +1899,17 @@ nds = "Weiter", nl = "Volgende", pt = "Seguinte", - ru = "?????", - sv = "N?sta" + ru = "_?????", + sk = "?alej", + sv = "N?sta", + zh_TW = "???" }; -- This is a GUI button label, indicating a negative response. ["No"] = { cs = "Ne", de = "Nein", + el = "???", en_GB = "No", es = "No", fi = "Ei", @@ -1630,14 +1919,17 @@ nds = "Nein", nl = "Nee", pt = "N?o", - ru = "???", - sv = "Nej" + ru = "_???", + sk = "Nie", + sv = "Nej", + zh_TW = "?" }; -- This is a GUI button label, indicating a positive response. ["Yes"] = { cs = "Ano", de = "Ja", + el = "???", en_GB = "Yes", es = "S?", fi = "Kyll?", @@ -1647,8 +1939,10 @@ nds = "Ja", nl = "Ja", pt = "Sim", - ru = "??", - sv = "Ja" + ru = "_??", + sk = "?no", + sv = "Ja", + zh_TW = "?" }; -- HTTP error message in the www UI, as in "404 Not Found" ... requested @@ -1656,6 +1950,7 @@ ["Not Found"] = { cs = "Nenalezeno", de = "Nicht gefunden", + el = "??? ???????", en_GB = "Not Found", es = "No encontrado", fi = "Ei l?ytynyt", @@ -1666,7 +1961,9 @@ nl = "Niet Gevonden", pt = "Inexistente", ru = "?? ???????", - sv = "Hittades inte" + sk = "Nem??em n?js?", + sv = "Hittades inte", + zh_TW = "???" }; -- This is reported to the user when there are no files to install, and @@ -1674,6 +1971,7 @@ ["Nothing to do!"] = { cs = "Nen? co instalovat!", de = "Nichts zu tun!", + el = "??? ??????? ?????? ??? ?? ?????!", en_GB = "Nothing to do!", es = "?Nada que hacer!", fi = "Ei teht?v??!", @@ -1683,13 +1981,16 @@ nl = "Niets te doen!", pt = "Nada por fazer!", ru = "?????? ??????!", - sv = "Ingenting att g?ra!" + sk = "Nem?m ?o robi?", + sv = "Ingenting att g?ra!", + zh_TW = "?????????" }; -- This is a GUI button label, sometimes paired with "Cancel" ["OK"] = { cs = "OK", de = "OK", + el = "???????", en_GB = "OK", es = "Aceptar", fi = "Hyv?ksy", @@ -1699,8 +2000,10 @@ nds = "OK", nl = "OK", pt = "Aceitar", - ru = "?????", - sv = "OK" + ru = "??", + sk = "OK", + sv = "OK", + zh_TW = "??" }; -- This is displayed when the application has a serious problem, such as @@ -1711,6 +2014,7 @@ ["PANIC"] = { cs = "SELH?N?", de = "PANIK", + el = "???????", en_GB = "PANIC", es = "P?NICO", fi = "H?T?TILA", @@ -1719,23 +2023,29 @@ nds = "PANIK", nl = "PROBLEEM", pt = "P?NICO", - ru = "??????", - sv = "PANIK" + ru = "????????? ??????", + sk = "PANIKA", + sv = "PANIK", + zh_TW = "????" }; -- Prompt shown to user when we need her to insert a new disc. ["Please insert '%0'"] = { cs = "Pros?m vlo?te '%0'", de = "Bitte legen Sie '%0' ein", + el = "???????? ????????? '%0'", en_GB = "Please insert '%0'", es = "Por favor introduce '%0'", fi = "Sy?t? \"%0\"", fr = "Veuillez ins?rer '%0'", nb = "Sett inn '%0'", - nds = "Bitte '%0' in das Laufwerk legen.", + nds = "Bitte '%0' in das Laufwerk einlegen.", nl = "Laadt '%0' a.u.b.", pt = "Por favor insira '%0'", - sv = "S?tt in '%0'" + ru = "????????, ??????????, '%0'", + sk = "Pros?m vlo?te '%0'", + sv = "S?tt in '%0'", + zh_TW = "??? '%0'" }; -- Prompt shown to user in the stdio UI when we need to pause before @@ -1744,16 +2054,20 @@ ["Press enter to continue."] = { cs = "Pro pokra?ov?n? stiskn?te enter.", de = "Dr?cken Sie Enter um fortzufahren", + el = "??????? ENTER ??? ????????.", en_GB = "Press enter to continue.", es = "Presione Intro para continuar.", fi = "Jatka painamalla enter.", fr = "Veuillez appuyer sur Entr?e pour continuer.", it = "Premere invio per continuare.", nb = "Trykk enter for ? fortsette.", - nds = "Dr?cke Enter, um fortzufahren.", - nl = "Toets enter om door te gaan", + nds = "Enter dr?cken, um fortzufahren.", + nl = "Toets enter om door te gaan.", pt = "Pressione enter para continuar.", - sv = "Tryck enter f?r att forts?tta." + ru = "??????? Enter ??? ???????????", + sk = "Stla?te Enter pre pokra?ovanie.", + sv = "Tryck enter f?r att forts?tta.", + zh_TW = "?? [Enter] ????" }; -- This is a window title when informing the user that something @@ -1762,6 +2076,7 @@ ["Serious problem"] = { cs = "Z?va?n? probl?m", de = "Ernstes Problem", + el = "?????? ????????", en_GB = "Serious problem", es = "Problema grave", fi = "Vakava ongelma", @@ -1770,27 +2085,36 @@ nds = "Ernstzunehmender Fehler", nl = "Serieus probleem", pt = "Problema s?rio", - sv = "Allvarligt problem" + ru = "????????? ??????", + sk = "V??ny probl?m", + sv = "Allvarligt problem", + zh_TW = "????" }; -- The www UI uses this as a page title when the program is terminating. ["Shutting down..."] = { cs = "Ukon?uji se...", de = "Schlie?e...", + el = "??????? ???????????...", en_GB = "Shutting down...", es = "Cerrando ...", fi = "Ajetaan alas...", fr = "Fermeture en cours...", nb = "Avslutter...", + nds = "Fahre runter ...", nl = "Afsluiten...", pt = "A terminar...", - sv = "Avslutar..." + ru = "??????????", + sk = "Vyp?nam sa...", + sv = "Avslutar...", + zh_TW = "????" }; -- The www UI uses this as page text when the program is terminating. ["You can close this browser now."] = { cs = "Nyn? m??ete ukon?it tento prohl??e?.", de = "Sie k?nnen diesen Browser nun schlie?en.", + el = "???????? ?? ???????? ????? ??? ????????? ????.", en_GB = "You can close this browser now.", es = "Puedes cerrar este navegador ahora.", fi = "Voit sulkea t?m?n selaimen.", @@ -1800,6 +2124,8 @@ nds = "Sie k?nnen den Browser nun schlie?en.", nl = "U kunt dit scherm nu sluiten.", pt = "J? pode fechar este browser.", + ru = "?????? ??????? ???????.", + sk = "M??ete zavre? tento prehliada?.", sv = "Du kan st?nga denna webbl?sare nu." }; @@ -1808,15 +2134,20 @@ ["Symlink creation failed!"] = { cs = "Selhalo vytv??en? symbolick?ho odkazu!", de = "Erzeugung einer Verkn?pfung fehlgeschlagen!", + el = "??????? ? ??????????? ???? symlink!", en_GB = "Symlink creation failed!", es = "?Creaci?n de enlace simb?lico ha fallado!", fi = "Symbolisen linkin luominen ep?onnistui!", fr = "Cr?ation de lien symbolique ?chou?e!", it = "Creazione del collegamento fallita!", nb = "Kunne ikke lage symbolsk lenke!", + nds = "Symbolischer Link erstellen schlug fehl!", nl = "Aanmaken Symlink mislukt!", pt = "A cria??o de uma liga??o simb?lica falhou!", - sv = "Kunde inte skapa symbolisk l?nk!" + ru = "?????? ???????? ??????!", + sk = "Nem??em vytvori? symlink", + sv = "Kunde inte skapa symbolisk l?nk!", + zh_TW = "??????" }; -- Error message shown to the end-user when the OS has requested @@ -1824,14 +2155,19 @@ ["The installer has been stopped by the system."] = { cs = "Instal?tor byl zastaven sign?lem ze syst?mu.", de = "Das Installationsprogramm wurde vom System gestoppt.", + el = "?? ????????? ???????????? ????????? ??? ?? ???????.", en_GB = "The installer has been stopped by the system.", es = "El instalador ha sido interrumpido por el sistema.", fi = "J?rjestelm? pys?ytti asennusohjelman.", fr = "L'installeur a ?t? interrompu par le syst?me.", nb = "Installasjonsprogrammet ble stoppet av systemet.", + nds = "Der Installer wurde vom System gestoppt.", nl = "Het installatieprogramma is door het systeem gestopt.", pt = "O instalador foi parado pelo sistema.", - sv = "Installationsprogrammet blev stoppat av systemet." + ru = "????????? ????????? ???? ??????????? ????????.", + sk = "In?tal?tor bol zastaven? syst?mom.", + sv = "Installationsprogrammet blev stoppat av systemet.", + zh_TW = "??????????" }; -- Error message shown to the end-user when the program crashes with a @@ -1839,29 +2175,39 @@ ["The installer has crashed due to a bug."] = { cs = "Instal?tor zhavaroval vinou vlastn? chyby.", de = "Das Installationsprogramm ist aufgrund eines Fehlers abgest?rzt.", + el = "?? ????????? ???????????? ?????? ???? ??????? ?????????.", en_GB = "The installer has crashed due to a bug.", es = "El instalador se ha bloqueado por un fallo de memoria.", fi = "Bugi kaatoi asennusohjelman.", fr = "L'installateur a quitt? inopin?ment ? cause d'un bogue.", nb = "Installasjonsprogrammet kr?sjet pga. en feil.", + nds = "Der Installer ist Aufgrund eines Fehlers abgest?rzt.", nl = "Het installatieprogramma is door een bug gecrasht.", pt = "O instalador terminou acidentalmente devido a um erro.", - sv = "Installationsprogrammet kraschade pga. ett fel." + ru = "????????? ????????? ??????????? ??-?? ??????.", + sk = "In?tal?tor havaroval k?li chybe.", + sv = "Installationsprogrammet kraschade pga. ett fel.", + zh_TW = "??????????" }; -- This is a button label in the ncurses ui to flip an option on/off. ["Toggle"] = { cs = "P?epnout", de = "Umschalten", + el = "????????", en_GB = "Toggle", es = "Conmutar", fi = "Vipu", fr = "Basculer", it = "Attiva/Disattiva", nb = "Inverter valg", + nds = "Umschalten", nl = "Aan/Uit", pt = "Alternar", - sv = "V?xla" + ru = "???????????", + sk = "V?ber", + sv = "V?xla", + zh_TW = "??" }; -- This is an error message shown to the end-user when there is an @@ -1870,13 +2216,17 @@ ["Unknown file type in archive"] = { cs = "Nezn?m? typ souboru v archivu.", de = "Unbekannter Dateityp im Archiv", + el = "???????? ????? ??????? ???? ??? ?????? ???????.", en_GB = "Unknown file type in archive", es = "Tipo de fichero desconocido en el archivo", fi = "Paketissa on tiedosto, jonka tyyppi? ei tunneta.", fr = "Type de fichier inconnu dans cette archive.", nb = "Ukjent filtype i arkivet", + nds = "Ubekannter Datey-Typ im Archiv", nl = "Onbekend bestandstype in archief", pt = "Tipo de ficheiro desconhecido no arquivo", + ru = "??????????? ??? ????? ? ??????", + sk = "Nezn?my typ s?boru v arch?ve", sv = "Ok?nd filtyp p?tr?ffad i arkivet" }; @@ -1885,6 +2235,7 @@ ["You must accept the license before you may install"] = { cs = "P?ed instalac? je nutn? odsouhlasit licenci", de = "Sie m?ssen den Lizenzbedingungen zustimmen, bevor sie installieren k?nnen", + el = "?????? ?? ??????????? ?? ??? ????? ?????? ???? ?????????? ?? ??? ???????????", en_GB = "You must accept the licence before you may install", es = "Tienes que aceptar la licencia antes de que puedas instalar", fi = "Asennusta ei suoriteta, ellet hyv?ksy lisenssi?.", @@ -1893,7 +2244,10 @@ nds = "Du must den Lizenzbedingungen zustimmen, um die Installation fortzusetzen", nl = "U moet akkoord gaan met de licentie om te kunnen installeren", pt = "Tem que aceitar a licen?a antes de prosseguir com a instala??o", - sv = "Du m?ste acceptera licensavtalet innan du kan forts?tta med installationen" + ru = "?? ?????? ??????????? ? ???????????? ??????????? ????? ?????????? ?????????", + sk = "Mus?te s?hlasi? s licenciou pokia? chcete pokra?ova? v in?tal?cii", + sv = "Du m?ste acceptera licensavtalet innan du kan forts?tta med installationen", + zh_TW = "????????????????" }; -- Installations display the currently-installing component, such as @@ -1905,14 +2259,18 @@ ["Metadata"] = { cs = "Metadata", de = "Metadaten", + el = "????????????", en_GB = "Metadata", es = "Metadatos", fi = "Metadata", fr = "M?tadonn?es", it = "Metadati", nb = "Metadata", + nds = "Metadaten", nl = "Metadata", pt = "Meta-Informa??o", + ru = "??????????", + sk = "Metad?ta", sv = "Metadata" }; @@ -1920,15 +2278,20 @@ ["Invalid command line"] = { cs = "Neplatn? argumenty", de = "Ung?ltige Kommandozeile", + el = "????? ?????? ???????", en_GB = "Invalid command line", es = "Par?metros de comando incorrectos", fi = "Virheellinen komentorivi", fr = "Ligne de commande invalide", it = "Linea di comando non valida", nb = "Ugyldig kommandolinje", + nds = "Ung?ltige Befehlszeile", nl = "Ongeldige opdrachtregel", pt = "Argumento da linha de comandos inv?lido", - sv = "Ogiltigt argument" + ru = "???????? ????????? ??????", + sk = "Chybn? parametre", + sv = "Ogiltigt argument", + zh_TW = "?????" }; -- This error is shown when updating the manifest (the list of files that @@ -1937,11 +2300,15 @@ ["Couldn't load manifest file for '%0'"] = { cs = "Nemohu na??st soubor s manifestem pro '%0'", de = "Konnte Manifestdatei f?r '%0' nicht laden", + el = "??? ??????? ?? ???????? ?? ?????? \"manifest\" ??? '%0'", en_GB = "Couldn't load manifest file for '%0'", es = "No pudo cargar el archivo manifest de '%0'", fi = "Asennusluetteloa paketille \"%0\" ei kyetty lukemaan.", nb = "Kunne ikke laste manifestfil for '%0'", + nds = "Konnte Manifest f?r '%0' nicht laden.", pt = "Foi imposs?vel carregar o ficheiro de manifesto para '%0'", + ru = "?? ???? ????????? ???? ????????? '%0'", + sk = "Nem??em nahra? manifest s?bor pre '%0'", sv = "Kunde inte ladda manifestfil f?r '%0'" }; @@ -1950,6 +2317,7 @@ ["File %0 not found"] = { cs = "Soubor '%0' nebyl nalezen", de = "Datei %0 nicht gefunden.", + el = "?? ?????? %0 ??? ???????", en_GB = "File %0 not found", es = "Archivo %0 no encontrado", fi = "Tiedostoa \"%0\" ei ole.", @@ -1958,7 +2326,10 @@ nds = "Datei %0 wurde nicht gefunden", nl = "Bestand %0 niet gevonden", pt = "O ficheiro %0 n?o foi encontrado", - sv = "Filen '%0' hittades inte" + ru = "???? %0 ?? ??????", + sk = "Nena?iel som s?bor %0", + sv = "Filen '%0' hittades inte", + zh_TW = "????? %0" }; -- This is a window title on the message box when asking if user is sure @@ -1966,6 +2337,7 @@ ["Uninstall"] = { cs = "Odinstalovat", de = "Deinstallieren", + el = "?????????????", en_GB = "Uninstall", es = "Desinstalar", fi = "Asennuksen poisto", @@ -1975,7 +2347,10 @@ nds = "Deinstalleren", nl = "De?nstalleren", pt = "Desinstalar", - sv = "Avinstallera" + ru = "???????", + sk = "Odin?talova?", + sv = "Avinstallera", + zh_TW = "??" }; -- This is the text when asking the user if they want to uninstall @@ -1983,14 +2358,19 @@ ["Are you sure you want to uninstall '%0'?"] = { cs = "Opravdu chcete odinstalovat '%0'?", de = "Sind Sie sicher, dass Sie '%0' deinstallieren wollen?", + el = "????? ???????? ?????? ?? ??????????????? ?? '%0'?", en_GB = "Are you sure you want to uninstall '%0'?", es = "?Est?s seguro de que quieres desinstalar '%0'?", fi = "Haluatko varmasti poistaa asennuksen \"%0\"?", fr = "?tes-vous s?r de vouloir d?sinstaller '%0' ?", nb = "Er du sikker p? at du vil avinstallere '%0'?", + nds = "Sind sie sicher, dass sie '%0' deinstallieren wollen?", nl = "Bent u er zeker van dat u '%0' wilt de?nstalleren?", pt = "Tem a certeza que quer desinstalar '%0'?", - sv = "?r du s?ker p? att du vill avinstallera '%0'?" + ru = "?? ???????, ??? ?????? ??????? '%0'?", + sk = "Ste si ist? ?e chcete odin?talova? '%0'?", + sv = "?r du s?ker p? att du vill avinstallera '%0'?", + zh_TW = "?????? '%0'" }; -- This is a window title, shown while the actual uninstall is in process @@ -1998,6 +2378,7 @@ ["Uninstalling"] = { cs = "Odinstalov?v?m", de = "Deinstalliere", + el = "??????? ?????????????", en_GB = "Uninstalling", es = "Desinstalando", fi = "Poistetaan asennusta", @@ -2006,13 +2387,17 @@ nds = "Deinstallation", nl = "De?nstallatie", pt = "A desinstalar", - sv = "Avinstallerar" + ru = "????????", + sk = "Odin?talov?vam", + sv = "Avinstallerar", + zh_TW = "????" }; -- This is shown to the user in a message box when uninstallation is done. ["Uninstall complete"] = { cs = "Odinstalace dokon?ena", de = "Deinstallation abgeschlossen", + el = "? ????????????? ????????????", en_GB = "Uninstall complete", es = "Desinstalaci?n terminada", fi = "Asennus poistettu", @@ -2021,7 +2406,10 @@ nds = "Deinstallation abgeschlossen", nl = "De?nstallatie voltooid", pt = "A desinstala??o foi bem sucedida", - sv = "Avinstallation slutf?rd" + ru = "???????? ?????????", + sk = "Odin?tal?cia dokon?en?", + sv = "Avinstallation slutf?rd", + zh_TW = "????" }; -- This is written to the terminal in the ncurses UI when the window is @@ -2034,13 +2422,17 @@ ["[Make the window wider!]"] = { cs = "[Zv?t?it ???ku okna!]", de = "[Fenster breiter machen!]", + el = "[????????? ?? ???????? ???? ??????!]", en_GB = "[Make the window wider!]", es = "[?Ensancha la ventana!]", fi = "[Levenn? ikkunaa!]", fr = "[?largissez la fen?tre!]", nb = "[Gj?r vinduet bredere!]", + nds = "[Mach das Fenster breiter!]", nl = "[Maak het scherm breder!]", pt = "[Torne a janela mais larga!]", + ru = "???????? ???? ????!", + sk = "[Roztiahnite okno do ??rky!]", sv = "[G?r f?nstret bredare!]" }; @@ -2054,13 +2446,17 @@ ["[Make the window taller!]"] = { cs = "[Zv?t?it v??ku okna!]", de = "[Fenster h?her machen!]", + el = "[????????? ?? ???????? ???? ????]", en_GB = "[Make the window taller!]", es = "[?Estira la ventana!]", fi = "[Tee ikkunasta korkeampi!]", fr = "[Agrandissez la fen?tre!]", nb = "[Gj?r vinduet h?yere!]", + nds = "[Mach das Fenster h?her!]", nl = "[Maak het scherm langer!]", pt = "[Torne a janela mais alta!]", + ru = "???????? ???? ????!", + sk = "[Roztiahnite okno do v??ky!]", sv = "[G?r f?nstret h?gre!]" }; @@ -2070,13 +2466,18 @@ ["Failed to install desktop menu item"] = { cs = "Nepoda?ilo se nainstalovat polo?ku do menu", de = "Konnte Verkn?pfung f?r Desktop-Men? nicht installieren", + el = "?????? ???? ??? ??????????? ??? ??????????? ????????? ??? ????????????", en_GB = "Failed to install desktop menu item", es = "Fallo al a?adir un elemento al men? de escritorio", fi = "Kohdan lis??minen ty?p?yt?valikkoon ep?onnistui.", fr = "Echec de l'installation des ?l?ments du bureau", + nds = "Desktop Menu-Eintrag konnte nicht erstellt werden.", nl = "Installatie van het bureaublad menu item is mislukt", pt = "A instala??o do menu no desktop falhou", - sv = "Misslycklades med att l?gga till genv?g i programmenyn" + ru = "?? ??????? ?????????? ??????? ????", + sk = "Nepodarilo sa mi nain?talova? odkaz na plochu", + sv = "Misslycklades med att l?gga till genv?g i programmenyn", + zh_TW = "??????????" }; -- This is written out if we failed to remove an item from the desktop @@ -2085,13 +2486,18 @@ ["Failed to uninstall desktop menu item"] = { cs = "Nepoda?ilo se odstranit polo?ku z menu", de = "Konnte Verkn?pfung f?r Desktop-Men? nicht deinstallieren", + el = "?????? ???? ??? ????????????? ??? ??????????? ????????? ??? ????????????", en_GB = "Failed to uninstall desktop menu item", es = "Fallo al quitar un elemento del men? de escritorio", fi = "Kohdan poistaminen ty?p?yt?valikkosta ep?onnistui.", fr = "Echec de la d?sinstallation des ?l?ments du bureau", + nds = "Desktop Menu-Eintrag konnte nicht entfernt werden.", nl = "De?nstallatie van het bureaublad menu item is mislukt", pt = "A desinstala??o do menu no desktop falhou", - sv = "Misslyckades med att ta bort genv?g i programmenyn" + ru = "?? ??????? ??????? ??????? ????", + sk = "Nepodarilo sa mi odin?talova? odkaz z plochy", + sv = "Misslyckades med att ta bort genv?g i programmenyn", + zh_TW = "??????????" }; }; From DONOTREPLY at icculus.org Tue Mar 4 21:51:47 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 4 Mar 2008 21:51:47 -0500 Subject: r545 - trunk Message-ID: <20080305025147.23474.qmail@icculus.org> Author: icculus Date: 2008-03-04 21:51:47 -0500 (Tue, 04 Mar 2008) New Revision: 545 Modified: trunk/buildver.c Log: More buildver string cleanup. Modified: trunk/buildver.c =================================================================== --- trunk/buildver.c 2008-03-04 00:01:12 UTC (rev 544) +++ trunk/buildver.c 2008-03-05 02:51:47 UTC (rev 545) @@ -27,8 +27,14 @@ #error Please define APPREV in the build system. #endif -#ifndef __VERSION__ -#define __VERSION__ "(Unknown compiler version)" +#if (defined __GNUC__) +# define VERSTR2(x) #x +# define VERSTR(x) VERSTR2(x) +# define COMPILERVER " " VERSTR(__GNUC__) "." VERSTR(__GNUC_MINOR__) "." VERSTR(__GNUC_PATCHLEVEL__) +#elif (defined __VERSION__) +# define COMPILERVER " " __VERSION__ +#else +# define COMPILERVER "" #endif #ifndef __DATE__ @@ -52,7 +58,7 @@ // macro mess so we can turn APPID and APPREV into a string literal... #define MAKEBUILDVERSTRINGLITERAL2(id, rev) \ #id ", revision " #rev ", built " __DATE__ " " __TIME__ \ - ", by " COMPILER " " __VERSION__ + ", by " COMPILER COMPILERVER #define MAKEBUILDVERSTRINGLITERAL(id, rev) MAKEBUILDVERSTRINGLITERAL2(id, rev) From DONOTREPLY at icculus.org Tue Mar 4 21:53:23 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 4 Mar 2008 21:53:23 -0500 Subject: r546 - trunk/scripts Message-ID: <20080305025323.27285.qmail@icculus.org> Author: icculus Date: 2008-03-04 21:53:23 -0500 (Tue, 04 Mar 2008) New Revision: 546 Modified: trunk/scripts/localization.lua Log: Crap, one of the lua <-> .po scripts lost these... Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-05 02:51:47 UTC (rev 545) +++ trunk/scripts/localization.lua 2008-03-05 02:53:23 UTC (rev 546) @@ -164,6 +164,12 @@ -- stdio UI plugin says this for "OK"-only msgboxes. "%0" is the message -- box's text content. + ["NOTICE: %0\n[hit enter]"] = { + de = "HINWEIS: %0\n[Dr?cken Sie Enter]", + nb = "NB: %0\n[trykk enter]", + se = "NB: %0\n[tryck enter]", + }; + -- stdio UI plugin says this for yes/no prompts that default to yes. -- "%0" is the question the user is being asked to respond to. ["%0 [Y/n]: "] = { @@ -1273,6 +1279,12 @@ -- its number (default is number one), or enter their own text instead of -- choosing a default. This string is the instructions printed for the -- user before the prompt. + ["Choose install destination by number (hit enter for #1), or enter your own."] = { + de = "W?hlen Sie eine Nummer f?r das Installationsziel (dr?cken Sie Enter f?r #1), oder geben Sie ein eigenes an.", + nb = "Velg installasjonssti etter nummer (trykk enter for #1), eller skriv inn din egen.", + se = "V?lg s?kv?g f?r installationen efter nummer (tryck enter f?r #1), eller skriv in din egen.", + }; + -- This is used by the stdio UI to toggle options. A numbered list is -- printed, and the user can enter one of those numbers to toggle that -- option on or off. This string is the instructions printed for the @@ -1359,6 +1371,12 @@ }; -- This is an error message. It speaks for itself. :) + ["Couldn't restore some files. Your existing installation is likely damaged."] = { + de = "Konnte einige Dateien nicht widerherstellen. Ihre Installation ist wahrscheinlich besch?digt.", + nb = "Noen filer kunne ikke tilbakestilles. Den eksisterende installasjonen er sannsynligvis skadet.", + se = "N?gra filer kunde inte ?terskapas. Den existerande installationen ?r troligtvis skadad.", + }; + -- Error message when deleting a file fails. ["Deletion failed!"] = { cs = "Maz?n? selhalo!", From DONOTREPLY at icculus.org Tue Mar 4 22:18:47 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 4 Mar 2008 22:18:47 -0500 Subject: r547 - trunk/misc Message-ID: <20080305031847.22544.qmail@icculus.org> Author: icculus Date: 2008-03-04 22:18:46 -0500 (Tue, 04 Mar 2008) New Revision: 547 Modified: trunk/misc/po2localization.pl Log: Fixed the bug that was eating translation template strings. Modified: trunk/misc/po2localization.pl =================================================================== --- trunk/misc/po2localization.pl 2008-03-05 02:53:23 UTC (rev 546) +++ trunk/misc/po2localization.pl 2008-03-05 03:18:46 UTC (rev 547) @@ -58,7 +58,7 @@ next if /\A\#/; if (s/msgid\s*\"(.*?)\"\Z/$1/) { - if ($_ eq '') { # initial string. + if (($_ eq '') and ($currentlang eq '')) { # initial string. while () { # Skip most of the metadata. chomp; s/\A\s+//; From DONOTREPLY at icculus.org Tue Mar 4 22:20:33 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 4 Mar 2008 22:20:33 -0500 Subject: r548 - trunk/scripts Message-ID: <20080305032033.27247.qmail@icculus.org> Author: icculus Date: 2008-03-04 22:20:33 -0500 (Tue, 04 Mar 2008) New Revision: 548 Modified: trunk/scripts/localization.lua Log: Updated translations from launchpad.net. Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-05 03:18:46 UTC (rev 547) +++ trunk/scripts/localization.lua 2008-03-05 03:20:33 UTC (rev 548) @@ -3,8 +3,8 @@ -- Please see the file LICENSE.txt in the source's root directory. -- -- DO NOT EDIT BY HAND. --- This file was generated with po2localization.pl, version svn-543 ... --- on 2008-03-03 18:57:17-0500 +-- This file was generated with po2localization.pl, version svn-547 ... +-- on 2008-03-04 22:18:48-0500 -- -- Your own installer's localizations go into app_localization.lua instead. -- If you want to add strings to be translated to this file, contact Ryan @@ -15,12 +15,13 @@ -- -- ...and that work eventually ends up in this file. -- --- X-Launchpad-Export-Date: 2008-03-03 23:52+0000 +-- X-Launchpad-Export-Date: 2008-03-05 01:36+0000 -- X-Generator: Launchpad (build Unknown) MojoSetup.languages = { en_US = "English (United States)", cs = "Czech", + da = "Danish", de = "German", el = "Greek", en_CA = "English (Canada)", @@ -84,6 +85,7 @@ -- zlib error message ["memory error"] = { cs = "pam??ov? chyba", + da = "hukommelsesfejl", de = "Speicherfehler", el = "?????? ??????", en_GB = "memory error", @@ -124,6 +126,7 @@ -- zlib error message ["version error"] = { cs = "chyba verze", + da = "versionsfejl", de = "Versionsfehler", el = "????????? ?????? ??????????", en_GB = "version error", @@ -144,6 +147,7 @@ -- zlib error message ["unknown error"] = { cs = "nezn?m? chyba", + da = "ukendt fejl", de = "Unbekannter Fehler", el = "??????? ??????", en_GB = "unknown error", @@ -165,12 +169,26 @@ -- stdio UI plugin says this for "OK"-only msgboxes. "%0" is the message -- box's text content. ["NOTICE: %0\n[hit enter]"] = { + cs = "UPOZORN?N?: %0\n[stiskn?te enter]", de = "HINWEIS: %0\n[Dr?cken Sie Enter]", + el = "???????: %0\n[??????? ENTER]", + en_GB = "NOTICE: %0\n[hit enter]", + es = "AVISO: %0\n[presiona Intro]", + fi = "ILMOITUS: %0\n[paina enter]", + fr = "INFORMATION?: %0\n[pressez entr?e]", + it = "NOTICE: %0", nb = "NB: %0\n[trykk enter]", - se = "NB: %0\n[tryck enter]", + nds = "Notiz: %0\n[Enter dr?cken, um fortzufahren]", + nl = "OPMERKING: %0\n[Toets enter]", + pt = "AVISO: %0\n[pressione enter]", + ru = "???????????: %0", + sk = "Spr?va: %0", + sv = "NB: %0\n[tryck enter]", + uk = "?? ?????: %0", + zh_TW = "???%0" }; - -- stdio UI plugin says this for yes/no prompts that default to yes. + -- stdio UI plugin says this for yes/no prompts that default to yes. -- "%0" is the question the user is being asked to respond to. ["%0 [Y/n]: "] = { cs = "%0 [A/n]: ", @@ -259,6 +277,7 @@ -- This is used for "no" in stdio UI's yes/no prompts (case insensitive). ["N"] = { cs = "N", + da = "N", de = "N", el = "?", en_GB = "N", @@ -280,6 +299,7 @@ -- (case insensitive). ["Always"] = { cs = "V?dy", + da = "Altid", de = "Immer", el = "?????", en_GB = "Always", @@ -301,6 +321,7 @@ -- (case insensitive). ["Never"] = { cs = "niKdy", + da = "Aldrig", de = "Niemals", el = "????", en_GB = "Never", @@ -367,6 +388,7 @@ -- string for their button ("Back" vs "back" specifically). ["back"] = { cs = "zp?t", + da = "tilbage", de = "zur?ck", el = "????", en_GB = "back", @@ -387,6 +409,7 @@ -- This is the prompt in the stdio driver when user input is expected. ["> "] = { cs = "> ", + da = "> ", de = "> ", el = "> ", en_GB = "> ", @@ -449,6 +472,7 @@ -- them. It's a yes/no question. ["Accept this license?"] = { cs = "P?ij?m?te podm?nky licence?", + da = "Accepter denne licens?", de = "Nehmen Sie die Lizenzbedingungen an?", el = "??????? ???? ??? ????? ???????", en_GB = "Accept this licence?", @@ -470,6 +494,7 @@ -- The '_' comes before the hotkey character. ["_Always"] = { cs = "_V?dy", + da = "_Altid", de = "_Immer", el = "_?????", en_GB = "_Always", @@ -491,6 +516,7 @@ -- we need can't be located. ["Archive not found"] = { cs = "Archiv nenalezen", + da = "Arkiv ikke fundet", de = "Archiv nicht gefunden", el = "?? ?????? ??? ???????.", en_GB = "Archive not found", @@ -511,6 +537,7 @@ -- to confirm they really want to stop. It's a yes/no question. ["Are you sure you want to cancel installation?"] = { cs = "Opravdu chcete zru?it instalaci?", + da = "Vil du afbryde installationen?", de = "Sind Sie sicher, dass Sie die Installation abbrechen wollen?", el = "????? ???????? ??? ?????? ?? ????????? ??? ????????????", en_GB = "Are you sure you want to cancel installation?", @@ -531,6 +558,7 @@ -- The opposite of "next", used as a UI button label. ["Back"] = { cs = "Zp?t", + da = "Tilbage", de = "Zur?ck", el = "???????????", en_GB = "Back", @@ -553,6 +581,7 @@ -- dialog where the end-user can navigate to and select files. ["B_rowse..."] = { cs = "_Proch?zet...", + da = "_Gennemse...", de = "Du_rchsuchen", el = "_?????????...", en_GB = "B_rowse...", @@ -565,9 +594,9 @@ nl = "Bl_aderen...", pt = "_Procurar...", ru = "???????...", - sk = "_Vybra?", + sk = "P_rehliada?...", sv = "B_l?ddra", - zh_TW = "??(_R)..." + zh_TW = "??(_B)" }; -- All the "BUG:" strings are generally meant to be seen by developers, @@ -592,7 +621,7 @@ ru = "??????: ???????????? media_id", sk = "CHYBA: duplicitn? media id", sv = "FEL: dupliserat media id", - zh_TW = "??????????" + zh_TW = "??????????" }; -- This is shown if the configuration file has no installable options, @@ -696,7 +725,8 @@ pt = "BUG: '%0' n?o ? uma express?o v?lida", ru = "??????: '%0' ???????????? ???????? ??? ????.", sk = "CHYBA: '%0' nieje spr?vny sp?sob z?pisu pr?v", - sv = "FEL: '%0' ?r inte en giltig r?ttighetsstr?ng" + sv = "FEL: '%0' ?r inte en giltig r?ttighetsstr?ng", + zh_TW = "???'%' ????????????" }; -- If there's a string in the program that needs be formatted with @@ -738,7 +768,8 @@ pt = "BUG: A etapa retornou um tipo errado", ru = "??????: ???? ????? ??????????? ???", sk = "CHYBA: f?za vr?tila nespr?vny typ", - sv = "FEL: niv? returnerade fel typ" + sv = "FEL: niv? returnerade fel typ", + zh_TW = "????????????" }; -- The program runs in "stages" and as it transitions from one stage to @@ -759,7 +790,8 @@ pt = "BUG: A etapa retornou um valor errado", ru = "??????: ???? ????? ??????????? ?????????", sk = "CHYBA: f?za vr?tila nespr?vnu hodnotu", - sv = "FEL: niv? returnerade fel v?rde" + sv = "FEL: niv? returnerade fel v?rde", + zh_TW = "???????????" }; -- The program runs in "stages", which can in many cases be revisited @@ -780,7 +812,8 @@ pt = "BUG: Retrocedeu na primeira etapa", ru = "??????: ?????? ???? ???????? ?????? \"?????\"", sk = "CHYBA: vr?tili ste sa pred za?iatok po?iato?nej f?zy", - sv = "FEL: Gick tillbaka f?rbi startniv?" + sv = "FEL: Gick tillbaka f?rbi startniv?", + zh_TW = "????????????" }; -- This happens if there's an unusual case when writing out Lua scripts @@ -798,7 +831,8 @@ pt = "BUG: tipo sem tratamento", ru = "??????: ???????????????? ??? ??????", sk = "CHYBA: Nespracovate?n? typ d?t", - sv = "FEL: Ohanterad datatyp" + sv = "FEL: Ohanterad datatyp", + zh_TW = "???????????" }; -- This is triggered by a logic bug in the i/o subsystem. @@ -818,7 +852,8 @@ pt = "BUG: Imposs?vel duplicar as entradas do tar", ru = "??????: ?????? ??????????? ???????? ?????? ??? tar", sk = "CHYBA: Nem??ete duplikova? tar vstupy", - sv = "FEL: Kan inte duplicera infiler f?r tar" + sv = "FEL: Kan inte duplicera infiler f?r tar", + zh_TW = "??????? tar ???" }; -- This is a generic error message when a programming bug produced a @@ -837,7 +872,8 @@ pt = "BUG: Valor inexperado", ru = "??????: ??????????? ????????", sk = "CHYBA: Neo?ak?van? hodnota", - sv = "FEL: Ov?ntat v?rde" + sv = "FEL: Ov?ntat v?rde", + zh_TW = "???????" }; -- Buggy config elements: @@ -860,7 +896,8 @@ pt = "BUG: Configura??o %0 %1", ru = "??????: ????? %0 %1", sk = "CHYBA: Config %0 %1", - sv = "FEL: Konfiguration %0 %1" + sv = "FEL: Konfiguration %0 %1", + zh_TW = "????? %0 %1" }; -- This is an error string for a buggy config element. See notes above. @@ -897,7 +934,8 @@ pt = "Tem que ser uma express?o ou uma tabela de express?es", ru = "?????? ???? ??????? ??? ???????? ?????", sk = "mus? by? re?azec alebo tabu?ka re?azcov", - sv = "m?ste vara en str?ng eller en tabell av str?ngar" + sv = "m?ste vara en str?ng eller en tabell av str?ngar", + zh_TW = "??????????" }; -- This is an error string for a buggy config element. See notes above. @@ -959,7 +997,7 @@ -- This is an error string for a buggy config element. See notes above. ["URL doesn't have host"] = { - cs = "URL nem? ur?en?ho hostitele", + cs = "URL neobsahuje hostitele", de = "URL hat keinen Host", el = "?? URL ??? ???????? ????????? ??????????", en_GB = "URL doesn't have host", @@ -978,7 +1016,7 @@ -- This is an error string for a buggy config element. See notes above. ["URL doesn't have path"] = { - cs = "URL nem? ur?enou cestu", + cs = "URL neobsahuje cestu", de = "URL hat keinen Pfad", el = "?? URL ??? ???????? ?? ????????", en_GB = "URL doesn't have path", @@ -996,7 +1034,7 @@ -- This is an error string for a buggy config element. See notes above. ["URL protocol is unsupported"] = { - cs = "Protokol v URL je nepodporovan?", + cs = "Protokol v URL nen? podporov?n", de = "URL Protokoll wird nicht unterst?tzt", el = "?? ????????? ??? ???????? ?? URL ??? ?????????????", en_GB = "URL protocol is unsupported", @@ -1031,7 +1069,8 @@ pt = "A express?o de permiss?o n?o ? v?lida", ru = "?????? ???? ??????? ???????????", sk = "Re?azec pr?v je neplatn?", - sv = "R?ttighetsstr?ngen ?r ogiltig" + sv = "R?ttighetsstr?ngen ?r ogiltig", + zh_TW = "?????????" }; -- This is an error string for a buggy config element. See notes above. @@ -1051,13 +1090,15 @@ pt = "n?o ? uma propriedade v?lida", ru = "???????????? ????????", sk = "nieje spr?vnym atrib?tom", - sv = "?r inte ett giltigt attribut" + sv = "?r inte ett giltigt attribut", + zh_TW = "???????" }; -- This is an error string for a buggy config element. See notes above. -- %0 is a data type name (string, number, table, etc). ["must be %0"] = { cs = "mus? b?t %0", + da = "skal v?re %0", de = "muss vom Typ %0 sein", el = "?????? ?? ????? %0", en_GB = "must be %0", @@ -1098,6 +1139,7 @@ -- Data type for "must be %0" above... ["boolean"] = { cs = "booleovsk? hodnota", + da = "boolsk", de = "Bool", el = "boolean", en_GB = "boolean", @@ -1118,6 +1160,7 @@ -- Data type for "must be %0" above... ["number"] = { cs = "??slo", + da = "nummer", de = "Zahl", el = "???????", en_GB = "number", @@ -1158,6 +1201,7 @@ -- Data type for "must be %0" above... ["table"] = { cs = "tabulka", + da = "tabel", de = "Tabelle", el = "???????", en_GB = "table", @@ -1178,7 +1222,8 @@ -- bzlib is a proper name. The error message (%0) may not be localized, -- it's meant to be a developer error and not an end-user message. ["bzlib triggered an internal error: %0"] = { - cs = "bzlib vyvolalo vnit?n? chybu: %0", + cs = "bzlib vyvolala vnit?n? chybu: %0", + da = "bzlib for?rsagede en intern fejl:", de = "bzlib hat einen internen Fehler ausgel?st: %0", el = "?? bzlib ?????????? ????????? ??????: %0", en_GB = "bzlib triggered an internal error: %0", @@ -1191,13 +1236,15 @@ pt = "A bzlib despoletou um erro interno: %0", ru = "????????? ?????? ? bzlib: %0", sk = "bzlib sp?sobilo vn?torn? chybu: %0", - sv = "internt fel i bzlib: %0" + sv = "internt fel i bzlib: %0", + zh_TW = "bzlib ????????? %0" }; -- This is a UI button label, usually paired with "OK", but also usually -- present as a generic "stop the program" button. ["Cancel"] = { cs = "Zru?it", + da = "Annuller", de = "Abbrechen", el = "?????", en_GB = "Cancel", @@ -1251,13 +1298,15 @@ pt = "Foi imposs?vel enumerar o arquivo", ru = "?? ???? ????????? ?????", sk = "Nem??em prelistova? arch?v", - sv = "Kunde inte lista filen" + sv = "Kunde inte lista filen", + zh_TW = "??????????" }; -- This error is reported for i/o failures while opening a .zip -- (or whatever) file. ["Couldn't open archive"] = { cs = "Nemohu otev??t archiv", + da = "Kunne ikke ?bne arkiv", de = "Archiv kann nicht ge?ffnet werden", el = "??? ??????? ?? ??????? ?? ??????", en_GB = "Couldn't open archive", @@ -1271,7 +1320,8 @@ pt = "Foi imposs?vel abrir o arquivo", ru = "?? ???? ??????? ?????", sk = "Nem??em otvori? arch?v", - sv = "Kunde inte ?ppna filen" + sv = "Kunde inte ?ppna filen", + zh_TW = "???????" }; -- This is used by the stdio UI to choose a location to write files. @@ -1280,12 +1330,23 @@ -- choosing a default. This string is the instructions printed for the -- user before the prompt. ["Choose install destination by number (hit enter for #1), or enter your own."] = { + cs = "Zvolte c?l instalace ??slem (stiskn?te enter pro #1) nebo zadejte vlastn? c?l.", de = "W?hlen Sie eine Nummer f?r das Installationsziel (dr?cken Sie Enter f?r #1), oder geben Sie ein eigenes an.", + el = "???????? ????????? ???????????? ???? ??????? (??????? ENTER ??? #1), ? ?????? ??? ???? ???.", + en_GB = "Choose install destination by number (hit enter for #1), or enter your own.", + es = "Elige lugar de instalaci?n con n?meros (pulsa Intro para #1), o especif?calo", + fi = "Valitse asennuskohteen numero (enter valitsee kohteen 1) tai sy?t? oma kohde.", + fr = "Choisissez la destination d'installation par un nombre (Appuyez sur Entr?e pour le n?1), ou entrez votre propre choix.", nb = "Velg installasjonssti etter nummer (trykk enter for #1), eller skriv inn din egen.", - se = "V?lg s?kv?g f?r installationen efter nummer (tryck enter f?r #1), eller skriv in din egen.", + nds = "W?hlen Sie das Installationsverzeichnis durch Dr?cken einer Nummer (enter f?r #1), oder geben Sie selber einen ein.", + nl = "Kies installatiemap met het bijbehorende nummer, of voer u eigen keuze in.", + pt = "Escolha o destino da instala??o pelo seu n?mero (pressione enter para o primeiro destino), ou introduza um outro destino.", + ru = "???????? ???? ????????? (??????? Enter ??? ?????? 1), ??? ??????? ????.", + sk = "Vyberte cie? in?tal?cie pomocou ??sla (stla?te enter pre prv? mo?nos?).", + sv = "V?lj s?kv?g f?r installationen efter nummer (tryck enter f?r #1), eller skriv in din egen." }; - -- This is used by the stdio UI to toggle options. A numbered list is + -- This is used by the stdio UI to toggle options. A numbered list is -- printed, and the user can enter one of those numbers to toggle that -- option on or off. This string is the instructions printed for the -- user before the prompt. @@ -1303,13 +1364,15 @@ pt = "Escolha um n?mero para alterar", ru = "???????? ????? ??? ?????????", sk = "Vyberte pomocou ??sla ak chcete zmeni? nastavenie", - sv = "V?lj nummer som skall ?ndras." + sv = "V?lj nummer som skall ?ndras.", + zh_TW = "???????" }; -- As in "two different files want to use the same name." This is a title -- on a message box. ["Conflict!"] = { cs = "Konflikt!", + da = "Konflikt!", de = "Konflikt!", el = "???????!", en_GB = "Conflict!", @@ -1345,7 +1408,8 @@ pt = "Foi imposs?vel salvaguardar o ficheiro para refazer as ac??es", ru = "?? ???? ????????? ????? ????? ??? ??????????????", sk = "Nem??em z?lohova? s?bor pre obnovu", - sv = "Kunde inte s?kerhetskopiera filen f?r ?terst?llning" + sv = "Kunde inte s?kerhetskopiera filen f?r ?terst?llning", + zh_TW = "?????????" }; -- This error is shown if we aren't able to write the list of files @@ -1367,17 +1431,30 @@ pt = "Foi imposs?vel criar o manifesto", ru = "?? ???? ??????? ????????", sk = "Nem??em vytvori? manifest", - sv = "Kunde inte skapa manifest" + sv = "Kunde inte skapa manifest", + zh_TW = "????????" }; -- This is an error message. It speaks for itself. :) ["Couldn't restore some files. Your existing installation is likely damaged."] = { - de = "Konnte einige Dateien nicht widerherstellen. Ihre Installation ist wahrscheinlich besch?digt.", + cs = "Nepoda?ilo se obnovit n?kter? soubory. Va?e existuj?c? instalace je pravd?podobn? po?kozen?.", + de = "Konnte einige Dateien nicht wiederherstellen. Ihre Installation ist wahrscheinlich besch?digt.", + el = "??? ??????? ?? ???????? ?????? ??????. ????? ??????? ? ??????????? ?? ????? ????????????.", + en_GB = "Couldn't restore some files. Your existing installation is likely to be damaged.", + es = "No se pudieron restaurar algunos archivos. Tu instalaci?n posiblemente est? da?ada", + fi = "Joidenkin tiedostojen palauttaminen ep?onnistui. Asennuksesi on todenn?k?isesti rikki.", + fr = "Impossible de restaurer certains fichiers. Votre installation existante est certainement endommag?e.", nb = "Noen filer kunne ikke tilbakestilles. Den eksisterende installasjonen er sannsynligvis skadet.", - se = "N?gra filer kunde inte ?terskapas. Den existerande installationen ?r troligtvis skadad.", + nds = "Konnte einige Dateien nicht wiederherstellen. Ihre Installation ist m?glicherweise besch?digt.", + nl = "Kon sommige bestanden niet terugzetten. Uw bestaande installatie is waarschijnlijk beschadigd.", + pt = "Foi imposs?vel recuperar alguns ficheiros. Provavelmente, a sua instala??o est? danificada.", + ru = "?? ???? ???????????? ????????? ?????. ???? ????????? ??????? ??????????.", + sk = "Nem??em obnovi? niektor? s?bory. Va?a aktu?lna in?tal?cia je zrejme po?koden?.", + sv = "N?gra filer kunde inte ?terskapas. Den existerande installationen ?r troligtvis skadad.", + zh_TW = "??????????????????????" }; - -- Error message when deleting a file fails. + -- Error message when deleting a file fails. ["Deletion failed!"] = { cs = "Maz?n? selhalo!", de = "L?schen fehlgeschlagen!", @@ -1402,6 +1479,7 @@ -- the filesystem. ["Folder:"] = { cs = "Slo?ka:", + da = "Mappe:", de = "Verzeichnis:", el = "???????:", en_GB = "Folder:", @@ -1422,6 +1500,7 @@ -- This is a window title when user is selecting a path to install files. ["Destination"] = { cs = "C?l", + da = "Destination", de = "Ziel", el = "??????????", en_GB = "Destination", @@ -1443,6 +1522,7 @@ -- it needs from the network. ["Downloading"] = { cs = "Stahuji", + da = "Henter", de = "Lade herunter", el = "??????? ????", en_GB = "Downloading", @@ -1503,6 +1583,7 @@ -- This is a window title when something goes very wrong. ["Fatal error"] = { cs = "Kritick? chyba", + da = "Alvorlig fejl", de = "Schwerer Fehler", el = "??????? ??????", en_GB = "Fatal error", @@ -1556,7 +1637,8 @@ pt = "Falhou a descarregar!", ru = "?????? ?????????? ?????!", sk = "S?ahovanie zlyhalo!", - sv = "H?mtning av fil misslyckades!" + sv = "H?mtning av fil misslyckades!", + zh_TW = "??????" }; -- This prompt is shown to users when we may overwrite an existing file. @@ -1584,6 +1666,7 @@ -- stages to move forward to. ["Finish"] = { cs = "Dokon?it", + da = "Udf?r", de = "Fertig stellen", el = "?????", en_GB = "Finish", @@ -1645,6 +1728,7 @@ -- Reported to the user if everything worked out. ["Installation was successful."] = { cs = "Instalace byla ?sp??n?.", + da = "Installationen var succesfuld.", de = "Installation war erfolgreich.", el = "? ??????????? ??????.", en_GB = "Installation was successful.", @@ -1666,6 +1750,7 @@ -- is in process and a progress meter is being shown. ["Installing"] = { cs = "Instaluji", + da = "Installerer", de = "Installiere", el = "??????? ???????????", en_GB = "Installing", @@ -1687,6 +1772,7 @@ -- installation-specific options. ["Options"] = { cs = "Volby", + da = "Indstillinger", de = "Optionen", el = "????????", en_GB = "Options", @@ -1729,6 +1815,7 @@ -- "kilobytes per second" ... download rate. ["KB/s"] = { cs = "KB/s", + da = "KB/s", de = "KB/s", el = "KB/????.", en_GB = "KB/s", @@ -1762,7 +1849,8 @@ pt = "B/s", ru = "?/?", sk = "B/s", - sv = "B/s" + sv = "B/s", + zh_TW = "???/?" }; -- Download rate when we don't know the goal (can't report time left). @@ -1782,7 +1870,8 @@ pt = "%0 %1", ru = "%0 %1", sk = "%0 %1", - sv = "%0 %1" + sv = "%0 %1", + zh_TW = "%0 %1" }; -- Download rate when we know the goal (can report time left). @@ -1802,7 +1891,8 @@ pt = "restam %0 %1, %2:%3:%4", ru = "%0 %1, ???????? %2:%3:%4", sk = "%0 %1, %2:%3:%4 zost?va", - sv = "%0 %1, %2:%3:%4 ?terst?r" + sv = "%0 %1, %2:%3:%4 ?terst?r", + zh_TW = "?? %0 %1, %2:%3:%4" }; -- download rate when download isn't progressing at all. @@ -1821,7 +1911,8 @@ pt = "Parado", ru = "????????", sk = "zastaven?", - sv = "avstannad" + sv = "avstannad", + zh_TW = "???" }; -- Download progress string: filename (%0), percent downloaded (%1), @@ -1840,12 +1931,14 @@ pt = "%0: %1%% (%2)", ru = "%0: %1%% (%2)", sk = "%0: %1%% (%2)", - sv = "%0: %1%% (%2)" + sv = "%0: %1%% (%2)", + zh_TW = "%0: %1%% (%2)" }; -- This is a window title when prompting the user to insert a new disc. ["Media change"] = { cs = "V?m?na m?dia", + da = "Skift medie", de = "Medienwechsel", el = "?????? ???? ???????????", en_GB = "Media change", @@ -1899,13 +1992,15 @@ pt = "N_unca", ru = "?_??????", sk = "N_ikdy", - sv = "Al_drig" + sv = "Al_drig", + zh_TW = "??(_N)" }; -- This is a GUI button label, to move forward to the next stage of -- installation. It's opposite is "Back" in this case. ["Next"] = { cs = "Dal??", + da = "N?ste", de = "Weiter", el = "???????", en_GB = "Next", @@ -1926,6 +2021,7 @@ -- This is a GUI button label, indicating a negative response. ["No"] = { cs = "Ne", + da = "Nej", de = "Nein", el = "???", en_GB = "No", @@ -1946,6 +2042,7 @@ -- This is a GUI button label, indicating a positive response. ["Yes"] = { cs = "Ano", + da = "Ja", de = "Ja", el = "???", en_GB = "Yes", @@ -1967,6 +2064,7 @@ -- file is missing. ["Not Found"] = { cs = "Nenalezeno", + da = "Ikke fundet", de = "Nicht gefunden", el = "??? ???????", en_GB = "Not Found", @@ -2007,6 +2105,7 @@ -- This is a GUI button label, sometimes paired with "Cancel" ["OK"] = { cs = "OK", + da = "OK", de = "OK", el = "???????", en_GB = "OK", @@ -2071,6 +2170,7 @@ -- scrolling by. ["Press enter to continue."] = { cs = "Pro pokra?ov?n? stiskn?te enter.", + da = "Tryk retur for at forts?tte.", de = "Dr?cken Sie Enter um fortzufahren", el = "??????? ENTER ??? ????????.", en_GB = "Press enter to continue.", @@ -2093,6 +2193,7 @@ -- during a rollback). ["Serious problem"] = { cs = "Z?va?n? probl?m", + da = "Seri?st problem", de = "Ernstes Problem", el = "?????? ????????", en_GB = "Serious problem", @@ -2112,6 +2213,7 @@ -- The www UI uses this as a page title when the program is terminating. ["Shutting down..."] = { cs = "Ukon?uji se...", + da = "Lukker ned...", de = "Schlie?e...", el = "??????? ???????????...", en_GB = "Shutting down...", @@ -2131,6 +2233,7 @@ -- The www UI uses this as page text when the program is terminating. ["You can close this browser now."] = { cs = "Nyn? m??ete ukon?it tento prohl??e?.", + da = "Du kan lukke browseren nu.", de = "Sie k?nnen diesen Browser nun schlie?en.", el = "???????? ?? ???????? ????? ??? ????????? ????.", en_GB = "You can close this browser now.", @@ -2144,7 +2247,8 @@ pt = "J? pode fechar este browser.", ru = "?????? ??????? ???????.", sk = "M??ete zavre? tento prehliada?.", - sv = "Du kan st?nga denna webbl?sare nu." + sv = "Du kan st?nga denna webbl?sare nu.", + zh_TW = "???????????" }; -- Error message shown to end-user when we can't write a symbolic link @@ -2211,6 +2315,7 @@ -- This is a button label in the ncurses ui to flip an option on/off. ["Toggle"] = { cs = "P?epnout", + da = "Skift", de = "Umschalten", el = "????????", en_GB = "Toggle", @@ -2233,6 +2338,7 @@ -- how to handle. ["Unknown file type in archive"] = { cs = "Nezn?m? typ souboru v archivu.", + da = "Ukendt filtype i arkiv", de = "Unbekannter Dateityp im Archiv", el = "???????? ????? ??????? ???? ??? ?????? ???????.", en_GB = "Unknown file type in archive", @@ -2245,7 +2351,8 @@ pt = "Tipo de ficheiro desconhecido no arquivo", ru = "??????????? ??? ????? ? ??????", sk = "Nezn?my typ s?boru v arch?ve", - sv = "Ok?nd filtyp p?tr?ffad i arkivet" + sv = "Ok?nd filtyp p?tr?ffad i arkivet", + zh_TW = "????????????" }; -- This is an error message shown to the end-user if they refuse to @@ -2276,6 +2383,7 @@ -- actual data, basically. ["Metadata"] = { cs = "Metadata", + da = "Metadata", de = "Metadaten", el = "????????????", en_GB = "Metadata", @@ -2289,7 +2397,8 @@ pt = "Meta-Informa??o", ru = "??????????", sk = "Metad?ta", - sv = "Metadata" + sv = "Metadata", + zh_TW = "????" }; -- This error is shown if incorrect command line arguments are used. @@ -2327,7 +2436,8 @@ pt = "Foi imposs?vel carregar o ficheiro de manifesto para '%0'", ru = "?? ???? ????????? ???? ????????? '%0'", sk = "Nem??em nahra? manifest s?bor pre '%0'", - sv = "Kunde inte ladda manifestfil f?r '%0'" + sv = "Kunde inte ladda manifestfil f?r '%0'", + zh_TW = "?????? '%' ?????" }; -- This error is shown when the user prompted the app to read a filename @@ -2354,6 +2464,7 @@ -- they want to uninstall a package. ["Uninstall"] = { cs = "Odinstalovat", + da = "Afinstall?r", de = "Deinstallieren", el = "?????????????", en_GB = "Uninstall", @@ -2395,6 +2506,7 @@ -- and a progress meter is being shown. ["Uninstalling"] = { cs = "Odinstalov?v?m", + da = "Afinstallerer", de = "Deinstalliere", el = "??????? ?????????????", en_GB = "Uninstalling", @@ -2451,7 +2563,8 @@ pt = "[Torne a janela mais larga!]", ru = "???????? ???? ????!", sk = "[Roztiahnite okno do ??rky!]", - sv = "[G?r f?nstret bredare!]" + sv = "[G?r f?nstret bredare!]", + zh_TW = "[?????]" }; -- This is written to the terminal in the ncurses UI when the window is @@ -2475,7 +2588,8 @@ pt = "[Torne a janela mais alta!]", ru = "???????? ???? ????!", sk = "[Roztiahnite okno do v??ky!]", - sv = "[G?r f?nstret h?gre!]" + sv = "[G?r f?nstret h?gre!]", + zh_TW = "[?????]" }; -- This is written out if we failed to add an item to the desktop From DONOTREPLY at icculus.org Wed Mar 5 05:51:50 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 5 Mar 2008 05:51:50 -0500 Subject: r549 - trunk/scripts Message-ID: <20080305105150.7057.qmail@icculus.org> Author: icculus Date: 2008-03-05 05:51:49 -0500 (Wed, 05 Mar 2008) New Revision: 549 Modified: trunk/scripts/localization.lua Log: Fixed bogus escape chars in zh_TW translation. Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-05 03:20:33 UTC (rev 548) +++ trunk/scripts/localization.lua 2008-03-05 10:51:49 UTC (rev 549) @@ -726,7 +726,7 @@ ru = "??????: '%0' ???????????? ???????? ??? ????.", sk = "CHYBA: '%0' nieje spr?vny sp?sob z?pisu pr?v", sv = "FEL: '%0' ?r inte en giltig r?ttighetsstr?ng", - zh_TW = "???'%' ????????????" + zh_TW = "???'%0' ????????????" }; -- If there's a string in the program that needs be formatted with @@ -2437,7 +2437,7 @@ ru = "?? ???? ????????? ???? ????????? '%0'", sk = "Nem??em nahra? manifest s?bor pre '%0'", sv = "Kunde inte ladda manifestfil f?r '%0'", - zh_TW = "?????? '%' ?????" + zh_TW = "?????? '%0' ?????" }; -- This error is shown when the user prompted the app to read a filename From DONOTREPLY at icculus.org Wed Mar 5 23:53:52 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 5 Mar 2008 23:53:52 -0500 Subject: r550 - trunk/scripts Message-ID: <20080306045352.6440.qmail@icculus.org> Author: icculus Date: 2008-03-05 23:53:51 -0500 (Wed, 05 Mar 2008) New Revision: 550 Modified: trunk/scripts/localization.lua Log: Latest from launchpad.net. Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-05 10:51:49 UTC (rev 549) +++ trunk/scripts/localization.lua 2008-03-06 04:53:51 UTC (rev 550) @@ -3,8 +3,8 @@ -- Please see the file LICENSE.txt in the source's root directory. -- -- DO NOT EDIT BY HAND. --- This file was generated with po2localization.pl, version svn-547 ... --- on 2008-03-04 22:18:48-0500 +-- This file was generated with po2localization.pl, version svn-549 ... +-- on 2008-03-05 23:51:25-0500 -- -- Your own installer's localizations go into app_localization.lua instead. -- If you want to add strings to be translated to this file, contact Ryan @@ -15,7 +15,7 @@ -- -- ...and that work eventually ends up in this file. -- --- X-Launchpad-Export-Date: 2008-03-05 01:36+0000 +-- X-Launchpad-Export-Date: 2008-03-06 04:24+0000 -- X-Generator: Launchpad (build Unknown) MojoSetup.languages = { @@ -47,6 +47,7 @@ cs = "je t?eba slovn?k", de = "W?rterbuch ben?tigt", el = "?????????? ??????", + en_CA = "need dictionary", en_GB = "need dictionary", es = "necesita diccionario", fi = "tarve sanastolle", @@ -67,10 +68,11 @@ cs = "datov? chyba", de = "Datenfehler", el = "?????? ?????????", + en_CA = "data error", en_GB = "data error", es = "error de datos", fi = "datavirhe", - fr = "erreur de donn?es", + fr = "Erreur de donn?es", nb = "datafeil", nds = "Datenfehler", nl = "data fout", @@ -88,10 +90,11 @@ da = "hukommelsesfejl", de = "Speicherfehler", el = "?????? ??????", + en_CA = "memory error", en_GB = "memory error", es = "error de memoria", fi = "muistivirhe", - fr = "erreur de m?moire", + fr = "Erreur m?moire", nb = "minnefeil", nds = "Speicherfehler", nl = "geheugen fout", @@ -108,10 +111,11 @@ cs = "chyba bufferu", de = "Pufferfehler", el = "?????? ?????????? ????? ???????????", + en_CA = "buffer error", en_GB = "buffer error", es = "error de buffer", fi = "puskurivirhe", - fr = "erreur de tampon", + fr = "Erreur de tampon", nb = "bufferfeil", nds = "Pufferfehler", nl = "buffer fout", @@ -129,10 +133,11 @@ da = "versionsfejl", de = "Versionsfehler", el = "????????? ?????? ??????????", + en_CA = "version error", en_GB = "version error", es = "error de versi?n", fi = "versiovirhe", - fr = "erreur de version", + fr = "Erreur de version", nb = "versjonsfeil", nds = "Versionsfehler", nl = "versie fout", @@ -150,10 +155,11 @@ da = "ukendt fejl", de = "Unbekannter Fehler", el = "??????? ??????", + en_CA = "unknown error", en_GB = "unknown error", es = "error desconocido", fi = "tuntematon virhe", - fr = "erreur inconnue", + fr = "Erreur inconnue", it = "errore sconosciuto", nb = "ukjent feil", nds = "unbekannter Fehler", @@ -172,6 +178,7 @@ cs = "UPOZORN?N?: %0\n[stiskn?te enter]", de = "HINWEIS: %0\n[Dr?cken Sie Enter]", el = "???????: %0\n[??????? ENTER]", + en_CA = "NOTICE: %0\n[hit enter]", en_GB = "NOTICE: %0\n[hit enter]", es = "AVISO: %0\n[presiona Intro]", fi = "ILMOITUS: %0\n[paina enter]", @@ -194,6 +201,7 @@ cs = "%0 [A/n]: ", de = "%0 [J/n]: ", el = "%0 [?/?]: ", + en_CA = "%0 [Y/n]: ", en_GB = "%0 [Y/n] ", es = "%0 [S/n]: ", fi = "%0 [K/e]: ", @@ -216,6 +224,7 @@ cs = "%0 [a/N] ", de = "%0 [j/N]: ", el = "%0 [?/?]: ", + en_CA = "%0 [y/N]: ", en_GB = "%0 [y/N]: ", es = "%0 [s/N]: ", fi = "%0 [k/E]: ", @@ -238,6 +247,7 @@ cs = "%0 [a/n/V?dy/niKdy] ", de = "%0 [j/n/Immer/Niemals]: ", el = "%0 [?/?/?????/????]: ", + en_CA = "%0 [y/n/Always/Never]: ", en_GB = "%0 [y/n/Always/Never]: ", es = "%0 [s/n/Siempre/Nunca]: ", fi = "%0 [k/e/Aina/ei Koskaan]: ", @@ -259,6 +269,7 @@ cs = "A", de = "J", el = "?", + en_CA = "Y", en_GB = "Y", es = "S", fi = "K", @@ -280,6 +291,7 @@ da = "N", de = "N", el = "?", + en_CA = "N", en_GB = "N", es = "N", fi = "E", @@ -302,6 +314,7 @@ da = "Altid", de = "Immer", el = "?????", + en_CA = "Always", en_GB = "Always", es = "Siempre", fi = "Aina", @@ -324,6 +337,7 @@ da = "Aldrig", de = "Niemals", el = "????", + en_CA = "Never", en_GB = "Never", es = "Nunca", fi = "ei Koskaan", @@ -346,10 +360,12 @@ cs = "(%0-%1 z %2 ??dk?, zobrazit v?ce?)", de = "(%0-%1 von %2 Zeilen, mehr anschauen?)", el = "(%0-%1 ??? %2 ???????, ?????? ?? ????? ?????????????)", + en_CA = "(%0-%1 of %2 lines, see more?)", en_GB = "(%0-%1 of %2 lines, see more?)", es = "(%0-%1 de %2 l?neas, ?ves m?s?)", fi = "(%0-%1 %2:sta rivist?, lue lis???)", fr = "(lignes %0 ? %1 sur %2, en voir plus??)", + it = "%0-%1 di %2 linee, desideri visualizzare le successive?", nb = "(%0-%1 av %2 linjer, se mer?)", nds = "%0-%1 vom %2 lines, mehr?", nl = "(%0-%1 van %2 regels, meer zien?)", @@ -367,6 +383,7 @@ cs = "Napi?te '%0' pro n?vrat zp?t.", de = "Dr?cken Sie '%0' um zur?ckzugehen.", el = "??????? '%0' ??? ?? ???? ????.", + en_CA = "Type '%0' to go back.", en_GB = "Type '%0' to go back.", es = "Pulsa '%0' para ir atr?s.", fi = "Kirjoita '%0' palataksesi edelliseen osioon.", @@ -391,6 +408,7 @@ da = "tilbage", de = "zur?ck", el = "????", + en_CA = "back", en_GB = "back", es = "atr?s", fi = "takaisin", @@ -412,6 +430,7 @@ da = "> ", de = "> ", el = "> ", + en_CA = "> ", en_GB = "> ", es = "> ", fi = "> ", @@ -432,6 +451,7 @@ cs = "%0: %1%%", de = "%0: %1%%", el = "%0: %1%%", + en_CA = "%0: %1%%", en_GB = "%0: %1%%", es = "%0: %1%%", fi = "%0: %1%%", @@ -453,6 +473,7 @@ cs = "%0 (celkov? pr?b?h: %1%%)", de = "%0 (Gesamtfortschritt: %1%%)", el = "%0 (???????? ???????: %1%%)", + en_CA = "%0 (total progress: %1%%)", en_GB = "%0 (total progress: %1%%)", es = "%0 (Progreso total: %1%%)", fi = "%0 (kokonaisedistyminen: %1%%)", @@ -475,6 +496,7 @@ da = "Accepter denne licens?", de = "Nehmen Sie die Lizenzbedingungen an?", el = "??????? ???? ??? ????? ???????", + en_CA = "Accept this licence?", en_GB = "Accept this licence?", es = "?Acepta esta licencia?", fi = "Hyv?ksy lisenssi?", @@ -497,6 +519,7 @@ da = "_Altid", de = "_Immer", el = "_?????", + en_CA = "_Always", en_GB = "_Always", es = "_Siempre", fi = "_Aina", @@ -519,10 +542,12 @@ da = "Arkiv ikke fundet", de = "Archiv nicht gefunden", el = "?? ?????? ??? ???????.", + en_CA = "Archive not found", en_GB = "Archive not found", es = "Archivo no encontrado", fi = "Pakettia ei l?ydy", fr = "Archive introuvable", + it = "Archivio non presente", nb = "Fant ikke arkiv", nds = "Archiv nicht gefunden", nl = "Archief niet gevonden", @@ -540,6 +565,7 @@ da = "Vil du afbryde installationen?", de = "Sind Sie sicher, dass Sie die Installation abbrechen wollen?", el = "????? ???????? ??? ?????? ?? ????????? ??? ????????????", + en_CA = "Are you sure you want to cancel installation?", en_GB = "Are you sure you want to cancel installation?", es = "?Est?s seguro de que quieres cancelar la instalaci?n?", fi = "Haluatko varmasti keskeytt?? asennuksen?", @@ -561,6 +587,7 @@ da = "Tilbage", de = "Zur?ck", el = "???????????", + en_CA = "Back", en_GB = "Back", es = "Atr?s", fi = "Takaisin", @@ -584,6 +611,7 @@ da = "_Gennemse...", de = "Du_rchsuchen", el = "_?????????...", + en_CA = "B_rowse...", en_GB = "B_rowse...", es = "_Navegar...", fi = "_Selaa", @@ -611,9 +639,12 @@ cs = "CHYBA: duplik?tn? id m?dia", de = "FEHLER: Doppelte Medien-ID", el = "??????: ????? ??????? ??? ???? media id", + en_CA = "BUG: duplicate media id", en_GB = "BUG: duplicate media id", es = "FALLO: id de medio duplicada", fi = "BUGI: kaksi identtist? media id:t?", + fr = "BUG: Identifiant du media d?j? utilis?", + it = "BUG: media id duplicato", nb = "FEIL: duplisert media-id", nds = "BUG: Doppelte media id", nl = "BUG: dubbele media id", @@ -631,10 +662,12 @@ cs = "CHYBA: nejsou dostupn? ??dn? volby", de = "FEHLER: Keine Optionen", el = "??????: ??? ???????? ????????? ????????????", + en_CA = "BUG: no options", en_GB = "BUG: no options", es = "FALLO: sin opciones", fi = "BUGI: ei vaihtoehtoja", fr = "BUG: Pas d'options", + it = "BUG: nessuna opzione disponibile", nb = "FEIL: ingen valg", nds = "BUG: keine Optionen", nl = "BUG: geen opties", @@ -653,9 +686,12 @@ cs = "CHYBA: support_uninstall vy?aduje write_manifest", de = "FEHLER: support_uninstall ben?tigt write_manifest", el = "??????: ?? \"support_uninstall\" ??????? ?? \"write_manifest\"", + en_CA = "BUG: support_uninstall requires write_manifest", en_GB = "BUG: support_uninstall requires write_manifest", es = "FALLO: support_uninstall requiere write_manifest", fi = "BUGI: support_uninstall vaatii write_manifest:n", + fr = "Vous devez activer le support du manifeste pour inclure le d?sinstallateur.", + it = "BUG: support_uninstall richiede write_manifest", nb = "FEIL: support_uninstall krever write_manifest", nds = "BUG: support_uninstall ben?tigt write_manifest", nl = "BUG: ondersteuning_deinstalleren heeft schrijf_manifest nodig", @@ -676,11 +712,15 @@ cs = "CHYBA: write_manifest vy?aduje podporu Lua parseru", de = "FEHLER: write_manifest ben?tigt Lua Parser Unterst?tzung", el = "??????: ?? \"write_manifest\" ??????? ?? ??????? ?????????? ??? \"Lua parser\"", + en_CA = "BUG: write_manifest requires Lua parser support", en_GB = "BUG: write_manifest requires Lua parser support", es = "FALLO: write_manifest requiere el soporte de un int?rprete Lua", fi = "BUGI: write_manifest vaatii Lua parser -tuen", + fr = "Vous devez activer le support du parser Lua pour g?n?rer la manifeste.", + it = "BUG: write_manifest richiede Lua parser support", nb = "FEIL: write_manifest krever st?tte for Lua-parser", nds = "Fehler: write_manifest ben?tift Lua Parser Unterst?tzung", + nl = "BUG: write_manifest heeft Lua parser ondersteuning nodig", pt = "BUG: write_manifest requer suporte do analisador da linguagem Lua", ru = "??????: write_manifest ??????? ????????? Lua parser", sk = "CHYBA: write_manifest potrebuje zapnut? podporu Lua parsera (Lua parser support)", @@ -696,10 +736,14 @@ cs = "CHYBA: Setup.DesktopMenuItem vy?aduje support_uninstall", de = "FEHLER: Setup.DesktopMenuItem ben?tigt support_uninstall", el = "??????: ?? Setup.DesktopMenuItem ??????? ?? \"support_uninstall\"", + en_CA = "BUG: Setup.DesktopMenuItem requires support_uninstall", en_GB = "BUG: Setup.DesktopMenuItem requires support_uninstall", es = "FALLO: Setup.DesktopMenuItem requiere support_uninstall", fi = "BUGI: Setup.DesktopMenuItem vaatii support_uninstall:n", + fr = "Vous devez inclure le d?sinstallateur pour ajouter des objets au Menu Syst?me.", + it = "BUG: Setup.DesktopMenuItem richiede support_uninstall", nds = "BUG: Setup.DesktopMenuItem ben?tigt support_uninstall", + nl = "BUG: Setup.DesktopMenuItem heeft support_uninstall nodig", pt = "BUG: Setup.DesktopMenuItem requer support_uninstall", ru = "??????: Setup.DesktopMenuItem ????????? ? support_uninstall", sk = "CHYBA: Setup.DesktopMenuItem potrebuje support_uninstall", @@ -715,6 +759,7 @@ cs = "CHYBA: '%0' nen? platn?m ?et?zcem vyjad?uj?c?m opr?vn?n?", de = "FEHLER: '%0' ist kein zul?ssiger Berechtigungs-String", el = "??????: '%0' ??? ????? ?????? ????????????? ?????????? ???????????", + en_CA = "BUG: '%0' is not a valid permission string", en_GB = "BUG: '%0' is not a valid permission string", es = "FALLO: '%0' no es una cadena de permisos v?lida", fi = "BUGI: \"%0\" ei ole kelvollinen oikeuksia m??ritt?v? merkkijono", @@ -737,12 +782,15 @@ cs = "CHYBA: Neplatn? ?et?zec pro format()", de = "FEHLER: Unzul?ssiger format() String", el = "??????: ????? format() ?????????????", + en_CA = "BUG: Invalid format() string", en_GB = "BUG: Invalid format() string", es = "FALLO: Cadena format() no v?lida", fi = "BUGI: Ep?kelpo format()-merkkijono", fr = "BUG: Cha?ne format() invalide", + it = "BUG: stringa format() non valida", nb = "FEIL: Ugyldig format()-streng", nds = "BUG: Ung?ltiger format() string", + nl = "BUG: Ongeldige format() string", pt = "BUG: format() inv?lido da express?o", ru = "??????: ???????????? ?????? format()", sk = "CHYBA: nespr?vny format() re?azec", @@ -758,6 +806,7 @@ cs = "CHYBA: instala?n? krok vr?til chybn? datov? typ", de = "FEHLER: Abschnitt gab falschen Typ zur?ck", el = "??????: ? ???? ???????????? ????????? ????? ???? ?????????", + en_CA = "BUG: stage returned wrong type", en_GB = "BUG: stage returned wrong type", es = "FALLO: la etapa ha devuelto tipo err?neo", fi = "BUGI: vaihe palautti v??r?? tyyppi?", @@ -780,6 +829,7 @@ cs = "CHYBA: instala?n? krok vr?til chybnou hodnotu", de = "FEHLER: Abschnitt gab falschen Wert zur?ck", el = "??????: ? ???? ???????????? ????????? ????? ????", + en_CA = "BUG: stage returned wrong value", en_GB = "BUG: stage returned wrong value", es = "FALLO: la etapa ha devuelto valor err?neo", fi = "BUGI: vaihe palautti v??r?n arvon", @@ -802,10 +852,11 @@ cs = "CHYBA: pokus o krok zp?t p?ed za??tek instalace", de = "FEHLER: ?ber den Startabschnitt hinaus zur?ckgegangen", el = "??????: ???????? ? ????????? ?? ??????????? ???? ??? ??? ???????", + en_CA = "BUG: stepped back over start of stages", en_GB = "BUG: stepped back over start of stages", es = "FALLO: retroceso m?s atr?s del inicio de las etapas", fi = "BUGI: palattiin ensimm?isen vaiheen ohi", - fr = "BUG: Retourn? au d?but des ?tapes", + fr = "BUG: Revenu au d?but des ?tapes", nb = "FEIL: Gikk tilbake forbi startniv?", nds = "BUG: Zur?ck vor dem ersten Vorgang", nl = "BUG: teruggegaan naar voor eerste stadium.", @@ -821,6 +872,7 @@ ["BUG: Unhandled data type"] = { cs = "CHYBA: Datov? typ nen? obsluhov?n", de = "FEHLER: Unbehandelter Datentyp", + en_CA = "BUG: Unhandled data type", en_GB = "BUG: Unhandled data type", es = "FALLO: Tipo de datos sin manipular", fi = "BUGI: K?sittelem?t?n datatyyppi", @@ -842,6 +894,7 @@ cs = "CHYBA: Nemohu zduplikovat vstupy z taru", de = "FEHLER: Tar-Eingaben k?nnen nicht dupliziert werden", el = "??????: ??? ????? ??????? ????????? ??? ????????? ??????? ??? \"tar\"", + en_CA = "BUG: Can't duplicate tar inputs", en_GB = "BUG: Can't duplicate tar inputs", es = "FALLO: No se pueden duplicar las entradas tar", fi = "BUGI: tar-sy?tteit? ei voida kahdentaa", @@ -863,10 +916,12 @@ cs = "CHYBA: Neo?ek?van? hodnota", de = "FEHLER: Unerwarteter Wert", el = "??????: ?? ??????????? ????", + en_CA = "BUG: Unexpected value", en_GB = "BUG: Unexpected value", es = "FALLO: Valor inesperado", fi = "BUGI: Odottamaton arvo", fr = "BUG: Valeur inattendue", + it = "BUG: Valore inatteso", nds = "BUG: Unerwarteter Wert", nl = "BUG: Onverwachte waarde", pt = "BUG: Valor inexperado", @@ -885,6 +940,7 @@ cs = "CHYBA: Konfigura?n? hodnota %0 %1", de = "FEHLER: Konfiguration %0 %1", el = "??????: ?????????? %0 %1", + en_CA = "BUG: Config %0 %1", en_GB = "BUG: Config %0 %1", es = "FALLO: Configuraci?n %0 %1", fi = "BUGI: Config %0 %1", @@ -905,10 +961,12 @@ cs = "mus? b?t explicitn? ur?en", de = "muss explizit angegeben werden", el = "?????? ?? ??????? ????", + en_CA = "must be explicitly specified", en_GB = "must be explicitly specified", es = "debe ser especificado expl?citamente", fi = "t?ytyy m??ritell? t?sm?llisesti", fr = "doit ?tre sp?cifi? explicitement", + it = "deve essere esplicitato", nb = "m? spesifiseres eksplisitt", nds = "muss ausdr?cklich spezifiziert werden", nl = "moet expliciet gespecifieerd worden", @@ -924,10 +982,12 @@ cs = "mus? b?t ?et?zcem nebo tabulkou ?et?zc?", de = "muss ein String oder eine Tabelle von Strings sein", el = "?????? ?? ????? ??? ????????????? ? ??????? ??? ?????????????", + en_CA = "must be string or table of strings", en_GB = "must be string or table of strings", es = "debe ser una cadena o tabla de cadenas", fi = "t?ytyy olla merkkijono tai merkkijonotaulukko", fr = "doit ?tre une cha?ne de caract?res ou un tableau de cha?nes de caract?res", + it = "deve essere una stringa o una tabella di stringhe", nb = "m? v?re streng eller tabell av strenger", nds = "muss String oder Tabelle von Strings sein", nl = "moet een string of een tabel met strings zijn", @@ -943,10 +1003,12 @@ cs = "mus? b?t ?et?zcem nebo ??slem", de = "muss ein String oder eine Zahl sein", el = "?????? ?? ????? ????????????? ? ???????", + en_CA = "must be a string or number", en_GB = "must be a string or number", es = "debe ser una cadena o un n?mero", fi = "t?ytyy olla merkkijono tai luku", fr = "doit ?tre une cha?ne de caract?res ou un nombre", + it = "deve essere una stringa oppure un numero", nb = "m? v?re streng eller nummer", nds = "muss String oder Nummer sein", nl = "moet een string of een nummer zijn", @@ -962,10 +1024,12 @@ cs = "nem??e b?t pr?zdn?m ?et?zcem", de = "darf kein leerer String sein", el = "??? ?????? ?? ????? ????? ?????????????", + en_CA = "can't be empty string", en_GB = "can't be empty string", es = "no puede ser una cadena vac?a", fi = "ei saa olla tyhj? merkkijono", fr = "ne peut ?tre une cha?ne de caract?res vide", + it = "non pu? essere una stringa vuota", nb = "kan ikke v?re tom streng", nds = "kann String nicht leeren", nl = "kan geen lege string zijn", @@ -981,6 +1045,7 @@ cs = "URL nem? ur?en? protokol", de = "URL hat kein Protokoll", el = "?? URL ??? ???????? ????????? ??????????", + en_CA = "URL doesn't have protocol", en_GB = "URL doesn't have protocol", es = "URL sin especificar protocolo", fi = "URL ei sis?ll? protokollaa", @@ -1000,6 +1065,7 @@ cs = "URL neobsahuje hostitele", de = "URL hat keinen Host", el = "?? URL ??? ???????? ????????? ??????????", + en_CA = "URL doesn't have host", en_GB = "URL doesn't have host", es = "URL sin especificar host", fi = "URL ei sis?ll? palvelinta", @@ -1019,12 +1085,14 @@ cs = "URL neobsahuje cestu", de = "URL hat keinen Pfad", el = "?? URL ??? ???????? ?? ????????", + en_CA = "URL doesn't have path", en_GB = "URL doesn't have path", es = "URL sin especificar ruta", fi = "URL ei sis?ll? polkua", fr = "L'URL manque un chemin", nb = "URL har ikke sti", nds = "URL hat keinen Pfad", + nl = "URL heeft geen pad", pt = "O URL n?o tem recurso", ru = "URL ?? ???????? ????", sk = "URL neobsahuje cestu", @@ -1037,6 +1105,7 @@ cs = "Protokol v URL nen? podporov?n", de = "URL Protokoll wird nicht unterst?tzt", el = "?? ????????? ??? ???????? ?? URL ??? ?????????????", + en_CA = "URL protocol is unsupported", en_GB = "URL protocol is unsupported", es = "Protocolo de URL no soportado", fi = "URL:n protokollaa ei tueta", @@ -1058,6 +1127,7 @@ cs = "?et?zec s opr?vn?n?mi je neplatn?", de = "Berechtigungsstring ist ung?ltig", el = "?? ????????????? ??? ?????????? ?? ?????????? ????? ?????.", + en_CA = "Permission string is invalid", en_GB = "Permission string is invalid", es = "Cadena de permisos no v?lida", fi = "oikeuksia m??ritt?v? merkkijono ei ole kelvollinen", @@ -1079,6 +1149,7 @@ cs = "nen? platnou vlastnost?", de = "ist keine g?ltige Eigenschaft", el = "??? ????? ?????? ????????", + en_CA = "is not a valid property", en_GB = "is not a valid property", es = "no es un atributo v?lido", fi = "ei ole kelvollinen m??rite", @@ -1101,6 +1172,7 @@ da = "skal v?re %0", de = "muss vom Typ %0 sein", el = "?????? ?? ????? %0", + en_CA = "must be %0", en_GB = "must be %0", es = "debe ser %0", fi = "t?ytyy olla %0", @@ -1121,6 +1193,7 @@ cs = "?et?zec", de = "String", el = "?????????????", + en_CA = "string", en_GB = "string", es = "cadena", fi = "merkkijono", @@ -1142,6 +1215,7 @@ da = "boolsk", de = "Bool", el = "boolean", + en_CA = "boolean", en_GB = "boolean", es = "booleano", fi = "totuusarvo", @@ -1163,6 +1237,7 @@ da = "nummer", de = "Zahl", el = "???????", + en_CA = "number", en_GB = "number", es = "n?mero", fi = "luku", @@ -1183,6 +1258,7 @@ cs = "funkce", de = "Funktion", el = "function", + en_CA = "function", en_GB = "function", es = "funci?n", fi = "funktio", @@ -1204,6 +1280,7 @@ da = "tabel", de = "Tabelle", el = "???????", + en_CA = "table", en_GB = "table", es = "tabla", fi = "taulukko", @@ -1226,10 +1303,12 @@ da = "bzlib for?rsagede en intern fejl:", de = "bzlib hat einen internen Fehler ausgel?st: %0", el = "?? bzlib ?????????? ????????? ??????: %0", + en_CA = "bzlib triggered an internal error: %0", en_GB = "bzlib triggered an internal error: %0", es = "bzlib ha provocado un error interno: %0", fi = "bzlib laukaisi sis?isen virheen: %0", fr = "bzlib a caus? une erreur interne: %0", + it = "bzlib ha causato un errore interno: %0", nb = "intern feil i bzlib: %0", nds = "bzlib l?ste eine internen Fehler aus: %0", nl = "bzlib heeft een interne fout veroorzaakt: %0", @@ -1247,6 +1326,7 @@ da = "Annuller", de = "Abbrechen", el = "?????", + en_CA = "Cancel", en_GB = "Cancel", es = "Cancelar", fi = "Peru", @@ -1268,6 +1348,7 @@ cs = "Zru?it instalaci", de = "Installation abbrechen", el = "??????? ????????????", + en_CA = "Cancel installation", en_GB = "Cancel installation", es = "Cancelar instalaci?n", fi = "Peru asennus", @@ -1289,12 +1370,14 @@ cs = "Nemohu proj?t archiv", de = "Archiv kann nicht aufgelistet werden", el = "??? ????? ?????? ? ?????????? ??? ??????? ???????", + en_CA = "Couldn't enumerate archive", en_GB = "Couldn't enumerate archive", es = "No se puede enumerar el archivo", fi = "Paketin tiedostojen listaus ep?onnistui", fr = "Ne peux pas ?num?rer les fichiers de l'archive", nb = "Kunne ikke liste filer i arkivet", nds = "Konnte Archive nicht nummerieren", + nl = "Kan het archief niet weergeven", pt = "Foi imposs?vel enumerar o arquivo", ru = "?? ???? ????????? ?????", sk = "Nem??em prelistova? arch?v", @@ -1309,11 +1392,12 @@ da = "Kunne ikke ?bne arkiv", de = "Archiv kann nicht ge?ffnet werden", el = "??? ??????? ?? ??????? ?? ??????", + en_CA = "Couldn't open archive", en_GB = "Couldn't open archive", es = "No se puede abrir el archivo", fi = "Paketin purkaminen ep?onnistui", fr = "Impossible d'ouvrir l'archive.", - it = "Non posso aprire l'archivio", + it = "Impossibile aprire l'archivio", nb = "Kunne ikke ?pne arkivet", nds = "Kann Archiv nicht ?ffnen", nl = "Kon archief niet openen", @@ -1333,17 +1417,20 @@ cs = "Zvolte c?l instalace ??slem (stiskn?te enter pro #1) nebo zadejte vlastn? c?l.", de = "W?hlen Sie eine Nummer f?r das Installationsziel (dr?cken Sie Enter f?r #1), oder geben Sie ein eigenes an.", el = "???????? ????????? ???????????? ???? ??????? (??????? ENTER ??? #1), ? ?????? ??? ???? ???.", + en_CA = "Choose install destination by number (hit enter for #1), or enter your own.", en_GB = "Choose install destination by number (hit enter for #1), or enter your own.", es = "Elige lugar de instalaci?n con n?meros (pulsa Intro para #1), o especif?calo", fi = "Valitse asennuskohteen numero (enter valitsee kohteen 1) tai sy?t? oma kohde.", fr = "Choisissez la destination d'installation par un nombre (Appuyez sur Entr?e pour le n?1), ou entrez votre propre choix.", + it = "Seleziona la destinazione dell'installazione tramite il numero corrispondente (invio per la #1), oppure digita il percorso desiderato.", nb = "Velg installasjonssti etter nummer (trykk enter for #1), eller skriv inn din egen.", nds = "W?hlen Sie das Installationsverzeichnis durch Dr?cken einer Nummer (enter f?r #1), oder geben Sie selber einen ein.", nl = "Kies installatiemap met het bijbehorende nummer, of voer u eigen keuze in.", pt = "Escolha o destino da instala??o pelo seu n?mero (pressione enter para o primeiro destino), ou introduza um outro destino.", ru = "???????? ???? ????????? (??????? Enter ??? ?????? 1), ??? ??????? ????.", sk = "Vyberte cie? in?tal?cie pomocou ??sla (stla?te enter pre prv? mo?nos?).", - sv = "V?lj s?kv?g f?r installationen efter nummer (tryck enter f?r #1), eller skriv in din egen." + sv = "V?lj s?kv?g f?r installationen efter nummer (tryck enter f?r #1), eller skriv in din egen.", + zh_TW = "???????????????? [Enter] ?????????????????????" }; -- This is used by the stdio UI to toggle options. A numbered list is @@ -1354,10 +1441,12 @@ cs = "Zadejte ??slo pro zm?nu.", de = "W?hlen Sie eine Nummer zum ?ndern.", el = "???????? ??? ?????? ??? ?????? ?? ????????.", + en_CA = "Choose number to change.", en_GB = "Choose number to change.", es = "Elegir n?mero para cambiar", fi = "Valitse muutettavan numero.", fr = "Entrez le num?ro de l'option ? modifier.", + it = "Seleziona il numero corrispondente per cambiare.", nb = "Velg nummer som skal endres.", nds = "W?hle eine Nummer zum ?ndern", nl = "Kies een nummer om te veranderen", @@ -1375,10 +1464,12 @@ da = "Konflikt!", de = "Konflikt!", el = "???????!", + en_CA = "Conflict!", en_GB = "Conflict!", es = "?Conflicto!", fi = "Ristiriita!", fr = "Conflit !", + it = "Conflitto!", nb = "Konflikt!", nds = "Konflikt!", nl = "Conflict!", @@ -1398,10 +1489,12 @@ cs = "Nemohu zaz?lohovat soubor pro obnovu", de = "Konnte Datei nicht zur Wiederherstellung sichern", el = "??? ????? ?????? ? ????????? ????????? ??? ????? ?? ????????? ??????????", + en_CA = "Couldn't backup file for rollback", en_GB = "Couldn't backup file for rollback", es = "No se pudo guardar el archivo para inversi?n", fi = "Tiedoston varmuuskopionti ei onnistunut", fr = "Impossible de faire une copie de secours du fichier", + it = "Impossibile eseguire il backup del file per un successivo ripristino", nb = "Kunne ikke sikkerhetskopiere fil for tilbakerulling", nds = "Datei konnte f?r die Wiederherstellung nicht gesichert werden", nl = "Kon bestand niet backupen om de installatie terug te kunnen draaien", @@ -1421,6 +1514,7 @@ cs = "Nemohu vytvo?it manifest", de = "Konnte Manifest nicht erstellen", el = "??? ??????? ?? ???????????? ?? \"manifest\"", + en_CA = "Couldn't create manifest", en_GB = "Couldn't create manifest", es = "No se pod?a crear manifest", fi = "Asennusluettelon luominen ep?onnistui", @@ -1440,10 +1534,12 @@ cs = "Nepoda?ilo se obnovit n?kter? soubory. Va?e existuj?c? instalace je pravd?podobn? po?kozen?.", de = "Konnte einige Dateien nicht wiederherstellen. Ihre Installation ist wahrscheinlich besch?digt.", el = "??? ??????? ?? ???????? ?????? ??????. ????? ??????? ? ??????????? ?? ????? ????????????.", + en_CA = "Couldn't restore some files. Your existing installation is likely damaged.", en_GB = "Couldn't restore some files. Your existing installation is likely to be damaged.", es = "No se pudieron restaurar algunos archivos. Tu instalaci?n posiblemente est? da?ada", fi = "Joidenkin tiedostojen palauttaminen ep?onnistui. Asennuksesi on todenn?k?isesti rikki.", fr = "Impossible de restaurer certains fichiers. Votre installation existante est certainement endommag?e.", + it = "Non ? stato possibile ripristinare alcuni files. L'installazione corrente probabilmente ? danneggiata.", nb = "Noen filer kunne ikke tilbakestilles. Den eksisterende installasjonen er sannsynligvis skadet.", nds = "Konnte einige Dateien nicht wiederherstellen. Ihre Installation ist m?glicherweise besch?digt.", nl = "Kon sommige bestanden niet terugzetten. Uw bestaande installatie is waarschijnlijk beschadigd.", @@ -1459,6 +1555,7 @@ cs = "Maz?n? selhalo!", de = "L?schen fehlgeschlagen!", el = "??????? ? ????????!", + en_CA = "Deletion failed!", en_GB = "Deletion failed!", es = "?Borrado fallido!", fi = "Tiedoston poisto ep?onnistui!", @@ -1482,6 +1579,7 @@ da = "Mappe:", de = "Verzeichnis:", el = "???????:", + en_CA = "Folder:", en_GB = "Folder:", es = "Carpeta:", fi = "Kansio:", @@ -1503,6 +1601,7 @@ da = "Destination", de = "Ziel", el = "??????????", + en_CA = "Destination", en_GB = "Destination", es = "Destino", fi = "Kohde", @@ -1525,6 +1624,7 @@ da = "Henter", de = "Lade herunter", el = "??????? ????", + en_CA = "Downloading", en_GB = "Downloading", es = "Descargando", fi = "Noudetaan", @@ -1546,6 +1646,7 @@ cs = "Zadejte cestu, kam maj? b?t soubory nainstalov?ny.", de = "Geben Sie den Pfad an, wohin die Dateien installiert werden sollen.", el = "????? ?? ???????? ??? ?? ????????????? ?? ??????.", + en_CA = "Enter path where files will be installed.", en_GB = "Enter path where files will be installed.", es = "Introduce la ruta donde los archivos ser?n instalados", fi = "Sy?t? polku, johon tiedostot asennetaan.", @@ -1566,10 +1667,12 @@ cs = "nepoda?ilo se na??st soubor '%0'", de = "Laden von Datei '%0' fehlgeschlagen", el = "??????? ?? ??????? ??? ??????? '%0'", + en_CA = "failed to load file '%0'", en_GB = "failed to load file '%0'", es = "no se pudo leer el archivo '%0'", fi = "tiedoston \"%0\" lukeminen ep?onnistui", fr = "Echec du chargement du fichier '%0'", + it = "Caricamento del file '%0' fallito", nb = "kunne ikke laste fil '%0'", nds = "Fehler beim Laden von '%0'", nl = "laden van bestand \"%0\" mislukt", @@ -1586,6 +1689,7 @@ da = "Alvorlig fejl", de = "Schwerer Fehler", el = "??????? ??????", + en_CA = "Fatal error", en_GB = "Fatal error", es = "Error grave", fi = "Ylitsep??sem?t?n virhe", @@ -1606,11 +1710,12 @@ cs = "Nepoda?ilo se vytvo?it soubor!", de = "Dateierstellung fehlgeschlagen!", el = "? ??????????? ??????? ???????!", + en_CA = "File creation failed!", en_GB = "File creation failed!", es = "?Escritura de archivo ha fallado!", fi = "Tiedoston luominen ep?onnistui!", fr = "Cr?ation de fichier ?chou?e!", - it = "Creazione file fallita", + it = "Creazione del file fallita!", nb = "Kunne ikke lage fil!", nds = "Datei Erstellung ist fehlgeschlagen!", nl = "aanmaken bestand mislukt!", @@ -1626,11 +1731,12 @@ cs = "Nepoda?ilo se st?hnout soubor!", de = "Dateidownload fehlgeschlagen!", el = "? ???? ??????? ???????!", + en_CA = "File download failed!", en_GB = "File download failed!", es = "?Descarga de archivo ha fallado!", fi = "Tiedoston noutaminen ep?onnistui!", fr = "T?l?chargement ?chou?!", - it = "Download file fallito!", + it = "Download del file fallito!", nb = "Kunne ikke laste ned fil!", nds = "Dateidownload fehlgeschlagen!", nl = "downloaden van bestand mislukt!", @@ -1647,6 +1753,7 @@ cs = "Soubor '%0' ji? existuje! P?epsat?", de = "Datei '%0' existiert bereits! Ersetzen?", el = "?? ?????? '%0' ??????? ???! ??????????????", + en_CA = "File '%0' already exists! Replace?", en_GB = "File '%0' already exists! Replace?", es = "?El archivo '%0' ya existe! ?Sustituirlo?", fi = "Tiedosto \"%0\" on jo olemassa! Korvaa?", @@ -1669,6 +1776,7 @@ da = "Udf?r", de = "Fertig stellen", el = "?????", + en_CA = "Finish", en_GB = "Finish", es = "Terminar", fi = "Valmis", @@ -1690,10 +1798,12 @@ cs = "Nepoda?ilo se spustit GUI", de = "GUI konnte nicht gestartet werden", el = "?? ??????? ?????????? ??????? ?? ?????????", + en_CA = "GUI failed to start", en_GB = "GUI failed to start", es = "El interfaz gr?fico de usuario ha fallado al arrancar", fi = "Graafinen k?ytt?liittym? ei k?ynnistynyt", fr = "Echec du d?marrage de l'interface", + it = "Inizializzazione della GUI fallita", nb = "Kunne ikke starte grafisk grensesnitt", nds = "Fehler beim starten der GUI", nl = "Opstarten GUI mislukt", @@ -1711,10 +1821,12 @@ cs = "Instalace nebyla dokon?ena. V?e bude uvedeno do p?vodn?ho stavu.", de = "Unvollst?ndige Installation. ?nderungen werden r?ckg?ngig gemacht.", el = "?????????????? ???????????. ?? ??????????? ???? ??????? ??????.", + en_CA = "Incomplete installation. We will revert any changes we made.", en_GB = "Incomplete installation. We will revert any changes we made.", es = "Instalaci?n incompleta. Vamos a deshacer cualquier cambio que hayamos hecho.", fi = "Asennus j?i kesken. Tehdyt muutokset perutaan.", fr = "Installation incompl?te. Tous les changements effectu?s seront annul?s.", + it = "Installazione incompleta. Ripristino delle modifiche effettuate in corso.", nb = "Installasjonen ble ikke ferdig. Vi vil tilbakestille alle endringer som ble gjort.", nds = "Unvollst?ndige Installation. Alle Ver?nderungen werden r?ckg?ngig gemacht.", nl = "Incomplete installatie. De veranderingen zullen ongedaan gemaakt worden.", @@ -1731,6 +1843,7 @@ da = "Installationen var succesfuld.", de = "Installation war erfolgreich.", el = "? ??????????? ??????.", + en_CA = "Installation was successful.", en_GB = "Installation was successful.", es = "La instalaci?n fue un ?xito.", fi = "Asentaminen onnistui.", @@ -1753,6 +1866,7 @@ da = "Installerer", de = "Installiere", el = "??????? ???????????", + en_CA = "Installing", en_GB = "Installing", es = "Instalando", fi = "Asennetaan", @@ -1775,6 +1889,7 @@ da = "Indstillinger", de = "Optionen", el = "????????", + en_CA = "Options", en_GB = "Options", es = "Opciones", fi = "Valinnat", @@ -1797,6 +1912,7 @@ cs = "(Chci ur?it cestu.)", de = "(Ich m?chte einen Pfad angeben.)", el = "(???? ?? ????? ????????.)", + en_CA = "(I want to specify a path.)", en_GB = "(I want to specify a path.)", es = "(Quiero especificar una ruta.)", fi = "(Haluan sy?tt?? polun.)", @@ -1818,6 +1934,7 @@ da = "KB/s", de = "KB/s", el = "KB/????.", + en_CA = "KB/s", en_GB = "KB/s", es = "KB/s", fi = "kt/s", @@ -1838,6 +1955,7 @@ cs = "B/s", de = "B/s", el = "B/????", + en_CA = "B/s", en_GB = "B/s", es = "B/s", fi = "t/s", @@ -1859,6 +1977,7 @@ cs = "%0 %1", de = "%0 %1", el = "%0 %1", + en_CA = "%0 %1", en_GB = "%0 %1", es = "%0 %1", fi = "%0 %1", @@ -1881,10 +2000,12 @@ cs = "%0 %1, %2:%3:%4 zb?v?", de = "%0 %1, %2:%3:%4 verbleibend", el = "%0 %1, ????????? %2:%3:%4", + en_CA = "%0 %1, %2:%3:%4 remaining", en_GB = "%0 %1, %2:%3:%4 remaining", es = "%0 %1, %2:%3:%4 restantes", fi = "%0 %1, %2:%3:%4 j?ljell?", fr = "%0 %1, %2:%3:%4 restantes", + it = "%0 %1, %2:%3:%4 rimanenti", nb = "%0 %1, %2:%3:%4 igjen", nds = "%0 %1, %2:%3:%4 verbleiben", nl = "%0 %1, %2:%3:%4 resterend", @@ -1900,6 +2021,7 @@ cs = "zaseknut?", de = "wartend", el = "????? ???????", + en_CA = "stalled", en_GB = "stalled", es = "parado", fi = "seisahtunut", @@ -1921,10 +2043,12 @@ cs = "%0: %1%% (%2)", de = "%0: %1%% (%2)", el = "%0: %1%% (%2)", + en_CA = "%0: %1%% (%2)", en_GB = "%0: %1%% (%2)", es = "%0: %1%% (%2)", fi = "%0: %1%% (%2)", fr = "%0: %1%% (%2)", + it = "%0: %1%% (%2)", nb = "%0: %1%% (%2)", nds = "%0: %1%% (%2)", nl = "%0: %1%% (%2)", @@ -1941,10 +2065,12 @@ da = "Skift medie", de = "Medienwechsel", el = "?????? ???? ???????????", + en_CA = "Media change", en_GB = "Media change", es = "Cambio de disco", fi = "Median vaihto", fr = "Changement de m?dia", + it = "Inserire il prossimo disco", nb = "Mediaendring", nds = "Medien Wechsel", nl = "Verwissel medium", @@ -1961,6 +2087,7 @@ cs = "Selhalo vytv??en? adres??e", de = "Erstellung eines Verzeichnisses fehlgeschlagen", el = "? ??????????? ??????? ???????", + en_CA = "Directory creation failed", en_GB = "Directory creation failed", es = "Fallo en la creaci?n de directorio", fi = "Hakemiston luominen ep?onnistui", @@ -1982,6 +2109,7 @@ cs = "Ni_kdy", de = "Ni_emals", el = "_????", + en_CA = "N_ever", en_GB = "N_ever", es = "N_unca", fi = "Ei _koskaan", @@ -1989,6 +2117,7 @@ it = "_Mai", nb = "Al_dri", nds = "N_ie", + nl = "No_oit", pt = "N_unca", ru = "?_??????", sk = "N_ikdy", @@ -2003,6 +2132,7 @@ da = "N?ste", de = "Weiter", el = "???????", + en_CA = "Next", en_GB = "Next", es = "Siguiente", fi = "Seuraava", @@ -2024,6 +2154,7 @@ da = "Nej", de = "Nein", el = "???", + en_CA = "No", en_GB = "No", es = "No", fi = "Ei", @@ -2045,6 +2176,7 @@ da = "Ja", de = "Ja", el = "???", + en_CA = "Yes", en_GB = "Yes", es = "S?", fi = "Kyll?", @@ -2067,6 +2199,7 @@ da = "Ikke fundet", de = "Nicht gefunden", el = "??? ???????", + en_CA = "Not Found", en_GB = "Not Found", es = "No encontrado", fi = "Ei l?ytynyt", @@ -2088,10 +2221,12 @@ cs = "Nen? co instalovat!", de = "Nichts zu tun!", el = "??? ??????? ?????? ??? ?? ?????!", + en_CA = "Nothing to do!", en_GB = "Nothing to do!", es = "?Nada que hacer!", fi = "Ei teht?v??!", fr = "Rien ? faire!", + it = "Impossible procedere!", nb = "Ingenting ? gj?re!", nds = "Nichts zu tun!", nl = "Niets te doen!", @@ -2108,6 +2243,7 @@ da = "OK", de = "OK", el = "???????", + en_CA = "OK", en_GB = "OK", es = "Aceptar", fi = "Hyv?ksy", @@ -2132,10 +2268,12 @@ cs = "SELH?N?", de = "PANIK", el = "???????", + en_CA = "PANIC", en_GB = "PANIC", es = "P?NICO", fi = "H?T?TILA", fr = "PANIC", + it = "PANICO", nb = "PANIKK", nds = "PANIK", nl = "PROBLEEM", @@ -2151,10 +2289,12 @@ cs = "Pros?m vlo?te '%0'", de = "Bitte legen Sie '%0' ein", el = "???????? ????????? '%0'", + en_CA = "Please insert '%0'", en_GB = "Please insert '%0'", es = "Por favor introduce '%0'", fi = "Sy?t? \"%0\"", fr = "Veuillez ins?rer '%0'", + it = "Per favore inserire '%0'", nb = "Sett inn '%0'", nds = "Bitte '%0' in das Laufwerk einlegen.", nl = "Laadt '%0' a.u.b.", @@ -2173,6 +2313,7 @@ da = "Tryk retur for at forts?tte.", de = "Dr?cken Sie Enter um fortzufahren", el = "??????? ENTER ??? ????????.", + en_CA = "Press enter to continue.", en_GB = "Press enter to continue.", es = "Presione Intro para continuar.", fi = "Jatka painamalla enter.", @@ -2196,10 +2337,12 @@ da = "Seri?st problem", de = "Ernstes Problem", el = "?????? ????????", + en_CA = "Serious problem", en_GB = "Serious problem", es = "Problema grave", fi = "Vakava ongelma", fr = "Probl?me grave", + it = "Problema critico", nb = "Alvorlig problem", nds = "Ernstzunehmender Fehler", nl = "Serieus probleem", @@ -2216,10 +2359,12 @@ da = "Lukker ned...", de = "Schlie?e...", el = "??????? ???????????...", + en_CA = "Shutting down...", en_GB = "Shutting down...", es = "Cerrando ...", fi = "Ajetaan alas...", fr = "Fermeture en cours...", + it = "Spegnimento in corso...", nb = "Avslutter...", nds = "Fahre runter ...", nl = "Afsluiten...", @@ -2236,6 +2381,7 @@ da = "Du kan lukke browseren nu.", de = "Sie k?nnen diesen Browser nun schlie?en.", el = "???????? ?? ???????? ????? ??? ????????? ????.", + en_CA = "You can close this browser now.", en_GB = "You can close this browser now.", es = "Puedes cerrar este navegador ahora.", fi = "Voit sulkea t?m?n selaimen.", @@ -2257,6 +2403,7 @@ cs = "Selhalo vytv??en? symbolick?ho odkazu!", de = "Erzeugung einer Verkn?pfung fehlgeschlagen!", el = "??????? ? ??????????? ???? symlink!", + en_CA = "Symlink creation failed!", en_GB = "Symlink creation failed!", es = "?Creaci?n de enlace simb?lico ha fallado!", fi = "Symbolisen linkin luominen ep?onnistui!", @@ -2278,10 +2425,12 @@ cs = "Instal?tor byl zastaven sign?lem ze syst?mu.", de = "Das Installationsprogramm wurde vom System gestoppt.", el = "?? ????????? ???????????? ????????? ??? ?? ???????.", + en_CA = "The installer has been stopped by the system.", en_GB = "The installer has been stopped by the system.", es = "El instalador ha sido interrumpido por el sistema.", fi = "J?rjestelm? pys?ytti asennusohjelman.", fr = "L'installeur a ?t? interrompu par le syst?me.", + it = "L'installer ? stato fermato dal sistema.", nb = "Installasjonsprogrammet ble stoppet av systemet.", nds = "Der Installer wurde vom System gestoppt.", nl = "Het installatieprogramma is door het systeem gestopt.", @@ -2298,10 +2447,12 @@ cs = "Instal?tor zhavaroval vinou vlastn? chyby.", de = "Das Installationsprogramm ist aufgrund eines Fehlers abgest?rzt.", el = "?? ????????? ???????????? ?????? ???? ??????? ?????????.", + en_CA = "The installer has crashed due to a bug.", en_GB = "The installer has crashed due to a bug.", es = "El instalador se ha bloqueado por un fallo de memoria.", fi = "Bugi kaatoi asennusohjelman.", fr = "L'installateur a quitt? inopin?ment ? cause d'un bogue.", + it = "L'installer ? crashato a causa di un bug.", nb = "Installasjonsprogrammet kr?sjet pga. en feil.", nds = "Der Installer ist Aufgrund eines Fehlers abgest?rzt.", nl = "Het installatieprogramma is door een bug gecrasht.", @@ -2318,6 +2469,7 @@ da = "Skift", de = "Umschalten", el = "????????", + en_CA = "Toggle", en_GB = "Toggle", es = "Conmutar", fi = "Vipu", @@ -2341,10 +2493,12 @@ da = "Ukendt filtype i arkiv", de = "Unbekannter Dateityp im Archiv", el = "???????? ????? ??????? ???? ??? ?????? ???????.", + en_CA = "Unknown file type in archive", en_GB = "Unknown file type in archive", es = "Tipo de fichero desconocido en el archivo", fi = "Paketissa on tiedosto, jonka tyyppi? ei tunneta.", fr = "Type de fichier inconnu dans cette archive.", + it = "Non ? stato possibile riconoscere un file presente nell'archivio", nb = "Ukjent filtype i arkivet", nds = "Ubekannter Datey-Typ im Archiv", nl = "Onbekend bestandstype in archief", @@ -2361,10 +2515,12 @@ cs = "P?ed instalac? je nutn? odsouhlasit licenci", de = "Sie m?ssen den Lizenzbedingungen zustimmen, bevor sie installieren k?nnen", el = "?????? ?? ??????????? ?? ??? ????? ?????? ???? ?????????? ?? ??? ???????????", + en_CA = "You must accept the licence before you may install", en_GB = "You must accept the licence before you may install", es = "Tienes que aceptar la licencia antes de que puedas instalar", fi = "Asennusta ei suoriteta, ellet hyv?ksy lisenssi?.", fr = "Vous devez accepter la licence avant de pouvoir installer", + it = "E' necessario accettare la licenza prima di procedere con l'installazione.", nb = "Lisensen m? godkjennes f?r du kan installere", nds = "Du must den Lizenzbedingungen zustimmen, um die Installation fortzusetzen", nl = "U moet akkoord gaan met de licentie om te kunnen installeren", @@ -2386,6 +2542,7 @@ da = "Metadata", de = "Metadaten", el = "????????????", + en_CA = "Metadata", en_GB = "Metadata", es = "Metadatos", fi = "Metadata", @@ -2406,6 +2563,7 @@ cs = "Neplatn? argumenty", de = "Ung?ltige Kommandozeile", el = "????? ?????? ???????", + en_CA = "Invalid command line", en_GB = "Invalid command line", es = "Par?metros de comando incorrectos", fi = "Virheellinen komentorivi", @@ -2428,11 +2586,14 @@ cs = "Nemohu na??st soubor s manifestem pro '%0'", de = "Konnte Manifestdatei f?r '%0' nicht laden", el = "??? ??????? ?? ???????? ?? ?????? \"manifest\" ??? '%0'", + en_CA = "Couldn't load manifest file for '%0'", en_GB = "Couldn't load manifest file for '%0'", es = "No pudo cargar el archivo manifest de '%0'", fi = "Asennusluetteloa paketille \"%0\" ei kyetty lukemaan.", + fr = "Impossible de charger le fichier manifeste de '%0'", nb = "Kunne ikke laste manifestfil for '%0'", nds = "Konnte Manifest f?r '%0' nicht laden.", + nl = "Kan manifest bestand for '%0' niet laden", pt = "Foi imposs?vel carregar o ficheiro de manifesto para '%0'", ru = "?? ???? ????????? ???? ????????? '%0'", sk = "Nem??em nahra? manifest s?bor pre '%0'", @@ -2446,10 +2607,12 @@ cs = "Soubor '%0' nebyl nalezen", de = "Datei %0 nicht gefunden.", el = "?? ?????? %0 ??? ???????", + en_CA = "File %0 not found", en_GB = "File %0 not found", es = "Archivo %0 no encontrado", fi = "Tiedostoa \"%0\" ei ole.", fr = "Fichier %0 introuvable", + it = "Impossibile trovare il File %0", nb = "Filen '%0' ble ikke funnet", nds = "Datei %0 wurde nicht gefunden", nl = "Bestand %0 niet gevonden", @@ -2467,6 +2630,7 @@ da = "Afinstall?r", de = "Deinstallieren", el = "?????????????", + en_CA = "Uninstall", en_GB = "Uninstall", es = "Desinstalar", fi = "Asennuksen poisto", @@ -2488,10 +2652,12 @@ cs = "Opravdu chcete odinstalovat '%0'?", de = "Sind Sie sicher, dass Sie '%0' deinstallieren wollen?", el = "????? ???????? ?????? ?? ??????????????? ?? '%0'?", + en_CA = "Are you sure you want to uninstall '%0'?", en_GB = "Are you sure you want to uninstall '%0'?", es = "?Est?s seguro de que quieres desinstalar '%0'?", fi = "Haluatko varmasti poistaa asennuksen \"%0\"?", fr = "?tes-vous s?r de vouloir d?sinstaller '%0' ?", + it = "Se veramente sicuro di voler disinstallare '%0'?", nb = "Er du sikker p? at du vil avinstallere '%0'?", nds = "Sind sie sicher, dass sie '%0' deinstallieren wollen?", nl = "Bent u er zeker van dat u '%0' wilt de?nstalleren?", @@ -2509,10 +2675,12 @@ da = "Afinstallerer", de = "Deinstalliere", el = "??????? ?????????????", + en_CA = "Uninstalling", en_GB = "Uninstalling", es = "Desinstalando", fi = "Poistetaan asennusta", fr = "D?sinstallation en cours", + it = "Disinstallazione in corso", nb = "Avinstallerer", nds = "Deinstallation", nl = "De?nstallatie", @@ -2528,10 +2696,12 @@ cs = "Odinstalace dokon?ena", de = "Deinstallation abgeschlossen", el = "? ????????????? ????????????", + en_CA = "Uninstall complete", en_GB = "Uninstall complete", es = "Desinstalaci?n terminada", fi = "Asennus poistettu", fr = "D?sinstallation compl?te", + it = "Disinstallazione completata", nb = "Avinstallasjonen er ferdig", nds = "Deinstallation abgeschlossen", nl = "De?nstallatie voltooid", @@ -2553,10 +2723,12 @@ cs = "[Zv?t?it ???ku okna!]", de = "[Fenster breiter machen!]", el = "[????????? ?? ???????? ???? ??????!]", + en_CA = "[Make the window wider!]", en_GB = "[Make the window wider!]", es = "[?Ensancha la ventana!]", fi = "[Levenn? ikkunaa!]", fr = "[?largissez la fen?tre!]", + it = "[Allarga la finestra!]", nb = "[Gj?r vinduet bredere!]", nds = "[Mach das Fenster breiter!]", nl = "[Maak het scherm breder!]", @@ -2578,10 +2750,12 @@ cs = "[Zv?t?it v??ku okna!]", de = "[Fenster h?her machen!]", el = "[????????? ?? ???????? ???? ????]", + en_CA = "[Make the window taller!]", en_GB = "[Make the window taller!]", es = "[?Estira la ventana!]", fi = "[Tee ikkunasta korkeampi!]", fr = "[Agrandissez la fen?tre!]", + it = "[Allunga la finestra!]", nb = "[Gj?r vinduet h?yere!]", nds = "[Mach das Fenster h?her!]", nl = "[Maak het scherm langer!]", @@ -2599,6 +2773,7 @@ cs = "Nepoda?ilo se nainstalovat polo?ku do menu", de = "Konnte Verkn?pfung f?r Desktop-Men? nicht installieren", el = "?????? ???? ??? ??????????? ??? ??????????? ????????? ??? ????????????", + en_CA = "Failed to install desktop menu item", en_GB = "Failed to install desktop menu item", es = "Fallo al a?adir un elemento al men? de escritorio", fi = "Kohdan lis??minen ty?p?yt?valikkoon ep?onnistui.", @@ -2619,6 +2794,7 @@ cs = "Nepoda?ilo se odstranit polo?ku z menu", de = "Konnte Verkn?pfung f?r Desktop-Men? nicht deinstallieren", el = "?????? ???? ??? ????????????? ??? ??????????? ????????? ??? ????????????", + en_CA = "Failed to uninstall desktop menu item", en_GB = "Failed to uninstall desktop menu item", es = "Fallo al quitar un elemento del men? de escritorio", fi = "Kohdan poistaminen ty?p?yt?valikkosta ep?onnistui.", From DONOTREPLY at icculus.org Fri Mar 7 00:41:32 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 7 Mar 2008 00:41:32 -0500 Subject: r551 - trunk/scripts Message-ID: <20080307054132.18074.qmail@icculus.org> Author: icculus Date: 2008-03-07 00:41:31 -0500 (Fri, 07 Mar 2008) New Revision: 551 Modified: trunk/scripts/localization.lua Log: Latest from launchpad.net (adds Hungarian). Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-06 04:53:51 UTC (rev 550) +++ trunk/scripts/localization.lua 2008-03-07 05:41:31 UTC (rev 551) @@ -3,8 +3,8 @@ -- Please see the file LICENSE.txt in the source's root directory. -- -- DO NOT EDIT BY HAND. --- This file was generated with po2localization.pl, version svn-549 ... --- on 2008-03-05 23:51:25-0500 +-- This file was generated with po2localization.pl, version svn-550 ... +-- on 2008-03-07 00:39:53-0500 -- -- Your own installer's localizations go into app_localization.lua instead. -- If you want to add strings to be translated to this file, contact Ryan @@ -15,7 +15,7 @@ -- -- ...and that work eventually ends up in this file. -- --- X-Launchpad-Export-Date: 2008-03-06 04:24+0000 +-- X-Launchpad-Export-Date: 2008-03-07 03:28+0000 -- X-Generator: Launchpad (build Unknown) MojoSetup.languages = { @@ -29,6 +29,7 @@ es = "Spanish", fi = "Finnish", fr = "French", + hu = "Hungarian", it = "Italian", nb = "Norwegian Bokmal", nds = "German, Low", @@ -52,6 +53,7 @@ es = "necesita diccionario", fi = "tarve sanastolle", fr = "dictionnaire n?cessaire", + hu = "sz?t?r sz?ks?ges", nb = "trenger ordbok", nds = "W?rterbuch ben?tigt", nl = "woordenboek nodig", @@ -73,6 +75,7 @@ es = "error de datos", fi = "datavirhe", fr = "Erreur de donn?es", + hu = "adat hiba", nb = "datafeil", nds = "Datenfehler", nl = "data fout", @@ -95,6 +98,7 @@ es = "error de memoria", fi = "muistivirhe", fr = "Erreur m?moire", + hu = "mem?ria hiba", nb = "minnefeil", nds = "Speicherfehler", nl = "geheugen fout", @@ -116,6 +120,7 @@ es = "error de buffer", fi = "puskurivirhe", fr = "Erreur de tampon", + hu = "puffer hiba", nb = "bufferfeil", nds = "Pufferfehler", nl = "buffer fout", @@ -138,6 +143,7 @@ es = "error de versi?n", fi = "versiovirhe", fr = "Erreur de version", + hu = "veriz? hiba", nb = "versjonsfeil", nds = "Versionsfehler", nl = "versie fout", @@ -160,6 +166,7 @@ es = "error desconocido", fi = "tuntematon virhe", fr = "Erreur inconnue", + hu = "ismeretlen hiba", it = "errore sconosciuto", nb = "ukjent feil", nds = "unbekannter Fehler", @@ -183,6 +190,7 @@ es = "AVISO: %0\n[presiona Intro]", fi = "ILMOITUS: %0\n[paina enter]", fr = "INFORMATION?: %0\n[pressez entr?e]", + hu = "FIGYELEM: %0\n[?ss entert]", it = "NOTICE: %0", nb = "NB: %0\n[trykk enter]", nds = "Notiz: %0\n[Enter dr?cken, um fortzufahren]", @@ -206,6 +214,7 @@ es = "%0 [S/n]: ", fi = "%0 [K/e]: ", fr = "%0 [O/n]: ", + hu = "%0 [I/n]: ", it = "%0 [S/n]: ", nb = "%0 [J/n]: ", nds = "%0 [J/n] ", @@ -229,6 +238,7 @@ es = "%0 [s/N]: ", fi = "%0 [k/E]: ", fr = "%0 [o/N]: ", + hu = "%0 [i/N]: ", it = "%0 [s/N]: ", nb = "%0 [j/N]: ", nds = "%0 [j/N] ", @@ -252,6 +262,7 @@ es = "%0 [s/n/Siempre/Nunca]: ", fi = "%0 [k/e/Aina/ei Koskaan]: ", fr = "%0 [o/n/Toujours/Jamais]: ", + hu = "%0 [i/n/Mindig/Soha]: ", it = "%0 [s/n/Sempre/Mai]: ", nb = "%0 [j/n/Alltid/Aldri]: ", nds = "%0 [j/n/Immer/Niemals] ", @@ -274,6 +285,7 @@ es = "S", fi = "K", fr = "O", + hu = "I", it = "S", nb = "J", nds = "J", @@ -296,6 +308,7 @@ es = "N", fi = "E", fr = "N", + hu = "N", it = "N", nb = "N", nds = "N", @@ -319,6 +332,7 @@ es = "Siempre", fi = "Aina", fr = "Toujours", + hu = "Mindig", it = "Sempre", nb = "Alltid", nds = "Immer", @@ -342,6 +356,7 @@ es = "Nunca", fi = "ei Koskaan", fr = "Jamais", + hu = "Soha", it = "Mai", nb = "Aldri", nds = "Niemals", @@ -365,6 +380,7 @@ es = "(%0-%1 de %2 l?neas, ?ves m?s?)", fi = "(%0-%1 %2:sta rivist?, lue lis???)", fr = "(lignes %0 ? %1 sur %2, en voir plus??)", + hu = "%0-%1 a %2 sorb?l, tov?bb?", it = "%0-%1 di %2 linee, desideri visualizzare le successive?", nb = "(%0-%1 av %2 linjer, se mer?)", nds = "%0-%1 vom %2 lines, mehr?", @@ -388,6 +404,7 @@ es = "Pulsa '%0' para ir atr?s.", fi = "Kirjoita '%0' palataksesi edelliseen osioon.", fr = "Tapez '%0' pour revenir en arri?re.", + hu = "?ss '%0'-t a visszal?p?shez", it = "Digita %0 per andare indietro.", nb = "Skriv '%0' for ? g? tilbake.", nds = "Dr?cken Sie '%0' um zur?ckzukehren", @@ -413,6 +430,7 @@ es = "atr?s", fi = "takaisin", fr = "retour", + hu = "vissza", it = "indietro", nb = "tilbake", nds = "Zur?ck", @@ -435,6 +453,7 @@ es = "> ", fi = "> ", fr = "> ", + hu = "> ", it = "> ", nb = "> ", nds = "> ", @@ -456,6 +475,7 @@ es = "%0: %1%%", fi = "%0: %1%%", fr = "%0?: %1%%", + hu = "%0: %1%%", it = "%0: %1%%", nb = "%0: %1%%", nds = "%0: %1%%", @@ -478,6 +498,7 @@ es = "%0 (Progreso total: %1%%)", fi = "%0 (kokonaisedistyminen: %1%%)", fr = "%0 (progression totale?: %1%%)", + hu = "%0 (%1%% k?sz)", nb = "%0 (totalt: %1%%)", nds = "%0 (Fortschritt insgesamt: %1%%)", nl = "%0 (totale voortgang: %1%%)", @@ -501,6 +522,7 @@ es = "?Acepta esta licencia?", fi = "Hyv?ksy lisenssi?", fr = "Accepter cette licence??", + hu = "Elfogadja a liszenszt?", it = "Accetti questa licenza?", nb = "Akseptere denne lisensen?", nds = "Diese Lizenz akzeptieren?", @@ -524,6 +546,7 @@ es = "_Siempre", fi = "_Aina", fr = "_Toujours", + hu = "_Mindig", it = "_Sempre", nb = "_Alltid", nds = "_Immer", @@ -547,6 +570,7 @@ es = "Archivo no encontrado", fi = "Pakettia ei l?ydy", fr = "Archive introuvable", + hu = "Arh?v nem tal?lhat?", it = "Archivio non presente", nb = "Fant ikke arkiv", nds = "Archiv nicht gefunden", @@ -570,6 +594,7 @@ es = "?Est?s seguro de que quieres cancelar la instalaci?n?", fi = "Haluatko varmasti keskeytt?? asennuksen?", fr = "?tes-vous s?r de vouloir annuler l'installation??", + hu = "T?nyleg megszak?tja a telep?t?st?", it = "Sei sicuro di voler annullare l'installazione?", nb = "Er du sikker p? at du vil avbryte installasjonen?", nds = "Sind Sie sicher, dass Sie die Installation abbrechen wollen?", @@ -592,6 +617,7 @@ es = "Atr?s", fi = "Takaisin", fr = "Retour", + hu = "Vissza", it = "Indietro", nb = "Tilbake", nds = "Zur?ck", @@ -616,6 +642,7 @@ es = "_Navegar...", fi = "_Selaa", fr = "_Choisir...", + hu = "_Tall?z?s...", it = "_Sfoglia...", nb = "B_la gjennom...", nds = "Du_rchsuchen", @@ -644,6 +671,7 @@ es = "FALLO: id de medio duplicada", fi = "BUGI: kaksi identtist? media id:t?", fr = "BUG: Identifiant du media d?j? utilis?", + hu = "BUG: duplik?lt m?dia azonos?t? (media id)", it = "BUG: media id duplicato", nb = "FEIL: duplisert media-id", nds = "BUG: Doppelte media id", @@ -667,6 +695,7 @@ es = "FALLO: sin opciones", fi = "BUGI: ei vaihtoehtoja", fr = "BUG: Pas d'options", + hu = "BUG: nincsenek opci?k", it = "BUG: nessuna opzione disponibile", nb = "FEIL: ingen valg", nds = "BUG: keine Optionen", @@ -691,6 +720,7 @@ es = "FALLO: support_uninstall requiere write_manifest", fi = "BUGI: support_uninstall vaatii write_manifest:n", fr = "Vous devez activer le support du manifeste pour inclure le d?sinstallateur.", + hu = "BUG: support_uninstall ig?nyli a write_manifest -et", it = "BUG: support_uninstall richiede write_manifest", nb = "FEIL: support_uninstall krever write_manifest", nds = "BUG: support_uninstall ben?tigt write_manifest", @@ -717,6 +747,7 @@ es = "FALLO: write_manifest requiere el soporte de un int?rprete Lua", fi = "BUGI: write_manifest vaatii Lua parser -tuen", fr = "Vous devez activer le support du parser Lua pour g?n?rer la manifeste.", + hu = "BUG: write_manifest ig?nyli a Lua ?rtelmez? t?mogat?st", it = "BUG: write_manifest richiede Lua parser support", nb = "FEIL: write_manifest krever st?tte for Lua-parser", nds = "Fehler: write_manifest ben?tift Lua Parser Unterst?tzung", @@ -741,6 +772,7 @@ es = "FALLO: Setup.DesktopMenuItem requiere support_uninstall", fi = "BUGI: Setup.DesktopMenuItem vaatii support_uninstall:n", fr = "Vous devez inclure le d?sinstallateur pour ajouter des objets au Menu Syst?me.", + hu = "BUG: Setup.DesktopMenuItem ig?nyli a support_uninstall-t", it = "BUG: Setup.DesktopMenuItem richiede support_uninstall", nds = "BUG: Setup.DesktopMenuItem ben?tigt support_uninstall", nl = "BUG: Setup.DesktopMenuItem heeft support_uninstall nodig", @@ -764,6 +796,7 @@ es = "FALLO: '%0' no es una cadena de permisos v?lida", fi = "BUGI: \"%0\" ei ole kelvollinen oikeuksia m??ritt?v? merkkijono", fr = "BUG \"%0\" n'est pas une cha?ne de permission valide", + hu = "BUG: '%0' nem ?rv?nyes jogosults?g sztring", nb = "FEIL: '%0' er ikke en gyldig rettighetsstreng", nds = "BUG: '%0' ist kein g?ltiger \"permission string\"", nl = "BUG: '%0' is geen geldige permissie string", @@ -787,6 +820,7 @@ es = "FALLO: Cadena format() no v?lida", fi = "BUGI: Ep?kelpo format()-merkkijono", fr = "BUG: Cha?ne format() invalide", + hu = "BUG: Helytelen format() sztring", it = "BUG: stringa format() non valida", nb = "FEIL: Ugyldig format()-streng", nds = "BUG: Ung?ltiger format() string", @@ -811,6 +845,7 @@ es = "FALLO: la etapa ha devuelto tipo err?neo", fi = "BUGI: vaihe palautti v??r?? tyyppi?", fr = "BUG: L'?tape renvoie un mauvais type de donn?es", + hu = "BUG: az ?llom?s rossz t?pussal t?rt vissza", nb = "FEIL: niv? returnerte feil type", nds = "BUG: Stage R?ckgabewert ist vom falschen Typ", nl = "BUG: stadium gaf verkeerd type op", @@ -834,6 +869,7 @@ es = "FALLO: la etapa ha devuelto valor err?neo", fi = "BUGI: vaihe palautti v??r?n arvon", fr = "BUG: L'?tape renvoie une mauvaise valeur", + hu = "BUG: az ?llom?s rossz ?rt?kkel t?rt vissza", nb = "FEIL: niv? returnerte feil verdi", nds = "Fehler: stage gab falschen Wert zur?ck", nl = "BUG: stadium gaf verkeerde waarde terug", @@ -857,6 +893,7 @@ es = "FALLO: retroceso m?s atr?s del inicio de las etapas", fi = "BUGI: palattiin ensimm?isen vaiheen ohi", fr = "BUG: Revenu au d?but des ?tapes", + hu = "BUG: visszal?p?s a kezd? ?llom?s ut?n", nb = "FEIL: Gikk tilbake forbi startniv?", nds = "BUG: Zur?ck vor dem ersten Vorgang", nl = "BUG: teruggegaan naar voor eerste stadium.", @@ -877,6 +914,7 @@ es = "FALLO: Tipo de datos sin manipular", fi = "BUGI: K?sittelem?t?n datatyyppi", fr = "BUG: Type de fichier inconnu", + hu = "BUG: Lekezeletlen adatt?pus", nb = "FEIL: Uh?ndtert datatype", nds = "BUG: Unbehandelter Datentyp", nl = "BUG: onbekend data type", @@ -899,6 +937,7 @@ es = "FALLO: No se pueden duplicar las entradas tar", fi = "BUGI: tar-sy?tteit? ei voida kahdentaa", fr = "BUG: Impossible de dupliquer les entr?es tar", + hu = "BUG: tar bemenet nem duplik?lhat?", nb = "FEIL: Kan ikke duplisere innfiler for tar", nds = "Fehler: Kann tar-Eingabe nicht duplizieren", nl = "BUG: kan tar input kan niet gedupliceerd woorden.", @@ -921,6 +960,7 @@ es = "FALLO: Valor inesperado", fi = "BUGI: Odottamaton arvo", fr = "BUG: Valeur inattendue", + hu = "BUG: v?ratlan ?rt?k", it = "BUG: Valore inatteso", nds = "BUG: Unerwarteter Wert", nl = "BUG: Onverwachte waarde", @@ -945,6 +985,7 @@ es = "FALLO: Configuraci?n %0 %1", fi = "BUGI: Config %0 %1", fr = "BUG: Config %0 %1", + hu = "BUG: Be?ll?t?s %0 %1", it = "BUG: Config %0 %1", nb = "FEIL: Konfigurasjon %0 %1", nds = "BUG: Config %0 %1", @@ -966,6 +1007,7 @@ es = "debe ser especificado expl?citamente", fi = "t?ytyy m??ritell? t?sm?llisesti", fr = "doit ?tre sp?cifi? explicitement", + hu = "ezt explicit m?don kell meghat?rozni", it = "deve essere esplicitato", nb = "m? spesifiseres eksplisitt", nds = "muss ausdr?cklich spezifiziert werden", @@ -987,6 +1029,7 @@ es = "debe ser una cadena o tabla de cadenas", fi = "t?ytyy olla merkkijono tai merkkijonotaulukko", fr = "doit ?tre une cha?ne de caract?res ou un tableau de cha?nes de caract?res", + hu = "sztring vagy sztringt?bl?nak kell lennie", it = "deve essere una stringa o una tabella di stringhe", nb = "m? v?re streng eller tabell av strenger", nds = "muss String oder Tabelle von Strings sein", @@ -1008,6 +1051,7 @@ es = "debe ser una cadena o un n?mero", fi = "t?ytyy olla merkkijono tai luku", fr = "doit ?tre une cha?ne de caract?res ou un nombre", + hu = "sztringnek vagy sz?mnak kell lennie", it = "deve essere una stringa oppure un numero", nb = "m? v?re streng eller nummer", nds = "muss String oder Nummer sein", @@ -1029,6 +1073,7 @@ es = "no puede ser una cadena vac?a", fi = "ei saa olla tyhj? merkkijono", fr = "ne peut ?tre une cha?ne de caract?res vide", + hu = "nem lehet ?res sztring", it = "non pu? essere una stringa vuota", nb = "kan ikke v?re tom streng", nds = "kann String nicht leeren", @@ -1050,6 +1095,7 @@ es = "URL sin especificar protocolo", fi = "URL ei sis?ll? protokollaa", fr = "L'URL manque un protocole", + hu = "URL-nek nincs protokollja", nb = "URL har ikke protokoll", nds = "URL hat kein Protokoll", nl = "URL heeft geen protocol", @@ -1070,6 +1116,7 @@ es = "URL sin especificar host", fi = "URL ei sis?ll? palvelinta", fr = "L'URL manque un nom d'h?te", + hu = "URL-nek nincs hosztja", nb = "URL har ikke ver", nds = "URL hat keinen Host", nl = "URL heeft geen host", @@ -1090,6 +1137,7 @@ es = "URL sin especificar ruta", fi = "URL ei sis?ll? polkua", fr = "L'URL manque un chemin", + hu = "URL-nek nincs ?tvonala", nb = "URL har ikke sti", nds = "URL hat keinen Pfad", nl = "URL heeft geen pad", @@ -1110,6 +1158,7 @@ es = "Protocolo de URL no soportado", fi = "URL:n protokollaa ei tueta", fr = "Le protocole de l'URL n'est pas support?", + hu = "URL protokoll nem t?mogatott", nb = "URL-protokollen er ikke st?ttet", nds = "URL Protokoll wird nicht unterst?tzt", nl = "protocol van URL wordt niet ondersteund", @@ -1132,6 +1181,7 @@ es = "Cadena de permisos no v?lida", fi = "oikeuksia m??ritt?v? merkkijono ei ole kelvollinen", fr = "Chaine de permissions invalide", + hu = "Helytelen enged?lysztring", it = "Stringa dei permessi non valida", nb = "Rettighetsstrengen er ugyldig", nds = "Zugriffsberechtigungs String ist ung?ltig", @@ -1154,6 +1204,7 @@ es = "no es un atributo v?lido", fi = "ei ole kelvollinen m??rite", fr = "n'est pas une propri?t? valide", + hu = "?rv?nytelen tulajdons?g", it = "non ? una propriet? valida", nb = "er ikke en gyldig egenskap", nds = "ist keine g?ltige Eigenschaft", @@ -1177,6 +1228,7 @@ es = "debe ser %0", fi = "t?ytyy olla %0", fr = "doit ?tre de type %0", + hu = "%0 -nak kell lennie", it = "deve essere %0", nb = "m? v?re %0", nds = "muss %0 sein", @@ -1198,6 +1250,7 @@ es = "cadena", fi = "merkkijono", fr = "cha?ne de caract?res", + hu = "sz?veg", it = "stringa", nb = "streng", nds = "string", @@ -1220,6 +1273,7 @@ es = "booleano", fi = "totuusarvo", fr = "bool?en", + hu = "logikai", it = "booleano", nb = "boolsk verdi", nds = "boolean", @@ -1242,6 +1296,7 @@ es = "n?mero", fi = "luku", fr = "nombre", + hu = "sz?m", it = "numero", nb = "nummer", nds = "Nummer", @@ -1263,6 +1318,7 @@ es = "funci?n", fi = "funktio", fr = "fonction", + hu = "f?ggv?ny", it = "funzione", nb = "funksjon", nds = "Funktion", @@ -1285,6 +1341,7 @@ es = "tabla", fi = "taulukko", fr = "tableau", + hu = "t?bl?zat", it = "tabella", nb = "tabell", nds = "Tabelle", @@ -1308,6 +1365,7 @@ es = "bzlib ha provocado un error interno: %0", fi = "bzlib laukaisi sis?isen virheen: %0", fr = "bzlib a caus? une erreur interne: %0", + hu = "bzlib bels? hib?t ?szlelt: %0", it = "bzlib ha causato un errore interno: %0", nb = "intern feil i bzlib: %0", nds = "bzlib l?ste eine internen Fehler aus: %0", @@ -1331,6 +1389,7 @@ es = "Cancelar", fi = "Peru", fr = "Annuler", + hu = "M?gsem", it = "Annulla", nb = "Avbryt", nds = "Abbrechen", @@ -1353,6 +1412,7 @@ es = "Cancelar instalaci?n", fi = "Peru asennus", fr = "Annuler l'installation", + hu = "Telep?t?s megszak?t?sa", it = "Annullare l'installazione", nb = "Avbryt installasjonen", nds = "Installation abbrechen", @@ -1375,6 +1435,7 @@ es = "No se puede enumerar el archivo", fi = "Paketin tiedostojen listaus ep?onnistui", fr = "Ne peux pas ?num?rer les fichiers de l'archive", + hu = "Az arch?vum nem csomagolhat? ki", nb = "Kunne ikke liste filer i arkivet", nds = "Konnte Archive nicht nummerieren", nl = "Kan het archief niet weergeven", @@ -1397,6 +1458,7 @@ es = "No se puede abrir el archivo", fi = "Paketin purkaminen ep?onnistui", fr = "Impossible d'ouvrir l'archive.", + hu = "Arch?v megnyit?sa sikertelen", it = "Impossibile aprire l'archivio", nb = "Kunne ikke ?pne arkivet", nds = "Kann Archiv nicht ?ffnen", @@ -1422,6 +1484,7 @@ es = "Elige lugar de instalaci?n con n?meros (pulsa Intro para #1), o especif?calo", fi = "Valitse asennuskohteen numero (enter valitsee kohteen 1) tai sy?t? oma kohde.", fr = "Choisissez la destination d'installation par un nombre (Appuyez sur Entr?e pour le n?1), ou entrez votre propre choix.", + hu = "V?lassz telep?t?si c?lt sz?m szerint (?ss entert az els?h?z), vagy adj meg egyet.", it = "Seleziona la destinazione dell'installazione tramite il numero corrispondente (invio per la #1), oppure digita il percorso desiderato.", nb = "Velg installasjonssti etter nummer (trykk enter for #1), eller skriv inn din egen.", nds = "W?hlen Sie das Installationsverzeichnis durch Dr?cken einer Nummer (enter f?r #1), oder geben Sie selber einen ein.", @@ -1446,6 +1509,7 @@ es = "Elegir n?mero para cambiar", fi = "Valitse muutettavan numero.", fr = "Entrez le num?ro de l'option ? modifier.", + hu = "Adj meg egy sz?mot a v?ltoztat?shoz.", it = "Seleziona il numero corrispondente per cambiare.", nb = "Velg nummer som skal endres.", nds = "W?hle eine Nummer zum ?ndern", @@ -1469,6 +1533,7 @@ es = "?Conflicto!", fi = "Ristiriita!", fr = "Conflit !", + hu = "?tk?z?s!", it = "Conflitto!", nb = "Konflikt!", nds = "Konflikt!", @@ -1494,6 +1559,7 @@ es = "No se pudo guardar el archivo para inversi?n", fi = "Tiedoston varmuuskopionti ei onnistunut", fr = "Impossible de faire une copie de secours du fichier", + hu = "F?jllista biztons?gi ment?se nem lehets?ges", it = "Impossibile eseguire il backup del file per un successivo ripristino", nb = "Kunne ikke sikkerhetskopiere fil for tilbakerulling", nds = "Datei konnte f?r die Wiederherstellung nicht gesichert werden", @@ -1519,6 +1585,7 @@ es = "No se pod?a crear manifest", fi = "Asennusluettelon luominen ep?onnistui", fr = "Echec de cr?ation du fichier manifest", + hu = "Telep?tend? f?jlok list?j?nak l?trehoz?sa sikertelen", nb = "Kunne ikke lage manifest", nds = "Erstellen des Manifests schlug fehl.", nl = "Kon het installatiemanifest niet maken", @@ -1539,6 +1606,7 @@ es = "No se pudieron restaurar algunos archivos. Tu instalaci?n posiblemente est? da?ada", fi = "Joidenkin tiedostojen palauttaminen ep?onnistui. Asennuksesi on todenn?k?isesti rikki.", fr = "Impossible de restaurer certains fichiers. Votre installation existante est certainement endommag?e.", + hu = "N?h?ny f?jlt nem lehet vissza?ll?tani. A megl?v? telep?t?s val?sz?n?leg megs?r?lt.", it = "Non ? stato possibile ripristinare alcuni files. L'installazione corrente probabilmente ? danneggiata.", nb = "Noen filer kunne ikke tilbakestilles. Den eksisterende installasjonen er sannsynligvis skadet.", nds = "Konnte einige Dateien nicht wiederherstellen. Ihre Installation ist m?glicherweise besch?digt.", @@ -1560,6 +1628,7 @@ es = "?Borrado fallido!", fi = "Tiedoston poisto ep?onnistui!", fr = "Suppression de fichier ?chou?e!", + hu = "T?rl?s sikertelen!", it = "Cancellazione fallita!", nb = "Kunne ikke slette!", nds = "L?schen fehlgeschlagen!", @@ -1584,6 +1653,7 @@ es = "Carpeta:", fi = "Kansio:", fr = "Dossier?:", + hu = "Mappa:", it = "Cartella:", nb = "Katalog:", nds = "Ordner:", @@ -1606,6 +1676,7 @@ es = "Destino", fi = "Kohde", fr = "Destination", + hu = "C?l", it = "Destinazione", nb = "Destinasjon", nds = "Ziel", @@ -1629,6 +1700,7 @@ es = "Descargando", fi = "Noudetaan", fr = "T?l?chargement en cours", + hu = "Let?lt?s", it = "Download in corso", nb = "Laster ned", nds = "Lade herunter", @@ -1651,6 +1723,7 @@ es = "Introduce la ruta donde los archivos ser?n instalados", fi = "Sy?t? polku, johon tiedostot asennetaan.", fr = "Entrez le chemin d'installation souhait? pour vos fichiers.", + hu = "Add meg az ?tvonalat, ahova a f?jlokat telep?thetem.", it = "Inserisci il percorso dove installare i file.", nb = "Skriv inn destinasjonssti for installasjonen.", nds = "Pfad eingeben, in den installiert werden soll.", @@ -1672,6 +1745,7 @@ es = "no se pudo leer el archivo '%0'", fi = "tiedoston \"%0\" lukeminen ep?onnistui", fr = "Echec du chargement du fichier '%0'", + hu = "f?jl bet?lt?se sikertelen '%0'", it = "Caricamento del file '%0' fallito", nb = "kunne ikke laste fil '%0'", nds = "Fehler beim Laden von '%0'", @@ -1694,6 +1768,7 @@ es = "Error grave", fi = "Ylitsep??sem?t?n virhe", fr = "Erreur fatale", + hu = "V?gzetes hiba", it = "Errore fatale", nb = "Fatal feil", nds = "Fataler Fehler", @@ -1715,6 +1790,7 @@ es = "?Escritura de archivo ha fallado!", fi = "Tiedoston luominen ep?onnistui!", fr = "Cr?ation de fichier ?chou?e!", + hu = "F?jl l?trehoz?sa sikertelen!", it = "Creazione del file fallita!", nb = "Kunne ikke lage fil!", nds = "Datei Erstellung ist fehlgeschlagen!", @@ -1736,6 +1812,7 @@ es = "?Descarga de archivo ha fallado!", fi = "Tiedoston noutaminen ep?onnistui!", fr = "T?l?chargement ?chou?!", + hu = "F?jl let?lt?se sikertelen!", it = "Download del file fallito!", nb = "Kunne ikke laste ned fil!", nds = "Dateidownload fehlgeschlagen!", @@ -1758,6 +1835,7 @@ es = "?El archivo '%0' ya existe! ?Sustituirlo?", fi = "Tiedosto \"%0\" on jo olemassa! Korvaa?", fr = "Le fichier '%0' existe d?j?! Le remplacer?", + hu = "'%0' m?r l?tezik! Fel?l?rjam?", it = "Il file %0 esiste gi?! Rimpiazzare?", nb = "Filen '%0' eksisterer allerede! Skrive over?", nds = "Datei '%0' existiert bereits! ?berschreiben?", @@ -1781,6 +1859,7 @@ es = "Terminar", fi = "Valmis", fr = "Terminer", + hu = "K?sz", it = "Fine", nb = "Ferdig", nds = "Fertig", @@ -1803,6 +1882,7 @@ es = "El interfaz gr?fico de usuario ha fallado al arrancar", fi = "Graafinen k?ytt?liittym? ei k?ynnistynyt", fr = "Echec du d?marrage de l'interface", + hu = "Grafikus fel?let ind?t?sa sikertelen", it = "Inizializzazione della GUI fallita", nb = "Kunne ikke starte grafisk grensesnitt", nds = "Fehler beim starten der GUI", @@ -1826,6 +1906,7 @@ es = "Instalaci?n incompleta. Vamos a deshacer cualquier cambio que hayamos hecho.", fi = "Asennus j?i kesken. Tehdyt muutokset perutaan.", fr = "Installation incompl?te. Tous les changements effectu?s seront annul?s.", + hu = "Telep?t?s befejezetlen. Eredeti helyzet vissza?ll?t?sa.", it = "Installazione incompleta. Ripristino delle modifiche effettuate in corso.", nb = "Installasjonen ble ikke ferdig. Vi vil tilbakestille alle endringer som ble gjort.", nds = "Unvollst?ndige Installation. Alle Ver?nderungen werden r?ckg?ngig gemacht.", @@ -1848,6 +1929,7 @@ es = "La instalaci?n fue un ?xito.", fi = "Asentaminen onnistui.", fr = "Installation r?ussie.", + hu = "Sikeres telep?t?s.", it = "Installazione riuscita.", nb = "Installasjonen var en suksess.", nds = "Die Installation war erfolgreich", @@ -1871,6 +1953,7 @@ es = "Instalando", fi = "Asennetaan", fr = "Installation en cours", + hu = "Telep?t?s", it = "Installazione in corso", nb = "Installerer", nds = "Installiere ...", @@ -1894,6 +1977,7 @@ es = "Opciones", fi = "Valinnat", fr = "Options", + hu = "Be?ll?t?sok", it = "Opzioni", nb = "Valg", nds = "Optionen", @@ -1917,6 +2001,7 @@ es = "(Quiero especificar una ruta.)", fi = "(Haluan sy?tt?? polun.)", fr = "(Je veux sp?cifier une destination.)", + hu = "(egy ?tvonalat szeretn?k)", it = "(Voglio specificare un percorso)", nb = "(Jeg vil skrive inn min egen sti.)", nds = "(Ich m?chte einen Pfad angeben.)", @@ -1939,6 +2024,7 @@ es = "KB/s", fi = "kt/s", fr = "Ko/s", + hu = "KB/mp", it = "KB/s", nb = "KB/s", nds = "kB/s", @@ -1960,6 +2046,7 @@ es = "B/s", fi = "t/s", fr = "octets/s", + hu = "B/mp", it = "B/s", nb = "B/s", nds = "B/s", @@ -1982,6 +2069,7 @@ es = "%0 %1", fi = "%0 %1", fr = "%0 %1", + hu = "%0 %1", it = "%0 %1", nb = "%0 %1", nds = "%0 %1", @@ -2005,6 +2093,7 @@ es = "%0 %1, %2:%3:%4 restantes", fi = "%0 %1, %2:%3:%4 j?ljell?", fr = "%0 %1, %2:%3:%4 restantes", + hu = "%0 %1, %2:%3:%4 van m?g h?tra", it = "%0 %1, %2:%3:%4 rimanenti", nb = "%0 %1, %2:%3:%4 igjen", nds = "%0 %1, %2:%3:%4 verbleiben", @@ -2026,6 +2115,7 @@ es = "parado", fi = "seisahtunut", fr = "bloqu?", + hu = "beragadt", it = "in stallo", nb = "st?r fast", nds = "Angehalten", @@ -2048,6 +2138,7 @@ es = "%0: %1%% (%2)", fi = "%0: %1%% (%2)", fr = "%0: %1%% (%2)", + hu = "%0: %1%% (%2)", it = "%0: %1%% (%2)", nb = "%0: %1%% (%2)", nds = "%0: %1%% (%2)", @@ -2070,6 +2161,7 @@ es = "Cambio de disco", fi = "Median vaihto", fr = "Changement de m?dia", + hu = "K?vetkez? m?dia", it = "Inserire il prossimo disco", nb = "Mediaendring", nds = "Medien Wechsel", @@ -2092,6 +2184,7 @@ es = "Fallo en la creaci?n de directorio", fi = "Hakemiston luominen ep?onnistui", fr = "Cr?ation de r?pertoire ?chou?e", + hu = "Mappa l?trehoz?sa sikertelen", it = "Creazione directory fallita", nb = "Kunne ikke lage katalog", nds = "Ordner erstellen schlug fehl!", @@ -2114,6 +2207,7 @@ es = "N_unca", fi = "Ei _koskaan", fr = "_Jamais", + hu = "_Soha", it = "_Mai", nb = "Al_dri", nds = "N_ie", @@ -2137,6 +2231,7 @@ es = "Siguiente", fi = "Seuraava", fr = "Suivant", + hu = "K?vetkez?", it = "Avanti", nb = "Neste", nds = "Weiter", @@ -2159,6 +2254,7 @@ es = "No", fi = "Ei", fr = "Non", + hu = "Nem", it = "No", nb = "Nei", nds = "Nein", @@ -2181,6 +2277,7 @@ es = "S?", fi = "Kyll?", fr = "Oui", + hu = "Igen", it = "Si", nb = "Ja", nds = "Ja", @@ -2204,6 +2301,7 @@ es = "No encontrado", fi = "Ei l?ytynyt", fr = "Introuvable", + hu = "Nem tal?lhat?", it = "Non Trovato", nb = "Ikke funnet", nds = "Nicht gefunden", @@ -2226,6 +2324,7 @@ es = "?Nada que hacer!", fi = "Ei teht?v??!", fr = "Rien ? faire!", + hu = "Nincs mit telep?tenem!", it = "Impossible procedere!", nb = "Ingenting ? gj?re!", nds = "Nichts zu tun!", @@ -2248,6 +2347,7 @@ es = "Aceptar", fi = "Hyv?ksy", fr = "OK", + hu = "OK", it = "OK", nb = "OK", nds = "OK", @@ -2273,6 +2373,7 @@ es = "P?NICO", fi = "H?T?TILA", fr = "PANIC", + hu = "P?NIK", it = "PANICO", nb = "PANIKK", nds = "PANIK", @@ -2294,6 +2395,7 @@ es = "Por favor introduce '%0'", fi = "Sy?t? \"%0\"", fr = "Veuillez ins?rer '%0'", + hu = "Helyezze be '%0'-t", it = "Per favore inserire '%0'", nb = "Sett inn '%0'", nds = "Bitte '%0' in das Laufwerk einlegen.", @@ -2318,6 +2420,7 @@ es = "Presione Intro para continuar.", fi = "Jatka painamalla enter.", fr = "Veuillez appuyer sur Entr?e pour continuer.", + hu = "?ss egy entert a folytat?shoz.", it = "Premere invio per continuare.", nb = "Trykk enter for ? fortsette.", nds = "Enter dr?cken, um fortzufahren.", @@ -2342,6 +2445,7 @@ es = "Problema grave", fi = "Vakava ongelma", fr = "Probl?me grave", + hu = "Komoly probl?ma", it = "Problema critico", nb = "Alvorlig problem", nds = "Ernstzunehmender Fehler", @@ -2364,6 +2468,7 @@ es = "Cerrando ...", fi = "Ajetaan alas...", fr = "Fermeture en cours...", + hu = "Le?ll?t?s...", it = "Spegnimento in corso...", nb = "Avslutter...", nds = "Fahre runter ...", @@ -2386,6 +2491,7 @@ es = "Puedes cerrar este navegador ahora.", fi = "Voit sulkea t?m?n selaimen.", fr = "Vous pouvez maintenant fermer ce navigateur", + hu = "Most m?r bez?rhatod ezt az ablakot.", it = "Puoi chiudere il browser adesso.", nb = "Du kan lukke denne nettleseren n?.", nds = "Sie k?nnen den Browser nun schlie?en.", @@ -2408,6 +2514,7 @@ es = "?Creaci?n de enlace simb?lico ha fallado!", fi = "Symbolisen linkin luominen ep?onnistui!", fr = "Cr?ation de lien symbolique ?chou?e!", + hu = "Symlink k?sz?t?s sikertelen!", it = "Creazione del collegamento fallita!", nb = "Kunne ikke lage symbolsk lenke!", nds = "Symbolischer Link erstellen schlug fehl!", @@ -2430,6 +2537,7 @@ es = "El instalador ha sido interrumpido por el sistema.", fi = "J?rjestelm? pys?ytti asennusohjelman.", fr = "L'installeur a ?t? interrompu par le syst?me.", + hu = "A telep?t? megszak?tva a rendszer ?ltal.", it = "L'installer ? stato fermato dal sistema.", nb = "Installasjonsprogrammet ble stoppet av systemet.", nds = "Der Installer wurde vom System gestoppt.", @@ -2452,6 +2560,7 @@ es = "El instalador se ha bloqueado por un fallo de memoria.", fi = "Bugi kaatoi asennusohjelman.", fr = "L'installateur a quitt? inopin?ment ? cause d'un bogue.", + hu = "A telep?t? egy bug miatt ?sszeomlott.", it = "L'installer ? crashato a causa di un bug.", nb = "Installasjonsprogrammet kr?sjet pga. en feil.", nds = "Der Installer ist Aufgrund eines Fehlers abgest?rzt.", @@ -2474,6 +2583,7 @@ es = "Conmutar", fi = "Vipu", fr = "Basculer", + hu = "Kapcsol?", it = "Attiva/Disattiva", nb = "Inverter valg", nds = "Umschalten", @@ -2498,6 +2608,7 @@ es = "Tipo de fichero desconocido en el archivo", fi = "Paketissa on tiedosto, jonka tyyppi? ei tunneta.", fr = "Type de fichier inconnu dans cette archive.", + hu = "Ismeretlen f?jl t?pus az arch?vumban", it = "Non ? stato possibile riconoscere un file presente nell'archivio", nb = "Ukjent filtype i arkivet", nds = "Ubekannter Datey-Typ im Archiv", @@ -2520,6 +2631,7 @@ es = "Tienes que aceptar la licencia antes de que puedas instalar", fi = "Asennusta ei suoriteta, ellet hyv?ksy lisenssi?.", fr = "Vous devez accepter la licence avant de pouvoir installer", + hu = "El kell fogadnod a liszenszt a telep?t?s el?tt", it = "E' necessario accettare la licenza prima di procedere con l'installazione.", nb = "Lisensen m? godkjennes f?r du kan installere", nds = "Du must den Lizenzbedingungen zustimmen, um die Installation fortzusetzen", @@ -2547,6 +2659,7 @@ es = "Metadatos", fi = "Metadata", fr = "M?tadonn?es", + hu = "Metaadat", it = "Metadati", nb = "Metadata", nds = "Metadaten", @@ -2568,6 +2681,7 @@ es = "Par?metros de comando incorrectos", fi = "Virheellinen komentorivi", fr = "Ligne de commande invalide", + hu = "Helytelen parancssor", it = "Linea di comando non valida", nb = "Ugyldig kommandolinje", nds = "Ung?ltige Befehlszeile", @@ -2591,6 +2705,7 @@ es = "No pudo cargar el archivo manifest de '%0'", fi = "Asennusluetteloa paketille \"%0\" ei kyetty lukemaan.", fr = "Impossible de charger le fichier manifeste de '%0'", + hu = "'%0' f?jllista bet?lt?se sikertelen", nb = "Kunne ikke laste manifestfil for '%0'", nds = "Konnte Manifest f?r '%0' nicht laden.", nl = "Kan manifest bestand for '%0' niet laden", @@ -2612,6 +2727,7 @@ es = "Archivo %0 no encontrado", fi = "Tiedostoa \"%0\" ei ole.", fr = "Fichier %0 introuvable", + hu = "%0 nem tal?lhat?", it = "Impossibile trovare il File %0", nb = "Filen '%0' ble ikke funnet", nds = "Datei %0 wurde nicht gefunden", @@ -2635,6 +2751,7 @@ es = "Desinstalar", fi = "Asennuksen poisto", fr = "D?sinstaller", + hu = "Elt?vol?t?s", it = "Rimuovi", nb = "Avinstallasjon", nds = "Deinstalleren", @@ -2657,6 +2774,7 @@ es = "?Est?s seguro de que quieres desinstalar '%0'?", fi = "Haluatko varmasti poistaa asennuksen \"%0\"?", fr = "?tes-vous s?r de vouloir d?sinstaller '%0' ?", + hu = "Biztosan elt?vol?tod: '%0' ?", it = "Se veramente sicuro di voler disinstallare '%0'?", nb = "Er du sikker p? at du vil avinstallere '%0'?", nds = "Sind sie sicher, dass sie '%0' deinstallieren wollen?", @@ -2680,6 +2798,7 @@ es = "Desinstalando", fi = "Poistetaan asennusta", fr = "D?sinstallation en cours", + hu = "Elt?vol?t?s", it = "Disinstallazione in corso", nb = "Avinstallerer", nds = "Deinstallation", @@ -2701,6 +2820,7 @@ es = "Desinstalaci?n terminada", fi = "Asennus poistettu", fr = "D?sinstallation compl?te", + hu = "Elt?vol?t?s k?sz", it = "Disinstallazione completata", nb = "Avinstallasjonen er ferdig", nds = "Deinstallation abgeschlossen", @@ -2728,6 +2848,7 @@ es = "[?Ensancha la ventana!]", fi = "[Levenn? ikkunaa!]", fr = "[?largissez la fen?tre!]", + hu = "[H?zd az ablakot sz?lesebbre!]", it = "[Allarga la finestra!]", nb = "[Gj?r vinduet bredere!]", nds = "[Mach das Fenster breiter!]", @@ -2755,6 +2876,7 @@ es = "[?Estira la ventana!]", fi = "[Tee ikkunasta korkeampi!]", fr = "[Agrandissez la fen?tre!]", + hu = "[H?zd az ablakot magasabbra!]", it = "[Allunga la finestra!]", nb = "[Gj?r vinduet h?yere!]", nds = "[Mach das Fenster h?her!]", @@ -2778,6 +2900,7 @@ es = "Fallo al a?adir un elemento al men? de escritorio", fi = "Kohdan lis??minen ty?p?yt?valikkoon ep?onnistui.", fr = "Echec de l'installation des ?l?ments du bureau", + hu = "Asztali ikon l?trehoz?sa sikertelen", nds = "Desktop Menu-Eintrag konnte nicht erstellt werden.", nl = "Installatie van het bureaublad menu item is mislukt", pt = "A instala??o do menu no desktop falhou", @@ -2799,6 +2922,7 @@ es = "Fallo al quitar un elemento del men? de escritorio", fi = "Kohdan poistaminen ty?p?yt?valikkosta ep?onnistui.", fr = "Echec de la d?sinstallation des ?l?ments du bureau", + hu = "Asztali ikon elt?vol?t?sa sikertelen", nds = "Desktop Menu-Eintrag konnte nicht entfernt werden.", nl = "De?nstallatie van het bureaublad menu item is mislukt", pt = "A desinstala??o do menu no desktop falhou", From DONOTREPLY at icculus.org Sat Mar 8 03:47:17 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 8 Mar 2008 03:47:17 -0500 Subject: r552 - trunk/scripts Message-ID: <20080308084717.18719.qmail@icculus.org> Author: icculus Date: 2008-03-08 03:47:10 -0500 (Sat, 08 Mar 2008) New Revision: 552 Modified: trunk/scripts/localization.lua Log: Turkish translation from launchpad.net! Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-07 05:41:31 UTC (rev 551) +++ trunk/scripts/localization.lua 2008-03-08 08:47:10 UTC (rev 552) @@ -3,8 +3,8 @@ -- Please see the file LICENSE.txt in the source's root directory. -- -- DO NOT EDIT BY HAND. --- This file was generated with po2localization.pl, version svn-550 ... --- on 2008-03-07 00:39:53-0500 +-- This file was generated with po2localization.pl, version svn-551 ... +-- on 2008-03-08 03:15:44-0500 -- -- Your own installer's localizations go into app_localization.lua instead. -- If you want to add strings to be translated to this file, contact Ryan @@ -15,7 +15,7 @@ -- -- ...and that work eventually ends up in this file. -- --- X-Launchpad-Export-Date: 2008-03-07 03:28+0000 +-- X-Launchpad-Export-Date: 2008-03-08 05:52+0000 -- X-Generator: Launchpad (build Unknown) MojoSetup.languages = { @@ -38,6 +38,7 @@ ru = "Russian", sk = "Slovak", sv = "Swedish", + tr = "Turkish", uk = "Ukrainian", zh_TW = "Traditional Chinese" }; @@ -61,6 +62,7 @@ ru = "????????? ???????", sk = "potrebujem slovn?k", sv = "beh?ver ordbok", + tr = "s?zl?k gerekiyor", uk = "???????? ???????", zh_TW = "????" }; @@ -83,6 +85,7 @@ ru = "?????? ??????", sk = "chyba d?t", sv = "datafel", + tr = "veri hatas?", uk = "??????? ?????", zh_TW = "????" }; @@ -106,6 +109,7 @@ ru = "?????? ??????", sk = "chyba pam?te", sv = "minnesfel", + tr = "bellek hatas?", uk = "??????? ???'???", zh_TW = "?????" }; @@ -128,6 +132,7 @@ ru = "?????? ??????", sk = "chyba vyrovn?vacej pam?te", sv = "bufferfel", + tr = "tampon hatas?", uk = "??????? ??????", zh_TW = "?????" }; @@ -151,6 +156,7 @@ ru = "?????? ??????", sk = "chyba verzie", sv = "versionsfel", + tr = "s?r?m hatas?", uk = "??????? ??????", zh_TW = "????" }; @@ -175,6 +181,7 @@ ru = "??????????? ??????", sk = "nezn?ma chyba", sv = "ok?nt fel", + tr = "bilinmeyen hata", uk = "???????? ???????", zh_TW = "?????" }; @@ -199,6 +206,7 @@ ru = "???????????: %0", sk = "Spr?va: %0", sv = "NB: %0\n[tryck enter]", + tr = "UYARI: %0\n[giri? tu?una bas?n?z]", uk = "?? ?????: %0", zh_TW = "???%0" }; @@ -223,6 +231,7 @@ ru = "%0 [Y/n]: ", sk = "%0 [A/n]: ", sv = "%0 [J/n]: ", + tr = "%0 [E/h]]: ", uk = "%0 [???/??] ", zh_TW = "%0 [Y/n]: " }; @@ -247,6 +256,7 @@ ru = "%0 [y/N]: ", sk = "%0 [a/N]: ", sv = "%0 [j/N]: ", + tr = "%0 [e/H]: ", uk = "%0 [???/??] ", zh_TW = "%0 [y/N]: " }; @@ -271,6 +281,7 @@ ru = "%0 [y/n/??????(A)/???????(N)]: ", sk = "%0 [a/n/Vzdy/Nikdy]: ", sv = "%0 [j/n/Alltid/Aldrig]: ", + tr = "%0 [e/h/Daima/Asla]: ", uk = "%0 [???/??/??????/??????]: ", zh_TW = "%0[y/n/??(A)/??(N)]: " }; @@ -294,6 +305,7 @@ ru = "Y", sk = "A", sv = "J", + tr = "E", zh_TW = "?" }; @@ -317,6 +329,7 @@ ru = "N", sk = "N", sv = "N", + tr = "H", zh_TW = "?" }; @@ -341,6 +354,7 @@ ru = "??????", sk = "V?dy", sv = "Alltid", + tr = "Daima", zh_TW = "??" }; @@ -365,6 +379,7 @@ ru = "???????", sk = "Nikdy", sv = "Aldrig", + tr = "Asla", zh_TW = "??" }; @@ -389,6 +404,7 @@ ru = "(%0-%1 ?? %2 ?????, ???????)", sk = "(%0-%1 of %2 riadkov, zobrazi? ?al?ie?)", sv = "(%0-%1 av %2 rader, visa fler?)", + tr = "(%2 sat?rdan %0-%1 sat?r, daha fazlas?na bak?)", zh_TW = "?%2 ?????? %0-%1 ????????" }; @@ -413,6 +429,7 @@ ru = "??????? '%0' ????? ?????????.", sk = "Zadajte '%0' pre n?vrat spa?.", sv = "Skriv '%0' f?r att g? tillbaka.", + tr = "Geri d?nmek i?in '%0' yaz.", zh_TW = "?? '%0' ???" }; @@ -439,6 +456,7 @@ ru = "?????", sk = "sp??", sv = "tillbaka", + tr = "geri", zh_TW = "??" }; @@ -462,6 +480,7 @@ ru = "> ", sk = "> ", sv = "> ", + tr = "> ", zh_TW = "> " }; @@ -484,6 +503,7 @@ ru = "%0: %1%%", sk = "%0: %1%%", sv = "%0: %1%%", + tr = "%0: %1%%", zh_TW = "%0: %1%%" }; @@ -506,6 +526,7 @@ ru = "%0 (?????: %1%%)", sk = "%0 (celkovo priebeh: %1%%)", sv = "%0 (totalt: %1%%)", + tr = "%0 (toplam ilerleme: %1%%)", zh_TW = "%0??????%1%%?" }; @@ -531,6 +552,7 @@ ru = "?? ?????????????", sk = "S?hlas?te s licensiou?", sv = "Acceptera licensen?", + tr = "Bu lisans? kabul ediyor musunuz?", zh_TW = "???????" }; @@ -555,6 +577,7 @@ ru = "_??????", sk = "_V?dy", sv = "_Alltid", + tr = "_Her zaman", zh_TW = "??(_A)" }; @@ -579,6 +602,7 @@ ru = "????? ?? ??????", sk = "Arch?v nen?jden?", sv = "Hittade inte arkivet", + tr = "Ar?iv bulunamad?", zh_TW = "??????" }; @@ -603,6 +627,7 @@ ru = "?? ??????? ??? ?? ?????? ?????????? ??????????", sk = "Ste si ist? ?e chcete preru?i? in?tal?ciu?", sv = "?r du s?ker p? att du vill avbryta installationen?", + tr = "Kurulumu iptal etmek istedi?inizden emin misiniz?", zh_TW = "?????????" }; @@ -626,6 +651,7 @@ ru = "?????", sk = "Sp??", sv = "Tillbaka", + tr = "Geri", zh_TW = "??" }; @@ -651,6 +677,7 @@ ru = "???????...", sk = "P_rehliada?...", sv = "B_l?ddra", + tr = "T_ara...", zh_TW = "??(_B)" }; @@ -680,6 +707,7 @@ ru = "??????: ???????????? media_id", sk = "CHYBA: duplicitn? media id", sv = "FEL: dupliserat media id", + tr = "HATA: ?ifte medya id'si", zh_TW = "??????????" }; @@ -704,6 +732,7 @@ ru = "??????: ??????????? ?????", sk = "CHYBA: ?iadne in?tala?n? mo?nosti", sv = "FEL: inget option", + tr = "HATA: se?enek yok", zh_TW = "???????" }; @@ -729,6 +758,7 @@ ru = "??????: support_uninstall ????????? ? write_manifest", sk = "CHYBA: support_uninstall potrebuje write_manifest", sv = "FEL: support_uninstall kr?ver write_manifest", + tr = "HATA: support_uninstall write_manifest gerektirir", zh_TW = "???support_uninstall ?? write_manifest" }; @@ -756,6 +786,7 @@ ru = "??????: write_manifest ??????? ????????? Lua parser", sk = "CHYBA: write_manifest potrebuje zapnut? podporu Lua parsera (Lua parser support)", sv = "FEL: write_manifest kr?ver Lua parser st?d", + tr = "HATA: write_manifest Lua yorumlay?c? deste?i gerektirir", zh_TW = "???write_manifest ?? Lua ??????" }; @@ -780,6 +811,7 @@ ru = "??????: Setup.DesktopMenuItem ????????? ? support_uninstall", sk = "CHYBA: Setup.DesktopMenuItem potrebuje support_uninstall", sv = "FEL: Setup.DesktopMenuItem kr?ver support_uninstall", + tr = "HATA: Setup.DesktopMenuItem support_uninstall gerektirir", zh_TW = "???Setup.DesktopMenuItem ?? support_uninstall" }; @@ -804,6 +836,7 @@ ru = "??????: '%0' ???????????? ???????? ??? ????.", sk = "CHYBA: '%0' nieje spr?vny sp?sob z?pisu pr?v", sv = "FEL: '%0' ?r inte en giltig r?ttighetsstr?ng", + tr = "HATA: '%0' ge?erli bir izin karakter dizisi de?il", zh_TW = "???'%0' ????????????" }; @@ -829,6 +862,7 @@ ru = "??????: ???????????? ?????? format()", sk = "CHYBA: nespr?vny format() re?azec", sv = "FEL: Ogiltig format() str?ng", + tr = "HATA: Ge?ersiz format() karakter dizisi", zh_TW = "?????? format() ??" }; @@ -853,6 +887,7 @@ ru = "??????: ???? ????? ??????????? ???", sk = "CHYBA: f?za vr?tila nespr?vny typ", sv = "FEL: niv? returnerade fel typ", + tr = "HATA: a?ama yanl?? tip getirdi", zh_TW = "????????????" }; @@ -877,6 +912,7 @@ ru = "??????: ???? ????? ??????????? ?????????", sk = "CHYBA: f?za vr?tila nespr?vnu hodnotu", sv = "FEL: niv? returnerade fel v?rde", + tr = "HATA: a?ama yanl?? de?er getirdi", zh_TW = "???????????" }; @@ -901,6 +937,7 @@ ru = "??????: ?????? ???? ???????? ?????? \"?????\"", sk = "CHYBA: vr?tili ste sa pred za?iatok po?iato?nej f?zy", sv = "FEL: Gick tillbaka f?rbi startniv?", + tr = "HATA: a?amalar?n ba?lang?c?na geri ad?m at?ld?", zh_TW = "????????????" }; @@ -922,6 +959,7 @@ ru = "??????: ???????????????? ??? ??????", sk = "CHYBA: Nespracovate?n? typ d?t", sv = "FEL: Ohanterad datatyp", + tr = "HATA: Ele al?nmam?? veri tipi", zh_TW = "???????????" }; @@ -945,6 +983,7 @@ ru = "??????: ?????? ??????????? ???????? ?????? ??? tar", sk = "CHYBA: Nem??ete duplikova? tar vstupy", sv = "FEL: Kan inte duplicera infiler f?r tar", + tr = "HATA: Tar giri?leri ?oklanam?yor", zh_TW = "??????? tar ???" }; @@ -968,6 +1007,7 @@ ru = "??????: ??????????? ????????", sk = "CHYBA: Neo?ak?van? hodnota", sv = "FEL: Ov?ntat v?rde", + tr = "HATA: Beklenmeyen de?er", zh_TW = "???????" }; @@ -994,6 +1034,7 @@ ru = "??????: ????? %0 %1", sk = "CHYBA: Config %0 %1", sv = "FEL: Konfiguration %0 %1", + tr = "HATA: Ayar %0 %1", zh_TW = "????? %0 %1" }; @@ -1016,6 +1057,7 @@ ru = "?????? ???? ??????? ????", sk = "mus? by? explicitne ?pecifikovan?", sv = "m?ste vara explicit specifierad", + tr = "a??k?a belirtilmeli", zh_TW = "??????" }; @@ -1038,6 +1080,7 @@ ru = "?????? ???? ??????? ??? ???????? ?????", sk = "mus? by? re?azec alebo tabu?ka re?azcov", sv = "m?ste vara en str?ng eller en tabell av str?ngar", + tr = "bir karakter dizisi ya da karakter dizi tablosu olmas? gerekir", zh_TW = "??????????" }; @@ -1060,6 +1103,7 @@ ru = "?????? ???? ??????? ??? ??????", sk = "mus? by? re?azec alebo ??slo", sv = "m?ste vara en str?ng eller ett nummer", + tr = "bir karakter dizisi ya da say? olmal?", zh_TW = "????????" }; @@ -1082,6 +1126,7 @@ ru = "?? ????? ???? ?????? ???????", sk = "nem??e by? re?azec", sv = "kan inte vara en tom str?ng", + tr = "bo? bir karakter dizisi olamaz", zh_TW = "??????" }; @@ -1103,6 +1148,7 @@ ru = "URL ?? ???????? ????????", sk = "URL neur?uje protokol", sv = "URL saknar protokoll", + tr = "URL'nin protokol? yok", zh_TW = "URL ??????" }; @@ -1124,6 +1170,7 @@ ru = "URL ?? ???????? ????", sk = "URL neobsahuje hostite?a", sv = "URL saknar v?rd", + tr = "URL'nin host u yok", zh_TW = "URL ????" }; @@ -1145,6 +1192,7 @@ ru = "URL ?? ???????? ????", sk = "URL neobsahuje cestu", sv = "URL saknar s?kv?g", + tr = "URL'nin yol u yok", zh_TW = "URL ????" }; @@ -1166,6 +1214,7 @@ ru = "???????? URL ?? ??????????????", sk = "URL protokol nieje podporovan?", sv = "URL-protokollet har inget st?d", + tr = "URL protokol? desteklenmiyor", zh_TW = "URL ???????" }; @@ -1190,6 +1239,7 @@ ru = "?????? ???? ??????? ???????????", sk = "Re?azec pr?v je neplatn?", sv = "R?ttighetsstr?ngen ?r ogiltig", + tr = "?zin haklar? dizesi ge?ersiz", zh_TW = "?????????" }; @@ -1213,6 +1263,7 @@ ru = "???????????? ????????", sk = "nieje spr?vnym atrib?tom", sv = "?r inte ett giltigt attribut", + tr = "ge?erli bir ?zellik de?il", zh_TW = "???????" }; @@ -1237,6 +1288,7 @@ ru = "?????? ???? %0", sk = "mus? by? %0", sv = "m?ste vara %0", + tr = "%0 olmal?", zh_TW = "??? %0" }; @@ -1259,6 +1311,7 @@ ru = "???????", sk = "re?azec", sv = "str?ng", + tr = "karakter dizesi", zh_TW = "??" }; @@ -1282,6 +1335,7 @@ ru = "???????", sk = "booleovsk? hodnota", sv = "boolskt v?rde", + tr = "mant?ksal de?er", zh_TW = "???" }; @@ -1305,6 +1359,7 @@ ru = "??????", sk = "??slo", sv = "nummer", + tr = "say?", zh_TW = "??" }; @@ -1327,6 +1382,7 @@ ru = "????????", sk = "funkcia", sv = "funktion", + tr = "fonksiyon", zh_TW = "??" }; @@ -1350,6 +1406,7 @@ ru = "????????", sk = "tabu?ka", sv = "tabell", + tr = "tablo", zh_TW = "??" }; @@ -1374,6 +1431,7 @@ ru = "????????? ?????? ? bzlib: %0", sk = "bzlib sp?sobilo vn?torn? chybu: %0", sv = "internt fel i bzlib: %0", + tr = "bzlib i?sel bir hata tetikledi: %0", zh_TW = "bzlib ????????? %0" }; @@ -1398,6 +1456,7 @@ ru = "????????", sk = "Zru?", sv = "Avbryt", + tr = "?ptal", zh_TW = "??" }; @@ -1421,6 +1480,7 @@ ru = "???????? ?????????", sk = "Zru? in?tal?ciu", sv = "Avbryt installationen", + tr = "Kurulumu iptal et", zh_TW = "????" }; @@ -1443,6 +1503,7 @@ ru = "?? ???? ????????? ?????", sk = "Nem??em prelistova? arch?v", sv = "Kunde inte lista filen", + tr = "Ar?iv numaraland?r?lamad?", zh_TW = "??????????" }; @@ -1467,6 +1528,7 @@ ru = "?? ???? ??????? ?????", sk = "Nem??em otvori? arch?v", sv = "Kunde inte ?ppna filen", + tr = "Ar?iv a??lamad?", zh_TW = "???????" }; @@ -1493,6 +1555,7 @@ ru = "???????? ???? ????????? (??????? Enter ??? ?????? 1), ??? ??????? ????.", sk = "Vyberte cie? in?tal?cie pomocou ??sla (stla?te enter pre prv? mo?nos?).", sv = "V?lj s?kv?g f?r installationen efter nummer (tryck enter f?r #1), eller skriv in din egen.", + tr = "Kurulum yerini say? yard?m?yla se?iniz (#1 i?in giri?e bas?n?z), ya da kendiniz belirtiniz", zh_TW = "???????????????? [Enter] ?????????????????????" }; @@ -1518,6 +1581,7 @@ ru = "???????? ????? ??? ?????????", sk = "Vyberte pomocou ??sla ak chcete zmeni? nastavenie", sv = "V?lj nummer som skall ?ndras.", + tr = "De?i?tirmek i?in bir say? se?iniz", zh_TW = "???????" }; @@ -1542,6 +1606,7 @@ ru = "????????!", sk = "Konflikt!", sv = "Konflikt!", + tr = "?ak??ma!", zh_TW = "???" }; @@ -1568,6 +1633,7 @@ ru = "?? ???? ????????? ????? ????? ??? ??????????????", sk = "Nem??em z?lohova? s?bor pre obnovu", sv = "Kunde inte s?kerhetskopiera filen f?r ?terst?llning", + tr = "Dosya geri y?kleme i?in yedeklenemedi", zh_TW = "?????????" }; @@ -1593,6 +1659,7 @@ ru = "?? ???? ??????? ????????", sk = "Nem??em vytvori? manifest", sv = "Kunde inte skapa manifest", + tr = "Manifesto olu?turulamad?", zh_TW = "????????" }; @@ -1615,6 +1682,7 @@ ru = "?? ???? ???????????? ????????? ?????. ???? ????????? ??????? ??????????.", sk = "Nem??em obnovi? niektor? s?bory. Va?a aktu?lna in?tal?cia je zrejme po?koden?.", sv = "N?gra filer kunde inte ?terskapas. Den existerande installationen ?r troligtvis skadad.", + tr = "Baz? dosyalar onar?lamad?. Varolan kurulumunuz b?y?k olas?l?kla zarar g?rm??", zh_TW = "??????????????????????" }; @@ -1637,6 +1705,7 @@ ru = "?? ???? ???????!", sk = "Odstra?ovanie s?boru zlyhalo!", sv = "Kunde inte radera!", + tr = "Silme i?lemi ba?ar?lamad?!", zh_TW = "????" }; @@ -1662,6 +1731,7 @@ ru = "?????:", sk = "Adres?r:", sv = "Katalog:", + tr = "Dizin:", zh_TW = "????" }; @@ -1685,6 +1755,7 @@ ru = "??????????", sk = "Cie?", sv = "M?l", + tr = "Hedef", zh_TW = "???" }; @@ -1709,6 +1780,7 @@ ru = "?????????? ??????", sk = "S?ahujem", sv = "H?mtar", + tr = "?ndiriyor", zh_TW = "???" }; @@ -1732,6 +1804,7 @@ ru = "??????? ???? ???? ????? ??????????? ?????????.", sk = "Zadajte cestu kam chcete in?talova?", sv = "V?lj den mapp d?r filerna ska installeras.", + tr = "Dosyalar?n kurulaca?? yolu giriniz.", zh_TW = "??????????" }; @@ -1754,6 +1827,7 @@ ru = "?? ???? ????????? ???? '%0'", sk = "nem??em nahra? s?bor '%0'", sv = "Misslyckades med att l?sa filen '%0'", + tr = "'%0' dosyas? y?klenemedi", zh_TW = "?????? '%0'" }; @@ -1777,6 +1851,7 @@ ru = "????????? ??????", sk = "Z?VA?N? CHYBA", sv = "Allvarligt fel", + tr = "?l?mc?l hata", zh_TW = "????" }; @@ -1799,6 +1874,7 @@ ru = "?? ???? ??????? ????!", sk = "Nem??em vytvori? s?bor!", sv = "Misslyckades med att skapa fil!", + tr = "Dosya olu?turumu ba?ar?lamad?!", zh_TW = "???????" }; @@ -1821,6 +1897,7 @@ ru = "?????? ?????????? ?????!", sk = "S?ahovanie zlyhalo!", sv = "H?mtning av fil misslyckades!", + tr = "Dosya indirimi ba?ar?lamad?!", zh_TW = "??????" }; @@ -1844,6 +1921,7 @@ ru = "???? '%0' ??? ??????????! ?????????", sk = "S?bor '%0' u? existuje! Prep?sa??", sv = "Filen '%0' existerar redan! Vill du ers?tta filen?", + tr = "'%0' dosyas? zaten var! De?i?tirilsin mi?", zh_TW = "?? '%0' ??????????" }; @@ -1868,6 +1946,7 @@ ru = "??????????", sk = "Dokon?i?", sv = "Slutf?r", + tr = "Bitir", zh_TW = "??" }; @@ -1891,6 +1970,7 @@ ru = "?????? ??????? ???????????? ??????????", sk = "Nieje mo?n? spusti? GUI", sv = "Kunde inte starta grafisk gr?nssnitt", + tr = "Grafik arabirimi ba?lat?lamad?", zh_TW = "???????????" }; @@ -1915,6 +1995,7 @@ ru = "?????? ?????????. ??? ????????? ????? ????????.", sk = "Ne?pln? in?tal?cia. Vraciam spa? vykonan? zmeny.", sv = "Ofullst?ndig installation. ?terst?llning av alla gjorda ?ndringar utf?rs.", + tr = "Eksik kurulum. Yapt???m?z t?m de?i?iklikleri geri alaca??z.", zh_TW = "?????????????????" }; @@ -1938,6 +2019,7 @@ ru = "????????? ???? ???????.", sk = "In?tal?cia je hotov?.", sv = "Installationen lyckades.", + tr = "Kurulum ba?ar?l? oldu.", zh_TW = "???????" }; @@ -1962,6 +2044,7 @@ ru = "?????????", sk = "In?talujem", sv = "Installerar", + tr = "Kuruluyor", zh_TW = "????" }; @@ -1986,6 +2069,7 @@ ru = "?????????", sk = "Mo?nosti", sv = "Alternativ", + tr = "Se?enekler", zh_TW = "??" }; @@ -2010,6 +2094,7 @@ ru = "(??????? ????.)", sk = "(Chcem zada? cestu ru?ne)", sv = "(Jag vill skriva in en egen s?kv?g.)", + tr = "(Bir yol belirtmek istiyorum.)", zh_TW = "?????????" }; @@ -2033,6 +2118,7 @@ ru = "??/?", sk = "KB/s", sv = "KB/s", + tr = "KB/s", zh_TW = "KB/?" }; @@ -2055,6 +2141,7 @@ ru = "?/?", sk = "B/s", sv = "B/s", + tr = "Byte/sn", zh_TW = "???/?" }; @@ -2078,6 +2165,7 @@ ru = "%0 %1", sk = "%0 %1", sv = "%0 %1", + tr = "%0 %1", zh_TW = "%0 %1" }; @@ -2102,6 +2190,7 @@ ru = "%0 %1, ???????? %2:%3:%4", sk = "%0 %1, %2:%3:%4 zost?va", sv = "%0 %1, %2:%3:%4 ?terst?r", + tr = "%0 %1, %2:%3:%4 kal?yor", zh_TW = "?? %0 %1, %2:%3:%4" }; @@ -2124,6 +2213,7 @@ ru = "????????", sk = "zastaven?", sv = "avstannad", + tr = "duraksad?", zh_TW = "???" }; @@ -2147,6 +2237,7 @@ ru = "%0: %1%% (%2)", sk = "%0: %1%% (%2)", sv = "%0: %1%% (%2)", + tr = "%0: %1%% (%2)", zh_TW = "%0: %1%% (%2)" }; @@ -2170,6 +2261,7 @@ ru = "????? ?????", sk = "V?mena m?dia", sv = "Mediabyte", + tr = "Medya de?i?imi", zh_TW = "????" }; @@ -2193,6 +2285,7 @@ ru = "?????? ???????? ????????", sk = "Nem??em vytvori? adres?r", sv = "Kunde inte skapa katalog", + tr = "Dizin olu?turumu ba?ar?lamad?", zh_TW = "??????" }; @@ -2216,6 +2309,7 @@ ru = "?_??????", sk = "N_ikdy", sv = "Al_drig", + tr = "Asla", zh_TW = "??(_N)" }; @@ -2240,6 +2334,7 @@ ru = "_?????", sk = "?alej", sv = "N?sta", + tr = "Sonraki", zh_TW = "???" }; @@ -2263,6 +2358,7 @@ ru = "_???", sk = "Nie", sv = "Nej", + tr = "Hay?r", zh_TW = "?" }; @@ -2286,6 +2382,7 @@ ru = "_??", sk = "?no", sv = "Ja", + tr = "Evet", zh_TW = "?" }; @@ -2310,6 +2407,7 @@ ru = "?? ???????", sk = "Nem??em n?js?", sv = "Hittades inte", + tr = "Bulunamad?", zh_TW = "???" }; @@ -2333,6 +2431,7 @@ ru = "?????? ??????!", sk = "Nem?m ?o robi?", sv = "Ingenting att g?ra!", + tr = "Yap?lacak bir i? yok!", zh_TW = "?????????" }; @@ -2356,6 +2455,7 @@ ru = "??", sk = "OK", sv = "OK", + tr = "Tamam", zh_TW = "??" }; @@ -2382,6 +2482,7 @@ ru = "????????? ??????", sk = "PANIKA", sv = "PANIK", + tr = "PAN?K", zh_TW = "????" }; @@ -2404,6 +2505,7 @@ ru = "????????, ??????????, '%0'", sk = "Pros?m vlo?te '%0'", sv = "S?tt in '%0'", + tr = "L?tfen tak?n?z '%0'", zh_TW = "??? '%0'" }; @@ -2429,6 +2531,7 @@ ru = "??????? Enter ??? ???????????", sk = "Stla?te Enter pre pokra?ovanie.", sv = "Tryck enter f?r att forts?tta.", + tr = "Devam etmek i?in giri? tu?una bas?n?z.", zh_TW = "?? [Enter] ????" }; @@ -2454,6 +2557,7 @@ ru = "????????? ??????", sk = "V??ny probl?m", sv = "Allvarligt problem", + tr = "Ciddi problem", zh_TW = "????" }; @@ -2477,6 +2581,7 @@ ru = "??????????", sk = "Vyp?nam sa...", sv = "Avslutar...", + tr = "Kapat?l?yor...", zh_TW = "????" }; @@ -2500,6 +2605,7 @@ ru = "?????? ??????? ???????.", sk = "M??ete zavre? tento prehliada?.", sv = "Du kan st?nga denna webbl?sare nu.", + tr = "Bu taray?c? penceresini ?imdi kapatabilirsiniz.", zh_TW = "???????????" }; @@ -2523,6 +2629,7 @@ ru = "?????? ???????? ??????!", sk = "Nem??em vytvori? symlink", sv = "Kunde inte skapa symbolisk l?nk!", + tr = "Sembolik ba? olu?turulamad?!", zh_TW = "??????" }; @@ -2546,6 +2653,7 @@ ru = "????????? ????????? ???? ??????????? ????????.", sk = "In?tal?tor bol zastaven? syst?mom.", sv = "Installationsprogrammet blev stoppat av systemet.", + tr = "Kurulum program? sistem taraf?ndan durduruldu.", zh_TW = "??????????" }; @@ -2569,6 +2677,7 @@ ru = "????????? ????????? ??????????? ??-?? ??????.", sk = "In?tal?tor havaroval k?li chybe.", sv = "Installationsprogrammet kraschade pga. ett fel.", + tr = "Kurulum bir hata y?z?nden ??kt?.", zh_TW = "??????????" }; @@ -2592,6 +2701,7 @@ ru = "???????????", sk = "V?ber", sv = "V?xla", + tr = "De?i?tir", zh_TW = "??" }; @@ -2617,6 +2727,7 @@ ru = "??????????? ??? ????? ? ??????", sk = "Nezn?my typ s?boru v arch?ve", sv = "Ok?nd filtyp p?tr?ffad i arkivet", + tr = "Ar?ivde bilinmeyen dosya tipi", zh_TW = "????????????" }; @@ -2640,6 +2751,7 @@ ru = "?? ?????? ??????????? ? ???????????? ??????????? ????? ?????????? ?????????", sk = "Mus?te s?hlasi? s licenciou pokia? chcete pokra?ova? v in?tal?cii", sv = "Du m?ste acceptera licensavtalet innan du kan forts?tta med installationen", + tr = "Kuruluma ba?lamadan ?nce lisans? kabul etmelisiniz", zh_TW = "????????????????" }; @@ -2668,6 +2780,7 @@ ru = "??????????", sk = "Metad?ta", sv = "Metadata", + tr = "Temel bilgi", zh_TW = "????" }; @@ -2690,6 +2803,7 @@ ru = "???????? ????????? ??????", sk = "Chybn? parametre", sv = "Ogiltigt argument", + tr = "Ge?ersiz komut sat?r?", zh_TW = "?????" }; @@ -2713,6 +2827,7 @@ ru = "?? ???? ????????? ???? ????????? '%0'", sk = "Nem??em nahra? manifest s?bor pre '%0'", sv = "Kunde inte ladda manifestfil f?r '%0'", + tr = "'%0' i?in manifesto dosyas? y?klenemedi", zh_TW = "?????? '%0' ?????" }; @@ -2736,6 +2851,7 @@ ru = "???? %0 ?? ??????", sk = "Nena?iel som s?bor %0", sv = "Filen '%0' hittades inte", + tr = "%0 dosyas? bulunamad?", zh_TW = "????? %0" }; @@ -2760,6 +2876,7 @@ ru = "???????", sk = "Odin?talova?", sv = "Avinstallera", + tr = "Kald?r", zh_TW = "??" }; @@ -2783,6 +2900,7 @@ ru = "?? ???????, ??? ?????? ??????? '%0'?", sk = "Ste si ist? ?e chcete odin?talova? '%0'?", sv = "?r du s?ker p? att du vill avinstallera '%0'?", + tr = "'%0' paketini kald?rmak istedi?inizden emin misiniz?", zh_TW = "?????? '%0'" }; @@ -2807,6 +2925,7 @@ ru = "????????", sk = "Odin?talov?vam", sv = "Avinstallerar", + tr = "Kald?r?l?yor", zh_TW = "????" }; @@ -2829,6 +2948,7 @@ ru = "???????? ?????????", sk = "Odin?tal?cia dokon?en?", sv = "Avinstallation slutf?rd", + tr = "Tamamen kald?r", zh_TW = "????" }; @@ -2857,6 +2977,7 @@ ru = "???????? ???? ????!", sk = "[Roztiahnite okno do ??rky!]", sv = "[G?r f?nstret bredare!]", + tr = "[Pencereyi daha geni? yap!]", zh_TW = "[?????]" }; @@ -2885,6 +3006,7 @@ ru = "???????? ???? ????!", sk = "[Roztiahnite okno do v??ky!]", sv = "[G?r f?nstret h?gre!]", + tr = "[Pencereyi daha uzun yap!]", zh_TW = "[?????]" }; @@ -2907,6 +3029,7 @@ ru = "?? ??????? ?????????? ??????? ????", sk = "Nepodarilo sa mi nain?talova? odkaz na plochu", sv = "Misslycklades med att l?gga till genv?g i programmenyn", + tr = "Masa?st? men? eleman? kurma eylemi ba?ar?s?z oldu", zh_TW = "??????????" }; @@ -2929,6 +3052,7 @@ ru = "?? ??????? ??????? ??????? ????", sk = "Nepodarilo sa mi odin?talova? odkaz z plochy", sv = "Misslyckades med att ta bort genv?g i programmenyn", + tr = "Masa?st? men? eleman?n? kald?rma eylemi ba?ar?s?z oldu", zh_TW = "??????????" }; }; From DONOTREPLY at icculus.org Sat Mar 8 17:18:53 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 8 Mar 2008 17:18:53 -0500 Subject: r553 - trunk/scripts Message-ID: <20080308221853.12411.qmail@icculus.org> Author: icculus Date: 2008-03-08 17:18:53 -0500 (Sat, 08 Mar 2008) New Revision: 553 Modified: trunk/scripts/localization.lua Log: Took the hotkey underscores out of the Russian translation...arguably, it's more correct here, but it doesn't match the other translations (and every UI target except GTK+ mishandles them). Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-08 08:47:10 UTC (rev 552) +++ trunk/scripts/localization.lua 2008-03-08 22:18:53 UTC (rev 553) @@ -2331,7 +2331,7 @@ nds = "Weiter", nl = "Volgende", pt = "Seguinte", - ru = "_?????", + ru = "?????", sk = "?alej", sv = "N?sta", tr = "Sonraki", @@ -2355,7 +2355,7 @@ nds = "Nein", nl = "Nee", pt = "N?o", - ru = "_???", + ru = "???", sk = "Nie", sv = "Nej", tr = "Hay?r", @@ -2379,7 +2379,7 @@ nds = "Ja", nl = "Ja", pt = "Sim", - ru = "_??", + ru = "??", sk = "?no", sv = "Ja", tr = "Evet", From DONOTREPLY at icculus.org Sun Mar 9 00:21:30 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 9 Mar 2008 00:21:30 -0500 Subject: r554 - trunk/scripts Message-ID: <20080309052130.4933.qmail@icculus.org> Author: icculus Date: 2008-03-09 00:21:29 -0500 (Sun, 09 Mar 2008) New Revision: 554 Modified: trunk/scripts/localization.lua Log: Latest from launchpad.net (en_AU). Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-08 22:18:53 UTC (rev 553) +++ trunk/scripts/localization.lua 2008-03-09 05:21:29 UTC (rev 554) @@ -3,8 +3,8 @@ -- Please see the file LICENSE.txt in the source's root directory. -- -- DO NOT EDIT BY HAND. --- This file was generated with po2localization.pl, version svn-551 ... --- on 2008-03-08 03:15:44-0500 +-- This file was generated with po2localization.pl, version svn-553 ... +-- on 2008-03-09 00:17:45-0500 -- -- Your own installer's localizations go into app_localization.lua instead. -- If you want to add strings to be translated to this file, contact Ryan @@ -15,7 +15,7 @@ -- -- ...and that work eventually ends up in this file. -- --- X-Launchpad-Export-Date: 2008-03-08 05:52+0000 +-- X-Launchpad-Export-Date: 2008-03-09 05:16+0000 -- X-Generator: Launchpad (build Unknown) MojoSetup.languages = { @@ -24,6 +24,7 @@ da = "Danish", de = "German", el = "Greek", + en_AU = "English (Australia)", en_CA = "English (Canada)", en_GB = "English (United Kingdom)", es = "Spanish", @@ -49,6 +50,7 @@ cs = "je t?eba slovn?k", de = "W?rterbuch ben?tigt", el = "?????????? ??????", + en_AU = "need dictionary", en_CA = "need dictionary", en_GB = "need dictionary", es = "necesita diccionario", @@ -72,6 +74,7 @@ cs = "datov? chyba", de = "Datenfehler", el = "?????? ?????????", + en_AU = "data error", en_CA = "data error", en_GB = "data error", es = "error de datos", @@ -96,6 +99,7 @@ da = "hukommelsesfejl", de = "Speicherfehler", el = "?????? ??????", + en_AU = "memory error", en_CA = "memory error", en_GB = "memory error", es = "error de memoria", @@ -119,6 +123,7 @@ cs = "chyba bufferu", de = "Pufferfehler", el = "?????? ?????????? ????? ???????????", + en_AU = "buffer error", en_CA = "buffer error", en_GB = "buffer error", es = "error de buffer", @@ -143,6 +148,7 @@ da = "versionsfejl", de = "Versionsfehler", el = "????????? ?????? ??????????", + en_AU = "version error", en_CA = "version error", en_GB = "version error", es = "error de versi?n", @@ -167,6 +173,7 @@ da = "ukendt fejl", de = "Unbekannter Fehler", el = "??????? ??????", + en_AU = "unknown error", en_CA = "unknown error", en_GB = "unknown error", es = "error desconocido", @@ -192,6 +199,7 @@ cs = "UPOZORN?N?: %0\n[stiskn?te enter]", de = "HINWEIS: %0\n[Dr?cken Sie Enter]", el = "???????: %0\n[??????? ENTER]", + en_AU = "NOTICE %0", en_CA = "NOTICE: %0\n[hit enter]", en_GB = "NOTICE: %0\n[hit enter]", es = "AVISO: %0\n[presiona Intro]", @@ -217,6 +225,7 @@ cs = "%0 [A/n]: ", de = "%0 [J/n]: ", el = "%0 [?/?]: ", + en_AU = "%0 [Y/n]: ", en_CA = "%0 [Y/n]: ", en_GB = "%0 [Y/n] ", es = "%0 [S/n]: ", @@ -242,6 +251,7 @@ cs = "%0 [a/N] ", de = "%0 [j/N]: ", el = "%0 [?/?]: ", + en_AU = "%0 [y/N]: ", en_CA = "%0 [y/N]: ", en_GB = "%0 [y/N]: ", es = "%0 [s/N]: ", @@ -267,6 +277,7 @@ cs = "%0 [a/n/V?dy/niKdy] ", de = "%0 [j/n/Immer/Niemals]: ", el = "%0 [?/?/?????/????]: ", + en_AU = "%0 [y/n/Always/Never]: ", en_CA = "%0 [y/n/Always/Never]: ", en_GB = "%0 [y/n/Always/Never]: ", es = "%0 [s/n/Siempre/Nunca]: ", @@ -291,6 +302,7 @@ cs = "A", de = "J", el = "?", + en_AU = "Y", en_CA = "Y", en_GB = "Y", es = "S", @@ -315,6 +327,7 @@ da = "N", de = "N", el = "?", + en_AU = "N", en_CA = "N", en_GB = "N", es = "N", @@ -340,6 +353,7 @@ da = "Altid", de = "Immer", el = "?????", + en_AU = "Always", en_CA = "Always", en_GB = "Always", es = "Siempre", @@ -365,6 +379,7 @@ da = "Aldrig", de = "Niemals", el = "????", + en_AU = "Never", en_CA = "Never", en_GB = "Never", es = "Nunca", @@ -390,6 +405,7 @@ cs = "(%0-%1 z %2 ??dk?, zobrazit v?ce?)", de = "(%0-%1 von %2 Zeilen, mehr anschauen?)", el = "(%0-%1 ??? %2 ???????, ?????? ?? ????? ?????????????)", + en_AU = "(%0-%1 of %2 lines, see more?)", en_CA = "(%0-%1 of %2 lines, see more?)", en_GB = "(%0-%1 of %2 lines, see more?)", es = "(%0-%1 de %2 l?neas, ?ves m?s?)", @@ -415,6 +431,7 @@ cs = "Napi?te '%0' pro n?vrat zp?t.", de = "Dr?cken Sie '%0' um zur?ckzugehen.", el = "??????? '%0' ??? ?? ???? ????.", + en_AU = "Type '%0' to go back.", en_CA = "Type '%0' to go back.", en_GB = "Type '%0' to go back.", es = "Pulsa '%0' para ir atr?s.", @@ -442,6 +459,7 @@ da = "tilbage", de = "zur?ck", el = "????", + en_AU = "back", en_CA = "back", en_GB = "back", es = "atr?s", @@ -466,6 +484,7 @@ da = "> ", de = "> ", el = "> ", + en_AU = "> ", en_CA = "> ", en_GB = "> ", es = "> ", @@ -489,6 +508,7 @@ cs = "%0: %1%%", de = "%0: %1%%", el = "%0: %1%%", + en_AU = "%0: %1%%", en_CA = "%0: %1%%", en_GB = "%0: %1%%", es = "%0: %1%%", @@ -513,6 +533,7 @@ cs = "%0 (celkov? pr?b?h: %1%%)", de = "%0 (Gesamtfortschritt: %1%%)", el = "%0 (???????? ???????: %1%%)", + en_AU = "%0 (total progress: %1%%)", en_CA = "%0 (total progress: %1%%)", en_GB = "%0 (total progress: %1%%)", es = "%0 (Progreso total: %1%%)", @@ -538,6 +559,7 @@ da = "Accepter denne licens?", de = "Nehmen Sie die Lizenzbedingungen an?", el = "??????? ???? ??? ????? ???????", + en_AU = "Accept this license?", en_CA = "Accept this licence?", en_GB = "Accept this licence?", es = "?Acepta esta licencia?", @@ -563,6 +585,7 @@ da = "_Altid", de = "_Immer", el = "_?????", + en_AU = "_Always", en_CA = "_Always", en_GB = "_Always", es = "_Siempre", @@ -588,6 +611,7 @@ da = "Arkiv ikke fundet", de = "Archiv nicht gefunden", el = "?? ?????? ??? ???????.", + en_AU = "Archive not found", en_CA = "Archive not found", en_GB = "Archive not found", es = "Archivo no encontrado", @@ -613,6 +637,7 @@ da = "Vil du afbryde installationen?", de = "Sind Sie sicher, dass Sie die Installation abbrechen wollen?", el = "????? ???????? ??? ?????? ?? ????????? ??? ????????????", + en_AU = "Are you sure you want to cancel installation?", en_CA = "Are you sure you want to cancel installation?", en_GB = "Are you sure you want to cancel installation?", es = "?Est?s seguro de que quieres cancelar la instalaci?n?", @@ -637,6 +662,7 @@ da = "Tilbage", de = "Zur?ck", el = "???????????", + en_AU = "Back", en_CA = "Back", en_GB = "Back", es = "Atr?s", @@ -663,6 +689,7 @@ da = "_Gennemse...", de = "Du_rchsuchen", el = "_?????????...", + en_AU = "B_rowse...", en_CA = "B_rowse...", en_GB = "B_rowse...", es = "_Navegar...", @@ -693,6 +720,7 @@ cs = "CHYBA: duplik?tn? id m?dia", de = "FEHLER: Doppelte Medien-ID", el = "??????: ????? ??????? ??? ???? media id", + en_AU = "BUG: duplicate media id", en_CA = "BUG: duplicate media id", en_GB = "BUG: duplicate media id", es = "FALLO: id de medio duplicada", @@ -718,6 +746,7 @@ cs = "CHYBA: nejsou dostupn? ??dn? volby", de = "FEHLER: Keine Optionen", el = "??????: ??? ???????? ????????? ????????????", + en_AU = "BUG: no options", en_CA = "BUG: no options", en_GB = "BUG: no options", es = "FALLO: sin opciones", @@ -744,6 +773,7 @@ cs = "CHYBA: support_uninstall vy?aduje write_manifest", de = "FEHLER: support_uninstall ben?tigt write_manifest", el = "??????: ?? \"support_uninstall\" ??????? ?? \"write_manifest\"", + en_AU = "BUG: support_uninstall requires write_manifest", en_CA = "BUG: support_uninstall requires write_manifest", en_GB = "BUG: support_uninstall requires write_manifest", es = "FALLO: support_uninstall requiere write_manifest", @@ -772,6 +802,7 @@ cs = "CHYBA: write_manifest vy?aduje podporu Lua parseru", de = "FEHLER: write_manifest ben?tigt Lua Parser Unterst?tzung", el = "??????: ?? \"write_manifest\" ??????? ?? ??????? ?????????? ??? \"Lua parser\"", + en_AU = "BUG: write_manifest requires Lua parser support", en_CA = "BUG: write_manifest requires Lua parser support", en_GB = "BUG: write_manifest requires Lua parser support", es = "FALLO: write_manifest requiere el soporte de un int?rprete Lua", @@ -798,6 +829,7 @@ cs = "CHYBA: Setup.DesktopMenuItem vy?aduje support_uninstall", de = "FEHLER: Setup.DesktopMenuItem ben?tigt support_uninstall", el = "??????: ?? Setup.DesktopMenuItem ??????? ?? \"support_uninstall\"", + en_AU = "BUG: Setup.DesktopMenuItem requires support_uninstall", en_CA = "BUG: Setup.DesktopMenuItem requires support_uninstall", en_GB = "BUG: Setup.DesktopMenuItem requires support_uninstall", es = "FALLO: Setup.DesktopMenuItem requiere support_uninstall", @@ -823,6 +855,7 @@ cs = "CHYBA: '%0' nen? platn?m ?et?zcem vyjad?uj?c?m opr?vn?n?", de = "FEHLER: '%0' ist kein zul?ssiger Berechtigungs-String", el = "??????: '%0' ??? ????? ?????? ????????????? ?????????? ???????????", + en_AU = "BUG: '%0' is not a valid permission string", en_CA = "BUG: '%0' is not a valid permission string", en_GB = "BUG: '%0' is not a valid permission string", es = "FALLO: '%0' no es una cadena de permisos v?lida", @@ -848,6 +881,7 @@ cs = "CHYBA: Neplatn? ?et?zec pro format()", de = "FEHLER: Unzul?ssiger format() String", el = "??????: ????? format() ?????????????", + en_AU = "BUG: Invalid format() string", en_CA = "BUG: Invalid format() string", en_GB = "BUG: Invalid format() string", es = "FALLO: Cadena format() no v?lida", @@ -874,6 +908,7 @@ cs = "CHYBA: instala?n? krok vr?til chybn? datov? typ", de = "FEHLER: Abschnitt gab falschen Typ zur?ck", el = "??????: ? ???? ???????????? ????????? ????? ???? ?????????", + en_AU = "BUG: stage returned wrong type", en_CA = "BUG: stage returned wrong type", en_GB = "BUG: stage returned wrong type", es = "FALLO: la etapa ha devuelto tipo err?neo", @@ -899,6 +934,7 @@ cs = "CHYBA: instala?n? krok vr?til chybnou hodnotu", de = "FEHLER: Abschnitt gab falschen Wert zur?ck", el = "??????: ? ???? ???????????? ????????? ????? ????", + en_AU = "BUG: stage returned wrong value", en_CA = "BUG: stage returned wrong value", en_GB = "BUG: stage returned wrong value", es = "FALLO: la etapa ha devuelto valor err?neo", @@ -924,6 +960,7 @@ cs = "CHYBA: pokus o krok zp?t p?ed za??tek instalace", de = "FEHLER: ?ber den Startabschnitt hinaus zur?ckgegangen", el = "??????: ???????? ? ????????? ?? ??????????? ???? ??? ??? ???????", + en_AU = "BUG: stepped back over start of stages", en_CA = "BUG: stepped back over start of stages", en_GB = "BUG: stepped back over start of stages", es = "FALLO: retroceso m?s atr?s del inicio de las etapas", @@ -946,6 +983,7 @@ ["BUG: Unhandled data type"] = { cs = "CHYBA: Datov? typ nen? obsluhov?n", de = "FEHLER: Unbehandelter Datentyp", + en_AU = "BUG: Unhandled data type", en_CA = "BUG: Unhandled data type", en_GB = "BUG: Unhandled data type", es = "FALLO: Tipo de datos sin manipular", @@ -970,6 +1008,7 @@ cs = "CHYBA: Nemohu zduplikovat vstupy z taru", de = "FEHLER: Tar-Eingaben k?nnen nicht dupliziert werden", el = "??????: ??? ????? ??????? ????????? ??? ????????? ??????? ??? \"tar\"", + en_AU = "BUG: Can't duplicate tar inputs", en_CA = "BUG: Can't duplicate tar inputs", en_GB = "BUG: Can't duplicate tar inputs", es = "FALLO: No se pueden duplicar las entradas tar", @@ -994,6 +1033,7 @@ cs = "CHYBA: Neo?ek?van? hodnota", de = "FEHLER: Unerwarteter Wert", el = "??????: ?? ??????????? ????", + en_AU = "BUG: Unexpected value", en_CA = "BUG: Unexpected value", en_GB = "BUG: Unexpected value", es = "FALLO: Valor inesperado", @@ -1020,6 +1060,7 @@ cs = "CHYBA: Konfigura?n? hodnota %0 %1", de = "FEHLER: Konfiguration %0 %1", el = "??????: ?????????? %0 %1", + en_AU = "BUG: Config %0 %1", en_CA = "BUG: Config %0 %1", en_GB = "BUG: Config %0 %1", es = "FALLO: Configuraci?n %0 %1", @@ -1043,6 +1084,7 @@ cs = "mus? b?t explicitn? ur?en", de = "muss explizit angegeben werden", el = "?????? ?? ??????? ????", + en_AU = "must be explicitly specified", en_CA = "must be explicitly specified", en_GB = "must be explicitly specified", es = "debe ser especificado expl?citamente", @@ -1066,6 +1108,7 @@ cs = "mus? b?t ?et?zcem nebo tabulkou ?et?zc?", de = "muss ein String oder eine Tabelle von Strings sein", el = "?????? ?? ????? ??? ????????????? ? ??????? ??? ?????????????", + en_AU = "must be string or table of strings", en_CA = "must be string or table of strings", en_GB = "must be string or table of strings", es = "debe ser una cadena o tabla de cadenas", @@ -1089,6 +1132,7 @@ cs = "mus? b?t ?et?zcem nebo ??slem", de = "muss ein String oder eine Zahl sein", el = "?????? ?? ????? ????????????? ? ???????", + en_AU = "must be a string or number", en_CA = "must be a string or number", en_GB = "must be a string or number", es = "debe ser una cadena o un n?mero", @@ -1112,6 +1156,7 @@ cs = "nem??e b?t pr?zdn?m ?et?zcem", de = "darf kein leerer String sein", el = "??? ?????? ?? ????? ????? ?????????????", + en_AU = "can't be empty string", en_CA = "can't be empty string", en_GB = "can't be empty string", es = "no puede ser una cadena vac?a", @@ -1135,6 +1180,7 @@ cs = "URL nem? ur?en? protokol", de = "URL hat kein Protokoll", el = "?? URL ??? ???????? ????????? ??????????", + en_AU = "URL doesn't have protocol", en_CA = "URL doesn't have protocol", en_GB = "URL doesn't have protocol", es = "URL sin especificar protocolo", @@ -1157,6 +1203,7 @@ cs = "URL neobsahuje hostitele", de = "URL hat keinen Host", el = "?? URL ??? ???????? ????????? ??????????", + en_AU = "URL doesn't have host", en_CA = "URL doesn't have host", en_GB = "URL doesn't have host", es = "URL sin especificar host", @@ -1179,6 +1226,7 @@ cs = "URL neobsahuje cestu", de = "URL hat keinen Pfad", el = "?? URL ??? ???????? ?? ????????", + en_AU = "URL doesn't have path", en_CA = "URL doesn't have path", en_GB = "URL doesn't have path", es = "URL sin especificar ruta", @@ -1201,6 +1249,7 @@ cs = "Protokol v URL nen? podporov?n", de = "URL Protokoll wird nicht unterst?tzt", el = "?? ????????? ??? ???????? ?? URL ??? ?????????????", + en_AU = "URL protocol is unsupported", en_CA = "URL protocol is unsupported", en_GB = "URL protocol is unsupported", es = "Protocolo de URL no soportado", @@ -1225,6 +1274,7 @@ cs = "?et?zec s opr?vn?n?mi je neplatn?", de = "Berechtigungsstring ist ung?ltig", el = "?? ????????????? ??? ?????????? ?? ?????????? ????? ?????.", + en_AU = "Permission string is invalid", en_CA = "Permission string is invalid", en_GB = "Permission string is invalid", es = "Cadena de permisos no v?lida", @@ -1249,6 +1299,7 @@ cs = "nen? platnou vlastnost?", de = "ist keine g?ltige Eigenschaft", el = "??? ????? ?????? ????????", + en_AU = "is not a valid property", en_CA = "is not a valid property", en_GB = "is not a valid property", es = "no es un atributo v?lido", @@ -1274,6 +1325,7 @@ da = "skal v?re %0", de = "muss vom Typ %0 sein", el = "?????? ?? ????? %0", + en_AU = "must be %0", en_CA = "must be %0", en_GB = "must be %0", es = "debe ser %0", @@ -1297,6 +1349,7 @@ cs = "?et?zec", de = "String", el = "?????????????", + en_AU = "string", en_CA = "string", en_GB = "string", es = "cadena", @@ -1321,6 +1374,7 @@ da = "boolsk", de = "Bool", el = "boolean", + en_AU = "boolean", en_CA = "boolean", en_GB = "boolean", es = "booleano", @@ -1345,6 +1399,7 @@ da = "nummer", de = "Zahl", el = "???????", + en_AU = "number", en_CA = "number", en_GB = "number", es = "n?mero", @@ -1368,6 +1423,7 @@ cs = "funkce", de = "Funktion", el = "function", + en_AU = "function", en_CA = "function", en_GB = "function", es = "funci?n", @@ -1392,6 +1448,7 @@ da = "tabel", de = "Tabelle", el = "???????", + en_AU = "table", en_CA = "table", en_GB = "table", es = "tabla", @@ -1417,6 +1474,7 @@ da = "bzlib for?rsagede en intern fejl:", de = "bzlib hat einen internen Fehler ausgel?st: %0", el = "?? bzlib ?????????? ????????? ??????: %0", + en_AU = "bzlib triggered an internal error: %0", en_CA = "bzlib triggered an internal error: %0", en_GB = "bzlib triggered an internal error: %0", es = "bzlib ha provocado un error interno: %0", @@ -1442,6 +1500,7 @@ da = "Annuller", de = "Abbrechen", el = "?????", + en_AU = "Cancel", en_CA = "Cancel", en_GB = "Cancel", es = "Cancelar", @@ -1466,6 +1525,7 @@ cs = "Zru?it instalaci", de = "Installation abbrechen", el = "??????? ????????????", + en_AU = "Cancel Installation", en_CA = "Cancel installation", en_GB = "Cancel installation", es = "Cancelar instalaci?n", @@ -1490,6 +1550,7 @@ cs = "Nemohu proj?t archiv", de = "Archiv kann nicht aufgelistet werden", el = "??? ????? ?????? ? ?????????? ??? ??????? ???????", + en_AU = "Couldn't enumerate archive", en_CA = "Couldn't enumerate archive", en_GB = "Couldn't enumerate archive", es = "No se puede enumerar el archivo", @@ -1514,6 +1575,7 @@ da = "Kunne ikke ?bne arkiv", de = "Archiv kann nicht ge?ffnet werden", el = "??? ??????? ?? ??????? ?? ??????", + en_AU = "Couldn't open archive", en_CA = "Couldn't open archive", en_GB = "Couldn't open archive", es = "No se puede abrir el archivo", @@ -1541,6 +1603,7 @@ cs = "Zvolte c?l instalace ??slem (stiskn?te enter pro #1) nebo zadejte vlastn? c?l.", de = "W?hlen Sie eine Nummer f?r das Installationsziel (dr?cken Sie Enter f?r #1), oder geben Sie ein eigenes an.", el = "???????? ????????? ???????????? ???? ??????? (??????? ENTER ??? #1), ? ?????? ??? ???? ???.", + en_AU = "Choose install destination by number (hit enter for #1), or enter your own.", en_CA = "Choose install destination by number (hit enter for #1), or enter your own.", en_GB = "Choose install destination by number (hit enter for #1), or enter your own.", es = "Elige lugar de instalaci?n con n?meros (pulsa Intro para #1), o especif?calo", @@ -1567,6 +1630,7 @@ cs = "Zadejte ??slo pro zm?nu.", de = "W?hlen Sie eine Nummer zum ?ndern.", el = "???????? ??? ?????? ??? ?????? ?? ????????.", + en_AU = "Choose number to change.", en_CA = "Choose number to change.", en_GB = "Choose number to change.", es = "Elegir n?mero para cambiar", @@ -1592,6 +1656,7 @@ da = "Konflikt!", de = "Konflikt!", el = "???????!", + en_AU = "Conflict!", en_CA = "Conflict!", en_GB = "Conflict!", es = "?Conflicto!", @@ -1619,6 +1684,7 @@ cs = "Nemohu zaz?lohovat soubor pro obnovu", de = "Konnte Datei nicht zur Wiederherstellung sichern", el = "??? ????? ?????? ? ????????? ????????? ??? ????? ?? ????????? ??????????", + en_AU = "Couldn't backup file for rollback", en_CA = "Couldn't backup file for rollback", en_GB = "Couldn't backup file for rollback", es = "No se pudo guardar el archivo para inversi?n", @@ -1646,6 +1712,7 @@ cs = "Nemohu vytvo?it manifest", de = "Konnte Manifest nicht erstellen", el = "??? ??????? ?? ???????????? ?? \"manifest\"", + en_AU = "Couldn't create manifest", en_CA = "Couldn't create manifest", en_GB = "Couldn't create manifest", es = "No se pod?a crear manifest", @@ -1668,6 +1735,7 @@ cs = "Nepoda?ilo se obnovit n?kter? soubory. Va?e existuj?c? instalace je pravd?podobn? po?kozen?.", de = "Konnte einige Dateien nicht wiederherstellen. Ihre Installation ist wahrscheinlich besch?digt.", el = "??? ??????? ?? ???????? ?????? ??????. ????? ??????? ? ??????????? ?? ????? ????????????.", + en_AU = "Couldn't restore some files. Your existing installation is likely damaged.", en_CA = "Couldn't restore some files. Your existing installation is likely damaged.", en_GB = "Couldn't restore some files. Your existing installation is likely to be damaged.", es = "No se pudieron restaurar algunos archivos. Tu instalaci?n posiblemente est? da?ada", @@ -1691,6 +1759,7 @@ cs = "Maz?n? selhalo!", de = "L?schen fehlgeschlagen!", el = "??????? ? ????????!", + en_AU = "Deletion failed!", en_CA = "Deletion failed!", en_GB = "Deletion failed!", es = "?Borrado fallido!", @@ -1717,6 +1786,7 @@ da = "Mappe:", de = "Verzeichnis:", el = "???????:", + en_AU = "Folder:", en_CA = "Folder:", en_GB = "Folder:", es = "Carpeta:", @@ -1741,6 +1811,7 @@ da = "Destination", de = "Ziel", el = "??????????", + en_AU = "Destination", en_CA = "Destination", en_GB = "Destination", es = "Destino", @@ -1766,6 +1837,7 @@ da = "Henter", de = "Lade herunter", el = "??????? ????", + en_AU = "Downloading", en_CA = "Downloading", en_GB = "Downloading", es = "Descargando", @@ -1790,6 +1862,7 @@ cs = "Zadejte cestu, kam maj? b?t soubory nainstalov?ny.", de = "Geben Sie den Pfad an, wohin die Dateien installiert werden sollen.", el = "????? ?? ???????? ??? ?? ????????????? ?? ??????.", + en_AU = "Enter path where files will be installed.", en_CA = "Enter path where files will be installed.", en_GB = "Enter path where files will be installed.", es = "Introduce la ruta donde los archivos ser?n instalados", @@ -1813,6 +1886,7 @@ cs = "nepoda?ilo se na??st soubor '%0'", de = "Laden von Datei '%0' fehlgeschlagen", el = "??????? ?? ??????? ??? ??????? '%0'", + en_AU = "failed to load file '%0'", en_CA = "failed to load file '%0'", en_GB = "failed to load file '%0'", es = "no se pudo leer el archivo '%0'", @@ -1837,6 +1911,7 @@ da = "Alvorlig fejl", de = "Schwerer Fehler", el = "??????? ??????", + en_AU = "Fatal error", en_CA = "Fatal error", en_GB = "Fatal error", es = "Error grave", @@ -1860,6 +1935,7 @@ cs = "Nepoda?ilo se vytvo?it soubor!", de = "Dateierstellung fehlgeschlagen!", el = "? ??????????? ??????? ???????!", + en_AU = "File creation failed!", en_CA = "File creation failed!", en_GB = "File creation failed!", es = "?Escritura de archivo ha fallado!", @@ -1883,6 +1959,7 @@ cs = "Nepoda?ilo se st?hnout soubor!", de = "Dateidownload fehlgeschlagen!", el = "? ???? ??????? ???????!", + en_AU = "File download failed!", en_CA = "File download failed!", en_GB = "File download failed!", es = "?Descarga de archivo ha fallado!", @@ -1907,6 +1984,7 @@ cs = "Soubor '%0' ji? existuje! P?epsat?", de = "Datei '%0' existiert bereits! Ersetzen?", el = "?? ?????? '%0' ??????? ???! ??????????????", + en_AU = "File '%0' already exists! Replace?", en_CA = "File '%0' already exists! Replace?", en_GB = "File '%0' already exists! Replace?", es = "?El archivo '%0' ya existe! ?Sustituirlo?", @@ -1932,6 +2010,7 @@ da = "Udf?r", de = "Fertig stellen", el = "?????", + en_AU = "Finish", en_CA = "Finish", en_GB = "Finish", es = "Terminar", @@ -1956,6 +2035,7 @@ cs = "Nepoda?ilo se spustit GUI", de = "GUI konnte nicht gestartet werden", el = "?? ??????? ?????????? ??????? ?? ?????????", + en_AU = "GUI failed to start", en_CA = "GUI failed to start", en_GB = "GUI failed to start", es = "El interfaz gr?fico de usuario ha fallado al arrancar", @@ -1981,6 +2061,7 @@ cs = "Instalace nebyla dokon?ena. V?e bude uvedeno do p?vodn?ho stavu.", de = "Unvollst?ndige Installation. ?nderungen werden r?ckg?ngig gemacht.", el = "?????????????? ???????????. ?? ??????????? ???? ??????? ??????.", + en_AU = "Incomplete installation. We will revert any changes we made.", en_CA = "Incomplete installation. We will revert any changes we made.", en_GB = "Incomplete installation. We will revert any changes we made.", es = "Instalaci?n incompleta. Vamos a deshacer cualquier cambio que hayamos hecho.", @@ -2005,6 +2086,7 @@ da = "Installationen var succesfuld.", de = "Installation war erfolgreich.", el = "? ??????????? ??????.", + en_AU = "Installation was successful.", en_CA = "Installation was successful.", en_GB = "Installation was successful.", es = "La instalaci?n fue un ?xito.", @@ -2030,6 +2112,7 @@ da = "Installerer", de = "Installiere", el = "??????? ???????????", + en_AU = "Installing", en_CA = "Installing", en_GB = "Installing", es = "Instalando", @@ -2055,6 +2138,7 @@ da = "Indstillinger", de = "Optionen", el = "????????", + en_AU = "Options", en_CA = "Options", en_GB = "Options", es = "Opciones", @@ -2080,6 +2164,7 @@ cs = "(Chci ur?it cestu.)", de = "(Ich m?chte einen Pfad angeben.)", el = "(???? ?? ????? ????????.)", + en_AU = "(I want to specify a path.)", en_CA = "(I want to specify a path.)", en_GB = "(I want to specify a path.)", es = "(Quiero especificar una ruta.)", @@ -2104,6 +2189,7 @@ da = "KB/s", de = "KB/s", el = "KB/????.", + en_AU = "KB/s", en_CA = "KB/s", en_GB = "KB/s", es = "KB/s", @@ -2127,6 +2213,7 @@ cs = "B/s", de = "B/s", el = "B/????", + en_AU = "B/s", en_CA = "B/s", en_GB = "B/s", es = "B/s", @@ -2151,6 +2238,7 @@ cs = "%0 %1", de = "%0 %1", el = "%0 %1", + en_AU = "%0 %1", en_CA = "%0 %1", en_GB = "%0 %1", es = "%0 %1", @@ -2176,6 +2264,7 @@ cs = "%0 %1, %2:%3:%4 zb?v?", de = "%0 %1, %2:%3:%4 verbleibend", el = "%0 %1, ????????? %2:%3:%4", + en_AU = "%0 %1, %2:%3:%4 remaining", en_CA = "%0 %1, %2:%3:%4 remaining", en_GB = "%0 %1, %2:%3:%4 remaining", es = "%0 %1, %2:%3:%4 restantes", @@ -2199,6 +2288,7 @@ cs = "zaseknut?", de = "wartend", el = "????? ???????", + en_AU = "stalled", en_CA = "stalled", en_GB = "stalled", es = "parado", @@ -2223,6 +2313,7 @@ cs = "%0: %1%% (%2)", de = "%0: %1%% (%2)", el = "%0: %1%% (%2)", + en_AU = "%0: %1%% (%2)", en_CA = "%0: %1%% (%2)", en_GB = "%0: %1%% (%2)", es = "%0: %1%% (%2)", @@ -2247,6 +2338,7 @@ da = "Skift medie", de = "Medienwechsel", el = "?????? ???? ???????????", + en_AU = "Media change", en_CA = "Media change", en_GB = "Media change", es = "Cambio de disco", @@ -2271,6 +2363,7 @@ cs = "Selhalo vytv??en? adres??e", de = "Erstellung eines Verzeichnisses fehlgeschlagen", el = "? ??????????? ??????? ???????", + en_AU = "Directory creation failed", en_CA = "Directory creation failed", en_GB = "Directory creation failed", es = "Fallo en la creaci?n de directorio", @@ -2295,6 +2388,7 @@ cs = "Ni_kdy", de = "Ni_emals", el = "_????", + en_AU = "N_ever", en_CA = "N_ever", en_GB = "N_ever", es = "N_unca", @@ -2320,6 +2414,7 @@ da = "N?ste", de = "Weiter", el = "???????", + en_AU = "Next", en_CA = "Next", en_GB = "Next", es = "Siguiente", @@ -2344,6 +2439,7 @@ da = "Nej", de = "Nein", el = "???", + en_AU = "No", en_CA = "No", en_GB = "No", es = "No", @@ -2368,6 +2464,7 @@ da = "Ja", de = "Ja", el = "???", + en_AU = "Yes", en_CA = "Yes", en_GB = "Yes", es = "S?", @@ -2393,6 +2490,7 @@ da = "Ikke fundet", de = "Nicht gefunden", el = "??? ???????", + en_AU = "Not Found", en_CA = "Not Found", en_GB = "Not Found", es = "No encontrado", @@ -2417,6 +2515,7 @@ cs = "Nen? co instalovat!", de = "Nichts zu tun!", el = "??? ??????? ?????? ??? ?? ?????!", + en_AU = "Nothing to do!", en_CA = "Nothing to do!", en_GB = "Nothing to do!", es = "?Nada que hacer!", @@ -2441,6 +2540,7 @@ da = "OK", de = "OK", el = "???????", + en_AU = "OK", en_CA = "OK", en_GB = "OK", es = "Aceptar", @@ -2468,6 +2568,7 @@ cs = "SELH?N?", de = "PANIK", el = "???????", + en_AU = "PANIC", en_CA = "PANIC", en_GB = "PANIC", es = "P?NICO", @@ -2491,6 +2592,7 @@ cs = "Pros?m vlo?te '%0'", de = "Bitte legen Sie '%0' ein", el = "???????? ????????? '%0'", + en_AU = "Please insert '%0'", en_CA = "Please insert '%0'", en_GB = "Please insert '%0'", es = "Por favor introduce '%0'", @@ -2517,6 +2619,7 @@ da = "Tryk retur for at forts?tte.", de = "Dr?cken Sie Enter um fortzufahren", el = "??????? ENTER ??? ????????.", + en_AU = "Press enter to continue.", en_CA = "Press enter to continue.", en_GB = "Press enter to continue.", es = "Presione Intro para continuar.", @@ -2543,6 +2646,7 @@ da = "Seri?st problem", de = "Ernstes Problem", el = "?????? ????????", + en_AU = "Serious problem", en_CA = "Serious problem", en_GB = "Serious problem", es = "Problema grave", @@ -2567,6 +2671,7 @@ da = "Lukker ned...", de = "Schlie?e...", el = "??????? ???????????...", + en_AU = "Shutting down...", en_CA = "Shutting down...", en_GB = "Shutting down...", es = "Cerrando ...", @@ -2591,6 +2696,7 @@ da = "Du kan lukke browseren nu.", de = "Sie k?nnen diesen Browser nun schlie?en.", el = "???????? ?? ???????? ????? ??? ????????? ????.", + en_AU = "You can close this browser now.", en_CA = "You can close this browser now.", en_GB = "You can close this browser now.", es = "Puedes cerrar este navegador ahora.", @@ -2615,6 +2721,7 @@ cs = "Selhalo vytv??en? symbolick?ho odkazu!", de = "Erzeugung einer Verkn?pfung fehlgeschlagen!", el = "??????? ? ??????????? ???? symlink!", + en_AU = "Symlink creation failed!", en_CA = "Symlink creation failed!", en_GB = "Symlink creation failed!", es = "?Creaci?n de enlace simb?lico ha fallado!", @@ -2639,6 +2746,7 @@ cs = "Instal?tor byl zastaven sign?lem ze syst?mu.", de = "Das Installationsprogramm wurde vom System gestoppt.", el = "?? ????????? ???????????? ????????? ??? ?? ???????.", + en_AU = "The installer has been stopped by the system.", en_CA = "The installer has been stopped by the system.", en_GB = "The installer has been stopped by the system.", es = "El instalador ha sido interrumpido por el sistema.", @@ -2663,6 +2771,7 @@ cs = "Instal?tor zhavaroval vinou vlastn? chyby.", de = "Das Installationsprogramm ist aufgrund eines Fehlers abgest?rzt.", el = "?? ????????? ???????????? ?????? ???? ??????? ?????????.", + en_AU = "The installer has crashed due to a bug.", en_CA = "The installer has crashed due to a bug.", en_GB = "The installer has crashed due to a bug.", es = "El instalador se ha bloqueado por un fallo de memoria.", @@ -2687,6 +2796,7 @@ da = "Skift", de = "Umschalten", el = "????????", + en_AU = "Toggle", en_CA = "Toggle", en_GB = "Toggle", es = "Conmutar", @@ -2713,6 +2823,7 @@ da = "Ukendt filtype i arkiv", de = "Unbekannter Dateityp im Archiv", el = "???????? ????? ??????? ???? ??? ?????? ???????.", + en_AU = "Unknown file type in archive", en_CA = "Unknown file type in archive", en_GB = "Unknown file type in archive", es = "Tipo de fichero desconocido en el archivo", @@ -2737,6 +2848,7 @@ cs = "P?ed instalac? je nutn? odsouhlasit licenci", de = "Sie m?ssen den Lizenzbedingungen zustimmen, bevor sie installieren k?nnen", el = "?????? ?? ??????????? ?? ??? ????? ?????? ???? ?????????? ?? ??? ???????????", + en_AU = "You must accept the license before you may install", en_CA = "You must accept the licence before you may install", en_GB = "You must accept the licence before you may install", es = "Tienes que aceptar la licencia antes de que puedas instalar", @@ -2766,6 +2878,7 @@ da = "Metadata", de = "Metadaten", el = "????????????", + en_AU = "Metadata", en_CA = "Metadata", en_GB = "Metadata", es = "Metadatos", @@ -2789,6 +2902,7 @@ cs = "Neplatn? argumenty", de = "Ung?ltige Kommandozeile", el = "????? ?????? ???????", + en_AU = "Invalid command line", en_CA = "Invalid command line", en_GB = "Invalid command line", es = "Par?metros de comando incorrectos", @@ -2814,6 +2928,7 @@ cs = "Nemohu na??st soubor s manifestem pro '%0'", de = "Konnte Manifestdatei f?r '%0' nicht laden", el = "??? ??????? ?? ???????? ?? ?????? \"manifest\" ??? '%0'", + en_AU = "Couldn't load manifest file for '%0'", en_CA = "Couldn't load manifest file for '%0'", en_GB = "Couldn't load manifest file for '%0'", es = "No pudo cargar el archivo manifest de '%0'", @@ -2837,6 +2952,7 @@ cs = "Soubor '%0' nebyl nalezen", de = "Datei %0 nicht gefunden.", el = "?? ?????? %0 ??? ???????", + en_AU = "File %0 not found", en_CA = "File %0 not found", en_GB = "File %0 not found", es = "Archivo %0 no encontrado", @@ -2862,6 +2978,7 @@ da = "Afinstall?r", de = "Deinstallieren", el = "?????????????", + en_AU = "Uninstall", en_CA = "Uninstall", en_GB = "Uninstall", es = "Desinstalar", @@ -2886,6 +3003,7 @@ cs = "Opravdu chcete odinstalovat '%0'?", de = "Sind Sie sicher, dass Sie '%0' deinstallieren wollen?", el = "????? ???????? ?????? ?? ??????????????? ?? '%0'?", + en_AU = "Are you sure you want to uninstall '%0'?", en_CA = "Are you sure you want to uninstall '%0'?", en_GB = "Are you sure you want to uninstall '%0'?", es = "?Est?s seguro de que quieres desinstalar '%0'?", @@ -2911,6 +3029,7 @@ da = "Afinstallerer", de = "Deinstalliere", el = "??????? ?????????????", + en_AU = "Uninstalling", en_CA = "Uninstalling", en_GB = "Uninstalling", es = "Desinstalando", @@ -2934,6 +3053,7 @@ cs = "Odinstalace dokon?ena", de = "Deinstallation abgeschlossen", el = "? ????????????? ????????????", + en_AU = "Uninstall complete", en_CA = "Uninstall complete", en_GB = "Uninstall complete", es = "Desinstalaci?n terminada", @@ -2963,6 +3083,7 @@ cs = "[Zv?t?it ???ku okna!]", de = "[Fenster breiter machen!]", el = "[????????? ?? ???????? ???? ??????!]", + en_AU = "[Make the window wider!]", en_CA = "[Make the window wider!]", en_GB = "[Make the window wider!]", es = "[?Ensancha la ventana!]", @@ -2992,6 +3113,7 @@ cs = "[Zv?t?it v??ku okna!]", de = "[Fenster h?her machen!]", el = "[????????? ?? ???????? ???? ????]", + en_AU = "[Make the window taller!]", en_CA = "[Make the window taller!]", en_GB = "[Make the window taller!]", es = "[?Estira la ventana!]", @@ -3017,6 +3139,7 @@ cs = "Nepoda?ilo se nainstalovat polo?ku do menu", de = "Konnte Verkn?pfung f?r Desktop-Men? nicht installieren", el = "?????? ???? ??? ??????????? ??? ??????????? ????????? ??? ????????????", + en_AU = "Failed to install desktop menu item", en_CA = "Failed to install desktop menu item", en_GB = "Failed to install desktop menu item", es = "Fallo al a?adir un elemento al men? de escritorio", @@ -3040,6 +3163,7 @@ cs = "Nepoda?ilo se odstranit polo?ku z menu", de = "Konnte Verkn?pfung f?r Desktop-Men? nicht deinstallieren", el = "?????? ???? ??? ????????????? ??? ??????????? ????????? ??? ????????????", + en_AU = "Failed to uninstall desktop menu item", en_CA = "Failed to uninstall desktop menu item", en_GB = "Failed to uninstall desktop menu item", es = "Fallo al quitar un elemento del men? de escritorio", From DONOTREPLY at icculus.org Fri Mar 14 23:46:13 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 14 Mar 2008 23:46:13 -0400 Subject: r555 - trunk Message-ID: <20080315034613.12316.qmail@icculus.org> Author: icculus Date: 2008-03-14 23:46:13 -0400 (Fri, 14 Mar 2008) New Revision: 555 Modified: trunk/CMakeLists.txt Log: That's probably meant to be LUA_USE_MACOSX, which defines the DYLD stuff in luaconf.h for us. Modified: trunk/CMakeLists.txt =================================================================== --- trunk/CMakeLists.txt 2008-03-09 05:21:29 UTC (rev 554) +++ trunk/CMakeLists.txt 2008-03-15 03:46:13 UTC (rev 555) @@ -64,7 +64,7 @@ IF(MACOSX) ADD_DEFINITIONS(-DPLATFORM_MACOSX=1) - ADD_DEFINITIONS(-DLUA_USE_DYLD=1) + ADD_DEFINITIONS(-DLUA_USE_MACOSX=1) IF(CMAKE_OSX_ARCHITECTURES MATCHES ppc) ADD_DEFINITIONS(-DMAC_OS_X_VERSION_MIN_REQUIRED=1020) SET(OPTIONAL_LIBS ${OPTIONAL_LIBS} "-mmacosx-version-min=10.2") From DONOTREPLY at icculus.org Sat Mar 15 03:36:13 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 15 Mar 2008 03:36:13 -0400 Subject: r556 - trunk Message-ID: <20080315073613.29778.qmail@icculus.org> Author: icculus Date: 2008-03-15 03:36:12 -0400 (Sat, 15 Mar 2008) New Revision: 556 Modified: trunk/CMakeLists.txt Log: Apparently not having CMAKE_MINIMUM_REQUIRED in your CMakeLists.txt is an error with newer CMake builds. Modified: trunk/CMakeLists.txt =================================================================== --- trunk/CMakeLists.txt 2008-03-15 03:46:13 UTC (rev 555) +++ trunk/CMakeLists.txt 2008-03-15 07:36:12 UTC (rev 556) @@ -13,6 +13,7 @@ # Only choose options you want/need to squeeze every byte off the download. PROJECT(MojoSetup) +CMAKE_MINIMUM_REQUIRED(VERSION 2.4) EXECUTE_PROCESS( COMMAND "svnversion" From DONOTREPLY at icculus.org Sun Mar 16 15:40:24 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 16 Mar 2008 15:40:24 -0400 Subject: r557 - in trunk/lua-5.1.1: . doc etc src Message-ID: <20080316194024.23071.qmail@icculus.org> Author: icculus Date: 2008-03-16 15:40:23 -0400 (Sun, 16 Mar 2008) New Revision: 557 Added: trunk/lua-5.1.1/doc/amazon.gif trunk/lua-5.1.1/doc/cover.png trunk/lua-5.1.1/doc/manual.css Modified: trunk/lua-5.1.1/COPYRIGHT trunk/lua-5.1.1/HISTORY trunk/lua-5.1.1/INSTALL trunk/lua-5.1.1/Makefile trunk/lua-5.1.1/README trunk/lua-5.1.1/doc/contents.html trunk/lua-5.1.1/doc/lua.css trunk/lua-5.1.1/doc/manual.html trunk/lua-5.1.1/doc/readme.html trunk/lua-5.1.1/etc/README trunk/lua-5.1.1/etc/lua.pc trunk/lua-5.1.1/etc/luavs.bat trunk/lua-5.1.1/etc/min.c trunk/lua-5.1.1/etc/strict.lua trunk/lua-5.1.1/src/Makefile trunk/lua-5.1.1/src/lapi.c trunk/lua-5.1.1/src/lapi.h trunk/lua-5.1.1/src/lauxlib.c trunk/lua-5.1.1/src/lauxlib.h trunk/lua-5.1.1/src/lbaselib.c trunk/lua-5.1.1/src/lcode.c trunk/lua-5.1.1/src/lcode.h trunk/lua-5.1.1/src/ldblib.c trunk/lua-5.1.1/src/ldebug.c trunk/lua-5.1.1/src/ldebug.h trunk/lua-5.1.1/src/ldo.c trunk/lua-5.1.1/src/ldo.h trunk/lua-5.1.1/src/ldump.c trunk/lua-5.1.1/src/lfunc.c trunk/lua-5.1.1/src/lfunc.h trunk/lua-5.1.1/src/lgc.c trunk/lua-5.1.1/src/lgc.h trunk/lua-5.1.1/src/linit.c trunk/lua-5.1.1/src/liolib.c trunk/lua-5.1.1/src/llex.c trunk/lua-5.1.1/src/llex.h trunk/lua-5.1.1/src/llimits.h trunk/lua-5.1.1/src/lmathlib.c trunk/lua-5.1.1/src/lmem.c trunk/lua-5.1.1/src/lmem.h trunk/lua-5.1.1/src/loadlib.c trunk/lua-5.1.1/src/lobject.c trunk/lua-5.1.1/src/lobject.h trunk/lua-5.1.1/src/lopcodes.c trunk/lua-5.1.1/src/lopcodes.h trunk/lua-5.1.1/src/loslib.c trunk/lua-5.1.1/src/lparser.c trunk/lua-5.1.1/src/lparser.h trunk/lua-5.1.1/src/lstate.c trunk/lua-5.1.1/src/lstate.h trunk/lua-5.1.1/src/lstring.c trunk/lua-5.1.1/src/lstring.h trunk/lua-5.1.1/src/lstrlib.c trunk/lua-5.1.1/src/ltable.c trunk/lua-5.1.1/src/ltable.h trunk/lua-5.1.1/src/ltablib.c trunk/lua-5.1.1/src/ltm.c trunk/lua-5.1.1/src/ltm.h trunk/lua-5.1.1/src/lua.c trunk/lua-5.1.1/src/lua.h trunk/lua-5.1.1/src/luaconf.h trunk/lua-5.1.1/src/lualib.h trunk/lua-5.1.1/src/lundump.c trunk/lua-5.1.1/src/lundump.h trunk/lua-5.1.1/src/lvm.c trunk/lua-5.1.1/src/lvm.h trunk/lua-5.1.1/src/lzio.c trunk/lua-5.1.1/src/lzio.h trunk/lua-5.1.1/src/print.c Log: Updated Lua from 5.1.1 to 5.1.3. Modified: trunk/lua-5.1.1/COPYRIGHT =================================================================== --- trunk/lua-5.1.1/COPYRIGHT 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/COPYRIGHT 2008-03-16 19:40:23 UTC (rev 557) @@ -9,7 +9,7 @@ =============================================================================== -Copyright (C) 1994-2006 Lua.org, PUC-Rio. +Copyright (C) 1994-2008 Lua.org, PUC-Rio. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal Modified: trunk/lua-5.1.1/HISTORY =================================================================== --- trunk/lua-5.1.1/HISTORY 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/HISTORY 2008-03-16 19:40:23 UTC (rev 557) @@ -14,7 +14,7 @@ API: + new functions: lua_createtable, lua_get(set)field, lua_push(to)integer. + user supplies memory allocator (lua_open becomes lua_newstate). - + luaopen_* functionst must be called through Lua. + + luaopen_* functions must be called through Lua. Implementation: + new configuration scheme via luaconf.h. + incremental garbage collection. Modified: trunk/lua-5.1.1/INSTALL =================================================================== --- trunk/lua-5.1.1/INSTALL 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/INSTALL 2008-03-16 19:40:23 UTC (rev 557) @@ -8,8 +8,11 @@ Building Lua on Unix systems should be very easy. First do "make" and see if your platform is listed. If so, just do "make xxx", where xxx is your platform name. The platforms currently supported are: - ansi bsd generic linux macosx mingw posix solaris + aix ansi bsd freebsd generic linux macosx mingw posix solaris + If your platform is not listed, try the closest one or posix, generic, + ansi, in this order. + See below for customization instructions and for instructions on how to build with other Windows compilers. @@ -81,8 +84,8 @@ compiler: library, luac.c print.c - If you use Visual Studio .NET, you can use etc/luavs.bat - in its "Command Prompt". + If you use Visual Studio .NET, you can use etc/luavs.bat in its + "Command Prompt". If all you want is to build the Lua interpreter, you may put all .c files in a single project, except for luac.c and print.c. Or just use etc/all.c. Modified: trunk/lua-5.1.1/Makefile =================================================================== --- trunk/lua-5.1.1/Makefile 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/Makefile 2008-03-16 19:40:23 UTC (rev 557) @@ -9,7 +9,8 @@ # Where to install. The installation starts in the src directory, so take care # if INSTALL_TOP is not an absolute path. (Man pages are installed from the -# doc directory.) +# doc directory.) You may want to make these paths consistent with LUA_ROOT, +# LUA_LDIR, and LUA_CDIR in luaconf.h (and also with etc/lua.pc). # INSTALL_TOP= /usr/local INSTALL_BIN= $(INSTALL_TOP)/bin @@ -19,25 +20,20 @@ INSTALL_LMOD= $(INSTALL_TOP)/share/lua/$V INSTALL_CMOD= $(INSTALL_TOP)/lib/lua/$V -# How to install. You may prefer "install" instead of "cp" if you have it. -# To remove debug information from binaries, use "install -s" in INSTALL_EXEC. -# -INSTALL_EXEC= $(CP) -INSTALL_DATA= $(CP) -#INSTALL_EXEC= $(INSTALL) -m 0755 -#INSTALL_DATA= $(INSTALL) -m 0644 +# How to install. If you don't have "install" (unlikely) then get install-sh at +# http://dev.w3.org/cvsweb/libwww/config/install-sh +# or use cp instead. +INSTALL_EXEC= $(INSTALL) -p -m 0755 +INSTALL_DATA= $(INSTALL) -p -m 0644 # Utilities. -CP= cp -FIND= find INSTALL= install MKDIR= mkdir -RANLIB= ranlib # == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE ========= # Convenience platforms targets. -PLATS= aix ansi bsd generic linux macosx mingw posix solaris +PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris # What to install. TO_BIN= lua luac @@ -47,7 +43,7 @@ # Lua version and release. V= 5.1 -R= 5.1.1 +R= 5.1.3 all: $(PLAT) @@ -63,10 +59,9 @@ cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC) cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB) cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN) -# $(RANLIB) $(INSTALL_LIB)/$(TO_LIB) local: - $(MAKE) install INSTALL_TOP=.. INSTALL_EXEC="cp -p" INSTALL_DATA="cp -p" + $(MAKE) install INSTALL_TOP=.. none: @echo "Please do" @@ -119,11 +114,7 @@ @$(MAKE) echo | grep = | sed -e 's/= /= "/' -e 's/$$/"/' #-e 's/""/nil/' @echo "-- EOF" -# show what has changed since we unpacked -newer: - @$(FIND) . -newer MANIFEST -type f - # list targets that do not create files (but not all makes understand .PHONY) -.PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho newer +.PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho # (end of Makefile) Modified: trunk/lua-5.1.1/README =================================================================== --- trunk/lua-5.1.1/README 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/README 2008-03-16 19:40:23 UTC (rev 557) @@ -24,8 +24,8 @@ * Installation ------------ Lua is implemented in pure ANSI C, and compiles unmodified in all known - platforms that have an ANSI C compiler. Under Unix, simply typing "make" - should work. See INSTALL for detailed instructions. + platforms that have an ANSI C compiler. In most Unix-like platforms, simply + do "make" with a suitable target. See INSTALL for detailed instructions. * Origin ------ Added: trunk/lua-5.1.1/doc/amazon.gif =================================================================== (Binary files differ) Property changes on: trunk/lua-5.1.1/doc/amazon.gif ___________________________________________________________________ Name: svn:mime-type + image/gif Modified: trunk/lua-5.1.1/doc/contents.html =================================================================== --- trunk/lua-5.1.1/doc/contents.html 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/doc/contents.html 2008-03-16 19:40:23 UTC (rev 557) @@ -1,33 +1,71 @@ + -Lua 5.1 reference manual - contents +Lua 5.1 Reference Manual - contents - +

-Lua -Reference manual for Lua 5.1 + +Lua 5.1 Reference Manual

+This is an online version of +
+ + + +Lua 5.1 Reference Manual +
by R. Ierusalimschy, L. H. de Figueiredo, W. Celes +
Lua.org, August 2006 +
ISBN 85-903798-3-3 +
+[Buy from Amazon] +
+
+

+ +Buy a copy of this book and +help to support +the Lua project. +

+ +The reference manual is the official definition of the Lua language. +For a complete introduction to Lua programming, see the book +Programming in Lua. +

+ +startcontents · index +· +portugu?s +· +espa?ol


+ +Copyright © 2006-2008 Lua.org, PUC-Rio. +Freely available under the terms of the +Lua license. +

Contents

+

  • 3 - The Application Program Interface +

  • 4 - The Auxiliary Library +

  • 5 - Standard Libraries +

  • 6 - Lua Stand-alone +

  • 7 - Incompatibilities with the Previous Version +

  • 8 - The Complete Syntax of Lua -

    Index

    - +
    - - + -
    +

    Lua functions

    _G
    _VERSION
    @@ -144,16 +187,16 @@ type
    unpack
    xpcall
    +

    -

    -

     

    coroutine.create
    coroutine.resume
    coroutine.running
    coroutine.status
    coroutine.wrap
    coroutine.yield
    +

    + debug.debug
    debug.getfenv
    debug.gethook
    @@ -168,6 +211,10 @@ debug.setmetatable
    debug.setupvalue
    debug.traceback
    + +

    +

     

    file:close
    file:flush
    file:lines
    @@ -175,6 +222,8 @@ file:seek
    file:setvbuf
    file:write
    +

    + io.close
    io.flush
    io.input
    @@ -183,17 +232,22 @@ io.output
    io.popen
    io.read
    +io.stderr
    +io.stdin
    +io.stdout
    io.tmpfile
    io.type
    io.write
    +

    + math.abs
    math.acos
    math.asin
    +math.atan
    math.atan2
    -math.atan
    math.ceil
    +math.cos
    math.cosh
    -math.cos
    math.deg
    math.exp
    math.floor
    @@ -201,8 +255,8 @@ math.frexp
    math.huge
    math.ldexp
    +math.log
    math.log10
    -math.log
    math.max
    math.min
    math.modf
    @@ -211,11 +265,13 @@ math.rad
    math.random
    math.randomseed
    +math.sin
    math.sinh
    -math.sin
    math.sqrt
    +math.tan
    math.tanh
    -math.tan
    +

    + os.clock
    os.date
    os.difftime
    @@ -227,12 +283,17 @@ os.setlocale
    os.time
    os.tmpname
    +

    + package.cpath
    package.loaded
    +package.loaders
    package.loadlib
    package.path
    package.preload
    package.seeall
    +

    + string.byte
    string.char
    string.dump
    @@ -247,6 +308,8 @@ string.reverse
    string.sub
    string.upper
    +

    + table.concat
    table.insert
    table.maxn
    @@ -254,7 +317,7 @@ table.sort

    +

    C API

    lua_Alloc
    lua_CFunction
    @@ -265,6 +328,8 @@ lua_Reader
    lua_State
    lua_Writer
    +

    + lua_atpanic
    lua_call
    lua_checkstack
    @@ -296,6 +361,8 @@ lua_isfunction
    lua_islightuserdata
    lua_isnil
    +lua_isnone
    +lua_isnoneornil
    lua_isnumber
    lua_isstring
    lua_istable
    @@ -317,6 +384,7 @@ lua_pushfstring
    lua_pushinteger
    lua_pushlightuserdata
    +lua_pushliteral
    lua_pushlstring
    lua_pushnil
    lua_pushnumber
    @@ -364,6 +432,8 @@

    auxiliary library

    luaL_Buffer
    luaL_Reg
    +

    + luaL_addchar
    luaL_addlstring
    luaL_addsize
    @@ -419,10 +489,10 @@


    Last update: -Tue Jun 6 14:55:31 BRT 2006 +Sat Jan 19 13:24:29 BRST 2008 Added: trunk/lua-5.1.1/doc/cover.png =================================================================== (Binary files differ) Property changes on: trunk/lua-5.1.1/doc/cover.png ___________________________________________________________________ Name: svn:mime-type + image/png Modified: trunk/lua-5.1.1/doc/lua.css =================================================================== --- trunk/lua-5.1.1/doc/lua.css 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/doc/lua.css 2008-03-16 19:40:23 UTC (rev 557) @@ -2,16 +2,24 @@ color: #000000 ; background-color: #FFFFFF ; font-family: sans-serif ; + text-align: justify ; + margin-right: 20px ; + margin-left: 20px ; } +h1, h2, h3, h4 { + font-weight: normal ; + font-style: italic ; +} + a:link { color: #000080 ; - background-color: #FFFFFF ; + background-color: inherit ; text-decoration: none ; } a:visited { - background-color: #FFFFFF ; + background-color: inherit ; text-decoration: none ; } @@ -20,3 +28,14 @@ background-color: #E0E0FF ; } +a:link:active, a:visited:active { + color: #FF0000 ; +} + +hr { + border: 0 ; + height: 1px ; + color: #a0a0a0 ; + background-color: #a0a0a0 ; +} + Added: trunk/lua-5.1.1/doc/manual.css =================================================================== --- trunk/lua-5.1.1/doc/manual.css (rev 0) +++ trunk/lua-5.1.1/doc/manual.css 2008-03-16 19:40:23 UTC (rev 557) @@ -0,0 +1,13 @@ +h3 code { + font-family: inherit ; +} + +pre { + font-size: 105% ; +} + +span.apii { + float: right ; + font-family: inherit ; +} + Property changes on: trunk/lua-5.1.1/doc/manual.css ___________________________________________________________________ Name: svn:eol-style + native Modified: trunk/lua-5.1.1/doc/manual.html =================================================================== --- trunk/lua-5.1.1/doc/manual.html 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/doc/manual.html 2008-03-16 19:40:23 UTC (rev 557) @@ -1,9 +1,11 @@ - + Lua 5.1 Reference Manual + + @@ -17,14 +19,21 @@ by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes

    -Copyright -© 2006 Lua.org, PUC-Rio. All rights reserved. +Copyright © 2006-2008 Lua.org, PUC-Rio. +Freely available under the terms of the +Lua license.


    +

    +contents +· +index +

    + @@ -71,7 +80,7 @@ For a discussion of the decisions behind the design of Lua, see the technical papers available at Lua's web site. For a detailed introduction to programming in Lua, -see Roberto's book, Programming in Lua. +see Roberto's book, Programming in Lua (Second Edition). @@ -171,6 +180,7 @@

    To put a double (single) quote, a newline, a backslash, +a carriage return, or an embedded zero inside a literal string enclosed by double (single) quotes you must use an escape sequence. @@ -390,8 +400,8 @@

    -Variables are assumed to be global unless explicitly declared local -(see §2.4.7). +Any variable is assumed to be global unless explicitly declared +as a local (see §2.4.7). Local variables are lexically scoped: local variables can be freely accessed by functions defined inside their scope (see §2.6). @@ -547,9 +557,9 @@ The elements in both lists are separated by commas:

    -	stat ::= varlist1 `=´ explist1
    -	varlist1 ::= var {`,´ var}
    -	explist1 ::= exp {`,´ exp}
    +	stat ::= varlist `=´ explist
    +	varlist ::= var {`,´ var}
    +	explist ::= exp {`,´ exp}
     

    Expressions are discussed in §2.5. @@ -656,7 +666,7 @@ so the syntax for the return statement is

    -	stat ::= return [explist1]
    +	stat ::= return [explist]
     

    @@ -708,18 +718,18 @@ More precisely, a for statement like

    -     for var = e1, e2, e3 do block end
    +     for v = e1, e2, e3 do block end
     

    is equivalent to the code:

          do
    -       local _var, _limit, _step = tonumber(e1), tonumber(e2), tonumber(e3)
    -       if not (_var and _limit and _step) then error() end
    -       while (_step>0 and _var<=_limit) or (_step<=0 and _var>=_limit) do
    -         local var = _var
    +       local var, limit, step = tonumber(e1), tonumber(e2), tonumber(e3)
    +       if not (var and limit and step) then error() end
    +       while (step > 0 and var <= limit) or (step <= 0 and var >= limit) do
    +         local v = var
              block
    -         _var = _var + _step
    +         var = var + step
            end
          end
     

    @@ -734,7 +744,7 @@

  • -_var, _limit, and _step are invisible variables. +var, limit, and step are invisible variables. The names are here for explanatory purposes only.
  • @@ -748,10 +758,10 @@
  • -The loop variable var is local to the loop; +The loop variable v is local to the loop; you cannot use its value after the for ends or is broken. -If you need the value of the loop variable var, -then assign it to another variable before breaking or exiting the loop. +If you need this value, +assign it to another variable before breaking or exiting the loop.
  • @@ -764,24 +774,24 @@ The generic for loop has the following syntax:
    -	stat ::= for namelist in explist1 do block end
    +	stat ::= for namelist in explist do block end
     	namelist ::= Name {`,´ Name}
     

    A for statement like

    -     for var_1, ···, var_n in explist do block end
    +     for var_1, ···, var_n in explist do block end
     

    is equivalent to the code:

          do
    -       local _f, _s, _var = explist
    +       local f, s, var = explist
            while true do
    -         local var_1, ···, var_n = _f(_s, _var)
    -         _var = var_1
    -         if _var == nil then break end
    -         block
    +         local var_1, ···, var_n = f(s, var)
    +         var = var_1
    +         if var == nil then break end
    +         block
            end
          end
     

    @@ -790,13 +800,14 @@

    • -explist is evaluated only once. +explist is evaluated only once. Its results are an iterator function, -a state, and an initial value for the first iterator variable. +a state, +and an initial value for the first iterator variable.
    • -_f, _s, and _var are invisible variables. +f, s, and var are invisible variables. The names are here for explanatory purposes only.
    • @@ -805,7 +816,7 @@
    • -The loop variables var_i are local to the loop; +The loop variables var_i are local to the loop; you cannot use their values after the for ends. If you need these values, then assign them to other variables before breaking or exiting the loop. @@ -835,7 +846,7 @@ The declaration may include an initial assignment:
      -	stat ::= local namelist [`=´ explist1]
      +	stat ::= local namelist [`=´ explist]
       

      If present, an initial assignment has the same semantics of a multiple assignment (see §2.4.3). @@ -882,8 +893,8 @@ function calls are explained in §2.5.8; table constructors are explained in §2.5.7. Vararg expressions, -denoted by three dots ('...'), can only be used inside -vararg functions; +denoted by three dots ('...'), can only be used when +directly inside a vararg function; they are explained in §2.5.9. @@ -902,13 +913,13 @@ (only possible for function calls), then its return list is adjusted to zero elements, thus discarding all returned values. -If the expression is used inside another expression -or in the middle of a list of expressions, -then its result list is adjusted to one element, -thus discarding all values except the first one. -If the expression is used as the last element of a list of expressions, -then no adjustment is made, -unless the call is enclosed in parentheses. +If the expression is used as the last (or the only) element +of a list of expressions, +then no adjustment is made +(unless the call is enclosed in parentheses). +In all other contexts, +Lua adjusts the result list to one element, +discarding all values except the first one.

      @@ -917,17 +928,18 @@

            f()                -- adjusted to 0 results
            g(f(), x)          -- f() is adjusted to 1 result
      -     g(x, f())          -- g gets x plus all values returned by f()
      +     g(x, f())          -- g gets x plus all results from f()
            a,b,c = f(), x     -- f() is adjusted to 1 result (c gets nil)
            a,b = ...          -- a gets the first vararg parameter, b gets
      -                        -- the second (both a and b may get nil if there is
      -                        -- no corresponding vararg parameter)
      +                        -- the second (both a and b may get nil if there
      +                        -- is no corresponding vararg parameter)
      +     
            a,b,c = x, f()     -- f() is adjusted to 2 results
            a,b,c = f()        -- f() is adjusted to 3 results
      -     return f()         -- returns all values returned by f()
      +     return f()         -- returns all results from f()
            return ...         -- returns all received vararg parameters
      -     return x,y,f()     -- returns x, y, and all values returned by f()
      -     {f()}              -- creates a list with all values returned by f()
      +     return x,y,f()     -- returns x, y, and all results from f()
      +     {f()}              -- creates a list with all results from f()
            {...}              -- creates a list with all vararg parameters
            {f(), nil}         -- f() is adjusted to 1 result
       
      @@ -1212,7 +1224,7 @@ Arguments have the following syntax:
      -	args ::= `(´ [explist1] `)´
      +	args ::= `(´ [explist] `)´
       	args ::= tableconstructor
       	args ::= String
       

      @@ -1277,7 +1289,7 @@

       	function ::= function funcbody
      -	funcbody ::= `(´ [parlist1] `)´ block end
      +	funcbody ::= `(´ [parlist] `)´ block end
       

      @@ -1346,7 +1358,7 @@ initialized with the argument values:

      -	parlist1 ::= namelist [`,´ `...´] | `...´
      +	parlist ::= namelist [`,´ `...´] | `...´
       

      When a function is called, the list of arguments is adjusted to @@ -1542,12 +1554,11 @@

      -Tables and userdata have individual metatables -(although multiple tables and userdata can share -a same table as their metatable); +Tables and full userdata have individual metatables +(although multiple tables and userdata can share their metatables); values of all other types share one single metatable per type. So, there is one single metatable for all numbers, -and for all strings, etc. +one for all strings, etc.

      @@ -1592,6 +1603,7 @@

            rawget(getmetatable(obj) or {}, event)
       

      + That is, the access to a metamethod does not invoke other metamethods, and the access to objects with no metatables does not fail (it simply results in nil). @@ -1629,7 +1641,7 @@ local h = getbinhandler(op1, op2, "__add") if h then -- call the handler with both operands - return h(op1, op2) + return (h(op1, op2)) else -- no handler available: default behavior error(···) end @@ -1686,7 +1698,7 @@ local h = metatable(op).__unm if h then -- call the handler with the operand - return h(op) + return (h(op)) else -- no handler available: default behavior error(···) end @@ -1707,7 +1719,7 @@ else local h = getbinhandler(op1, op2, "__concat") if h then - return h(op1, op2) + return (h(op1, op2)) else error(···) end @@ -1730,7 +1742,7 @@ local h = metatable(op).__len if h then -- call the handler with the operand - return h(op) + return (h(op)) else -- no handler available: default behavior error(···) end @@ -1770,7 +1782,7 @@ -- try metamethod local h = getcomphandler(op1, op2, "__eq") if h then - return h(op1, op2) + return (h(op1, op2)) else return false end @@ -1792,7 +1804,7 @@ else local h = getcomphandler(op1, op2, "__lt") if h then - return h(op1, op2) + return (h(op1, op2)) else error(···); end @@ -1815,7 +1827,7 @@ else local h = getcomphandler(op1, op2, "__le") if h then - return h(op1, op2) + return (h(op1, op2)) else h = getcomphandler(op1, op2, "__lt") if h then @@ -1852,8 +1864,8 @@ end end if type(h) == "function" then - return h(table, key) -- call the handler - else return h[key] -- or repeat operation on it + return (h(table, key)) -- call the handler + else return h[key] -- or repeat operation on it end end

      @@ -1878,7 +1890,7 @@ end end if type(h) == "function" then - return h(table, key,value) -- call the handler + h(table, key,value) -- call the handler else h[key] = value -- or repeat operation on it end end @@ -2053,6 +2065,7 @@ among those collected in that cycle. That is, the first finalizer to be called is the one associated with the userdata created last in the program. +The userdata itself is freed only in the next garbage-collection cycle. @@ -2077,7 +2090,7 @@ both keys and values. In any case, if either the key or the value is collected, the whole pair is removed from the table. -The weakness of a table is controlled by the value of the +The weakness of a table is controlled by the __mode field of its metatable. If the __mode field is a string containing the character 'k', the keys in the table are weak. @@ -2156,8 +2169,8 @@

      -The coroutine.wrap function creates a coroutine, -just like coroutine.create, +Like coroutine.create, +the coroutine.wrap function also creates a coroutine, but instead of returning the coroutine itself, it returns a function that, when called, resumes the coroutine. Any arguments passed to this function @@ -2198,6 +2211,7 @@

            co-body 1       10
            foo     2
      +     
            main    true    4
            co-body r
            main    true    11      -9
      @@ -2268,7 +2282,7 @@
       and
       index n represents the last element;
       index -1 also represents the last element
      -(that is, the element at the top)
      +(that is, the element at the top)
       and index -n represents the first element.
       We say that an index is valid
       if it lies between 1 and the stack top
      @@ -2417,17 +2431,14 @@
       
       
       

      -Almost any function in the API may raise an error, +Most functions in the API may throw an error, for instance due to a memory allocation error. -The following functions run in protected mode -(that is, they create a protected environment to run), -so they never raise an error: -lua_newstate, lua_close, lua_load, -lua_pcall, and lua_cpcall. +The documentation for each function indicates whether +it can throw errors.

      -Inside a C function you can raise an error by calling lua_error. +Inside a C function you can throw an error by calling lua_error. @@ -2438,9 +2449,33 @@

      Here we list all functions and types from the C API in alphabetical order. +Each function has an indicator like this: +[-o, +p, x] +

      +The first field, o, +is how many elements the function pops from the stack. +The second field, p, +is how many elements the function pushes onto the stack. +(Any function always pushes its results after popping its arguments.) +A field in the form x|y means the function may push (or pop) +x or y elements, +depending on the situation; +an interrogation mark '?' means that +we cannot know how many elements the function pops/pushes +by looking only at its arguments +(e.g., they may depend on what is on the stack). +The third field, x, +tells whether the function may throw errors: +'-' means the function never throws any error; +'m' means the function may throw an error +only due to not enough memory; +'e' means the function may throw other kinds of errors; +'v' means the function may throw an error on purpose. + +


      lua_Alloc

      typedef void * (*lua_Alloc) (void *ud,
                                    void *ptr,
      @@ -2473,26 +2508,31 @@
       
       

      Here is a simple implementation for the allocator function. -It is used in the auxiliary library by lua_newstate. +It is used in the auxiliary library by luaL_newstate.

      -     static void *l_alloc (void *ud, void *ptr, size_t osize, size_t nsize) {
      -       (void)ud;     /* not used */
      -       (void)osize;  /* not used */
      +     static void *l_alloc (void *ud, void *ptr, size_t osize,
      +                                                size_t nsize) {
      +       (void)ud;  (void)osize;  /* not used */
              if (nsize == 0) {
      -         free(ptr);  /* ANSI requires that free(NULL) has no effect */
      +         free(ptr);
                return NULL;
              }
              else
      -         /* ANSI requires that realloc(NULL, size) == malloc(size) */
                return realloc(ptr, nsize);
            }
      -
      +

      +This code assumes +that free(NULL) has no effect and that +realloc(NULL, size) is equivalent to malloc(size). +ANSI C ensures both behaviors. -


      lua_atpanic

      + +

      lua_atpanic

      +[-0, +0, -]

      lua_CFunction lua_atpanic (lua_State *L, lua_CFunction panicf);

      @@ -2515,7 +2555,8 @@ -


      lua_call

      +

      lua_call

      +[-(nargs + 1), +nresults, e]

      void lua_call (lua_State *L, int nargs, int nresults);

      @@ -2557,14 +2598,14 @@ Here it is in C:

      -     lua_getfield(L, LUA_GLOBALSINDEX, "f");          /* function to be called */
      -     lua_pushstring(L, "how");                                 /* 1st argument */
      -     lua_getfield(L, LUA_GLOBALSINDEX, "t");            /* table to be indexed */
      -     lua_getfield(L, -1, "x");                 /* push result of t.x (2nd arg) */
      -     lua_remove(L, -2);                           /* remove 't' from the stack */
      -     lua_pushinteger(L, 14);                                   /* 3rd argument */
      -     lua_call(L, 3, 1);         /* call function with 3 arguments and 1 result */
      -     lua_setfield(L, LUA_GLOBALSINDEX, "a");        /* set global variable 'a' */
      +     lua_getfield(L, LUA_GLOBALSINDEX, "f"); /* function to be called */
      +     lua_pushstring(L, "how");                        /* 1st argument */
      +     lua_getfield(L, LUA_GLOBALSINDEX, "t");   /* table to be indexed */
      +     lua_getfield(L, -1, "x");        /* push result of t.x (2nd arg) */
      +     lua_remove(L, -2);                  /* remove 't' from the stack */
      +     lua_pushinteger(L, 14);                          /* 3rd argument */
      +     lua_call(L, 3, 1);     /* call 'f' with 3 arguments and 1 result */
      +     lua_setfield(L, LUA_GLOBALSINDEX, "a");        /* set global 'a' */
       

      Note that the code above is "balanced": at its end, the stack is back to its original configuration. @@ -2611,7 +2652,7 @@ int i; for (i = 1; i <= n; i++) { if (!lua_isnumber(L, i)) { - lua_pushstring(L, "incorrect argument to function 'average'"); + lua_pushstring(L, "incorrect argument"); lua_error(L); } sum += lua_tonumber(L, i); @@ -2625,7 +2666,8 @@ -


      lua_checkstack

      +

      lua_checkstack

      +[-0, +0, m]

      int lua_checkstack (lua_State *L, int extra);

      @@ -2639,7 +2681,8 @@ -


      lua_close

      +

      lua_close

      +[-0, +0, -]

      void lua_close (lua_State *L);

      @@ -2657,23 +2700,25 @@ -


      lua_concat

      +

      lua_concat

      +[-n, +1, e]

      void lua_concat (lua_State *L, int n);

      Concatenates the n values at the top of the stack, pops them, and leaves the result at the top. -If n is 1, the result is the single string on the stack +If n is 1, the result is the single value on the stack (that is, the function does nothing); if n is 0, the result is the empty string. -Concatenation is done following the usual semantics of Lua +Concatenation is performed following the usual semantics of Lua (see §2.5.4). -


      lua_cpcall

      +

      lua_cpcall

      +[-0, +(0|1), -]

      int lua_cpcall (lua_State *L, lua_CFunction func, void *ud);

      @@ -2690,7 +2735,8 @@ -


      lua_createtable

      +

      lua_createtable

      +[-0, +1, m]

      void lua_createtable (lua_State *L, int narr, int nrec);

      @@ -2705,7 +2751,8 @@ -


      lua_dump

      +

      lua_dump

      +[-0, +0, m]

      int lua_dump (lua_State *L, lua_Writer writer, void *data);

      @@ -2723,7 +2770,7 @@

      The value returned is the error code returned by the last call to the writer; -0 means no errors. +0 means no errors.

      @@ -2733,7 +2780,8 @@ -


      lua_equal

      +

      lua_equal

      +[-0, +0, e]

      int lua_equal (lua_State *L, int index1, int index2);

      @@ -2748,7 +2796,8 @@ -


      lua_error

      +

      lua_error

      +[-1, +0, v]

      int lua_error (lua_State *L);

      @@ -2763,7 +2812,8 @@ -


      lua_gc

      +

      lua_gc

      +[-0, +0, e]

      int lua_gc (lua_State *L, int what, int data);

      @@ -2814,7 +2864,7 @@

    • LUA_GCSETSTEPMUL: -sets arg/100 as the new value for the step multiplier of +sets data/100 as the new value for the step multiplier of the collector (see §2.10). The function returns the previous value of the step multiplier.
    • @@ -2824,7 +2874,8 @@ -

      lua_getallocf

      +

      lua_getallocf

      +[-0, +0, -]

      lua_Alloc lua_getallocf (lua_State *L, void **ud);

      @@ -2836,7 +2887,8 @@ -


      lua_getfenv

      +

      lua_getfenv

      +[-0, +1, -]

      void lua_getfenv (lua_State *L, int index);

      @@ -2847,12 +2899,13 @@ -


      lua_getfield

      +

      lua_getfield

      +[-0, +1, e]

      void lua_getfield (lua_State *L, int index, const char *k);

      Pushes onto the stack the value t[k], -where t is the value at the given valid index index. +where t is the value at the given valid index. As in Lua, this function may trigger a metamethod for the "index" event (see §2.8). @@ -2860,7 +2913,8 @@ -


      lua_getglobal

      +

      lua_getglobal

      +[-0, +1, e]

      void lua_getglobal (lua_State *L, const char *name);

      @@ -2874,7 +2928,8 @@ -


      lua_getmetatable

      +

      lua_getmetatable

      +[-0, +(0|1), -]

      int lua_getmetatable (lua_State *L, int index);

      @@ -2888,12 +2943,13 @@ -


      lua_gettable

      +

      lua_gettable

      +[-1, +1, e]

      void lua_gettable (lua_State *L, int index);

      Pushes onto the stack the value t[k], -where t is the value at the given valid index index +where t is the value at the given valid index and k is the value at the top of the stack. @@ -2907,7 +2963,8 @@ -


      lua_gettop

      +

      lua_gettop

      +[-0, +0, -]

      int lua_gettop (lua_State *L);

      @@ -2920,7 +2977,8 @@ -


      lua_insert

      +

      lua_insert

      +[-1, +1, -]

      void lua_insert (lua_State *L, int index);

      @@ -2942,126 +3000,164 @@

      By default it is a ptrdiff_t, -which is usually the largest integral type the machine handles +which is usually the largest signed integral type the machine handles "comfortably". -


      lua_isboolean

      +

      lua_isboolean

      +[-0, +0, -]

      int lua_isboolean (lua_State *L, int index);

      Returns 1 if the value at the given acceptable index has type boolean, -and 0 otherwise. +and 0 otherwise. -


      lua_iscfunction

      +

      lua_iscfunction

      +[-0, +0, -]

      int lua_iscfunction (lua_State *L, int index);

      Returns 1 if the value at the given acceptable index is a C function, -and 0 otherwise. +and 0 otherwise. -


      lua_isfunction

      +

      lua_isfunction

      +[-0, +0, -]

      int lua_isfunction (lua_State *L, int index);

      Returns 1 if the value at the given acceptable index is a function -(either C or Lua), and 0 otherwise. +(either C or Lua), and 0 otherwise. -


      lua_islightuserdata

      +

      lua_islightuserdata

      +[-0, +0, -]

      int lua_islightuserdata (lua_State *L, int index);

      Returns 1 if the value at the given acceptable index is a light userdata, -and 0 otherwise. +and 0 otherwise. -


      lua_isnil

      +

      lua_isnil

      +[-0, +0, -]

      int lua_isnil (lua_State *L, int index);

      Returns 1 if the value at the given acceptable index is nil, -and 0 otherwise. +and 0 otherwise. -


      lua_isnumber

      +

      lua_isnone

      +[-0, +0, -] +

      int lua_isnone (lua_State *L, int index);
      + +

      +Returns 1 if the given acceptable index is not valid +(that is, it refers to an element outside the current stack), +and 0 otherwise. + + + + + +


      lua_isnoneornil

      +[-0, +0, -] +

      int lua_isnoneornil (lua_State *L, int index);
      + +

      +Returns 1 if the given acceptable index is not valid +(that is, it refers to an element outside the current stack) +or if the value at this index is nil, +and 0 otherwise. + + + + + +


      lua_isnumber

      +[-0, +0, -]

      int lua_isnumber (lua_State *L, int index);

      Returns 1 if the value at the given acceptable index is a number or a string convertible to a number, -and 0 otherwise. +and 0 otherwise. -


      lua_isstring

      +

      lua_isstring

      +[-0, +0, -]

      int lua_isstring (lua_State *L, int index);

      Returns 1 if the value at the given acceptable index is a string or a number (which is always convertible to a string), -and 0 otherwise. +and 0 otherwise. -


      lua_istable

      +

      lua_istable

      +[-0, +0, -]

      int lua_istable (lua_State *L, int index);

      Returns 1 if the value at the given acceptable index is a table, -and 0 otherwise. +and 0 otherwise. -


      lua_isthread

      +

      lua_isthread

      +[-0, +0, -]

      int lua_isthread (lua_State *L, int index);

      Returns 1 if the value at the given acceptable index is a thread, -and 0 otherwise. +and 0 otherwise. -


      lua_isuserdata

      +

      lua_isuserdata

      +[-0, +0, -]

      int lua_isuserdata (lua_State *L, int index);

      Returns 1 if the value at the given acceptable index is a userdata -(either full or light), and 0 otherwise. +(either full or light), and 0 otherwise. -


      lua_lessthan

      +

      lua_lessthan

      +[-0, +0, e]

      int lua_lessthan (lua_State *L, int index1, int index2);

      @@ -3076,7 +3172,8 @@ -


      lua_load

      +

      lua_load

      +[-0, +1, -]

      int lua_load (lua_State *L,
                     lua_Reader reader,
                     void *data,
      @@ -3113,8 +3210,8 @@
       
       
       

      -lua_load uses a user-supplied reader function to read the chunk -(see lua_Reader). +The lua_load function uses a user-supplied reader function +to read the chunk (see lua_Reader). The data argument is an opaque value passed to the reader function. @@ -3126,7 +3223,8 @@ -


      lua_newstate

      +

      lua_newstate

      +[-0, +0, -]

      lua_State *lua_newstate (lua_Alloc f, void *ud);

      @@ -3142,7 +3240,8 @@ -


      lua_newtable

      +

      lua_newtable

      +[-0, +1, m]

      void lua_newtable (lua_State *L);

      @@ -3153,7 +3252,8 @@ -


      lua_newthread

      +

      lua_newthread

      +[-0, +1, m]

      lua_State *lua_newthread (lua_State *L);

      @@ -3173,7 +3273,8 @@ -


      lua_newuserdata

      +

      lua_newuserdata

      +[-0, +1, m]

      void *lua_newuserdata (lua_State *L, size_t size);

      @@ -3183,7 +3284,7 @@

      -Userdata represents C values in Lua. +Userdata represent C values in Lua. A full userdata represents a block of memory. It is an object (like a table): you must create it, it can have its own metatable, @@ -3201,7 +3302,8 @@ -


      lua_next

      +

      lua_next

      +[-1, +(2|0), e]

      int lua_next (lua_State *L, int index);

      @@ -3219,10 +3321,12 @@ /* table is in the stack at index 't' */ lua_pushnil(L); /* first key */ while (lua_next(L, t) != 0) { - /* 'key' is at index -2 and 'value' at index -1 */ + /* uses 'key' (at index -2) and 'value' (at index -1) */ printf("%s - %s\n", - lua_typename(L, lua_type(L, -2)), lua_typename(L, lua_type(L, -1))); - lua_pop(L, 1); /* removes 'value'; keeps 'key' for next iteration */ + lua_typename(L, lua_type(L, -2)), + lua_typename(L, lua_type(L, -1))); + /* removes 'value'; keeps 'key' for next iteration */ + lua_pop(L, 1); }

      @@ -3254,7 +3358,8 @@ -

      lua_objlen

      +

      lua_objlen

      +[-0, +0, -]

      size_t lua_objlen (lua_State *L, int index);

      @@ -3269,8 +3374,9 @@ -


      lua_pcall

      -
      lua_pcall (lua_State *L, int nargs, int nresults, int errfunc);
      +

      lua_pcall

      +[-(nargs + 1), +(nresults|1), -] +

      int lua_pcall (lua_State *L, int nargs, int nresults, int errfunc);

      Calls a function in protected mode. @@ -3334,7 +3440,8 @@ -


      lua_pop

      +

      lua_pop

      +[-n, +0, -]

      void lua_pop (lua_State *L, int n);

      @@ -3344,7 +3451,8 @@ -


      lua_pushboolean

      +

      lua_pushboolean

      +[-0, +1, -]

      void lua_pushboolean (lua_State *L, int b);

      @@ -3354,7 +3462,8 @@ -


      lua_pushcclosure

      +

      lua_pushcclosure

      +[-n, +1, m]

      void lua_pushcclosure (lua_State *L, lua_CFunction fn, int n);

      @@ -3379,7 +3488,8 @@ -


      lua_pushcfunction

      +

      lua_pushcfunction

      +[-0, +1, m]

      void lua_pushcfunction (lua_State *L, lua_CFunction f);

      @@ -3396,14 +3506,17 @@

      -The call lua_pushcfunction(L, f) is equivalent to -lua_pushcclosure(L, f, 0). +lua_pushcfunction is defined as a macro: +

      +     #define lua_pushcfunction(L,f)  lua_pushcclosure(L,f,0)
      +
      -

      lua_pushfstring

      +

      lua_pushfstring

      +[-0, +1, m]

      const char *lua_pushfstring (lua_State *L, const char *fmt, ...);

      @@ -3437,7 +3550,8 @@ -


      lua_pushinteger

      +

      lua_pushinteger

      +[-0, +1, -]

      void lua_pushinteger (lua_State *L, lua_Integer n);

      @@ -3447,7 +3561,8 @@ -


      lua_pushlightuserdata

      +

      lua_pushlightuserdata

      +[-0, +1, -]

      void lua_pushlightuserdata (lua_State *L, void *p);

      @@ -3455,7 +3570,7 @@

      -Userdata represents C values in Lua. +Userdata represent C values in Lua. A light userdata represents a pointer. It is a value (like a number): you do not create it, it has no individual metatable, @@ -3467,7 +3582,21 @@ -


      lua_pushlstring

      +

      lua_pushliteral

      +[-0, +1, m] +

      void lua_pushliteral (lua_State *L, const char *s);
      + +

      +This macro is equivalent to lua_pushlstring, +but can be used only when s is a literal string. +In these cases, it automatically provides the string length. + + + + + +


      lua_pushlstring

      +[-0, +1, m]

      void lua_pushlstring (lua_State *L, const char *s, size_t len);

      @@ -3482,7 +3611,8 @@ -


      lua_pushnil

      +

      lua_pushnil

      +[-0, +1, -]

      void lua_pushnil (lua_State *L);

      @@ -3492,7 +3622,8 @@ -


      lua_pushnumber

      +

      lua_pushnumber

      +[-0, +1, -]

      void lua_pushnumber (lua_State *L, lua_Number n);

      @@ -3502,7 +3633,8 @@ -


      lua_pushstring

      +

      lua_pushstring

      +[-0, +1, m]

      void lua_pushstring (lua_State *L, const char *s);

      @@ -3518,7 +3650,8 @@ -


      lua_pushthread

      +

      lua_pushthread

      +[-0, +1, -]

      int lua_pushthread (lua_State *L);

      @@ -3529,7 +3662,8 @@ -


      lua_pushvalue

      +

      lua_pushvalue

      +[-0, +1, -]

      void lua_pushvalue (lua_State *L, int index);

      @@ -3540,7 +3674,8 @@ -


      lua_pushvfstring

      +

      lua_pushvfstring

      +[-0, +1, m]

      const char *lua_pushvfstring (lua_State *L,
                                     const char *fmt,
                                     va_list argp);
      @@ -3553,7 +3688,8 @@ -

      lua_rawequal

      +

      lua_rawequal

      +[-0, +0, -]

      int lua_rawequal (lua_State *L, int index1, int index2);

      @@ -3567,7 +3703,8 @@ -


      lua_rawget

      +

      lua_rawget

      +[-1, +1, -]

      void lua_rawget (lua_State *L, int index);

      @@ -3578,12 +3715,13 @@ -


      lua_rawgeti

      +

      lua_rawgeti

      +[-0, +1, -]

      void lua_rawgeti (lua_State *L, int index, int n);

      Pushes onto the stack the value t[n], -where t is the value at the given valid index index. +where t is the value at the given valid index. The access is raw; that is, it does not invoke metamethods. @@ -3591,7 +3729,8 @@ -


      lua_rawset

      +

      lua_rawset

      +[-2, +0, m]

      void lua_rawset (lua_State *L, int index);

      @@ -3602,13 +3741,14 @@ -


      lua_rawseti

      +

      lua_rawseti

      +[-1, +0, m]

      void lua_rawseti (lua_State *L, int index, int n);

      Does the equivalent of t[n] = v, -where t is the value at the given valid index index -and v is the value at the top of the stack, +where t is the value at the given valid index +and v is the value at the top of the stack.

      @@ -3641,21 +3781,26 @@ -


      lua_register

      -
      void lua_register (lua_State *L, const char *name, lua_CFunction f);
      +

      lua_register

      +[-0, +0, e] +

      void lua_register (lua_State *L,
      +                   const char *name,
      +                   lua_CFunction f);

      Sets the C function f as the new value of global name. It is defined as a macro:

      -     #define lua_register(L,n,f)  (lua_pushcfunction(L, f), lua_setglobal(L, n))
      +     #define lua_register(L,n,f) \
      +            (lua_pushcfunction(L, f), lua_setglobal(L, n))
       
      -

      lua_remove

      +

      lua_remove

      +[-1, +0, -]

      void lua_remove (lua_State *L, int index);

      @@ -3668,7 +3813,8 @@ -


      lua_replace

      +

      lua_replace

      +[-1, +0, -]

      void lua_replace (lua_State *L, int index);

      @@ -3680,7 +3826,8 @@ -


      lua_resume

      +

      lua_resume

      +[-?, +?, -]

      int lua_resume (lua_State *L, int narg);

      @@ -3713,7 +3860,8 @@ -


      lua_setallocf

      +

      lua_setallocf

      +[-0, +0, -]

      void lua_setallocf (lua_State *L, lua_Alloc f, void *ud);

      @@ -3724,7 +3872,8 @@ -


      lua_setfenv

      +

      lua_setfenv

      +[-1, +0, -]

      int lua_setfenv (lua_State *L, int index);

      @@ -3739,13 +3888,14 @@ -


      lua_setfield

      +

      lua_setfield

      +[-1, +0, e]

      void lua_setfield (lua_State *L, int index, const char *k);

      Does the equivalent to t[k] = v, -where t is the value at the given valid index index -and v is the value at the top of the stack, +where t is the value at the given valid index +and v is the value at the top of the stack.

      @@ -3757,7 +3907,8 @@ -


      lua_setglobal

      +

      lua_setglobal

      +[-1, +0, e]

      void lua_setglobal (lua_State *L, const char *name);

      @@ -3772,7 +3923,8 @@ -


      lua_setmetatable

      +

      lua_setmetatable

      +[-1, +0, -]

      int lua_setmetatable (lua_State *L, int index);

      @@ -3784,12 +3936,13 @@ -


      lua_settable

      +

      lua_settable

      +[-2, +0, e]

      void lua_settable (lua_State *L, int index);

      Does the equivalent to t[k] = v, -where t is the value at the given valid index index, +where t is the value at the given valid index, v is the value at the top of the stack, and k is the value just below the top. @@ -3803,7 +3956,8 @@ -


      lua_settop

      +

      lua_settop

      +[-?, +?, -]

      void lua_settop (lua_State *L, int index);

      @@ -3836,7 +3990,8 @@ -


      lua_status

      +

      lua_status

      +[-0, +0, -]

      int lua_status (lua_State *L);

      @@ -3852,7 +4007,8 @@ -


      lua_toboolean

      +

      lua_toboolean

      +[-0, +0, -]

      int lua_toboolean (lua_State *L, int index);

      @@ -3870,7 +4026,8 @@ -


      lua_tocfunction

      +

      lua_tocfunction

      +[-0, +0, -]

      lua_CFunction lua_tocfunction (lua_State *L, int index);

      @@ -3882,8 +4039,9 @@ -


      lua_tointeger

      -
      lua_Integer lua_tointeger (lua_State *L, int idx);
      +

      lua_tointeger

      +[-0, +0, -] +

      lua_Integer lua_tointeger (lua_State *L, int index);

      Converts the Lua value at the given acceptable index @@ -3901,12 +4059,12 @@ -


      lua_tolstring

      +

      lua_tolstring

      +[-0, +0, m]

      const char *lua_tolstring (lua_State *L, int index, size_t *len);

      -Converts the Lua value at the given acceptable index to a string -(const char*). +Converts the Lua value at the given acceptable index to a C string. If len is not NULL, it also sets *len with the string length. The Lua value must be a string or a number; @@ -3932,12 +4090,13 @@ -


      lua_tonumber

      +

      lua_tonumber

      +[-0, +0, -]

      lua_Number lua_tonumber (lua_State *L, int index);

      Converts the Lua value at the given acceptable index -to a number (see lua_Number). +to the C type lua_Number (see lua_Number). The Lua value must be a number or a string convertible to a number (see §2.2.1); otherwise, lua_tonumber returns 0. @@ -3946,7 +4105,8 @@ -


      lua_topointer

      +

      lua_topointer

      +[-0, +0, -]

      const void *lua_topointer (lua_State *L, int index);

      @@ -3965,7 +4125,8 @@ -


      lua_tostring

      +

      lua_tostring

      +[-0, +0, m]

      const char *lua_tostring (lua_State *L, int index);

      @@ -3975,7 +4136,8 @@ -


      lua_tothread

      +

      lua_tothread

      +[-0, +0, -]

      lua_State *lua_tothread (lua_State *L, int index);

      @@ -3988,7 +4150,8 @@ -


      lua_touserdata

      +

      lua_touserdata

      +[-0, +0, -]

      void *lua_touserdata (lua_State *L, int index);

      @@ -4002,7 +4165,8 @@ -


      lua_type

      +

      lua_type

      +[-0, +0, -]

      int lua_type (lua_State *L, int index);

      @@ -4026,7 +4190,8 @@ -


      lua_typename

      +

      lua_typename

      +[-0, +0, -]

      const char *lua_typename  (lua_State *L, int tp);

      @@ -4044,7 +4209,7 @@ void* ud);

      -The writer function used by lua_dump. +The type of the writer function used by lua_dump. Every time it produces another piece of chunk, lua_dump calls the writer, passing along the buffer to be written (p), @@ -4054,7 +4219,7 @@

      The writer returns an error code: -0 means no errors; +0 means no errors; any other value means an error and stops lua_dump from calling the writer again. @@ -4062,7 +4227,8 @@ -


      lua_xmove

      +

      lua_xmove

      +[-?, +?, -]

      void lua_xmove (lua_State *from, lua_State *to, int n);

      @@ -4077,7 +4243,8 @@ -


      lua_yield

      +

      lua_yield

      +[-?, +?, -]

      int lua_yield  (lua_State *L, int nresults);

      @@ -4209,7 +4376,8 @@ -


      lua_gethook

      +

      lua_gethook

      +[-0, +0, -]

      lua_Hook lua_gethook (lua_State *L);

      @@ -4219,7 +4387,8 @@ -


      lua_gethookcount

      +

      lua_gethookcount

      +[-0, +0, -]

      int lua_gethookcount (lua_State *L);

      @@ -4229,7 +4398,8 @@ -


      lua_gethookmask

      +

      lua_gethookmask

      +[-0, +0, -]

      int lua_gethookmask (lua_State *L);

      @@ -4239,7 +4409,8 @@ -


      lua_getinfo

      +

      lua_getinfo

      +[-(0|1), +(0|1|2), m]

      int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar);

      @@ -4279,8 +4450,8 @@

    • 'S': -fills in the fields source, linedefined, -lastlinedefined, what, and short_src; +fills in the fields source, short_src, +linedefined, lastlinedefined, and what;
    • 'l': fills in the field currentline; @@ -4312,8 +4483,9 @@ -

      lua_getlocal

      -
      const char *lua_getlocal (lua_State *L, const lua_Debug *ar, int n);
      +

      lua_getlocal

      +[-0, +(0|1), -] +

      const char *lua_getlocal (lua_State *L, lua_Debug *ar, int n);

      Gets information about a local variable of a given activation record. @@ -4342,7 +4514,8 @@ -


      lua_getstack

      +

      lua_getstack

      +[-0, +0, -]

      int lua_getstack (lua_State *L, int level, lua_Debug *ar);

      @@ -4363,7 +4536,8 @@ -


      lua_getupvalue

      +

      lua_getupvalue

      +[-0, +(0|1), -]

      const char *lua_getupvalue (lua_State *L, int funcindex, int n);

      @@ -4423,15 +4597,16 @@ -


      lua_sethook

      -
      int lua_sethook (lua_State *L, lua_Hook func, int mask, int count);
      +

      lua_sethook

      +[-0, +0, -] +

      int lua_sethook (lua_State *L, lua_Hook f, int mask, int count);

      Sets the debugging hook function.

      -func is the hook function. +Argument f is the hook function. mask specifies on which events the hook will be called: it is formed by a bitwise or of the constants LUA_MASKCALL, @@ -4474,8 +4649,9 @@ -


      lua_setlocal

      -
      const char *lua_setlocal (lua_State *L, const lua_Debug *ar, int n);
      +

      lua_setlocal

      +[-(0|1), +0, -] +

      const char *lua_setlocal (lua_State *L, lua_Debug *ar, int n);

      Sets the value of a local variable of a given activation record. @@ -4495,16 +4671,17 @@ -


      lua_setupvalue

      +

      lua_setupvalue

      +[-(0|1), +0, -]

      const char *lua_setupvalue (lua_State *L, int funcindex, int n);

      Sets the value of a closure's upvalue. -Parameters funcindex and n are as in lua_getupvalue -(see lua_getupvalue). It assigns the value at the top of the stack to the upvalue and returns its name. It also pops the value from the stack. +Parameters funcindex and n are as in the lua_getupvalue +(see lua_getupvalue).

      @@ -4545,7 +4722,7 @@ Several functions in the auxiliary library are used to check C function arguments. Their names are always luaL_check* or luaL_opt*. -All of these functions raise an error if the check is not satisfied. +All of these functions throw an error if the check is not satisfied. Because the error message is formatted for arguments (e.g., "bad argument #1"), you should not use these functions for other stack values. @@ -4560,7 +4737,8 @@ -


      luaL_addchar

      +

      luaL_addchar

      +[-0, +0, m]

      void luaL_addchar (luaL_Buffer *B, char c);

      @@ -4571,7 +4749,8 @@ -


      luaL_addlstring

      +

      luaL_addlstring

      +[-0, +0, m]

      void luaL_addlstring (luaL_Buffer *B, const char *s, size_t l);

      @@ -4584,19 +4763,21 @@ -


      luaL_addsize

      +

      luaL_addsize

      +[-0, +0, m]

      void luaL_addsize (luaL_Buffer *B, size_t n);

      -Adds a string of length n previously copied to the -buffer area (see luaL_prepbuffer) to the buffer B -(see luaL_Buffer). +Adds to the buffer B (see luaL_Buffer) +a string of length n previously copied to the +buffer area (see luaL_prepbuffer). -


      luaL_addstring

      +

      luaL_addstring

      +[-0, +0, m]

      void luaL_addstring (luaL_Buffer *B, const char *s);

      @@ -4609,7 +4790,8 @@ -


      luaL_addvalue

      +

      luaL_addvalue

      +[-1, +0, m]

      void luaL_addvalue (luaL_Buffer *B);

      @@ -4628,10 +4810,11 @@ -


      luaL_argcheck

      +

      luaL_argcheck

      +[-0, +0, v]

      void luaL_argcheck (lua_State *L,
                           int cond,
      -                    int numarg,
      +                    int narg,
                           const char *extramsg);

      @@ -4640,21 +4823,22 @@ where func is retrieved from the call stack:

      -     bad argument #<numarg> to <func> (<extramsg>)
      +     bad argument #<narg> to <func> (<extramsg>)
       
      -

      luaL_argerror

      -
      int luaL_argerror (lua_State *L, int numarg, const char *extramsg);
      +

      luaL_argerror

      +[-0, +0, v] +

      int luaL_argerror (lua_State *L, int narg, const char *extramsg);

      Raises an error with the following message, where func is retrieved from the call stack:

      -     bad argument #<numarg> to <func> (<extramsg>)
      +     bad argument #<narg> to <func> (<extramsg>)
       

      @@ -4715,7 +4899,8 @@ -


      luaL_buffinit

      +

      luaL_buffinit

      +[-0, +0, -]

      void luaL_buffinit (lua_State *L, luaL_Buffer *B);

      @@ -4728,7 +4913,8 @@ -


      luaL_callmeta

      +

      luaL_callmeta

      +[-0, +(0|1), e]

      int luaL_callmeta (lua_State *L, int obj, const char *e);

      @@ -4748,7 +4934,8 @@ -


      luaL_checkany

      +

      luaL_checkany

      +[-0, +0, v]

      void luaL_checkany (lua_State *L, int narg);

      @@ -4759,7 +4946,8 @@ -


      luaL_checkint

      +

      luaL_checkint

      +[-0, +0, v]

      int luaL_checkint (lua_State *L, int narg);

      @@ -4770,7 +4958,8 @@ -


      luaL_checkinteger

      +

      luaL_checkinteger

      +[-0, +0, v]

      lua_Integer luaL_checkinteger (lua_State *L, int narg);

      @@ -4781,7 +4970,8 @@ -


      luaL_checklong

      +

      luaL_checklong

      +[-0, +0, v]

      long luaL_checklong (lua_State *L, int narg);

      @@ -4792,7 +4982,8 @@ -


      luaL_checklstring

      +

      luaL_checklstring

      +[-0, +0, v]

      const char *luaL_checklstring (lua_State *L, int narg, size_t *l);

      @@ -4802,10 +4993,16 @@ with the string's length. +

      +This function uses lua_tolstring to get its result, +so all conversions and caveats of that function apply here. -


      luaL_checknumber

      + + +

      luaL_checknumber

      +[-0, +0, v]

      lua_Number luaL_checknumber (lua_State *L, int narg);

      @@ -4816,7 +5013,8 @@ -


      luaL_checkoption

      +

      luaL_checkoption

      +[-0, +0, v]

      int luaL_checkoption (lua_State *L,
                             int narg,
                             const char *def,
      @@ -4846,7 +5044,8 @@
       
       
       
      -

      luaL_checkstack

      +

      luaL_checkstack

      +[-0, +0, v]

      void luaL_checkstack (lua_State *L, int sz, const char *msg);

      @@ -4858,7 +5057,8 @@ -


      luaL_checkstring

      +

      luaL_checkstring

      +[-0, +0, v]

      const char *luaL_checkstring (lua_State *L, int narg);

      @@ -4866,20 +5066,28 @@ and returns this string. +

      +This function uses lua_tolstring to get its result, +so all conversions and caveats of that function apply here. -


      luaL_checktype

      + + +

      luaL_checktype

      +[-0, +0, v]

      void luaL_checktype (lua_State *L, int narg, int t);

      Checks whether the function argument narg has type t. +See lua_type for the encoding of types for t. -


      luaL_checkudata

      +

      luaL_checkudata

      +[-0, +0, v]

      void *luaL_checkudata (lua_State *L, int narg, const char *tname);

      @@ -4890,7 +5098,8 @@ -


      luaL_dofile

      +

      luaL_dofile

      +[-0, +?, m]

      int luaL_dofile (lua_State *L, const char *filename);

      @@ -4907,7 +5116,8 @@ -


      luaL_dostring

      +

      luaL_dostring

      +[-0, +?, m]

      int luaL_dostring (lua_State *L, const char *str);

      @@ -4924,7 +5134,8 @@ -


      luaL_error

      +

      luaL_error

      +[-0, +0, v]

      int luaL_error (lua_State *L, const char *fmt, ...);

      @@ -4946,7 +5157,8 @@ -


      luaL_getmetafield

      +

      luaL_getmetafield

      +[-0, +(0|1), m]

      int luaL_getmetafield (lua_State *L, int obj, const char *e);

      @@ -4960,7 +5172,8 @@ -


      luaL_getmetatable

      +

      luaL_getmetatable

      +[-0, +1, -]

      void luaL_getmetatable (lua_State *L, const char *tname);

      @@ -4971,7 +5184,8 @@ -


      luaL_gsub

      +

      luaL_gsub

      +[-0, +1, m]

      const char *luaL_gsub (lua_State *L,
                              const char *s,
                              const char *p,
      @@ -4987,7 +5201,8 @@
       
       
       
      -

      luaL_loadbuffer

      +

      luaL_loadbuffer

      +[-0, +1, m]

      int luaL_loadbuffer (lua_State *L,
                            const char *buff,
                            size_t sz,
      @@ -5008,7 +5223,8 @@
       
       
       
      -

      luaL_loadfile

      +

      luaL_loadfile

      +[-0, +1, m]

      int luaL_loadfile (lua_State *L, const char *filename);

      @@ -5034,7 +5250,8 @@ -


      luaL_loadstring

      +

      luaL_loadstring

      +[-0, +1, m]

      int luaL_loadstring (lua_State *L, const char *s);

      @@ -5055,7 +5272,8 @@ -


      luaL_newmetatable

      +

      luaL_newmetatable

      +[-0, +1, m]

      int luaL_newmetatable (lua_State *L, const char *tname);

      @@ -5075,13 +5293,15 @@ -


      luaL_newstate

      +

      luaL_newstate

      +[-0, +0, -]

      lua_State *luaL_newstate (void);

      -Creates a new Lua state, calling lua_newstate with an -allocation function based on the standard C realloc function -and setting a panic function (see lua_atpanic) that prints +Creates a new Lua state. +It calls lua_newstate with an +allocator based on the standard C realloc function +and then sets a panic function (see lua_atpanic) that prints an error message to the standard error output in case of fatal errors. @@ -5094,7 +5314,8 @@ -


      luaL_openlibs

      +

      luaL_openlibs

      +[-0, +0, m]

      void luaL_openlibs (lua_State *L);

      @@ -5104,7 +5325,8 @@ -


      luaL_optint

      +

      luaL_optint

      +[-0, +0, v]

      int luaL_optint (lua_State *L, int narg, int d);

      @@ -5118,8 +5340,11 @@ -


      luaL_optinteger

      -
      lua_Integer luaL_optinteger (lua_State *L, int narg, lua_Integer d);
      +

      luaL_optinteger

      +[-0, +0, v] +

      lua_Integer luaL_optinteger (lua_State *L,
      +                             int narg,
      +                             lua_Integer d);

      If the function argument narg is a number, @@ -5132,7 +5357,8 @@ -


      luaL_optlong

      +

      luaL_optlong

      +[-0, +0, v]

      long luaL_optlong (lua_State *L, int narg, long d);

      @@ -5146,7 +5372,8 @@ -


      luaL_optlstring

      +

      luaL_optlstring

      +[-0, +0, v]

      const char *luaL_optlstring (lua_State *L,
                                    int narg,
                                    const char *d,
      @@ -5168,7 +5395,8 @@
       
       
       
      -

      luaL_optnumber

      +

      luaL_optnumber

      +[-0, +0, v]

      lua_Number luaL_optnumber (lua_State *L, int narg, lua_Number d);

      @@ -5182,8 +5410,11 @@ -


      luaL_optstring

      -
      const char *luaL_optstring (lua_State *L, int narg, const char *d);
      +

      luaL_optstring

      +[-0, +0, v] +

      const char *luaL_optstring (lua_State *L,
      +                            int narg,
      +                            const char *d);

      If the function argument narg is a string, @@ -5196,7 +5427,8 @@ -


      luaL_prepbuffer

      +

      luaL_prepbuffer

      +[-0, +0, -]

      char *luaL_prepbuffer (luaL_Buffer *B);

      @@ -5211,7 +5443,8 @@ -


      luaL_pushresult

      +

      luaL_pushresult

      +[-?, +1, m]

      void luaL_pushresult (luaL_Buffer *B);

      @@ -5222,7 +5455,8 @@ -


      luaL_ref

      +

      luaL_ref

      +[-1, +0, m]

      int luaL_ref (lua_State *L, int t);

      @@ -5268,7 +5502,8 @@ -


      luaL_register

      +

      luaL_register

      +[-(0|1), +1, m]

      void luaL_register (lua_State *L,
                           const char *libname,
                           const luaL_Reg *l);
      @@ -5285,7 +5520,7 @@

      When called with a non-null libname, -creates a new table t, +luaL_register creates a new table t, sets it as the value of the global variable libname, sets it as the value of package.loaded[libname], and registers on it all functions in the list l. @@ -5302,34 +5537,37 @@ -


      luaL_typename

      -
      const char *luaL_typename (lua_State *L, int idx);
      +

      luaL_typename

      +[-0, +0, -] +

      const char *luaL_typename (lua_State *L, int index);

      -Returns the name of the type of the value at index idx. +Returns the name of the type of the value at the given index. -


      luaL_typerror

      +

      luaL_typerror

      +[-0, +0, v]

      int luaL_typerror (lua_State *L, int narg, const char *tname);

      -Generates an error with a message like +Generates an error with a message like the following:

      -     <location>: bad argument <narg> to <function> (<tname> expected, got <realt>)
      +     location: bad argument narg to 'func' (tname expected, got rt)
       

      -where <location> is produced by luaL_where, -<function> is the name of the current function, -and <realt> is the type name of the actual argument. +where location is produced by luaL_where, +func is the name of the current function, +and rt is the type name of the actual argument. -


      luaL_unref

      +

      luaL_unref

      +[-0, +0, -]

      void luaL_unref (lua_State *L, int t, int ref);

      @@ -5348,13 +5586,18 @@ -


      luaL_where

      +

      luaL_where

      +[-0, +1, m]

      void luaL_where (lua_State *L, int lvl);

      Pushes onto the stack a string identifying the current position of the control at level lvl in the call stack. -Typically this string has the format <chunkname>:<currentline>:. +Typically this string has the following format: + +

      +     chunkname:currentline:
      +

      Level 0 is the running function, level 1 is the function that called the running function, etc. @@ -5379,7 +5622,7 @@ others provide access to "outside" services (e.g., I/O); and others could be implemented in Lua itself, but are quite useful or have critical performance requirements that -deserve an implementation in C (e.g., sort). +deserve an implementation in C (e.g., table.sort).

      @@ -5413,9 +5656,8 @@

      To have access to these libraries, -the C host program must call -luaL_openlibs, -which open all standard libraries. +the C host program should call the luaL_openlibs function, +which opens all standard libraries. Alternatively, it can open them individually by calling luaopen_base (for the basic library), @@ -5423,7 +5665,8 @@ luaopen_string (for the string library), luaopen_table (for the table library), luaopen_math (for the mathematical library), -luaopen_io (for the I/O and the Operating System libraries), +luaopen_io (for the I/O library), +luaopen_os (for the Operating System library), and luaopen_debug (for the debug library). These functions are declared in lualib.h and should not be called directly: @@ -5547,7 +5790,7 @@

      -


      getfenv (f)

      +

      getfenv ([f])

      Returns the current environment in use by the function. f can be a Lua function or a number that specifies the function at that stack level: @@ -5589,12 +5832,8 @@ up to the first integer key absent from the table. -

      -See next for the caveats of modifying the table during its traversal. - -


      load (func [, chunkname])

      @@ -5616,6 +5855,8 @@

      chunkname is used as the chunk name for error messages and debug information. +When absent, +it defaults to "=(load)". @@ -5649,8 +5890,13 @@ assert(loadstring(s))()

      +

      +When absent, +chunkname defaults to the given string. + +


      next (table [, index])

      @@ -5704,7 +5950,8 @@

      -See next for the caveats of modifying the table during its traversal. +See function next for the caveats of modifying +the table during its traversal. @@ -5911,7 +6158,7 @@

      -This function is similar to pcall, +This function is similar to pcall, except that you can set a new error handler. @@ -6101,7 +6348,7 @@

      Loads the given module. -The function starts by looking into the table package.loaded +The function starts by looking into the package.loaded table to determine whether modname is already loaded. If it is, then require returns the value stored at package.loaded[modname]. @@ -6110,7 +6357,15 @@

      To find a loader, -first require queries package.preload[modname]. +require is guided by the package.loaders array. +By changing this array, +we can change how require looks for a module. +The following explanation is based on the default configuration +for package.loaders. + + +

      +First require queries package.preload[modname]. If it has a value, this value (which should be a function) is the loader. Otherwise require searches for a Lua loader using the @@ -6118,45 +6373,14 @@ If that also fails, it searches for a C loader using the path stored in package.cpath. If that also fails, -it tries an all-in-one loader (see below). +it tries an all-in-one loader (see package.loaders).

      -When loading a C library, -require first uses a dynamic link facility to link the -application with the library. -Then it tries to find a C function inside this library to -be used as the loader. -The name of this C function is the string "luaopen_" -concatenated with a copy of the module name where each dot -is replaced by an underscore. -Moreover, if the module name has a hyphen, -its prefix up to (and including) the first hyphen is removed. -For instance, if the module name is a.v1-b.c, -the function name will be luaopen_b_c. - - -

      -If require finds neither a Lua library nor a -C library for a module, -it calls the all-in-one loader. -This loader searches the C path for a library for -the root name of the given module. -For instance, when requiring a.b.c, -it will search for a C library for a. -If found, it looks into it for an open function for -the submodule; -in our example, that would be luaopen_a_b_c. -With this facility, a package can pack several C submodules -into one single library, -with each submodule keeping its original open function. - - -

      Once a loader is found, require calls the loader with a single argument, modname. If the loader returns any value, -require assigns it to package.loaded[modname]. +require assigns the returned value to package.loaded[modname]. If the loader returns no value and has not assigned any value to package.loaded[modname], then require assigns true to this entry. @@ -6184,12 +6408,13 @@ Lua initializes the C path package.cpath in the same way it initializes the Lua path package.path, using the environment variable LUA_CPATH -(plus another default path defined in luaconf.h). +or a default path defined in luaconf.h.

      +


      package.loaded

      @@ -6204,6 +6429,94 @@

      +


      package.loaders

      + + +

      +A table used by require to control how to load modules. + + +

      +Each entry in this table is a searcher function. +When looking for a module, +require calls each of these searchers in ascending order, +with the module name (the argument given to require) as its +sole parameter. +The function may return another function (the module loader) +or a string explaining why it did not find that module +(or nil if it has nothing to say). +Lua initializes this table with four functions. + + +

      +The first searcher simply looks for a loader in the +package.preload table. + + +

      +The second searcher looks for a loader as a Lua library, +using the path stored at package.path. +A path is a sequence of templates separated by semicolons. +For each template, +the searcher will change each interrogation +mark in the template by filename, +which is the module name with each dot replaced by a +"directory separator" (such as "/" in Unix); +then it will try to open the resulting file name. +So, for instance, if the Lua path is the string + +

      +     "./?.lua;./?.lc;/usr/local/?/init.lua"
      +

      +the search for a Lua file for module foo +will try to open the files +./foo.lua, ./foo.lc, and +/usr/local/foo/init.lua, in that order. + + +

      +The third searcher looks for a loader as a C library, +using the path given by the variable package.cpath. +For instance, +if the C path is the string + +

      +     "./?.so;./?.dll;/usr/local/?/init.so"
      +

      +the searcher for module foo +will try to open the files ./foo.so, ./foo.dll, +and /usr/local/foo/init.so, in that order. +Once it finds a C library, +this searcher first uses a dynamic link facility to link the +application with the library. +Then it tries to find a C function inside the library to +be used as the loader. +The name of this C function is the string "luaopen_" +concatenated with a copy of the module name where each dot +is replaced by an underscore. +Moreover, if the module name has a hyphen, +its prefix up to (and including) the first hyphen is removed. +For instance, if the module name is a.v1-b.c, +the function name will be luaopen_b_c. + + +

      +The fourth searcher tries an all-in-one loader. +It searches the C path for a library for +the root name of the given module. +For instance, when requiring a.b.c, +it will search for a C library for a. +If found, it looks into it for an open function for +the submodule; +in our example, that would be luaopen_a_b_c. +With this facility, a package can pack several C submodules +into one single library, +with each submodule keeping its original open function. + + + + +


      package.loadlib (libname, funcname)

      @@ -6252,26 +6565,8 @@ is replaced by the default path. -

      -A path is a sequence of templates separated by semicolons. -For each template, require will change each interrogation -mark in the template by filename, -which is modname with each dot replaced by a -"directory separator" (such as "/" in Unix); -then it will try to load the resulting file name. -So, for instance, if the Lua path is -

      -     "./?.lua;./?.lc;/usr/local/?/init.lua"
      -

      -the search for a Lua loader for module foo -will try to load the files -./foo.lua, ./foo.lc, and -/usr/local/foo/init.lua, in that order. - - -


      package.preload

      @@ -6426,7 +6721,8 @@

      This function does not accept string values -containing embedded zeros. +containing embedded zeros, +except as arguments to the q option. @@ -6436,9 +6732,6 @@ Returns an iterator function that, each time it is called, returns the next captures from pattern over string s. - - -

      If pattern specifies no captures, then the whole match is produced in each call. @@ -6465,16 +6758,22 @@ end

      +

      +For this function, a '^' at the start of a pattern does not +work as an anchor, as this would prevent the iteration. + +


      string.gsub (s, pattern, repl [, n])

      Returns a copy of s -in which all occurrences of the pattern have been +in which all (or the first n, if given) +occurrences of the pattern have been replaced by a replacement string specified by repl, which may be a string, a table, or a function. gsub also returns, as its second value, -the total number of substitutions made. +the total number of matches that occurred.

      @@ -6512,13 +6811,6 @@

      -The optional last parameter n limits -the maximum number of substitutions to occur. -For instance, when n is 1 only the first occurrence of -pattern is replaced. - - -

      Here are some examples:

      @@ -6540,7 +6832,7 @@
            --> x="4+5 = 9"
            
            local t = {name="lua", version="5.1"}
      -     x = string.gsub("$name%-$version.tar.gz", "%$(%w+)", t)
      +     x = string.gsub("$name-$version.tar.gz", "%$(%w+)", t)
            --> x="lua-5.1.tar.gz"
       
      @@ -6824,7 +7116,8 @@


      table.concat (table [, sep [, i [, j]]])

      -Returns table[i]..sep..table[i+1] ··· sep..table[j]. +Given an array where all elements are strings or numbers, +returns table[i]..sep..table[i+1] ··· sep..table[j]. The default value for sep is the empty string, the default for i is 1, and the default for j is the length of the table. @@ -6950,14 +7243,14 @@

      -


      math.atan2 (x, y)

      +

      math.atan2 (y, x)

      -Returns the arc tangent of x/y (in radians), +Returns the arc tangent of y/x (in radians), but uses the signs of both parameters to find the quadrant of the result. -(It also handles correctly the case of y being zero.) +(It also handles correctly the case of x being zero.) @@ -7007,7 +7300,7 @@

      -Returns the the value ex. +Returns the value ex. @@ -7122,7 +7415,7 @@

      -The value PI. +The value of pi. @@ -7160,13 +7453,13 @@

      When called without arguments, -returns a pseudo-random real number +returns a uniform pseudo-random real number in the range [0,1). -When called with a number m, +When called with an integer number m, math.random returns -a pseudo-random integer in the range [1, m]. -When called with two numbers m and n, -math.random returns a pseudo-random +a uniform pseudo-random integer in the range [1, m]. +When called with two integer numbers m and n, +math.random returns a uniform pseudo-random integer in the range [m, n]. @@ -7261,12 +7554,14 @@ The table io also provides three predefined file descriptors with their usual meanings from C: io.stdin, io.stdout, and io.stderr. +The I/O library never closes these files.

      Unless otherwise stated, all I/O functions return nil on failure -(plus an error message as a second result) +(plus an error message as a second result and +a system-dependent error code as a third result) and some value different from nil on success. @@ -7331,7 +7626,7 @@

      -The call io.lines() (without a file name) is equivalent +The call io.lines() (with no file name) is equivalent to io.input():lines(); that is, it iterates over the lines of the default input file. In this case it does not close the file when the loop ends. @@ -7381,7 +7676,7 @@

      -


      io.popen ([prog [, mode]])

      +

      io.popen (prog [, mode])

      @@ -7596,7 +7891,7 @@

    -For the last two cases, sizes +For the last two cases, size specifies the size of the buffer, in bytes. The default is an appropriate size. @@ -7657,7 +7952,7 @@ If format starts with '!', then the date is formatted in Coordinated Universal Time. After this optional character, -if format is *t, +if format is the string "*t", then date returns a table with the following fields: year (four digits), month (1--12), day (1--31), hour (0--23), min (0--59), sec (0--61), @@ -7667,7 +7962,7 @@

    -If format is not *t, +If format is not "*t", then date returns the date as a string, formatted according to the same rules as the C function strftime. @@ -7772,6 +8067,13 @@

    +If locale is the empty string, +the current locale is set to an implementation-defined native locale. +If locale is the string "C", +the current locale is set to the standard C locale. + + +

    When called with nil as the first argument, this function only returns the name of the current locale for the given category. @@ -7829,7 +8131,7 @@ Please resist the temptation to use them as a usual programming tool: they can be very slow. -Moreover, several of its functions +Moreover, several of these functions violate some assumptions about Lua code (e.g., that variables local to a function cannot be accessed from outside or @@ -7920,8 +8222,10 @@

    For instance, the expression debug.getinfo(1,"n").name returns -a name of the current function, if a reasonable name can be found, -and debug.getinfo(print) returns a table with all available information +a table with a name for the current function, +if a reasonable name can be found, +and the expression debug.getinfo(print) +returns a table with all available information about the print function. @@ -8006,9 +8310,9 @@ with the given meaning:

      -
    • "c": The hook is called every time Lua calls a function;
    • -
    • "r": The hook is called every time Lua returns from a function;
    • -
    • "l": The hook is called every time Lua enters a new line of code.
    • +
    • "c": the hook is called every time Lua calls a function;
    • +
    • "r": the hook is called every time Lua returns from a function;
    • +
    • "l": the hook is called every time Lua enters a new line of code.

    With a count different from zero, the hook is called after every count instructions. @@ -8080,15 +8384,16 @@

    -


    debug.traceback ([thread,] [message])

    +

    debug.traceback ([thread,] [message] [, level])

    Returns a string with a traceback of the call stack. An optional message string is appended -at the beginning of the traceback. -This function is typically used with xpcall to produce -better error messages. +at the beginning of the traceback. +An optional level number tells at which level +to start the traceback +(default is 1, the function calling traceback). @@ -8192,17 +8497,19 @@ Similarly, if the global variable _PROMPT2 contains a string, its value is used as the secondary prompt (issued during incomplete statements). -Therefore, both prompts can be changed directly on the command line. -For instance, +Therefore, both prompts can be changed directly on the command line +or in any Lua programs by assigning to _PROMPT. +See the next example:

          $ lua -e"_PROMPT='myprompt> '" -i
     

    -(the outer pair of quotes is for the shell, -the inner pair is for Lua), -or in any Lua programs by assigning to _PROMPT. -Note the use of -i to enter interactive mode; otherwise, -the program would just end silently right after the assignment to _PROMPT. +(The outer pair of quotes is for the shell, +the inner pair is for Lua.) +Note the use of -i to enter interactive mode; +otherwise, +the program would just end silently +right after the assignment to _PROMPT.

    @@ -8232,7 +8539,7 @@

    7 - Incompatibilities with the Previous Version

    -Here we list the incompatibilities that may be found when moving a program +Here we list the incompatibilities that you may find when moving a program from Lua 5.0 to Lua 5.1. You can avoid most of the incompatibilities compiling Lua with appropriate options (see file luaconf.h). @@ -8247,7 +8554,7 @@

  • The vararg system changed from the pseudo-argument arg with a table with the extra arguments to the vararg expression. -(Option LUA_COMPAT_VARARG in luaconf.h.) +(See compile-time option LUA_COMPAT_VARARG in luaconf.h.)
  • @@ -8259,7 +8566,7 @@ The long string/long comment syntax ([[string]]) does not allow nesting. You can use the new syntax ([=[string]=]) in these cases. -(Option LUA_COMPAT_LSTR in luaconf.h.) +(See compile-time option LUA_COMPAT_LSTR in luaconf.h.)
  • @@ -8272,7 +8579,7 @@
  • Function string.gfind was renamed string.gmatch. -(Option LUA_COMPAT_GFIND) +(See compile-time option LUA_COMPAT_GFIND in luaconf.h.)
  • @@ -8288,17 +8595,17 @@ Function table.getn corresponds to the new length operator (#); use the operator instead of the function. -(Option LUA_COMPAT_GETN) +(See compile-time option LUA_COMPAT_GETN in luaconf.h.)
  • Function loadlib was renamed package.loadlib. -(Option LUA_COMPAT_LOADLIB) +(See compile-time option LUA_COMPAT_LOADLIB in luaconf.h.)
  • Function math.mod was renamed math.fmod. -(Option LUA_COMPAT_MOD) +(See compile-time option LUA_COMPAT_MOD in luaconf.h.)
  • @@ -8381,29 +8688,29 @@ block ::= chunk - stat ::= varlist1 `=´ explist1 | + stat ::= varlist `=´ explist | functioncall | do block end | while exp do block end | repeat block until exp | if exp then block {elseif exp then block} [else block] end | for Name `=´ exp `,´ exp [`,´ exp] do block end | - for namelist in explist1 do block end | + for namelist in explist do block end | function funcname funcbody | local function Name funcbody | - local namelist [`=´ explist1] + local namelist [`=´ explist] - laststat ::= return [explist1] | break + laststat ::= return [explist] | break funcname ::= Name {`.´ Name} [`:´ Name] - varlist1 ::= var {`,´ var} + varlist ::= var {`,´ var} var ::= Name | prefixexp `[´ exp `]´ | prefixexp `.´ Name namelist ::= Name {`,´ Name} - explist1 ::= {exp `,´} exp + explist ::= {exp `,´} exp exp ::= nil | false | true | Number | String | `...´ | function | prefixexp | tableconstructor | exp binop exp | unop exp @@ -8412,13 +8719,13 @@ functioncall ::= prefixexp args | prefixexp `:´ Name args - args ::= `(´ [explist1] `)´ | tableconstructor | String + args ::= `(´ [explist] `)´ | tableconstructor | String function ::= function funcbody - funcbody ::= `(´ [parlist1] `)´ block end + funcbody ::= `(´ [parlist] `)´ block end - parlist1 ::= namelist [`,´ `...´] | `...´ + parlist ::= namelist [`,´ `...´] | `...´ tableconstructor ::= `{´ [fieldlist] `}´ @@ -8443,13 +8750,14 @@ +
    Last update: -Mon Jun 5 17:05:27 BRT 2006 +Fri Jan 18 22:32:24 BRST 2008 Modified: trunk/lua-5.1.1/doc/readme.html =================================================================== --- trunk/lua-5.1.1/doc/readme.html 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/doc/readme.html 2008-03-16 19:40:23 UTC (rev 557) @@ -4,7 +4,7 @@ - +

    @@ -12,8 +12,9 @@ Documentation

    +This is the documentation included in the source distribution of Lua 5.1.3. + +Lua's +official web site +contains updated documentation, +especially the +reference manual. +

    +


    Last update: -Wed Sep 7 12:57:50 BRST 2005 +Wed Dec 19 13:59:14 BRST 2007 Modified: trunk/lua-5.1.1/etc/README =================================================================== --- trunk/lua-5.1.1/etc/README 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/etc/README 2008-03-16 19:40:23 UTC (rev 557) @@ -20,6 +20,7 @@ luavs.bat Script to build Lua under "Visual Studio .NET Command Prompt". + Run it from the toplevel as etc\luavs.bat. min.c A minimal Lua interpreter. Modified: trunk/lua-5.1.1/etc/lua.pc =================================================================== --- trunk/lua-5.1.1/etc/lua.pc 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/etc/lua.pc 2008-03-16 19:40:23 UTC (rev 557) @@ -5,7 +5,7 @@ # grep '^V=' ../Makefile V= 5.1 # grep '^R=' ../Makefile -R= 5.1.1 +R= 5.1.3 # grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/' prefix= /usr/local Modified: trunk/lua-5.1.1/etc/luavs.bat =================================================================== --- trunk/lua-5.1.1/etc/luavs.bat 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/etc/luavs.bat 2008-03-16 19:40:23 UTC (rev 557) @@ -1,7 +1,28 @@ + at rem Script to build Lua under "Visual Studio .NET Command Prompt". + at rem Do not run from this directory; run it from the toplevel: etc\luavs.bat . + at rem It creates lua51.dll, lua51.lib, lua.exe, and luac.exe in src. + at rem (contributed by David Manura and Mike Pall) + + at setlocal + at set MYCOMPILE=cl /nologo /MD /O2 /W3 /c /D_CRT_SECURE_NO_DEPRECATE + at set MYLINK=link /nologo + at set MYMT=mt /nologo + cd src -cl /O2 /W3 /c /DLUA_BUILD_AS_DLL l*.c +%MYCOMPILE% /DLUA_BUILD_AS_DLL l*.c del lua.obj luac.obj -link /DLL /out:lua51.dll l*.obj -cl /O2 /W3 /c /DLUA_BUILD_AS_DLL lua.c -link /out:lua.exe lua.obj lua51.lib +%MYLINK% /DLL /out:lua51.dll l*.obj +if exist lua51.dll.manifest^ + %MYMT% -manifest lua51.dll.manifest -outputresource:lua51.dll;2 +%MYCOMPILE% /DLUA_BUILD_AS_DLL lua.c +%MYLINK% /out:lua.exe lua.obj lua51.lib +if exist lua.exe.manifest^ + %MYMT% -manifest lua.exe.manifest -outputresource:lua.exe +%MYCOMPILE% l*.c print.c +del lua.obj linit.obj lbaselib.obj ldblib.obj liolib.obj lmathlib.obj^ + loslib.obj ltablib.obj lstrlib.obj loadlib.obj +%MYLINK% /out:luac.exe *.obj +if exist luac.exe.manifest^ + %MYMT% -manifest luac.exe.manifest -outputresource:luac.exe +del *.obj *.manifest cd .. Modified: trunk/lua-5.1.1/etc/min.c =================================================================== --- trunk/lua-5.1.1/etc/min.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/etc/min.c 2008-03-16 19:40:23 UTC (rev 557) @@ -18,7 +18,7 @@ if (i>1) printf("\t"); if (lua_isstring(L,i)) printf("%s",lua_tostring(L,i)); - else if (lua_isnil(L,i)==2) + else if (lua_isnil(L,i)) printf("%s","nil"); else if (lua_isboolean(L,i)) printf("%s",lua_toboolean(L,i) ? "true" : "false"); Modified: trunk/lua-5.1.1/etc/strict.lua =================================================================== --- trunk/lua-5.1.1/etc/strict.lua 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/etc/strict.lua 2008-03-16 19:40:23 UTC (rev 557) @@ -6,6 +6,8 @@ -- anywhere or assigned to inside a function. -- +local getinfo, error, rawset, rawget = debug.getinfo, error, rawset, rawget + local mt = getmetatable(_G) if mt == nil then mt = {} @@ -14,9 +16,14 @@ mt.__declared = {} +local function what () + local d = getinfo(3, "S") + return d and d.what or "C" +end + mt.__newindex = function (t, n, v) if not mt.__declared[n] then - local w = debug.getinfo(2, "S").what + local w = what() if w ~= "main" and w ~= "C" then error("assign to undeclared variable '"..n.."'", 2) end @@ -26,7 +33,7 @@ end mt.__index = function (t, n) - if not mt.__declared[n] and debug.getinfo(2, "S").what ~= "C" then + if not mt.__declared[n] and what() ~= "C" then error("variable '"..n.."' is not declared", 2) end return rawget(t, n) Modified: trunk/lua-5.1.1/src/Makefile =================================================================== --- trunk/lua-5.1.1/src/Makefile 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/Makefile 2008-03-16 19:40:23 UTC (rev 557) @@ -20,7 +20,7 @@ # == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE ========= -PLATS= aix ansi bsd generic linux macosx mingw posix solaris +PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris LUA_A= liblua.a CORE_O= lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o \ @@ -77,7 +77,8 @@ # convenience targets for popular platforms none: - @echo "Please choose a platform: $(PLATS)" + @echo "Please choose a platform:" + @echo " $(PLATS)" aix: $(MAKE) all CC="xlc" CFLAGS="-O2 -DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-ldl" MYLDFLAGS="-brtl -bexpall" @@ -88,6 +89,9 @@ bsd: $(MAKE) all MYCFLAGS="-DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-Wl,-E" +freebsd: + $(MAKE) all MYCFLAGS="-DLUA_USE_LINUX" MYLIBS="-Wl,-E -lreadline" + generic: $(MAKE) all MYCFLAGS= @@ -95,14 +99,15 @@ $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses" macosx: - $(MAKE) all MYCFLAGS=-DLUA_USE_MACOSX -# use this on Mac OS X 10.4 -# $(MAKE) all MYCFLAGS="-DLUA_USE_MACOSX -DLUA_USE_READLINE" MYLIBS="-lreadline" + $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-lreadline" +# use this on Mac OS X 10.3- +# $(MAKE) all MYCFLAGS=-DLUA_USE_MACOSX mingw: $(MAKE) "LUA_A=lua51.dll" "LUA_T=lua.exe" \ "AR=$(CC) -shared -o" "RANLIB=strip --strip-unneeded" \ "MYCFLAGS=-DLUA_BUILD_AS_DLL" "MYLIBS=" "MYLDFLAGS=-s" lua.exe + $(MAKE) "LUAC_T=luac.exe" luac.exe posix: $(MAKE) all MYCFLAGS=-DLUA_USE_POSIX @@ -143,8 +148,7 @@ lmathlib.o: lmathlib.c lua.h luaconf.h lauxlib.h lualib.h lmem.o: lmem.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ ltm.h lzio.h lmem.h ldo.h -loadlib.o: loadlib.c lauxlib.h lua.h luaconf.h lobject.h llimits.h \ - lualib.h +loadlib.o: loadlib.c lua.h luaconf.h lauxlib.h lualib.h lobject.o: lobject.c lua.h luaconf.h ldo.h lobject.h llimits.h lstate.h \ ltm.h lzio.h lmem.h lstring.h lgc.h lvm.h lopcodes.o: lopcodes.c lopcodes.h llimits.h lua.h luaconf.h Modified: trunk/lua-5.1.1/src/lapi.c =================================================================== --- trunk/lua-5.1.1/src/lapi.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lapi.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lapi.c,v 2.55 2006/06/07 12:37:17 roberto Exp $ +** $Id: lapi.c,v 2.55.1.3 2008/01/03 15:20:39 roberto Exp $ ** Lua API ** See Copyright Notice in lua.h */ @@ -123,6 +123,11 @@ } +LUA_API void lua_setlevel (lua_State *from, lua_State *to) { + to->nCcalls = from->nCcalls; +} + + LUA_API lua_CFunction lua_atpanic (lua_State *L, lua_CFunction panicf) { lua_CFunction old; lua_lock(L); @@ -749,7 +754,7 @@ res = 0; break; } - luaC_objbarrier(L, gcvalue(o), hvalue(L->top - 1)); + if (res) luaC_objbarrier(L, gcvalue(o), hvalue(L->top - 1)); L->top--; lua_unlock(L); return res; Modified: trunk/lua-5.1.1/src/lapi.h =================================================================== --- trunk/lua-5.1.1/src/lapi.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lapi.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lapi.h,v 2.2 2005/04/25 19:24:10 roberto Exp $ +** $Id: lapi.h,v 2.2.1.1 2007/12/27 13:02:25 roberto Exp $ ** Auxiliary functions from Lua API ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lauxlib.c =================================================================== --- trunk/lua-5.1.1/src/lauxlib.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lauxlib.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lauxlib.c,v 1.159 2006/03/21 19:31:09 roberto Exp $ +** $Id: lauxlib.c,v 1.159.1.3 2008/01/21 13:20:51 roberto Exp $ ** Auxiliary functions for building Lua libraries ** See Copyright Notice in lua.h */ @@ -244,7 +244,7 @@ if (libname) { int size = libsize(l); /* check whether lib already exists */ - luaL_findtable(L, LUA_REGISTRYINDEX, "_LOADED", size); + luaL_findtable(L, LUA_REGISTRYINDEX, "_LOADED", 1); lua_getfield(L, -1, libname); /* get _LOADED[libname] */ if (!lua_istable(L, -1)) { /* not found? */ lua_pop(L, 1); /* remove previous result */ @@ -535,7 +535,7 @@ return "\n"; } if (feof(lf->f)) return NULL; - *size = fread(lf->buff, 1, LUAL_BUFFERSIZE, lf->f); + *size = fread(lf->buff, 1, sizeof(lf->buff), lf->f); return (*size > 0) ? lf->buff : NULL; } @@ -570,9 +570,8 @@ while ((c = getc(lf.f)) != EOF && c != '\n') ; /* skip first line */ if (c == '\n') c = getc(lf.f); } - if (c == LUA_SIGNATURE[0] && lf.f != stdin) { /* binary file? */ - fclose(lf.f); - lf.f = fopen(filename, "rb"); /* reopen in binary mode */ + if (c == LUA_SIGNATURE[0] && filename) { /* binary file? */ + lf.f = freopen(filename, "rb", lf.f); /* reopen in binary mode */ if (lf.f == NULL) return errfile(L, "reopen", fnameindex); /* skip eventual `#!...' */ while ((c = getc(lf.f)) != EOF && c != LUA_SIGNATURE[0]) ; @@ -581,7 +580,7 @@ ungetc(c, lf.f); status = lua_load(L, getF, &lf, lua_tostring(L, -1)); readstatus = ferror(lf.f); - if (lf.f != stdin) fclose(lf.f); /* close file (even in case of errors) */ + if (filename) fclose(lf.f); /* close file (even in case of errors) */ if (readstatus) { lua_settop(L, fnameindex); /* ignore results from `lua_load' */ return errfile(L, "read", fnameindex); Modified: trunk/lua-5.1.1/src/lauxlib.h =================================================================== --- trunk/lua-5.1.1/src/lauxlib.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lauxlib.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lauxlib.h,v 1.88 2006/04/12 20:31:15 roberto Exp $ +** $Id: lauxlib.h,v 1.88.1.1 2007/12/27 13:02:25 roberto Exp $ ** Auxiliary functions for building Lua libraries ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lbaselib.c =================================================================== --- trunk/lua-5.1.1/src/lbaselib.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lbaselib.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lbaselib.c,v 1.191 2006/06/02 15:34:00 roberto Exp $ +** $Id: lbaselib.c,v 1.191.1.4 2008/01/20 13:53:22 roberto Exp $ ** Basic library ** See Copyright Notice in lua.h */ @@ -114,11 +114,11 @@ } -static void getfunc (lua_State *L) { +static void getfunc (lua_State *L, int opt) { if (lua_isfunction(L, 1)) lua_pushvalue(L, 1); else { lua_Debug ar; - int level = luaL_optint(L, 1, 1); + int level = opt ? luaL_optint(L, 1, 1) : luaL_checkint(L, 1); luaL_argcheck(L, level >= 0, 1, "level must be non-negative"); if (lua_getstack(L, level, &ar) == 0) luaL_argerror(L, 1, "invalid level"); @@ -131,7 +131,7 @@ static int luaB_getfenv (lua_State *L) { - getfunc(L); + getfunc(L, 1); if (lua_iscfunction(L, -1)) /* is a C function? */ lua_pushvalue(L, LUA_GLOBALSINDEX); /* return the thread's global env. */ else @@ -142,7 +142,7 @@ static int luaB_setfenv (lua_State *L) { luaL_checktype(L, 2, LUA_TTABLE); - getfunc(L); + getfunc(L, 0); lua_pushvalue(L, 2); if (lua_isnumber(L, 1) && lua_tonumber(L, 1) == 0) { /* change environment of current thread */ @@ -477,15 +477,52 @@ ** ======================================================= */ +#define CO_RUN 0 /* running */ +#define CO_SUS 1 /* suspended */ +#define CO_NOR 2 /* 'normal' (it resumed another coroutine) */ +#define CO_DEAD 3 + +static const char *const statnames[] = + {"running", "suspended", "normal", "dead"}; + +static int costatus (lua_State *L, lua_State *co) { + if (L == co) return CO_RUN; + switch (lua_status(co)) { + case LUA_YIELD: + return CO_SUS; + case 0: { + lua_Debug ar; + if (lua_getstack(co, 0, &ar) > 0) /* does it have frames? */ + return CO_NOR; /* it is running */ + else if (lua_gettop(co) == 0) + return CO_DEAD; + else + return CO_SUS; /* initial state */ + } + default: /* some error occured */ + return CO_DEAD; + } +} + + +static int luaB_costatus (lua_State *L) { + lua_State *co = lua_tothread(L, 1); + luaL_argcheck(L, co, 1, "coroutine expected"); + lua_pushstring(L, statnames[costatus(L, co)]); + return 1; +} + + static int auxresume (lua_State *L, lua_State *co, int narg) { - int status; + int status = costatus(L, co); if (!lua_checkstack(co, narg)) luaL_error(L, "too many arguments to resume"); - if (lua_status(co) == 0 && lua_gettop(co) == 0) { - lua_pushliteral(L, "cannot resume dead coroutine"); + if (status != CO_SUS) { + lua_pushfstring(L, "cannot resume %s coroutine", statnames[status]); return -1; /* error flag */ } lua_xmove(L, co, narg); + lua_setlevel(L, co); status = lua_resume(co, narg); if (status == 0 || status == LUA_YIELD) { int nres = lua_gettop(co); @@ -556,39 +593,10 @@ } -static int luaB_costatus (lua_State *L) { - lua_State *co = lua_tothread(L, 1); - luaL_argcheck(L, co, 1, "coroutine expected"); - if (L == co) lua_pushliteral(L, "running"); - else { - switch (lua_status(co)) { - case LUA_YIELD: - lua_pushliteral(L, "suspended"); - break; - case 0: { - lua_Debug ar; - if (lua_getstack(co, 0, &ar) > 0) /* does it have frames? */ - lua_pushliteral(L, "normal"); /* it is running */ - else if (lua_gettop(co) == 0) - lua_pushliteral(L, "dead"); - else - lua_pushliteral(L, "suspended"); /* initial state */ - break; - } - default: /* some error occured */ - lua_pushliteral(L, "dead"); - break; - } - } - return 1; -} - - static int luaB_corunning (lua_State *L) { if (lua_pushthread(L)) - return 0; /* main thread is not a coroutine */ - else - return 1; + lua_pushnil(L); /* main thread is not a coroutine */ + return 1; } Modified: trunk/lua-5.1.1/src/lcode.c =================================================================== --- trunk/lua-5.1.1/src/lcode.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lcode.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lcode.c,v 2.25 2006/03/21 19:28:49 roberto Exp $ +** $Id: lcode.c,v 2.25.1.3 2007/12/28 15:32:23 roberto Exp $ ** Code generator for Lua ** See Copyright Notice in lua.h */ @@ -35,15 +35,20 @@ void luaK_nil (FuncState *fs, int from, int n) { Instruction *previous; if (fs->pc > fs->lasttarget) { /* no jumps to current position? */ - if (fs->pc == 0) /* function start? */ - return; /* positions are already clean */ - if (GET_OPCODE(*(previous = &fs->f->code[fs->pc-1])) == OP_LOADNIL) { - int pfrom = GETARG_A(*previous); - int pto = GETARG_B(*previous); - if (pfrom <= from && from <= pto+1) { /* can connect both? */ - if (from+n-1 > pto) - SETARG_B(*previous, from+n-1); - return; + if (fs->pc == 0) { /* function start? */ + if (from >= fs->nactvar) + return; /* positions are already clean */ + } + else { + previous = &fs->f->code[fs->pc-1]; + if (GET_OPCODE(*previous) == OP_LOADNIL) { + int pfrom = GETARG_A(*previous); + int pto = GETARG_B(*previous); + if (pfrom <= from && from <= pto+1) { /* can connect both? */ + if (from+n-1 > pto) + SETARG_B(*previous, from+n-1); + return; + } } } } @@ -657,10 +662,16 @@ if (constfolding(op, e1, e2)) return; else { + int o2 = (op != OP_UNM && op != OP_LEN) ? luaK_exp2RK(fs, e2) : 0; int o1 = luaK_exp2RK(fs, e1); - int o2 = (op != OP_UNM && op != OP_LEN) ? luaK_exp2RK(fs, e2) : 0; - freeexp(fs, e2); - freeexp(fs, e1); + if (o1 > o2) { + freeexp(fs, e1); + freeexp(fs, e2); + } + else { + freeexp(fs, e2); + freeexp(fs, e1); + } e1->u.s.info = luaK_codeABC(fs, op, 0, o1, o2); e1->k = VRELOCABLE; } @@ -688,7 +699,7 @@ e2.t = e2.f = NO_JUMP; e2.k = VKNUM; e2.u.nval = 0; switch (op) { case OPR_MINUS: { - if (e->k == VK) + if (!isnumeral(e)) luaK_exp2anyreg(fs, e); /* cannot operate on non-numeric constants */ codearith(fs, OP_UNM, e, &e2); break; @@ -718,10 +729,15 @@ luaK_exp2nextreg(fs, v); /* operand must be on the `stack' */ break; } - default: { + case OPR_ADD: case OPR_SUB: case OPR_MUL: case OPR_DIV: + case OPR_MOD: case OPR_POW: { if (!isnumeral(v)) luaK_exp2RK(fs, v); break; } + default: { + luaK_exp2RK(fs, v); + break; + } } } Modified: trunk/lua-5.1.1/src/lcode.h =================================================================== --- trunk/lua-5.1.1/src/lcode.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lcode.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lcode.h,v 1.48 2006/03/21 19:28:03 roberto Exp $ +** $Id: lcode.h,v 1.48.1.1 2007/12/27 13:02:25 roberto Exp $ ** Code generator for Lua ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/ldblib.c =================================================================== --- trunk/lua-5.1.1/src/ldblib.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/ldblib.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: ldblib.c,v 1.104 2005/12/29 15:32:11 roberto Exp $ +** $Id: ldblib.c,v 1.104.1.3 2008/01/21 13:11:21 roberto Exp $ ** Interface from Lua to its debug API ** See Copyright Notice in lua.h */ @@ -255,24 +255,25 @@ static int db_sethook (lua_State *L) { - int arg; + int arg, mask, count; + lua_Hook func; lua_State *L1 = getthread(L, &arg); if (lua_isnoneornil(L, arg+1)) { lua_settop(L, arg+1); - lua_sethook(L1, NULL, 0, 0); /* turn off hooks */ + func = NULL; mask = 0; count = 0; /* turn off hooks */ } else { const char *smask = luaL_checkstring(L, arg+2); - int count = luaL_optint(L, arg+3, 0); luaL_checktype(L, arg+1, LUA_TFUNCTION); - lua_sethook(L1, hookf, makemask(smask, count), count); + count = luaL_optint(L, arg+3, 0); + func = hookf; mask = makemask(smask, count); } - gethooktable(L1); - lua_pushlightuserdata(L1, L1); + gethooktable(L); + lua_pushlightuserdata(L, L1); lua_pushvalue(L, arg+1); - lua_xmove(L, L1, 1); - lua_rawset(L1, -3); /* set new hook */ - lua_pop(L1, 1); /* remove hook table */ + lua_rawset(L, -3); /* set new hook */ + lua_pop(L, 1); /* remove hook table */ + lua_sethook(L1, func, mask, count); /* set hooks */ return 0; } @@ -286,11 +287,10 @@ if (hook != NULL && hook != hookf) /* external hook? */ lua_pushliteral(L, "external hook"); else { - gethooktable(L1); - lua_pushlightuserdata(L1, L1); - lua_rawget(L1, -2); /* get hook */ - lua_remove(L1, -2); /* remove hook table */ - lua_xmove(L1, L, 1); + gethooktable(L); + lua_pushlightuserdata(L, L1); + lua_rawget(L, -2); /* get hook */ + lua_remove(L, -2); /* remove hook table */ } lua_pushstring(L, unmakemask(mask, buff)); lua_pushinteger(L, lua_gethookcount(L1)); Modified: trunk/lua-5.1.1/src/ldebug.c =================================================================== --- trunk/lua-5.1.1/src/ldebug.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/ldebug.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: ldebug.c,v 2.29 2005/12/22 16:19:56 roberto Exp $ +** $Id: ldebug.c,v 2.29.1.3 2007/12/28 15:32:23 roberto Exp $ ** Debug Interface ** See Copyright Notice in lua.h */ @@ -432,14 +432,16 @@ break; } case OP_CLOSURE: { - int nup; + int nup, j; check(b < pt->sizep); nup = pt->p[b]->nups; check(pc + nup < pt->sizecode); - for (; nup>0; nup--) { - OpCode op1 = GET_OPCODE(pt->code[pc+nup]); + for (j = 1; j <= nup; j++) { + OpCode op1 = GET_OPCODE(pt->code[pc + j]); check(op1 == OP_GETUPVAL || op1 == OP_MOVE); } + if (reg != NO_REG) /* tracing? */ + pc += nup; /* do not 'execute' these pseudo-instructions */ break; } case OP_VARARG: { @@ -561,8 +563,8 @@ void luaG_concaterror (lua_State *L, StkId p1, StkId p2) { - if (ttisstring(p1)) p1 = p2; - lua_assert(!ttisstring(p1)); + if (ttisstring(p1) || ttisnumber(p1)) p1 = p2; + lua_assert(!ttisstring(p1) && !ttisnumber(p1)); luaG_typeerror(L, p1, "concatenate"); } Modified: trunk/lua-5.1.1/src/ldebug.h =================================================================== --- trunk/lua-5.1.1/src/ldebug.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/ldebug.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: ldebug.h,v 2.3 2005/04/25 19:24:10 roberto Exp $ +** $Id: ldebug.h,v 2.3.1.1 2007/12/27 13:02:25 roberto Exp $ ** Auxiliary functions from Debug Interface module ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/ldo.c =================================================================== --- trunk/lua-5.1.1/src/ldo.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/ldo.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: ldo.c,v 2.38 2006/06/05 19:36:14 roberto Exp $ +** $Id: ldo.c,v 2.38.1.3 2008/01/18 22:31:22 roberto Exp $ ** Stack and Call structure of Lua ** See Copyright Notice in lua.h */ @@ -83,7 +83,7 @@ L->base = L->ci->base; luaF_close(L, L->base); /* close eventual pending closures */ luaD_seterrorobj(L, status, L->base); - L->nCcalls = 0; + L->nCcalls = L->baseCcalls; L->allowhook = 1; restore_stack_limit(L); L->errfunc = 0; @@ -332,7 +332,7 @@ ptrdiff_t fr = savestack(L, firstResult); /* next call may change stack */ luaD_callhook(L, LUA_HOOKRET, -1); if (f_isLua(L->ci)) { /* Lua function? */ - while (L->ci->tailcalls--) /* call hook for eventual tail calls */ + while ((L->hookmask & LUA_MASKRET) && L->ci->tailcalls--) /* tail calls */ luaD_callhook(L, LUA_HOOKTAILRET, -1); } return restorestack(L, fr); @@ -417,22 +417,24 @@ LUA_API int lua_resume (lua_State *L, int nargs) { int status; lua_lock(L); - if (L->status != LUA_YIELD) { - if (L->status != 0) - return resume_error(L, "cannot resume dead coroutine"); - else if (L->ci != L->base_ci) + if (L->status != LUA_YIELD && (L->status != 0 || L->ci != L->base_ci)) return resume_error(L, "cannot resume non-suspended coroutine"); - } + if (L->nCcalls >= LUAI_MAXCCALLS) + return resume_error(L, "C stack overflow"); luai_userstateresume(L, nargs); - lua_assert(L->errfunc == 0 && L->nCcalls == 0); + lua_assert(L->errfunc == 0); + L->baseCcalls = ++L->nCcalls; status = luaD_rawrunprotected(L, resume, L->top - nargs); if (status != 0) { /* error? */ L->status = cast_byte(status); /* mark thread as `dead' */ luaD_seterrorobj(L, status, L->top); L->ci->top = L->top; } - else + else { + lua_assert(L->nCcalls == L->baseCcalls); status = L->status; + } + --L->nCcalls; lua_unlock(L); return status; } @@ -441,7 +443,7 @@ LUA_API int lua_yield (lua_State *L, int nresults) { luai_userstateyield(L, nresults); lua_lock(L); - if (L->nCcalls > 0) + if (L->nCcalls > L->baseCcalls) luaG_runerror(L, "attempt to yield across metamethod/C-call boundary"); L->base = L->top - nresults; /* protect stack slots below */ L->status = LUA_YIELD; Modified: trunk/lua-5.1.1/src/ldo.h =================================================================== --- trunk/lua-5.1.1/src/ldo.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/ldo.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: ldo.h,v 2.7 2005/08/24 16:15:49 roberto Exp $ +** $Id: ldo.h,v 2.7.1.1 2007/12/27 13:02:25 roberto Exp $ ** Stack and Call structure of Lua ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/ldump.c =================================================================== --- trunk/lua-5.1.1/src/ldump.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/ldump.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: ldump.c,v 1.15 2006/02/16 15:53:49 lhf Exp $ +** $Id: ldump.c,v 2.8.1.1 2007/12/27 13:02:25 roberto Exp $ ** save precompiled Lua chunks ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lfunc.c =================================================================== --- trunk/lua-5.1.1/src/lfunc.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lfunc.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lfunc.c,v 2.12 2005/12/22 16:19:56 roberto Exp $ +** $Id: lfunc.c,v 2.12.1.2 2007/12/28 14:58:43 roberto Exp $ ** Auxiliary functions to manipulate prototypes and closures ** See Copyright Notice in lua.h */ @@ -55,7 +55,7 @@ GCObject **pp = &L->openupval; UpVal *p; UpVal *uv; - while ((p = ngcotouv(*pp)) != NULL && p->v >= level) { + while (*pp != NULL && (p = ngcotouv(*pp))->v >= level) { lua_assert(p->v != &p->u.value); if (p->v == level) { /* found a corresponding upvalue? */ if (isdead(g, obj2gco(p))) /* is it dead? */ @@ -96,7 +96,7 @@ void luaF_close (lua_State *L, StkId level) { UpVal *uv; global_State *g = G(L); - while ((uv = ngcotouv(L->openupval)) != NULL && uv->v >= level) { + while (L->openupval != NULL && (uv = ngcotouv(L->openupval))->v >= level) { GCObject *o = obj2gco(uv); lua_assert(!isblack(o) && uv->v != &uv->u.value); L->openupval = uv->next; /* remove from `open' list */ Modified: trunk/lua-5.1.1/src/lfunc.h =================================================================== --- trunk/lua-5.1.1/src/lfunc.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lfunc.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lfunc.h,v 2.4 2005/04/25 19:24:10 roberto Exp $ +** $Id: lfunc.h,v 2.4.1.1 2007/12/27 13:02:25 roberto Exp $ ** Auxiliary functions to manipulate prototypes and closures ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lgc.c =================================================================== --- trunk/lua-5.1.1/src/lgc.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lgc.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lgc.c,v 2.38 2006/05/24 14:34:06 roberto Exp $ +** $Id: lgc.c,v 2.38.1.1 2007/12/27 13:02:25 roberto Exp $ ** Garbage Collector ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lgc.h =================================================================== --- trunk/lua-5.1.1/src/lgc.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lgc.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lgc.h,v 2.15 2005/08/24 16:15:49 roberto Exp $ +** $Id: lgc.h,v 2.15.1.1 2007/12/27 13:02:25 roberto Exp $ ** Garbage Collector ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/linit.c =================================================================== --- trunk/lua-5.1.1/src/linit.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/linit.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: linit.c,v 1.14 2005/12/29 15:32:11 roberto Exp $ +** $Id: linit.c,v 1.14.1.1 2007/12/27 13:02:25 roberto Exp $ ** Initialization of libraries for lua.c ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/liolib.c =================================================================== --- trunk/lua-5.1.1/src/liolib.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/liolib.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: liolib.c,v 2.73 2006/05/08 20:14:16 roberto Exp $ +** $Id: liolib.c,v 2.73.1.3 2008/01/18 17:47:43 roberto Exp $ ** Standard I/O (and system) library ** See Copyright Notice in lua.h */ @@ -51,7 +51,7 @@ } -#define topfile(L) ((FILE **)luaL_checkudata(L, 1, LUA_FILEHANDLE)) +#define tofilep(L) ((FILE **)luaL_checkudata(L, 1, LUA_FILEHANDLE)) static int io_type (lua_State *L) { @@ -70,7 +70,7 @@ static FILE *tofile (lua_State *L) { - FILE **f = topfile(L); + FILE **f = tofilep(L); if (*f == NULL) luaL_error(L, "attempt to use a closed file"); return *f; @@ -93,19 +93,31 @@ /* -** this function has a separated environment, which defines the -** correct __close for 'popen' files +** function to (not) close the standard files stdin, stdout, and stderr */ +static int io_noclose (lua_State *L) { + lua_pushnil(L); + lua_pushliteral(L, "cannot close standard file"); + return 2; +} + + +/* +** function to close 'popen' files +*/ static int io_pclose (lua_State *L) { - FILE **p = topfile(L); + FILE **p = tofilep(L); int ok = lua_pclose(L, *p); *p = NULL; return pushresult(L, ok, NULL); } +/* +** function to close regular files +*/ static int io_fclose (lua_State *L) { - FILE **p = topfile(L); + FILE **p = tofilep(L); int ok = (fclose(*p) == 0); *p = NULL; return pushresult(L, ok, NULL); @@ -128,18 +140,18 @@ static int io_gc (lua_State *L) { - FILE *f = *topfile(L); - /* ignore closed files and standard files */ - if (f != NULL && f != stdin && f != stdout && f != stderr) + FILE *f = *tofilep(L); + /* ignore closed files */ + if (f != NULL) aux_close(L); return 0; } static int io_tostring (lua_State *L) { - FILE *f = *topfile(L); + FILE *f = *tofilep(L); if (f == NULL) - lua_pushstring(L, "file (closed)"); + lua_pushliteral(L, "file (closed)"); else lua_pushfstring(L, "file (%p)", f); return 1; @@ -155,6 +167,10 @@ } +/* +** this function has a separated environment, which defines the +** correct __close for 'popen' files +*/ static int io_popen (lua_State *L) { const char *filename = luaL_checkstring(L, 1); const char *mode = luaL_optstring(L, 2, "r"); @@ -280,7 +296,7 @@ char *p = luaL_prepbuffer(&b); if (fgets(p, LUAL_BUFFERSIZE, f) == NULL) { /* eof? */ luaL_pushresult(&b); /* close buffer */ - return (lua_strlen(L, -1) > 0); /* check whether read something */ + return (lua_objlen(L, -1) > 0); /* check whether read something */ } l = strlen(p); if (l == 0 || p[l-1] != '\n') @@ -308,7 +324,7 @@ n -= nr; /* still have to read `n' chars */ } while (n > 0 && nr == rlen); /* until end of count or eof */ luaL_pushresult(&b); /* close buffer */ - return (n == 0 || lua_strlen(L, -1) > 0); + return (n == 0 || lua_objlen(L, -1) > 0); } @@ -502,31 +518,36 @@ lua_pushvalue(L, -1); lua_rawseti(L, LUA_ENVIRONINDEX, k); } - lua_setfield(L, -2, fname); + lua_pushvalue(L, -2); /* copy environment */ + lua_setfenv(L, -2); /* set it */ + lua_setfield(L, -3, fname); } +static void newfenv (lua_State *L, lua_CFunction cls) { + lua_createtable(L, 0, 1); + lua_pushcfunction(L, cls); + lua_setfield(L, -2, "__close"); +} + + LUALIB_API int luaopen_io (lua_State *L) { createmeta(L); /* create (private) environment (with fields IO_INPUT, IO_OUTPUT, __close) */ - lua_createtable(L, 2, 1); + newfenv(L, io_fclose); lua_replace(L, LUA_ENVIRONINDEX); /* open library */ luaL_register(L, LUA_IOLIBNAME, iolib); /* create (and set) default files */ + newfenv(L, io_noclose); /* close function for default files */ createstdfile(L, stdin, IO_INPUT, "stdin"); createstdfile(L, stdout, IO_OUTPUT, "stdout"); createstdfile(L, stderr, 0, "stderr"); - /* create environment for 'popen' */ + lua_pop(L, 1); /* pop environment for default files */ lua_getfield(L, -1, "popen"); - lua_createtable(L, 0, 1); - lua_pushcfunction(L, io_pclose); - lua_setfield(L, -2, "__close"); - lua_setfenv(L, -2); + newfenv(L, io_pclose); /* create environment for 'popen' */ + lua_setfenv(L, -2); /* set fenv for 'popen' */ lua_pop(L, 1); /* pop 'popen' */ - /* set default close function */ - lua_pushcfunction(L, io_fclose); - lua_setfield(L, LUA_ENVIRONINDEX, "__close"); return 1; } Modified: trunk/lua-5.1.1/src/llex.c =================================================================== --- trunk/lua-5.1.1/src/llex.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/llex.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: llex.c,v 2.20 2006/03/09 18:14:31 roberto Exp $ +** $Id: llex.c,v 2.20.1.1 2007/12/27 13:02:25 roberto Exp $ ** Lexical Analyzer ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/llex.h =================================================================== --- trunk/lua-5.1.1/src/llex.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/llex.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: llex.h,v 1.58 2006/03/23 18:23:32 roberto Exp $ +** $Id: llex.h,v 1.58.1.1 2007/12/27 13:02:25 roberto Exp $ ** Lexical Analyzer ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/llimits.h =================================================================== --- trunk/lua-5.1.1/src/llimits.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/llimits.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: llimits.h,v 1.69 2005/12/27 17:12:00 roberto Exp $ +** $Id: llimits.h,v 1.69.1.1 2007/12/27 13:02:25 roberto Exp $ ** Limits, basic types, and some other `installation-dependent' definitions ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lmathlib.c =================================================================== --- trunk/lua-5.1.1/src/lmathlib.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lmathlib.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lmathlib.c,v 1.67 2005/08/26 17:36:32 roberto Exp $ +** $Id: lmathlib.c,v 1.67.1.1 2007/12/27 13:02:25 roberto Exp $ ** Standard mathematical library ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lmem.c =================================================================== --- trunk/lua-5.1.1/src/lmem.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lmem.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lmem.c,v 1.70 2005/12/26 13:35:47 roberto Exp $ +** $Id: lmem.c,v 1.70.1.1 2007/12/27 13:02:25 roberto Exp $ ** Interface to Memory Manager ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lmem.h =================================================================== --- trunk/lua-5.1.1/src/lmem.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lmem.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lmem.h,v 1.31 2005/04/25 19:24:10 roberto Exp $ +** $Id: lmem.h,v 1.31.1.1 2007/12/27 13:02:25 roberto Exp $ ** Interface to Memory Manager ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/loadlib.c =================================================================== --- trunk/lua-5.1.1/src/loadlib.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/loadlib.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: loadlib.c,v 1.52 2006/04/10 18:27:23 roberto Exp $ +** $Id: loadlib.c,v 1.52.1.2 2007/12/28 14:58:43 roberto Exp $ ** Dynamic library loader for Lua ** See Copyright Notice in lua.h ** @@ -16,9 +16,9 @@ #define loadlib_c #define LUA_LIB +#include "lua.h" + #include "lauxlib.h" -#include "lobject.h" -#include "lua.h" #include "lualib.h" @@ -98,7 +98,7 @@ char buff[MAX_PATH + 1]; char *lb; DWORD nsize = sizeof(buff)/sizeof(char); - DWORD n = GetModuleFileName(NULL, buff, nsize); + DWORD n = GetModuleFileNameA(NULL, buff, nsize); if (n == 0 || n == nsize || (lb = strrchr(buff, '\\')) == NULL) luaL_error(L, "unable to get ModuleFileName"); else { @@ -112,7 +112,7 @@ static void pusherror (lua_State *L) { int error = GetLastError(); char buffer[128]; - if (FormatMessage(FORMAT_MESSAGE_IGNORE_INSERTS | FORMAT_MESSAGE_FROM_SYSTEM, + if (FormatMessageA(FORMAT_MESSAGE_IGNORE_INSERTS | FORMAT_MESSAGE_FROM_SYSTEM, NULL, error, 0, buffer, sizeof(buffer), NULL)) lua_pushstring(L, buffer); else @@ -125,7 +125,7 @@ static void *ll_load (lua_State *L, const char *path) { - HINSTANCE lib = LoadLibrary(path); + HINSTANCE lib = LoadLibraryA(path); if (lib == NULL) pusherror(L); return lib; } @@ -356,15 +356,16 @@ path = lua_tostring(L, -1); if (path == NULL) luaL_error(L, LUA_QL("package.%s") " must be a string", pname); - lua_pushstring(L, ""); /* error accumulator */ + lua_pushliteral(L, ""); /* error accumulator */ while ((path = pushnexttemplate(L, path)) != NULL) { const char *filename; filename = luaL_gsub(L, lua_tostring(L, -1), LUA_PATH_MARK, name); + lua_remove(L, -2); /* remove path template */ if (readable(filename)) /* does file exist and is readable? */ return filename; /* return that file name */ - lua_pop(L, 2); /* remove path template and file name */ - luaO_pushfstring(L, "\n\tno file " LUA_QS, filename); - lua_concat(L, 2); + lua_pushfstring(L, "\n\tno file " LUA_QS, filename); + lua_remove(L, -2); /* remove file name */ + lua_concat(L, 2); /* add entry to possible error message */ } return NULL; /* not found */ } @@ -423,8 +424,8 @@ funcname = mkfuncname(L, name); if ((stat = ll_loadfunc(L, filename, funcname)) != 0) { if (stat != ERRFUNC) loaderror(L, filename); /* real error */ - luaO_pushfstring(L, "\n\tno module " LUA_QS " in file " LUA_QS, - name, filename); + lua_pushfstring(L, "\n\tno module " LUA_QS " in file " LUA_QS, + name, filename); return 1; /* function not found */ } return 1; @@ -438,7 +439,7 @@ luaL_error(L, LUA_QL("package.preload") " must be a table"); lua_getfield(L, -1, name); if (lua_isnil(L, -1)) /* not found? */ - luaO_pushfstring(L, "\n\tno field package.preload['%s']", name); + lua_pushfstring(L, "\n\tno field package.preload['%s']", name); return 1; } @@ -462,7 +463,7 @@ lua_getfield(L, LUA_ENVIRONINDEX, "loaders"); if (!lua_istable(L, -1)) luaL_error(L, LUA_QL("package.loaders") " must be a table"); - lua_pushstring(L, ""); /* error message accumulator */ + lua_pushliteral(L, ""); /* error message accumulator */ for (i=1; ; i++) { lua_rawgeti(L, -2, i); /* get a loader */ if (lua_isnil(L, -1)) @@ -646,8 +647,8 @@ setpath(L, "path", LUA_PATH, LUA_PATH_DEFAULT); /* set field `path' */ setpath(L, "cpath", LUA_CPATH, LUA_CPATH_DEFAULT); /* set field `cpath' */ /* store config information */ - lua_pushstring(L, LUA_DIRSEP "\n" LUA_PATHSEP "\n" LUA_PATH_MARK "\n" - LUA_EXECDIR "\n" LUA_IGMARK); + lua_pushliteral(L, LUA_DIRSEP "\n" LUA_PATHSEP "\n" LUA_PATH_MARK "\n" + LUA_EXECDIR "\n" LUA_IGMARK); lua_setfield(L, -2, "config"); /* set field `loaded' */ luaL_findtable(L, LUA_REGISTRYINDEX, "_LOADED", 2); Modified: trunk/lua-5.1.1/src/lobject.c =================================================================== --- trunk/lua-5.1.1/src/lobject.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lobject.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lobject.c,v 2.22 2006/02/10 17:43:52 roberto Exp $ +** $Id: lobject.c,v 2.22.1.1 2007/12/27 13:02:25 roberto Exp $ ** Some generic functions over Lua objects ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lobject.h =================================================================== --- trunk/lua-5.1.1/src/lobject.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lobject.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lobject.h,v 2.20 2006/01/18 11:37:34 roberto Exp $ +** $Id: lobject.h,v 2.20.1.1 2007/12/27 13:02:25 roberto Exp $ ** Type definitions for Lua objects ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lopcodes.c =================================================================== --- trunk/lua-5.1.1/src/lopcodes.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lopcodes.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lopcodes.c,v 1.37 2005/11/08 19:45:36 roberto Exp $ +** $Id: lopcodes.c,v 1.37.1.1 2007/12/27 13:02:25 roberto Exp $ ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lopcodes.h =================================================================== --- trunk/lua-5.1.1/src/lopcodes.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lopcodes.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lopcodes.h,v 1.125 2006/03/14 19:04:44 roberto Exp $ +** $Id: lopcodes.h,v 1.125.1.1 2007/12/27 13:02:25 roberto Exp $ ** Opcodes for Lua virtual machine ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/loslib.c =================================================================== --- trunk/lua-5.1.1/src/loslib.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/loslib.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: loslib.c,v 1.19 2006/04/26 18:19:49 roberto Exp $ +** $Id: loslib.c,v 1.19.1.3 2008/01/18 16:38:18 roberto Exp $ ** Standard Operating System library ** See Copyright Notice in lua.h */ @@ -146,11 +146,22 @@ setboolfield(L, "isdst", stm->tm_isdst); } else { - char b[256]; - if (strftime(b, sizeof(b), s, stm)) - lua_pushstring(L, b); - else - return luaL_error(L, LUA_QL("date") " format too long"); + char cc[3]; + luaL_Buffer b; + cc[0] = '%'; cc[2] = '\0'; + luaL_buffinit(L, &b); + for (; *s; s++) { + if (*s != '%' || *(s + 1) == '\0') /* no conversion specifier? */ + luaL_addchar(&b, *s); + else { + size_t reslen; + char buff[200]; /* should be big enough for any conversion result */ + cc[1] = *(++s); + reslen = strftime(buff, sizeof(buff), cc, stm); + luaL_addlstring(&b, buff, reslen); + } + } + luaL_pushresult(&b); } return 1; } @@ -204,7 +215,6 @@ static int os_exit (lua_State *L) { exit(luaL_optint(L, 1, EXIT_SUCCESS)); - return 0; /* to avoid warnings */ } static const luaL_Reg syslib[] = { Modified: trunk/lua-5.1.1/src/lparser.c =================================================================== --- trunk/lua-5.1.1/src/lparser.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lparser.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lparser.c,v 2.42 2006/06/05 15:57:59 roberto Exp $ +** $Id: lparser.c,v 2.42.1.3 2007/12/28 15:32:23 roberto Exp $ ** Lua Parser ** See Copyright Notice in lua.h */ @@ -489,7 +489,7 @@ static void listfield (LexState *ls, struct ConsControl *cc) { expr(ls, &cc->v); - luaY_checklimit(ls->fs, cc->na, MAXARG_Bx, "items in a constructor"); + luaY_checklimit(ls->fs, cc->na, MAX_INT, "items in a constructor"); cc->na++; cc->tostore++; } @@ -938,6 +938,8 @@ primaryexp(ls, &nv.v); if (nv.v.k == VLOCAL) check_conflict(ls, lh, &nv.v); + luaY_checklimit(ls->fs, nvars, LUAI_MAXCCALLS - ls->L->nCcalls, + "variables in assignment"); assignment(ls, &nv, nvars+1); } else { /* assignment -> `=' explist1 */ Modified: trunk/lua-5.1.1/src/lparser.h =================================================================== --- trunk/lua-5.1.1/src/lparser.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lparser.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lparser.h,v 1.57 2006/03/09 18:14:31 roberto Exp $ +** $Id: lparser.h,v 1.57.1.1 2007/12/27 13:02:25 roberto Exp $ ** Lua Parser ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lstate.c =================================================================== --- trunk/lua-5.1.1/src/lstate.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lstate.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lstate.c,v 2.36 2006/05/24 14:15:50 roberto Exp $ +** $Id: lstate.c,v 2.36.1.2 2008/01/03 15:20:39 roberto Exp $ ** Global State ** See Copyright Notice in lua.h */ @@ -93,7 +93,7 @@ resethookcount(L); L->openupval = NULL; L->size_ci = 0; - L->nCcalls = 0; + L->nCcalls = L->baseCcalls = 0; L->status = 0; L->base_ci = L->ci = NULL; L->savedpc = NULL; @@ -205,7 +205,7 @@ do { /* repeat until no more errors */ L->ci = L->base_ci; L->base = L->top = L->ci->base; - L->nCcalls = 0; + L->nCcalls = L->baseCcalls = 0; } while (luaD_rawrunprotected(L, callallgcTM, NULL) != 0); lua_assert(G(L)->tmudata == NULL); luai_userstateclose(L); Modified: trunk/lua-5.1.1/src/lstate.h =================================================================== --- trunk/lua-5.1.1/src/lstate.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lstate.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lstate.h,v 2.24 2006/02/06 18:27:59 roberto Exp $ +** $Id: lstate.h,v 2.24.1.2 2008/01/03 15:20:39 roberto Exp $ ** Global State ** See Copyright Notice in lua.h */ @@ -112,6 +112,7 @@ int stacksize; int size_ci; /* size of array `base_ci' */ unsigned short nCcalls; /* number of nested C calls */ + unsigned short baseCcalls; /* nested C calls when resuming coroutine */ lu_byte hookmask; lu_byte allowhook; int basehookcount; Modified: trunk/lua-5.1.1/src/lstring.c =================================================================== --- trunk/lua-5.1.1/src/lstring.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lstring.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lstring.c,v 2.8 2005/12/22 16:19:56 roberto Exp $ +** $Id: lstring.c,v 2.8.1.1 2007/12/27 13:02:25 roberto Exp $ ** String table (keeps all strings handled by Lua) ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lstring.h =================================================================== --- trunk/lua-5.1.1/src/lstring.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lstring.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lstring.h,v 1.43 2005/04/25 19:24:10 roberto Exp $ +** $Id: lstring.h,v 1.43.1.1 2007/12/27 13:02:25 roberto Exp $ ** String table (keep all strings handled by Lua) ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lstrlib.c =================================================================== --- trunk/lua-5.1.1/src/lstrlib.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lstrlib.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lstrlib.c,v 1.132 2006/04/26 20:41:19 roberto Exp $ +** $Id: lstrlib.c,v 1.132.1.3 2007/12/28 15:32:23 roberto Exp $ ** Standard library for string operations and pattern-matching ** See Copyright Notice in lua.h */ @@ -629,10 +629,6 @@ lua_gettable(L, 3); break; } - default: { - luaL_argerror(L, 3, "string/function/table expected"); - return; - } } if (!lua_toboolean(L, -1)) { /* nil or false? */ lua_pop(L, 1); @@ -648,11 +644,15 @@ size_t srcl; const char *src = luaL_checklstring(L, 1, &srcl); const char *p = luaL_checkstring(L, 2); + int tr = lua_type(L, 3); int max_s = luaL_optint(L, 4, srcl+1); int anchor = (*p == '^') ? (p++, 1) : 0; int n = 0; MatchState ms; luaL_Buffer b; + luaL_argcheck(L, tr == LUA_TNUMBER || tr == LUA_TSTRING || + tr == LUA_TFUNCTION || tr == LUA_TTABLE, 3, + "string/function/table expected"); luaL_buffinit(L, &b); ms.L = L; ms.src_init = src; @@ -723,7 +723,7 @@ static const char *scanformat (lua_State *L, const char *strfrmt, char *form) { const char *p = strfrmt; - while (strchr(FLAGS, *p)) p++; /* skip flags */ + while (*p != '\0' && strchr(FLAGS, *p) != NULL) p++; /* skip flags */ if ((size_t)(p - strfrmt) >= sizeof(FLAGS)) luaL_error(L, "invalid format (repeated flags)"); if (isdigit(uchar(*p))) p++; /* skip width */ Modified: trunk/lua-5.1.1/src/ltable.c =================================================================== --- trunk/lua-5.1.1/src/ltable.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/ltable.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: ltable.c,v 2.32 2006/01/18 11:49:02 roberto Exp $ +** $Id: ltable.c,v 2.32.1.2 2007/12/28 15:32:23 roberto Exp $ ** Lua tables (hash) ** See Copyright Notice in lua.h */ @@ -84,8 +84,8 @@ static Node *hashnum (const Table *t, lua_Number n) { unsigned int a[numints]; int i; - n += 1; /* normalize number (avoid -0) */ - lua_assert(sizeof(a) <= sizeof(n)); + if (luai_numeq(n, 0)) /* avoid problems with -0 */ + return gnode(t, 0); memcpy(a, &n, sizeof(a)); for (i = 1; i < numints; i++) a[0] += a[i]; return hashmod(t, a[0]); Modified: trunk/lua-5.1.1/src/ltable.h =================================================================== --- trunk/lua-5.1.1/src/ltable.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/ltable.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: ltable.h,v 2.10 2006/01/10 13:13:06 roberto Exp $ +** $Id: ltable.h,v 2.10.1.1 2007/12/27 13:02:25 roberto Exp $ ** Lua tables (hash) ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/ltablib.c =================================================================== --- trunk/lua-5.1.1/src/ltablib.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/ltablib.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: ltablib.c,v 1.38 2005/10/23 17:38:15 roberto Exp $ +** $Id: ltablib.c,v 1.38.1.2 2007/12/28 15:32:23 roberto Exp $ ** Library for Table Manipulation ** See Copyright Notice in lua.h */ @@ -118,7 +118,8 @@ static int tremove (lua_State *L) { int e = aux_getn(L, 1); int pos = luaL_optint(L, 2, e); - if (e == 0) return 0; /* table is `empty' */ + if (!(1 <= pos && pos <= e)) /* position is outside bounds? */ + return 0; /* nothing to remove */ luaL_setn(L, 1, e - 1); /* t.n = n-1 */ lua_rawgeti(L, 1, pos); /* result = t[pos] */ for ( ;pos SHRT_MAX ? SHRT_MAX : LUAI_MCS_AUX) @@ -666,7 +667,7 @@ */ #if defined(LUA_USE_POPEN) -#define lua_popen(L,c,m) ((void)L, popen(c,m)) +#define lua_popen(L,c,m) ((void)L, fflush(NULL), popen(c,m)) #define lua_pclose(L,file) ((void)L, (pclose(file) != -1)) #elif defined(LUA_WIN) Modified: trunk/lua-5.1.1/src/lualib.h =================================================================== --- trunk/lua-5.1.1/src/lualib.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lualib.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lualib.h,v 1.36 2005/12/27 17:12:00 roberto Exp $ +** $Id: lualib.h,v 1.36.1.1 2007/12/27 13:02:25 roberto Exp $ ** Lua standard libraries ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lundump.c =================================================================== --- trunk/lua-5.1.1/src/lundump.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lundump.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lundump.c,v 1.60 2006/02/16 15:53:49 lhf Exp $ +** $Id: lundump.c,v 2.7.1.2 2008/01/18 16:39:11 roberto Exp $ ** load precompiled Lua chunks ** See Copyright Notice in lua.h */ @@ -29,6 +29,7 @@ #ifdef LUAC_TRUST_BINARIES #define IF(c,s) +#define error(S,s) #else #define IF(c,s) if (c) error(S,s) @@ -47,6 +48,7 @@ static void LoadBlock(LoadState* S, void* b, size_t size) { size_t r=luaZ_read(S->Z,b,size); + UNUSED(r); IF (r!=0, "unexpected end"); } @@ -122,7 +124,7 @@ setsvalue2n(S->L,o,LoadString(S)); break; default: - IF (1, "bad constant"); + error(S,"bad constant"); break; } } Modified: trunk/lua-5.1.1/src/lundump.h =================================================================== --- trunk/lua-5.1.1/src/lundump.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lundump.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lundump.h,v 1.40 2005/11/11 14:03:13 lhf Exp $ +** $Id: lundump.h,v 1.37.1.1 2007/12/27 13:02:25 roberto Exp $ ** load precompiled Lua chunks ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lvm.c =================================================================== --- trunk/lua-5.1.1/src/lvm.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lvm.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lvm.c,v 2.63 2006/06/05 15:58:59 roberto Exp $ +** $Id: lvm.c,v 2.63.1.3 2007/12/28 15:32:23 roberto Exp $ ** Lua virtual machine ** See Copyright Notice in lua.h */ @@ -61,11 +61,9 @@ lu_byte mask = L->hookmask; const Instruction *oldpc = L->savedpc; L->savedpc = pc; - if (mask > LUA_MASKLINE) { /* instruction-hook set? */ - if (L->hookcount == 0) { - resethookcount(L); - luaD_callhook(L, LUA_HOOKCOUNT, -1); - } + if ((mask & LUA_MASKCOUNT) && L->hookcount == 0) { + resethookcount(L); + luaD_callhook(L, LUA_HOOKCOUNT, -1); } if (mask & LUA_MASKLINE) { Proto *p = ci_func(L->ci)->l.p; @@ -165,7 +163,7 @@ const TValue *tm = luaT_gettmbyobj(L, p1, event); /* try first operand */ if (ttisnil(tm)) tm = luaT_gettmbyobj(L, p2, event); /* try second operand */ - if (!ttisfunction(tm)) return 0; + if (ttisnil(tm)) return 0; callTMres(L, res, tm, p1, p2); return 1; } @@ -281,10 +279,12 @@ do { StkId top = L->base + last + 1; int n = 2; /* number of elements handled in this pass (at least 2) */ - if (!tostring(L, top-2) || !tostring(L, top-1)) { + if (!(ttisstring(top-2) || ttisnumber(top-2)) || !tostring(L, top-1)) { if (!call_binTM(L, top-2, top-1, top-2, TM_CONCAT)) luaG_concaterror(L, top-2, top-1); - } else if (tsvalue(top-1)->len > 0) { /* if len=0, do nothing */ + } else if (tsvalue(top-1)->len == 0) /* second op is empty? */ + (void)tostring(L, top - 2); /* result is first op (as string) */ + else { /* at least two string values; get as many as possible */ size_t tl = tsvalue(top-1)->len; char *buffer; Modified: trunk/lua-5.1.1/src/lvm.h =================================================================== --- trunk/lua-5.1.1/src/lvm.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lvm.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lvm.h,v 2.5 2005/08/22 18:54:49 roberto Exp $ +** $Id: lvm.h,v 2.5.1.1 2007/12/27 13:02:25 roberto Exp $ ** Lua virtual machine ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lzio.c =================================================================== --- trunk/lua-5.1.1/src/lzio.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lzio.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lzio.c,v 1.31 2005/06/03 20:15:29 roberto Exp $ +** $Id: lzio.c,v 1.31.1.1 2007/12/27 13:02:25 roberto Exp $ ** a generic input stream interface ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/lzio.h =================================================================== --- trunk/lua-5.1.1/src/lzio.h 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/lzio.h 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: lzio.h,v 1.21 2005/05/17 19:49:15 roberto Exp $ +** $Id: lzio.h,v 1.21.1.1 2007/12/27 13:02:25 roberto Exp $ ** Buffered streams ** See Copyright Notice in lua.h */ Modified: trunk/lua-5.1.1/src/print.c =================================================================== --- trunk/lua-5.1.1/src/print.c 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.1/src/print.c 2008-03-16 19:40:23 UTC (rev 557) @@ -1,5 +1,5 @@ /* -** $Id: print.c,v 1.55 2006/05/31 13:30:05 lhf Exp $ +** $Id: print.c,v 1.55a 2006/05/31 13:30:05 lhf Exp $ ** print bytecodes ** See Copyright Notice in lua.h */ @@ -23,8 +23,7 @@ static void PrintString(const TString* ts) { const char* s=getstr(ts); - int n=ts->tsv.len; - int i; + size_t i,n=ts->tsv.len; putchar('"'); for (i=0; i Author: icculus Date: 2008-03-16 15:46:23 -0400 (Sun, 16 Mar 2008) New Revision: 558 Added: trunk/lua-5.1.3/ trunk/lua-5.1.3/COPYRIGHT trunk/lua-5.1.3/HISTORY trunk/lua-5.1.3/INSTALL trunk/lua-5.1.3/Makefile trunk/lua-5.1.3/README trunk/lua-5.1.3/doc/ trunk/lua-5.1.3/etc/ trunk/lua-5.1.3/src/ Removed: trunk/lua-5.1.3/COPYRIGHT trunk/lua-5.1.3/HISTORY trunk/lua-5.1.3/INSTALL trunk/lua-5.1.3/Makefile trunk/lua-5.1.3/README trunk/lua-5.1.3/doc/ trunk/lua-5.1.3/etc/ trunk/lua-5.1.3/src/ Modified: trunk/CMakeLists.txt Log: Renamed Lua directory to correct for new version. Modified: trunk/CMakeLists.txt =================================================================== --- trunk/CMakeLists.txt 2008-03-16 19:40:23 UTC (rev 557) +++ trunk/CMakeLists.txt 2008-03-16 19:46:23 UTC (rev 558) @@ -54,7 +54,7 @@ ADD_DEFINITIONS(-D_THREAD_SAFE) INCLUDE_DIRECTORIES(.) -INCLUDE_DIRECTORIES(lua-5.1.1/src) +INCLUDE_DIRECTORIES(lua-5.1.3/src) IF(WINDOWS) ADD_DEFINITIONS(-DPLATFORM_WINDOWS=1) @@ -75,6 +75,7 @@ IF(BEOS) ADD_DEFINITIONS(-DPLATFORM_BEOS=1) + ADD_DEFINITIONS(-DLUA_USE_POSIX=1) # !!! FIXME: Workaround for lua issue...fix this better. ADD_DEFINITIONS(-D_setjmp=setjmp) ADD_DEFINITIONS(-D_longjmp=longjmp) @@ -82,8 +83,8 @@ IF(UNIX) ADD_DEFINITIONS(-DPLATFORM_UNIX=1) - ADD_DEFINITIONS(-DLUA_USE_POSIX=1) IF(NOT MACOSX AND NOT BEOS) + ADD_DEFINITIONS(-DLUA_USE_POSIX=1) ADD_DEFINITIONS(-DLUA_USE_DLOPEN=1) ENDIF(NOT MACOSX AND NOT BEOS) ENDIF(UNIX) @@ -165,7 +166,7 @@ ${LIBFETCH_DIR}/http.c ) -SET(LUA_DIR lua-5.1.1) +SET(LUA_DIR lua-5.1.3) SET(LUA_SRCS ${LUA_DIR}/src/lapi.c ${LUA_DIR}/src/ldebug.c Copied: trunk/lua-5.1.3 (from rev 556, trunk/lua-5.1.1) Deleted: trunk/lua-5.1.3/COPYRIGHT =================================================================== --- trunk/lua-5.1.1/COPYRIGHT 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.3/COPYRIGHT 2008-03-16 19:46:23 UTC (rev 558) @@ -1,34 +0,0 @@ -Lua License ------------ - -Lua is licensed under the terms of the MIT license reproduced below. -This means that Lua is free software and can be used for both academic -and commercial purposes at absolutely no cost. - -For details and rationale, see http://www.lua.org/license.html . - -=============================================================================== - -Copyright (C) 1994-2006 Lua.org, PUC-Rio. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - -=============================================================================== - -(end of COPYRIGHT) Copied: trunk/lua-5.1.3/COPYRIGHT (from rev 557, trunk/lua-5.1.1/COPYRIGHT) =================================================================== --- trunk/lua-5.1.3/COPYRIGHT (rev 0) +++ trunk/lua-5.1.3/COPYRIGHT 2008-03-16 19:46:23 UTC (rev 558) @@ -0,0 +1,34 @@ +Lua License +----------- + +Lua is licensed under the terms of the MIT license reproduced below. +This means that Lua is free software and can be used for both academic +and commercial purposes at absolutely no cost. + +For details and rationale, see http://www.lua.org/license.html . + +=============================================================================== + +Copyright (C) 1994-2008 Lua.org, PUC-Rio. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +=============================================================================== + +(end of COPYRIGHT) Deleted: trunk/lua-5.1.3/HISTORY =================================================================== --- trunk/lua-5.1.1/HISTORY 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.3/HISTORY 2008-03-16 19:46:23 UTC (rev 558) @@ -1,183 +0,0 @@ -HISTORY for Lua 5.1 - -* Changes from version 5.0 to 5.1 - ------------------------------- - Language: - + new module system. - + new semantics for control variables of fors. - + new semantics for setn/getn. - + new syntax/semantics for varargs. - + new long strings and comments. - + new `mod' operator (`%') - + new length operator #t - + metatables for all types - API: - + new functions: lua_createtable, lua_get(set)field, lua_push(to)integer. - + user supplies memory allocator (lua_open becomes lua_newstate). - + luaopen_* functionst must be called through Lua. - Implementation: - + new configuration scheme via luaconf.h. - + incremental garbage collection. - + better handling of end-of-line in the lexer. - + fully reentrant parser (new Lua function `load') - + better support for 64-bit machines. - + native loadlib support for Mac OS X. - + standard distribution in only one library (lualib.a merged into lua.a) - -* Changes from version 4.0 to 5.0 - ------------------------------- - Language: - + lexical scoping. - + Lua coroutines. - + standard libraries now packaged in tables. - + tags replaced by metatables and tag methods replaced by metamethods, - stored in metatables. - + proper tail calls. - + each function can have its own global table, which can be shared. - + new __newindex metamethod, called when we insert a new key into a table. - + new block comments: --[[ ... ]]. - + new generic for. - + new weak tables. - + new boolean type. - + new syntax "local function". - + (f()) returns the first value returned by f. - + {f()} fills a table with all values returned by f. - + \n ignored in [[\n . - + fixed and-or priorities. - + more general syntax for function definition (e.g. function a.x.y:f()...end). - + more general syntax for function calls (e.g. (print or write)(9)). - + new functions (time/date, tmpfile, unpack, require, load*, etc.). - API: - + chunks are loaded by using lua_load; new luaL_loadfile and luaL_loadbuffer. - + introduced lightweight userdata, a simple "void*" without a metatable. - + new error handling protocol: the core no longer prints error messages; - all errors are reported to the caller on the stack. - + new lua_atpanic for host cleanup. - + new, signal-safe, hook scheme. - Implementation: - + new license: MIT. - + new, faster, register-based virtual machine. - + support for external multithreading and coroutines. - + new and consistent error message format. - + the core no longer needs "stdio.h" for anything (except for a single - use of sprintf to convert numbers to strings). - + lua.c now runs the environment variable LUA_INIT, if present. It can - be "@filename", to run a file, or the chunk itself. - + support for user extensions in lua.c. - sample implementation given for command line editing. - + new dynamic loading library, active by default on several platforms. - + safe garbage-collector metamethods. - + precompiled bytecodes checked for integrity (secure binary dostring). - + strings are fully aligned. - + position capture in string.find. - + read('*l') can read lines with embedded zeros. - -* Changes from version 3.2 to 4.0 - ------------------------------- - Language: - + new "break" and "for" statements (both numerical and for tables). - + uniform treatment of globals: globals are now stored in a Lua table. - + improved error messages. - + no more '$debug': full speed *and* full debug information. - + new read form: read(N) for next N bytes. - + general read patterns now deprecated. - (still available with -DCOMPAT_READPATTERNS.) - + all return values are passed as arguments for the last function - (old semantics still available with -DLUA_COMPAT_ARGRET) - + garbage collection tag methods for tables now deprecated. - + there is now only one tag method for order. - API: - + New API: fully re-entrant, simpler, and more efficient. - + New debug API. - Implementation: - + faster than ever: cleaner virtual machine and new hashing algorithm. - + non-recursive garbage-collector algorithm. - + reduced memory usage for programs with many strings. - + improved treatment for memory allocation errors. - + improved support for 16-bit machines (we hope). - + code now compiles unmodified as both ANSI C and C++. - + numbers in bases other than 10 are converted using strtoul. - + new -f option in Lua to support #! scripts. - + luac can now combine text and binaries. - -* Changes from version 3.1 to 3.2 - ------------------------------- - + redirected all output in Lua's core to _ERRORMESSAGE and _ALERT. - + increased limit on the number of constants and globals per function - (from 2^16 to 2^24). - + debugging info (lua_debug and hooks) moved into lua_state and new API - functions provided to get and set this info. - + new debug lib gives full debugging access within Lua. - + new table functions "foreachi", "sort", "tinsert", "tremove", "getn". - + new io functions "flush", "seek". - -* Changes from version 3.0 to 3.1 - ------------------------------- - + NEW FEATURE: anonymous functions with closures (via "upvalues"). - + new syntax: - - local variables in chunks. - - better scope control with DO block END. - - constructors can now be also written: { record-part; list-part }. - - more general syntax for function calls and lvalues, e.g.: - f(x).y=1 - o:f(x,y):g(z) - f"string" is sugar for f("string") - + strings may now contain arbitrary binary data (e.g., embedded zeros). - + major code re-organization and clean-up; reduced module interdependecies. - + no arbitrary limits on the total number of constants and globals. - + support for multiple global contexts. - + better syntax error messages. - + new traversal functions "foreach" and "foreachvar". - + the default for numbers is now double. - changing it to use floats or longs is easy. - + complete debug information stored in pre-compiled chunks. - + sample interpreter now prompts user when run interactively, and also - handles control-C interruptions gracefully. - -* Changes from version 2.5 to 3.0 - ------------------------------- - + NEW CONCEPT: "tag methods". - Tag methods replace fallbacks as the meta-mechanism for extending the - semantics of Lua. Whereas fallbacks had a global nature, tag methods - work on objects having the same tag (e.g., groups of tables). - Existing code that uses fallbacks should work without change. - + new, general syntax for constructors {[exp] = exp, ... }. - + support for handling variable number of arguments in functions (varargs). - + support for conditional compilation ($if ... $else ... $end). - + cleaner semantics in API simplifies host code. - + better support for writing libraries (auxlib.h). - + better type checking and error messages in the standard library. - + luac can now also undump. - -* Changes from version 2.4 to 2.5 - ------------------------------- - + io and string libraries are now based on pattern matching; - the old libraries are still available for compatibility - + dofile and dostring can now return values (via return statement) - + better support for 16- and 64-bit machines - + expanded documentation, with more examples - -* Changes from version 2.2 to 2.4 - ------------------------------- - + external compiler creates portable binary files that can be loaded faster - + interface for debugging and profiling - + new "getglobal" fallback - + new functions for handling references to Lua objects - + new functions in standard lib - + only one copy of each string is stored - + expanded documentation, with more examples - -* Changes from version 2.1 to 2.2 - ------------------------------- - + functions now may be declared with any "lvalue" as a name - + garbage collection of functions - + support for pipes - -* Changes from version 1.1 to 2.1 - ------------------------------- - + object-oriented support - + fallbacks - + simplified syntax for tables - + many internal improvements - -(end of HISTORY) Copied: trunk/lua-5.1.3/HISTORY (from rev 557, trunk/lua-5.1.1/HISTORY) =================================================================== --- trunk/lua-5.1.3/HISTORY (rev 0) +++ trunk/lua-5.1.3/HISTORY 2008-03-16 19:46:23 UTC (rev 558) @@ -0,0 +1,183 @@ +HISTORY for Lua 5.1 + +* Changes from version 5.0 to 5.1 + ------------------------------- + Language: + + new module system. + + new semantics for control variables of fors. + + new semantics for setn/getn. + + new syntax/semantics for varargs. + + new long strings and comments. + + new `mod' operator (`%') + + new length operator #t + + metatables for all types + API: + + new functions: lua_createtable, lua_get(set)field, lua_push(to)integer. + + user supplies memory allocator (lua_open becomes lua_newstate). + + luaopen_* functions must be called through Lua. + Implementation: + + new configuration scheme via luaconf.h. + + incremental garbage collection. + + better handling of end-of-line in the lexer. + + fully reentrant parser (new Lua function `load') + + better support for 64-bit machines. + + native loadlib support for Mac OS X. + + standard distribution in only one library (lualib.a merged into lua.a) + +* Changes from version 4.0 to 5.0 + ------------------------------- + Language: + + lexical scoping. + + Lua coroutines. + + standard libraries now packaged in tables. + + tags replaced by metatables and tag methods replaced by metamethods, + stored in metatables. + + proper tail calls. + + each function can have its own global table, which can be shared. + + new __newindex metamethod, called when we insert a new key into a table. + + new block comments: --[[ ... ]]. + + new generic for. + + new weak tables. + + new boolean type. + + new syntax "local function". + + (f()) returns the first value returned by f. + + {f()} fills a table with all values returned by f. + + \n ignored in [[\n . + + fixed and-or priorities. + + more general syntax for function definition (e.g. function a.x.y:f()...end). + + more general syntax for function calls (e.g. (print or write)(9)). + + new functions (time/date, tmpfile, unpack, require, load*, etc.). + API: + + chunks are loaded by using lua_load; new luaL_loadfile and luaL_loadbuffer. + + introduced lightweight userdata, a simple "void*" without a metatable. + + new error handling protocol: the core no longer prints error messages; + all errors are reported to the caller on the stack. + + new lua_atpanic for host cleanup. + + new, signal-safe, hook scheme. + Implementation: + + new license: MIT. + + new, faster, register-based virtual machine. + + support for external multithreading and coroutines. + + new and consistent error message format. + + the core no longer needs "stdio.h" for anything (except for a single + use of sprintf to convert numbers to strings). + + lua.c now runs the environment variable LUA_INIT, if present. It can + be "@filename", to run a file, or the chunk itself. + + support for user extensions in lua.c. + sample implementation given for command line editing. + + new dynamic loading library, active by default on several platforms. + + safe garbage-collector metamethods. + + precompiled bytecodes checked for integrity (secure binary dostring). + + strings are fully aligned. + + position capture in string.find. + + read('*l') can read lines with embedded zeros. + +* Changes from version 3.2 to 4.0 + ------------------------------- + Language: + + new "break" and "for" statements (both numerical and for tables). + + uniform treatment of globals: globals are now stored in a Lua table. + + improved error messages. + + no more '$debug': full speed *and* full debug information. + + new read form: read(N) for next N bytes. + + general read patterns now deprecated. + (still available with -DCOMPAT_READPATTERNS.) + + all return values are passed as arguments for the last function + (old semantics still available with -DLUA_COMPAT_ARGRET) + + garbage collection tag methods for tables now deprecated. + + there is now only one tag method for order. + API: + + New API: fully re-entrant, simpler, and more efficient. + + New debug API. + Implementation: + + faster than ever: cleaner virtual machine and new hashing algorithm. + + non-recursive garbage-collector algorithm. + + reduced memory usage for programs with many strings. + + improved treatment for memory allocation errors. + + improved support for 16-bit machines (we hope). + + code now compiles unmodified as both ANSI C and C++. + + numbers in bases other than 10 are converted using strtoul. + + new -f option in Lua to support #! scripts. + + luac can now combine text and binaries. + +* Changes from version 3.1 to 3.2 + ------------------------------- + + redirected all output in Lua's core to _ERRORMESSAGE and _ALERT. + + increased limit on the number of constants and globals per function + (from 2^16 to 2^24). + + debugging info (lua_debug and hooks) moved into lua_state and new API + functions provided to get and set this info. + + new debug lib gives full debugging access within Lua. + + new table functions "foreachi", "sort", "tinsert", "tremove", "getn". + + new io functions "flush", "seek". + +* Changes from version 3.0 to 3.1 + ------------------------------- + + NEW FEATURE: anonymous functions with closures (via "upvalues"). + + new syntax: + - local variables in chunks. + - better scope control with DO block END. + - constructors can now be also written: { record-part; list-part }. + - more general syntax for function calls and lvalues, e.g.: + f(x).y=1 + o:f(x,y):g(z) + f"string" is sugar for f("string") + + strings may now contain arbitrary binary data (e.g., embedded zeros). + + major code re-organization and clean-up; reduced module interdependecies. + + no arbitrary limits on the total number of constants and globals. + + support for multiple global contexts. + + better syntax error messages. + + new traversal functions "foreach" and "foreachvar". + + the default for numbers is now double. + changing it to use floats or longs is easy. + + complete debug information stored in pre-compiled chunks. + + sample interpreter now prompts user when run interactively, and also + handles control-C interruptions gracefully. + +* Changes from version 2.5 to 3.0 + ------------------------------- + + NEW CONCEPT: "tag methods". + Tag methods replace fallbacks as the meta-mechanism for extending the + semantics of Lua. Whereas fallbacks had a global nature, tag methods + work on objects having the same tag (e.g., groups of tables). + Existing code that uses fallbacks should work without change. + + new, general syntax for constructors {[exp] = exp, ... }. + + support for handling variable number of arguments in functions (varargs). + + support for conditional compilation ($if ... $else ... $end). + + cleaner semantics in API simplifies host code. + + better support for writing libraries (auxlib.h). + + better type checking and error messages in the standard library. + + luac can now also undump. + +* Changes from version 2.4 to 2.5 + ------------------------------- + + io and string libraries are now based on pattern matching; + the old libraries are still available for compatibility + + dofile and dostring can now return values (via return statement) + + better support for 16- and 64-bit machines + + expanded documentation, with more examples + +* Changes from version 2.2 to 2.4 + ------------------------------- + + external compiler creates portable binary files that can be loaded faster + + interface for debugging and profiling + + new "getglobal" fallback + + new functions for handling references to Lua objects + + new functions in standard lib + + only one copy of each string is stored + + expanded documentation, with more examples + +* Changes from version 2.1 to 2.2 + ------------------------------- + + functions now may be declared with any "lvalue" as a name + + garbage collection of functions + + support for pipes + +* Changes from version 1.1 to 2.1 + ------------------------------- + + object-oriented support + + fallbacks + + simplified syntax for tables + + many internal improvements + +(end of HISTORY) Deleted: trunk/lua-5.1.3/INSTALL =================================================================== --- trunk/lua-5.1.1/INSTALL 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.3/INSTALL 2008-03-16 19:46:23 UTC (rev 558) @@ -1,96 +0,0 @@ -INSTALL for Lua 5.1 - -* Building Lua - ------------ - Lua is built in the src directory, but the build process can be - controlled from the top-level Makefile. - - Building Lua on Unix systems should be very easy. First do "make" and - see if your platform is listed. If so, just do "make xxx", where xxx - is your platform name. The platforms currently supported are: - ansi bsd generic linux macosx mingw posix solaris - - See below for customization instructions and for instructions on how - to build with other Windows compilers. - - If you want to check that Lua has been built correctly, do "make test" - after building Lua. Also, have a look at the example programs in test. - -* Installing Lua - -------------- - Once you have built Lua, you may want to install it in an official - place in your system. In this case, do "make install". The official - place and the way to install files are defined in Makefile. You must - have the right permissions to install files. - - If you want to build and install Lua in one step, do "make xxx install", - where xxx is your platform name. - - If you want to install Lua locally, then do "make local". This will - create directories bin, include, lib, man, and install Lua there as - follows: - - bin: lua luac - include: lua.h luaconf.h lualib.h lauxlib.h lua.hpp - lib: liblua.a - man/man1: lua.1 luac.1 - - These are the only directories you need for development. - - There are man pages for lua and luac, in both nroff and html, and a - reference manual in html in doc, some sample code in test, and some - useful stuff in etc. You don't need these directories for development. - - If you want to install Lua locally, but in some other directory, do - "make install INSTALL_TOP=xxx", where xxx is your chosen directory. - - See below for instructions for Windows and other systems. - -* Customization - ------------- - Three things can be customized by editing a file: - - Where and how to install Lua -- edit Makefile. - - How to build Lua -- edit src/Makefile. - - Lua features -- edit src/luaconf.h. - - You don't actually need to edit the Makefiles because you may set the - relevant variables when invoking make. - - On the other hand, if you need to select some Lua features, you'll need - to edit src/luaconf.h. The edited file will be the one installed, and - it will be used by any Lua clients that you build, to ensure consistency. - - We strongly recommend that you enable dynamic loading. This is done - automatically for all platforms listed above that have this feature - (and also Windows). See src/luaconf.h and also src/Makefile. - -* Building Lua on Windows and other systems - ----------------------------------------- - If you're not using the usual Unix tools, then the instructions for - building Lua depend on the compiler you use. You'll need to create - projects (or whatever your compiler uses) for building the library, - the interpreter, and the compiler, as follows: - - library: lapi.c lcode.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c - lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c - ltable.c ltm.c lundump.c lvm.c lzio.c - lauxlib.c lbaselib.c ldblib.c liolib.c lmathlib.c loslib.c - ltablib.c lstrlib.c loadlib.c linit.c - - interpreter: library, lua.c - - compiler: library, luac.c print.c - - If you use Visual Studio .NET, you can use etc/luavs.bat - in its "Command Prompt". - - If all you want is to build the Lua interpreter, you may put all .c files - in a single project, except for luac.c and print.c. Or just use etc/all.c. - - To use Lua as a library in your own programs, you'll need to know how to - create and use libraries with your compiler. - - As mentioned above, you may edit luaconf.h to select some features before - building Lua. - -(end of INSTALL) Copied: trunk/lua-5.1.3/INSTALL (from rev 557, trunk/lua-5.1.1/INSTALL) =================================================================== --- trunk/lua-5.1.3/INSTALL (rev 0) +++ trunk/lua-5.1.3/INSTALL 2008-03-16 19:46:23 UTC (rev 558) @@ -0,0 +1,99 @@ +INSTALL for Lua 5.1 + +* Building Lua + ------------ + Lua is built in the src directory, but the build process can be + controlled from the top-level Makefile. + + Building Lua on Unix systems should be very easy. First do "make" and + see if your platform is listed. If so, just do "make xxx", where xxx + is your platform name. The platforms currently supported are: + aix ansi bsd freebsd generic linux macosx mingw posix solaris + + If your platform is not listed, try the closest one or posix, generic, + ansi, in this order. + + See below for customization instructions and for instructions on how + to build with other Windows compilers. + + If you want to check that Lua has been built correctly, do "make test" + after building Lua. Also, have a look at the example programs in test. + +* Installing Lua + -------------- + Once you have built Lua, you may want to install it in an official + place in your system. In this case, do "make install". The official + place and the way to install files are defined in Makefile. You must + have the right permissions to install files. + + If you want to build and install Lua in one step, do "make xxx install", + where xxx is your platform name. + + If you want to install Lua locally, then do "make local". This will + create directories bin, include, lib, man, and install Lua there as + follows: + + bin: lua luac + include: lua.h luaconf.h lualib.h lauxlib.h lua.hpp + lib: liblua.a + man/man1: lua.1 luac.1 + + These are the only directories you need for development. + + There are man pages for lua and luac, in both nroff and html, and a + reference manual in html in doc, some sample code in test, and some + useful stuff in etc. You don't need these directories for development. + + If you want to install Lua locally, but in some other directory, do + "make install INSTALL_TOP=xxx", where xxx is your chosen directory. + + See below for instructions for Windows and other systems. + +* Customization + ------------- + Three things can be customized by editing a file: + - Where and how to install Lua -- edit Makefile. + - How to build Lua -- edit src/Makefile. + - Lua features -- edit src/luaconf.h. + + You don't actually need to edit the Makefiles because you may set the + relevant variables when invoking make. + + On the other hand, if you need to select some Lua features, you'll need + to edit src/luaconf.h. The edited file will be the one installed, and + it will be used by any Lua clients that you build, to ensure consistency. + + We strongly recommend that you enable dynamic loading. This is done + automatically for all platforms listed above that have this feature + (and also Windows). See src/luaconf.h and also src/Makefile. + +* Building Lua on Windows and other systems + ----------------------------------------- + If you're not using the usual Unix tools, then the instructions for + building Lua depend on the compiler you use. You'll need to create + projects (or whatever your compiler uses) for building the library, + the interpreter, and the compiler, as follows: + + library: lapi.c lcode.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c + lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c + ltable.c ltm.c lundump.c lvm.c lzio.c + lauxlib.c lbaselib.c ldblib.c liolib.c lmathlib.c loslib.c + ltablib.c lstrlib.c loadlib.c linit.c + + interpreter: library, lua.c + + compiler: library, luac.c print.c + + If you use Visual Studio .NET, you can use etc/luavs.bat in its + "Command Prompt". + + If all you want is to build the Lua interpreter, you may put all .c files + in a single project, except for luac.c and print.c. Or just use etc/all.c. + + To use Lua as a library in your own programs, you'll need to know how to + create and use libraries with your compiler. + + As mentioned above, you may edit luaconf.h to select some features before + building Lua. + +(end of INSTALL) Deleted: trunk/lua-5.1.3/Makefile =================================================================== --- trunk/lua-5.1.1/Makefile 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.3/Makefile 2008-03-16 19:46:23 UTC (rev 558) @@ -1,129 +0,0 @@ -# makefile for installing Lua -# see INSTALL for installation instructions -# see src/Makefile and src/luaconf.h for further customization - -# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= - -# Your platform. See PLATS for possible values. -PLAT= none - -# Where to install. The installation starts in the src directory, so take care -# if INSTALL_TOP is not an absolute path. (Man pages are installed from the -# doc directory.) -# -INSTALL_TOP= /usr/local -INSTALL_BIN= $(INSTALL_TOP)/bin -INSTALL_INC= $(INSTALL_TOP)/include -INSTALL_LIB= $(INSTALL_TOP)/lib -INSTALL_MAN= $(INSTALL_TOP)/man/man1 -INSTALL_LMOD= $(INSTALL_TOP)/share/lua/$V -INSTALL_CMOD= $(INSTALL_TOP)/lib/lua/$V - -# How to install. You may prefer "install" instead of "cp" if you have it. -# To remove debug information from binaries, use "install -s" in INSTALL_EXEC. -# -INSTALL_EXEC= $(CP) -INSTALL_DATA= $(CP) -#INSTALL_EXEC= $(INSTALL) -m 0755 -#INSTALL_DATA= $(INSTALL) -m 0644 - -# Utilities. -CP= cp -FIND= find -INSTALL= install -MKDIR= mkdir -RANLIB= ranlib - -# == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE ========= - -# Convenience platforms targets. -PLATS= aix ansi bsd generic linux macosx mingw posix solaris - -# What to install. -TO_BIN= lua luac -TO_INC= lua.h luaconf.h lualib.h lauxlib.h ../etc/lua.hpp -TO_LIB= liblua.a -TO_MAN= lua.1 luac.1 - -# Lua version and release. -V= 5.1 -R= 5.1.1 - -all: $(PLAT) - -$(PLATS) clean: - cd src && $(MAKE) $@ - -test: dummy - src/lua test/hello.lua - -install: dummy - cd src && $(MKDIR) -p $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD) - cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN) - cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC) - cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB) - cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN) -# $(RANLIB) $(INSTALL_LIB)/$(TO_LIB) - -local: - $(MAKE) install INSTALL_TOP=.. INSTALL_EXEC="cp -p" INSTALL_DATA="cp -p" - -none: - @echo "Please do" - @echo " make PLATFORM" - @echo "where PLATFORM is one of these:" - @echo " $(PLATS)" - @echo "See INSTALL for complete instructions." - -# make may get confused with test/ and INSTALL in a case-insensitive OS -dummy: - -# echo config parameters -echo: - @echo "" - @echo "These are the parameters currently set in src/Makefile to build Lua $R:" - @echo "" - @cd src && $(MAKE) -s echo - @echo "" - @echo "These are the parameters currently set in Makefile to install Lua $R:" - @echo "" - @echo "PLAT = $(PLAT)" - @echo "INSTALL_TOP = $(INSTALL_TOP)" - @echo "INSTALL_BIN = $(INSTALL_BIN)" - @echo "INSTALL_INC = $(INSTALL_INC)" - @echo "INSTALL_LIB = $(INSTALL_LIB)" - @echo "INSTALL_MAN = $(INSTALL_MAN)" - @echo "INSTALL_LMOD = $(INSTALL_LMOD)" - @echo "INSTALL_CMOD = $(INSTALL_CMOD)" - @echo "INSTALL_EXEC = $(INSTALL_EXEC)" - @echo "INSTALL_DATA = $(INSTALL_DATA)" - @echo "" - @echo "See also src/luaconf.h ." - @echo "" - -# echo private config parameters -pecho: - @echo "V = $(V)" - @echo "R = $(R)" - @echo "TO_BIN = $(TO_BIN)" - @echo "TO_INC = $(TO_INC)" - @echo "TO_LIB = $(TO_LIB)" - @echo "TO_MAN = $(TO_MAN)" - -# echo config parameters as Lua code -# uncomment the last sed expression if you want nil instead of empty strings -lecho: - @echo "-- installation parameters for Lua $R" - @echo "VERSION = '$V'" - @echo "RELEASE = '$R'" - @$(MAKE) echo | grep = | sed -e 's/= /= "/' -e 's/$$/"/' #-e 's/""/nil/' - @echo "-- EOF" - -# show what has changed since we unpacked -newer: - @$(FIND) . -newer MANIFEST -type f - -# list targets that do not create files (but not all makes understand .PHONY) -.PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho newer - -# (end of Makefile) Copied: trunk/lua-5.1.3/Makefile (from rev 557, trunk/lua-5.1.1/Makefile) =================================================================== --- trunk/lua-5.1.3/Makefile (rev 0) +++ trunk/lua-5.1.3/Makefile 2008-03-16 19:46:23 UTC (rev 558) @@ -0,0 +1,120 @@ +# makefile for installing Lua +# see INSTALL for installation instructions +# see src/Makefile and src/luaconf.h for further customization + +# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= + +# Your platform. See PLATS for possible values. +PLAT= none + +# Where to install. The installation starts in the src directory, so take care +# if INSTALL_TOP is not an absolute path. (Man pages are installed from the +# doc directory.) You may want to make these paths consistent with LUA_ROOT, +# LUA_LDIR, and LUA_CDIR in luaconf.h (and also with etc/lua.pc). +# +INSTALL_TOP= /usr/local +INSTALL_BIN= $(INSTALL_TOP)/bin +INSTALL_INC= $(INSTALL_TOP)/include +INSTALL_LIB= $(INSTALL_TOP)/lib +INSTALL_MAN= $(INSTALL_TOP)/man/man1 +INSTALL_LMOD= $(INSTALL_TOP)/share/lua/$V +INSTALL_CMOD= $(INSTALL_TOP)/lib/lua/$V + +# How to install. If you don't have "install" (unlikely) then get install-sh at +# http://dev.w3.org/cvsweb/libwww/config/install-sh +# or use cp instead. +INSTALL_EXEC= $(INSTALL) -p -m 0755 +INSTALL_DATA= $(INSTALL) -p -m 0644 + +# Utilities. +INSTALL= install +MKDIR= mkdir + +# == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE ========= + +# Convenience platforms targets. +PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris + +# What to install. +TO_BIN= lua luac +TO_INC= lua.h luaconf.h lualib.h lauxlib.h ../etc/lua.hpp +TO_LIB= liblua.a +TO_MAN= lua.1 luac.1 + +# Lua version and release. +V= 5.1 +R= 5.1.3 + +all: $(PLAT) + +$(PLATS) clean: + cd src && $(MAKE) $@ + +test: dummy + src/lua test/hello.lua + +install: dummy + cd src && $(MKDIR) -p $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD) + cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN) + cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC) + cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB) + cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN) + +local: + $(MAKE) install INSTALL_TOP=.. + +none: + @echo "Please do" + @echo " make PLATFORM" + @echo "where PLATFORM is one of these:" + @echo " $(PLATS)" + @echo "See INSTALL for complete instructions." + +# make may get confused with test/ and INSTALL in a case-insensitive OS +dummy: + +# echo config parameters +echo: + @echo "" + @echo "These are the parameters currently set in src/Makefile to build Lua $R:" + @echo "" + @cd src && $(MAKE) -s echo + @echo "" + @echo "These are the parameters currently set in Makefile to install Lua $R:" + @echo "" + @echo "PLAT = $(PLAT)" + @echo "INSTALL_TOP = $(INSTALL_TOP)" + @echo "INSTALL_BIN = $(INSTALL_BIN)" + @echo "INSTALL_INC = $(INSTALL_INC)" + @echo "INSTALL_LIB = $(INSTALL_LIB)" + @echo "INSTALL_MAN = $(INSTALL_MAN)" + @echo "INSTALL_LMOD = $(INSTALL_LMOD)" + @echo "INSTALL_CMOD = $(INSTALL_CMOD)" + @echo "INSTALL_EXEC = $(INSTALL_EXEC)" + @echo "INSTALL_DATA = $(INSTALL_DATA)" + @echo "" + @echo "See also src/luaconf.h ." + @echo "" + +# echo private config parameters +pecho: + @echo "V = $(V)" + @echo "R = $(R)" + @echo "TO_BIN = $(TO_BIN)" + @echo "TO_INC = $(TO_INC)" + @echo "TO_LIB = $(TO_LIB)" + @echo "TO_MAN = $(TO_MAN)" + +# echo config parameters as Lua code +# uncomment the last sed expression if you want nil instead of empty strings +lecho: + @echo "-- installation parameters for Lua $R" + @echo "VERSION = '$V'" + @echo "RELEASE = '$R'" + @$(MAKE) echo | grep = | sed -e 's/= /= "/' -e 's/$$/"/' #-e 's/""/nil/' + @echo "-- EOF" + +# list targets that do not create files (but not all makes understand .PHONY) +.PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho + +# (end of Makefile) Deleted: trunk/lua-5.1.3/README =================================================================== --- trunk/lua-5.1.1/README 2008-03-15 07:36:12 UTC (rev 556) +++ trunk/lua-5.1.3/README 2008-03-16 19:46:23 UTC (rev 558) @@ -1,37 +0,0 @@ -README for Lua 5.1 - -See INSTALL for installation instructions. -See HISTORY for a summary of changes since the last released version. - -* What is Lua? - ------------ - Lua is a powerful, light-weight programming language designed for extending - applications. Lua is also frequently used as a general-purpose, stand-alone - language. Lua is free software. - - For complete information, visit Lua's web site at http://www.lua.org/ . - For an executive summary, see http://www.lua.org/about.html . - - Lua has been used in many different projects around the world. - For a short list, see http://www.lua.org/uses.html . - -* Availability - ------------ - Lua is freely available for both academic and commercial purposes. - See COPYRIGHT and http://www.lua.org/license.html for details. - Lua can be downloaded at http://www.lua.org/download.html . - -* Installation - ------------ - Lua is implemented in pure ANSI C, and compiles unmodified in all known - platforms that have an ANSI C compiler. Under Unix, simply typing "make" - should work. See INSTALL for detailed instructions. - -* Origin - ------ - Lua is developed at Lua.org, a laboratory of the Department of Computer - Science of PUC-Rio (the Pontifical Catholic University of Rio de Janeiro - in Brazil). - For more information about the authors, see http://www.lua.org/authors.html . - -(end of README) Copied: trunk/lua-5.1.3/README (from rev 557, trunk/lua-5.1.1/README) =================================================================== --- trunk/lua-5.1.3/README (rev 0) +++ trunk/lua-5.1.3/README 2008-03-16 19:46:23 UTC (rev 558) @@ -0,0 +1,37 @@ +README for Lua 5.1 + +See INSTALL for installation instructions. +See HISTORY for a summary of changes since the last released version. + +* What is Lua? + ------------ + Lua is a powerful, light-weight programming language designed for extending + applications. Lua is also frequently used as a general-purpose, stand-alone + language. Lua is free software. + + For complete information, visit Lua's web site at http://www.lua.org/ . + For an executive summary, see http://www.lua.org/about.html . + + Lua has been used in many different projects around the world. + For a short list, see http://www.lua.org/uses.html . + +* Availability + ------------ + Lua is freely available for both academic and commercial purposes. + See COPYRIGHT and http://www.lua.org/license.html for details. + Lua can be downloaded at http://www.lua.org/download.html . + +* Installation + ------------ + Lua is implemented in pure ANSI C, and compiles unmodified in all known + platforms that have an ANSI C compiler. In most Unix-like platforms, simply + do "make" with a suitable target. See INSTALL for detailed instructions. + +* Origin + ------ + Lua is developed at Lua.org, a laboratory of the Department of Computer + Science of PUC-Rio (the Pontifical Catholic University of Rio de Janeiro + in Brazil). + For more information about the authors, see http://www.lua.org/authors.html . + +(end of README) Copied: trunk/lua-5.1.3/doc (from rev 557, trunk/lua-5.1.1/doc) Copied: trunk/lua-5.1.3/etc (from rev 557, trunk/lua-5.1.1/etc) Copied: trunk/lua-5.1.3/src (from rev 557, trunk/lua-5.1.1/src) From DONOTREPLY at icculus.org Sun Mar 16 15:46:48 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 16 Mar 2008 15:46:48 -0400 Subject: r559 - trunk Message-ID: <20080316194648.26315.qmail@icculus.org> Author: icculus Date: 2008-03-16 15:46:46 -0400 (Sun, 16 Mar 2008) New Revision: 559 Removed: trunk/lua-5.1.1/ Log: Removed old Lua directory. From DONOTREPLY at icculus.org Tue Mar 25 02:55:28 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 25 Mar 2008 02:55:28 -0400 Subject: r560 - trunk Message-ID: <20080325065528.14191.qmail@icculus.org> Author: icculus Date: 2008-03-25 02:55:26 -0400 (Tue, 25 Mar 2008) New Revision: 560 Modified: trunk/lua_glue.c Log: Upped Lua copyright date in GLuaLicense to 2008 to match Lua 5.1.3. Modified: trunk/lua_glue.c =================================================================== --- trunk/lua_glue.c 2008-03-16 19:46:46 UTC (rev 559) +++ trunk/lua_glue.c 2008-03-25 06:55:26 UTC (rev 560) @@ -1788,7 +1788,7 @@ const char *GLuaLicense = "Lua:\n" "\n" -"Copyright (C) 1994-2006 Lua.org, PUC-Rio.\n" +"Copyright (C) 1994-2008 Lua.org, PUC-Rio.\n" "\n" "Permission is hereby granted, free of charge, to any person obtaining a copy\n" "of this software and associated documentation files (the \"Software\"), to deal\n" From DONOTREPLY at icculus.org Tue Mar 25 03:02:48 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 25 Mar 2008 03:02:48 -0400 Subject: r561 - trunk/scripts Message-ID: <20080325070248.942.qmail@icculus.org> Author: icculus Date: 2008-03-25 03:02:48 -0400 (Tue, 25 Mar 2008) New Revision: 561 Modified: trunk/scripts/localization.lua Log: Latest from launchpad.net. Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-25 06:55:26 UTC (rev 560) +++ trunk/scripts/localization.lua 2008-03-25 07:02:48 UTC (rev 561) @@ -3,8 +3,8 @@ -- Please see the file LICENSE.txt in the source's root directory. -- -- DO NOT EDIT BY HAND. --- This file was generated with po2localization.pl, version svn-553 ... --- on 2008-03-09 00:17:45-0500 +-- This file was generated with po2localization.pl, version svn-560 ... +-- on 2008-03-25 02:55:01-0400 -- -- Your own installer's localizations go into app_localization.lua instead. -- If you want to add strings to be translated to this file, contact Ryan @@ -15,7 +15,7 @@ -- -- ...and that work eventually ends up in this file. -- --- X-Launchpad-Export-Date: 2008-03-09 05:16+0000 +-- X-Launchpad-Export-Date: 2008-03-25 03:44+0000 -- X-Generator: Launchpad (build Unknown) MojoSetup.languages = { @@ -28,14 +28,18 @@ en_CA = "English (Canada)", en_GB = "English (United Kingdom)", es = "Spanish", + et = "Estonian", fi = "Finnish", fr = "French", hu = "Hungarian", it = "Italian", + ja = "Japanese", nb = "Norwegian Bokmal", nds = "German, Low", nl = "Dutch", + pl = "Polish", pt = "Portuguese", + pt_BR = "Brazilian Portuguese", ru = "Russian", sk = "Slovak", sv = "Swedish", @@ -48,19 +52,25 @@ -- zlib error message ["need dictionary"] = { cs = "je t?eba slovn?k", + da = "beh?ver ordbog", de = "W?rterbuch ben?tigt", el = "?????????? ??????", en_AU = "need dictionary", en_CA = "need dictionary", en_GB = "need dictionary", es = "necesita diccionario", + et = "vaja s?nastiku", fi = "tarve sanastolle", fr = "dictionnaire n?cessaire", hu = "sz?t?r sz?ks?ges", + it = "zlib: need dictionary", + ja = "??????", nb = "trenger ordbok", nds = "W?rterbuch ben?tigt", nl = "woordenboek nodig", + pl = "potrzebny s?ownik", pt = "? necess?rio um dicion?rio", + pt_BR = "precisa de dicion?rio", ru = "????????? ???????", sk = "potrebujem slovn?k", sv = "beh?ver ordbok", @@ -72,19 +82,25 @@ -- zlib error message ["data error"] = { cs = "datov? chyba", + da = "datafejl", de = "Datenfehler", el = "?????? ?????????", en_AU = "data error", en_CA = "data error", en_GB = "data error", es = "error de datos", + et = "andmeviga", fi = "datavirhe", fr = "Erreur de donn?es", hu = "adat hiba", + it = "zlib: data error", + ja = "?????", nb = "datafeil", nds = "Datenfehler", nl = "data fout", + pl = "b??d danych", pt = "erro de dados", + pt_BR = "erro de dados", ru = "?????? ??????", sk = "chyba d?t", sv = "datafel", @@ -103,13 +119,18 @@ en_CA = "memory error", en_GB = "memory error", es = "error de memoria", + et = "m?luviga", fi = "muistivirhe", fr = "Erreur m?moire", hu = "mem?ria hiba", + it = "zlib: memory error", + ja = "????", nb = "minnefeil", nds = "Speicherfehler", nl = "geheugen fout", + pl = "b??d pami?ci", pt = "erro na mem?ria", + pt_BR = "erro de mem?ria", ru = "?????? ??????", sk = "chyba pam?te", sv = "minnesfel", @@ -121,19 +142,25 @@ -- zlib error message ["buffer error"] = { cs = "chyba bufferu", + da = "buffer fejl", de = "Pufferfehler", el = "?????? ?????????? ????? ???????????", en_AU = "buffer error", en_CA = "buffer error", en_GB = "buffer error", es = "error de buffer", + et = "puhvriviga", fi = "puskurivirhe", fr = "Erreur de tampon", hu = "puffer hiba", + it = "zlib: buffer error", + ja = "??????", nb = "bufferfeil", nds = "Pufferfehler", nl = "buffer fout", + pl = "b??d bufora", pt = "erro no tamp?o", + pt_BR = "Erro de armazenamento", ru = "?????? ??????", sk = "chyba vyrovn?vacej pam?te", sv = "bufferfel", @@ -152,13 +179,17 @@ en_CA = "version error", en_GB = "version error", es = "error de versi?n", + et = "versiooniviga", fi = "versiovirhe", fr = "Erreur de version", hu = "veriz? hiba", + it = "zlib: version error", nb = "versjonsfeil", nds = "Versionsfehler", nl = "versie fout", + pl = "b??d wersji", pt = "erro na vers?o", + pt_BR = "erro de vers?o", ru = "?????? ??????", sk = "chyba verzie", sv = "versionsfel", @@ -177,14 +208,18 @@ en_CA = "unknown error", en_GB = "unknown error", es = "error desconocido", + et = "tundmatu viga", fi = "tuntematon virhe", fr = "Erreur inconnue", hu = "ismeretlen hiba", it = "errore sconosciuto", + ja = "??????", nb = "ukjent feil", nds = "unbekannter Fehler", nl = "onbekende fout", + pl = "nieznany b??d", pt = "erro desconhecido", + pt_BR = "erro desconhecido", ru = "??????????? ??????", sk = "nezn?ma chyba", sv = "ok?nt fel", @@ -197,6 +232,7 @@ -- box's text content. ["NOTICE: %0\n[hit enter]"] = { cs = "UPOZORN?N?: %0\n[stiskn?te enter]", + da = "NB: %0\n[tryk enter]", de = "HINWEIS: %0\n[Dr?cken Sie Enter]", el = "???????: %0\n[??????? ENTER]", en_AU = "NOTICE %0", @@ -206,14 +242,17 @@ fi = "ILMOITUS: %0\n[paina enter]", fr = "INFORMATION?: %0\n[pressez entr?e]", hu = "FIGYELEM: %0\n[?ss entert]", - it = "NOTICE: %0", + it = "ATTENZIONE: %0", + ja = "???0?\n????????", nb = "NB: %0\n[trykk enter]", - nds = "Notiz: %0\n[Enter dr?cken, um fortzufahren]", + nds = "HINWEIS: %0", nl = "OPMERKING: %0\n[Toets enter]", + pl = "UWAGA: %0\n[hit enter]", pt = "AVISO: %0\n[pressione enter]", + pt_BR = "AVISO: %0", ru = "???????????: %0", sk = "Spr?va: %0", - sv = "NB: %0\n[tryck enter]", + sv = "NOTERA: %0\n[tryck enter]", tr = "UYARI: %0\n[giri? tu?una bas?n?z]", uk = "?? ?????: %0", zh_TW = "???%0" @@ -223,6 +262,7 @@ -- "%0" is the question the user is being asked to respond to. ["%0 [Y/n]: "] = { cs = "%0 [A/n]: ", + da = "%0 [J/n]: ", de = "%0 [J/n]: ", el = "%0 [?/?]: ", en_AU = "%0 [Y/n]: ", @@ -233,10 +273,13 @@ fr = "%0 [O/n]: ", hu = "%0 [I/n]: ", it = "%0 [S/n]: ", + ja = "%0?y/N? ", nb = "%0 [J/n]: ", nds = "%0 [J/n] ", nl = "%0 [J/n]: ", + pl = "%0 [T/n]: ", pt = "%0 [S/n] ", + pt_BR = "%0 [S/n]: ", ru = "%0 [Y/n]: ", sk = "%0 [A/n]: ", sv = "%0 [J/n]: ", @@ -249,6 +292,7 @@ -- "%0" is the question the user is being asked to respond to. ["%0 [y/N]: "] = { cs = "%0 [a/N] ", + da = "%0 [j/N]: ", de = "%0 [j/N]: ", el = "%0 [?/?]: ", en_AU = "%0 [y/N]: ", @@ -259,10 +303,13 @@ fr = "%0 [o/N]: ", hu = "%0 [i/N]: ", it = "%0 [s/N]: ", + ja = "%0?Y/n? ", nb = "%0 [j/N]: ", nds = "%0 [j/N] ", nl = "%0 [j/N]: ", + pl = "%0[t/N]: ", pt = "%0 [s/N] ", + pt_BR = "%0 [s/N]: ", ru = "%0 [y/N]: ", sk = "%0 [a/N]: ", sv = "%0 [j/N]: ", @@ -275,6 +322,7 @@ -- "%0" is the question the user is being asked to respond to. ["%0 [y/n/Always/Never]: "] = { cs = "%0 [a/n/V?dy/niKdy] ", + da = "%0 [j/n/Alltid/Aldrig]: ", de = "%0 [j/n/Immer/Niemals]: ", el = "%0 [?/?/?????/????]: ", en_AU = "%0 [y/n/Always/Never]: ", @@ -285,10 +333,13 @@ fr = "%0 [o/n/Toujours/Jamais]: ", hu = "%0 [i/n/Mindig/Soha]: ", it = "%0 [s/n/Sempre/Mai]: ", + ja = "%0?Y/n/???/???? ", nb = "%0 [j/n/Alltid/Aldri]: ", nds = "%0 [j/n/Immer/Niemals] ", nl = "%0 [j/n/Altijd/Nooit]: ", + pl = "%0 [t/n/Zawsze/Nigdy]: ", pt = "%0 [s/n/Sempre/Nunca] ", + pt_BR = "%0 [s/n/Sempre/Nunca]: ", ru = "%0 [y/n/??????(A)/???????(N)]: ", sk = "%0 [a/n/Vzdy/Nikdy]: ", sv = "%0 [j/n/Alltid/Aldrig]: ", @@ -300,20 +351,25 @@ -- This is used for "yes" in stdio UI's yes/no prompts (case insensitive). ["Y"] = { cs = "A", + da = "J", de = "J", el = "?", en_AU = "Y", en_CA = "Y", en_GB = "Y", es = "S", + et = "J", fi = "K", fr = "O", hu = "I", it = "S", + ja = "Y", nb = "J", nds = "J", nl = "J", + pl = "T", pt = "S", + pt_BR = "S", ru = "Y", sk = "A", sv = "J", @@ -331,14 +387,18 @@ en_CA = "N", en_GB = "N", es = "N", + et = "E", fi = "E", fr = "N", hu = "N", it = "N", + ja = "N", nb = "N", nds = "N", nl = "N", + pl = "N", pt = "N", + pt_BR = "N", ru = "N", sk = "N", sv = "N", @@ -357,14 +417,18 @@ en_CA = "Always", en_GB = "Always", es = "Siempre", + et = "Alati", fi = "Aina", fr = "Toujours", hu = "Mindig", it = "Sempre", + ja = "???", nb = "Alltid", nds = "Immer", nl = "Altijd", + pl = "Zawsze", pt = "Sempre", + pt_BR = "Sempre", ru = "??????", sk = "V?dy", sv = "Alltid", @@ -383,14 +447,18 @@ en_CA = "Never", en_GB = "Never", es = "Nunca", + et = "Mitte kunagi", fi = "ei Koskaan", fr = "Jamais", hu = "Soha", it = "Mai", + ja = "???", nb = "Aldri", nds = "Niemals", nl = "Nooit", + pl = "Nigdy", pt = "Nunca", + pt_BR = "Nunca", ru = "???????", sk = "Nikdy", sv = "Aldrig", @@ -403,6 +471,7 @@ -- line, %1 is last line, %2 is the total number of lines of text). ["(%0-%1 of %2 lines, see more?)"] = { cs = "(%0-%1 z %2 ??dk?, zobrazit v?ce?)", + da = "(%0-%1 af %2 linie, vis flere?)", de = "(%0-%1 von %2 Zeilen, mehr anschauen?)", el = "(%0-%1 ??? %2 ???????, ?????? ?? ????? ?????????????)", en_AU = "(%0-%1 of %2 lines, see more?)", @@ -416,7 +485,9 @@ nb = "(%0-%1 av %2 linjer, se mer?)", nds = "%0-%1 vom %2 lines, mehr?", nl = "(%0-%1 van %2 regels, meer zien?)", + pl = "(%0-%1 z %2 linii, wi?cej?)", pt = "(%0-%1 de %2 linhas, ver mais?)", + pt_BR = "(%0-%1 de %2 linhas, ver mais?)", ru = "(%0-%1 ?? %2 ?????, ???????)", sk = "(%0-%1 of %2 riadkov, zobrazi? ?al?ie?)", sv = "(%0-%1 av %2 rader, visa fler?)", @@ -429,6 +500,7 @@ -- section to the "choose installation destination" section, etc). ["Type '%0' to go back."] = { cs = "Napi?te '%0' pro n?vrat zp?t.", + da = "Skriv '%0' for at g? tillbage.", de = "Dr?cken Sie '%0' um zur?ckzugehen.", el = "??????? '%0' ??? ?? ???? ????.", en_AU = "Type '%0' to go back.", @@ -442,7 +514,9 @@ nb = "Skriv '%0' for ? g? tilbake.", nds = "Dr?cken Sie '%0' um zur?ckzukehren", nl = "Typ '%0' om terug te gaan.", + pl = "Wpisz '%0' aby powr?ci?.", pt = "Escreva '%0' para regressar.", + pt_BR = "Digite '%0' para voltar.", ru = "??????? '%0' ????? ?????????.", sk = "Zadajte '%0' pre n?vrat spa?.", sv = "Skriv '%0' f?r att g? tillbaka.", @@ -463,14 +537,18 @@ en_CA = "back", en_GB = "back", es = "atr?s", + et = "tagasi", fi = "takaisin", fr = "retour", hu = "vissza", it = "indietro", + ja = "??", nb = "tilbake", nds = "Zur?ck", nl = "terug", + pl = "ty?", pt = "retroceder", + pt_BR = "voltar", ru = "?????", sk = "sp??", sv = "tillbaka", @@ -492,10 +570,13 @@ fr = "> ", hu = "> ", it = "> ", + ja = "> ", nb = "> ", nds = "> ", nl = "> ", + pl = "> ", pt = "> ", + pt_BR = "> ", ru = "> ", sk = "> ", sv = "> ", @@ -506,6 +587,7 @@ -- That's meant to be the name of an item (%0) and the percent done (%1). ["%0: %1%%"] = { cs = "%0: %1%%", + da = "%0: %1%%", de = "%0: %1%%", el = "%0: %1%%", en_AU = "%0: %1%%", @@ -516,10 +598,13 @@ fr = "%0?: %1%%", hu = "%0: %1%%", it = "%0: %1%%", + ja = "%0: %1%%", nb = "%0: %1%%", nds = "%0: %1%%", nl = "%0: %1%%", + pl = "%0: %1%%", pt = "%0: %1%%", + pt_BR = "%0: %1%%", ru = "%0: %1%%", sk = "%0: %1%%", sv = "%0: %1%%", @@ -531,6 +616,7 @@ -- and overall progress as percentage of work complete (%1). ["%0 (total progress: %1%%)"] = { cs = "%0 (celkov? pr?b?h: %1%%)", + da = "%0 (totalt: %1%%)", de = "%0 (Gesamtfortschritt: %1%%)", el = "%0 (???????? ???????: %1%%)", en_AU = "%0 (total progress: %1%%)", @@ -540,10 +626,14 @@ fi = "%0 (kokonaisedistyminen: %1%%)", fr = "%0 (progression totale?: %1%%)", hu = "%0 (%1%% k?sz)", + it = "%0 (progresso: %1%%))", + ja = "%0 (?????: %1%%)", nb = "%0 (totalt: %1%%)", nds = "%0 (Fortschritt insgesamt: %1%%)", nl = "%0 (totale voortgang: %1%%)", + pl = "%0 (ca?kowity post?p: %1%%)", pt = "%0 (progresso total: %1%%)", + pt_BR = "%0 (progresso total: %1%%)", ru = "%0 (?????: %1%%)", sk = "%0 (celkovo priebeh: %1%%)", sv = "%0 (totalt: %1%%)", @@ -567,13 +657,16 @@ fr = "Accepter cette licence??", hu = "Elfogadja a liszenszt?", it = "Accetti questa licenza?", + ja = "?????????????????", nb = "Akseptere denne lisensen?", nds = "Diese Lizenz akzeptieren?", nl = "Accepteert u deze licentie?", + pl = "Akceptujesz licencj??", pt = "Aceita esta licen?a?", + pt_BR = "Aceitar essa licensa?", ru = "?? ?????????????", sk = "S?hlas?te s licensiou?", - sv = "Acceptera licensen?", + sv = "Godk?nn licensavtalet?", tr = "Bu lisans? kabul ediyor musunuz?", zh_TW = "???????" }; @@ -596,7 +689,9 @@ nb = "_Alltid", nds = "_Immer", nl = "_Altijd", + pl = "_Zawsze", pt = "_Sempre", + pt_BR = "_Sempre", ru = "_??????", sk = "_V?dy", sv = "_Alltid", @@ -622,7 +717,9 @@ nb = "Fant ikke arkiv", nds = "Archiv nicht gefunden", nl = "Archief niet gevonden", + pl = "Archiwum nie znalezione", pt = "O Arquivo n?o foi encontrado", + pt_BR = "Arquivo n?o encontrado", ru = "????? ?? ??????", sk = "Arch?v nen?jden?", sv = "Hittade inte arkivet", @@ -648,7 +745,9 @@ nb = "Er du sikker p? at du vil avbryte installasjonen?", nds = "Sind Sie sicher, dass Sie die Installation abbrechen wollen?", nl = "Weet u zeker dat u de installatie wilt afbreken?", + pl = "Czy na pewno chcesz anulowa? instalacj??", pt = "Tem a certeza que quer cancelar a instala??o?", + pt_BR = "Voc? tem certeza que deseja cancelar a instala??o?", ru = "?? ??????? ??? ?? ?????? ?????????? ??????????", sk = "Ste si ist? ?e chcete preru?i? in?tal?ciu?", sv = "?r du s?ker p? att du vill avbryta installationen?", @@ -673,7 +772,9 @@ nb = "Tilbake", nds = "Zur?ck", nl = "Vorige", + pl = "Wstecz", pt = "Anterior", + pt_BR = "Voltar", ru = "?????", sk = "Sp??", sv = "Tillbaka", @@ -700,7 +801,9 @@ nb = "B_la gjennom...", nds = "Du_rchsuchen", nl = "Bl_aderen...", + pl = "P_rzegl?daj...", pt = "_Procurar...", + pt_BR = "_Procurar...", ru = "???????...", sk = "P_rehliada?...", sv = "B_l?ddra", @@ -731,10 +834,12 @@ nb = "FEIL: duplisert media-id", nds = "BUG: Doppelte media id", nl = "BUG: dubbele media id", + pl = "B??", pt = "BUG: media id duplicada", + pt_BR = "BUG: id da m?dia duplicada", ru = "??????: ???????????? media_id", sk = "CHYBA: duplicitn? media id", - sv = "FEL: dupliserat media id", + sv = "FEL: duplicerat media id", tr = "HATA: ?ifte medya id'si", zh_TW = "??????????" }; @@ -744,6 +849,7 @@ -- is a bug the developer must fix before shipping her installer. ["BUG: no options"] = { cs = "CHYBA: nejsou dostupn? ??dn? volby", + da = "FEJL: ingen muligheder", de = "FEHLER: Keine Optionen", el = "??????: ??? ???????? ????????? ????????????", en_AU = "BUG: no options", @@ -758,9 +864,10 @@ nds = "BUG: keine Optionen", nl = "BUG: geen opties", pt = "BUG: sem op??es", + pt_BR = "BUG: Sem op??es", ru = "??????: ??????????? ?????", sk = "CHYBA: ?iadne in?tala?n? mo?nosti", - sv = "FEL: inget option", + sv = "FEL: inget alternativ", tr = "HATA: se?enek yok", zh_TW = "???????" }; @@ -778,13 +885,14 @@ en_GB = "BUG: support_uninstall requires write_manifest", es = "FALLO: support_uninstall requiere write_manifest", fi = "BUGI: support_uninstall vaatii write_manifest:n", - fr = "Vous devez activer le support du manifeste pour inclure le d?sinstallateur.", + fr = "BOGUE: 'support_uninstall' exige 'write_manifest'", hu = "BUG: support_uninstall ig?nyli a write_manifest -et", it = "BUG: support_uninstall richiede write_manifest", nb = "FEIL: support_uninstall krever write_manifest", nds = "BUG: support_uninstall ben?tigt write_manifest", - nl = "BUG: ondersteuning_deinstalleren heeft schrijf_manifest nodig", + nl = "BUG: support_uninstall heeft write_manifest nodig", pt = "BUG: support_uninstall requer write_manifest", + pt_BR = "BUG: support_uninstall necessita de write_manifest", ru = "??????: support_uninstall ????????? ? write_manifest", sk = "CHYBA: support_uninstall potrebuje write_manifest", sv = "FEL: support_uninstall kr?ver write_manifest", @@ -807,13 +915,14 @@ en_GB = "BUG: write_manifest requires Lua parser support", es = "FALLO: write_manifest requiere el soporte de un int?rprete Lua", fi = "BUGI: write_manifest vaatii Lua parser -tuen", - fr = "Vous devez activer le support du parser Lua pour g?n?rer la manifeste.", + fr = "BOGUE: 'write_manifest' exige le support du parser Lua", hu = "BUG: write_manifest ig?nyli a Lua ?rtelmez? t?mogat?st", it = "BUG: write_manifest richiede Lua parser support", nb = "FEIL: write_manifest krever st?tte for Lua-parser", nds = "Fehler: write_manifest ben?tift Lua Parser Unterst?tzung", nl = "BUG: write_manifest heeft Lua parser ondersteuning nodig", pt = "BUG: write_manifest requer suporte do analisador da linguagem Lua", + pt_BR = "BUG: write_manifest necessita do suporte ao parser de Lua", ru = "??????: write_manifest ??????? ????????? Lua parser", sk = "CHYBA: write_manifest potrebuje zapnut? podporu Lua parsera (Lua parser support)", sv = "FEL: write_manifest kr?ver Lua parser st?d", @@ -834,12 +943,13 @@ en_GB = "BUG: Setup.DesktopMenuItem requires support_uninstall", es = "FALLO: Setup.DesktopMenuItem requiere support_uninstall", fi = "BUGI: Setup.DesktopMenuItem vaatii support_uninstall:n", - fr = "Vous devez inclure le d?sinstallateur pour ajouter des objets au Menu Syst?me.", + fr = "BOGUE: 'Setup.DesktopMenuItem' exige 'support_uninstall'", hu = "BUG: Setup.DesktopMenuItem ig?nyli a support_uninstall-t", it = "BUG: Setup.DesktopMenuItem richiede support_uninstall", nds = "BUG: Setup.DesktopMenuItem ben?tigt support_uninstall", nl = "BUG: Setup.DesktopMenuItem heeft support_uninstall nodig", pt = "BUG: Setup.DesktopMenuItem requer support_uninstall", + pt_BR = "BUG: Setup.DesktopMenuItem precisa do support_uninstall", ru = "??????: Setup.DesktopMenuItem ????????? ? support_uninstall", sk = "CHYBA: Setup.DesktopMenuItem potrebuje support_uninstall", sv = "FEL: Setup.DesktopMenuItem kr?ver support_uninstall", @@ -853,7 +963,7 @@ -- valid and would cause this error. ["BUG: '%0' is not a valid permission string"] = { cs = "CHYBA: '%0' nen? platn?m ?et?zcem vyjad?uj?c?m opr?vn?n?", - de = "FEHLER: '%0' ist kein zul?ssiger Berechtigungs-String", + de = "FEHLER: '%0' ist keine zul?ssige Berechtigungszeichenkette", el = "??????: '%0' ??? ????? ?????? ????????????? ?????????? ???????????", en_AU = "BUG: '%0' is not a valid permission string", en_CA = "BUG: '%0' is not a valid permission string", @@ -862,10 +972,12 @@ fi = "BUGI: \"%0\" ei ole kelvollinen oikeuksia m??ritt?v? merkkijono", fr = "BUG \"%0\" n'est pas une cha?ne de permission valide", hu = "BUG: '%0' nem ?rv?nyes jogosults?g sztring", + it = "BUG: '%0' non ? una stringa valida di permessi", nb = "FEIL: '%0' er ikke en gyldig rettighetsstreng", nds = "BUG: '%0' ist kein g?ltiger \"permission string\"", nl = "BUG: '%0' is geen geldige permissie string", pt = "BUG: '%0' n?o ? uma express?o v?lida", + pt_BR = "BUG: '%0' n?o ? um texto de permiss?o v?lido", ru = "??????: '%0' ???????????? ???????? ??? ????.", sk = "CHYBA: '%0' nieje spr?vny sp?sob z?pisu pr?v", sv = "FEL: '%0' ?r inte en giltig r?ttighetsstr?ng", @@ -879,7 +991,7 @@ -- "format()" is a proper name in this case (program function name) ["BUG: Invalid format() string"] = { cs = "CHYBA: Neplatn? ?et?zec pro format()", - de = "FEHLER: Unzul?ssiger format() String", + de = "FEHLER: Unzul?ssige format() Zeichenkette", el = "??????: ????? format() ?????????????", en_AU = "BUG: Invalid format() string", en_CA = "BUG: Invalid format() string", @@ -893,6 +1005,7 @@ nds = "BUG: Ung?ltiger format() string", nl = "BUG: Ongeldige format() string", pt = "BUG: format() inv?lido da express?o", + pt_BR = "BUG: Texto format() inv?lido", ru = "??????: ???????????? ?????? format()", sk = "CHYBA: nespr?vny format() re?azec", sv = "FEL: Ogiltig format() str?ng", @@ -915,10 +1028,12 @@ fi = "BUGI: vaihe palautti v??r?? tyyppi?", fr = "BUG: L'?tape renvoie un mauvais type de donn?es", hu = "BUG: az ?llom?s rossz t?pussal t?rt vissza", + it = "BUG: la fase attuale (stage) ha restituito un tipo non valido", nb = "FEIL: niv? returnerte feil type", nds = "BUG: Stage R?ckgabewert ist vom falschen Typ", - nl = "BUG: stadium gaf verkeerd type op", + nl = "BUG: programma-fase leverde een verkeerd datatype", pt = "BUG: A etapa retornou um tipo errado", + pt_BR = "BUG: a etapa retornou o tipo errado", ru = "??????: ???? ????? ??????????? ???", sk = "CHYBA: f?za vr?tila nespr?vny typ", sv = "FEL: niv? returnerade fel typ", @@ -941,10 +1056,12 @@ fi = "BUGI: vaihe palautti v??r?n arvon", fr = "BUG: L'?tape renvoie une mauvaise valeur", hu = "BUG: az ?llom?s rossz ?rt?kkel t?rt vissza", + it = "BUG: la fase attuale (stage) ha restituito un valore non valido", nb = "FEIL: niv? returnerte feil verdi", nds = "Fehler: stage gab falschen Wert zur?ck", - nl = "BUG: stadium gaf verkeerde waarde terug", + nl = "BUG: programma-fase leverde een verkeerde waarde", pt = "BUG: A etapa retornou um valor errado", + pt_BR = "BUG: a etapa retornou o valor errado", ru = "??????: ???? ????? ??????????? ?????????", sk = "CHYBA: f?za vr?tila nespr?vnu hodnotu", sv = "FEL: niv? returnerade fel v?rde", @@ -967,10 +1084,12 @@ fi = "BUGI: palattiin ensimm?isen vaiheen ohi", fr = "BUG: Revenu au d?but des ?tapes", hu = "BUG: visszal?p?s a kezd? ?llom?s ut?n", + it = "BUG: ritornato all'inizio della fase (stage)", nb = "FEIL: Gikk tilbake forbi startniv?", nds = "BUG: Zur?ck vor dem ersten Vorgang", nl = "BUG: teruggegaan naar voor eerste stadium.", pt = "BUG: Retrocedeu na primeira etapa", + pt_BR = "BUG: voltar na primeira etapa", ru = "??????: ?????? ???? ???????? ?????? \"?????\"", sk = "CHYBA: vr?tili ste sa pred za?iatok po?iato?nej f?zy", sv = "FEL: Gick tillbaka f?rbi startniv?", @@ -990,10 +1109,12 @@ fi = "BUGI: K?sittelem?t?n datatyyppi", fr = "BUG: Type de fichier inconnu", hu = "BUG: Lekezeletlen adatt?pus", + it = "BUG: tipo di dato non gestito", nb = "FEIL: Uh?ndtert datatype", nds = "BUG: Unbehandelter Datentyp", nl = "BUG: onbekend data type", pt = "BUG: tipo sem tratamento", + pt_BR = "BUG: tipo de dados n?o suportado", ru = "??????: ???????????????? ??? ??????", sk = "CHYBA: Nespracovate?n? typ d?t", sv = "FEL: Ohanterad datatyp", @@ -1015,10 +1136,12 @@ fi = "BUGI: tar-sy?tteit? ei voida kahdentaa", fr = "BUG: Impossible de dupliquer les entr?es tar", hu = "BUG: tar bemenet nem duplik?lhat?", + it = "BUG: impossibile duplicare il .tar di input", nb = "FEIL: Kan ikke duplisere innfiler for tar", nds = "Fehler: Kann tar-Eingabe nicht duplizieren", nl = "BUG: kan tar input kan niet gedupliceerd woorden.", pt = "BUG: Imposs?vel duplicar as entradas do tar", + pt_BR = "BUG: N?o ? poss?vel duplicar as entradas do tar", ru = "??????: ?????? ??????????? ???????? ?????? ??? tar", sk = "CHYBA: Nem??ete duplikova? tar vstupy", sv = "FEL: Kan inte duplicera infiler f?r tar", @@ -1044,6 +1167,7 @@ nds = "BUG: Unerwarteter Wert", nl = "BUG: Onverwachte waarde", pt = "BUG: Valor inexperado", + pt_BR = "BUG: valor inesperado", ru = "??????: ??????????? ????????", sk = "CHYBA: Neo?ak?van? hodnota", sv = "FEL: Ov?ntat v?rde", @@ -1072,6 +1196,7 @@ nds = "BUG: Config %0 %1", nl = "BUG: configuratie %0 %1", pt = "BUG: Configura??o %0 %1", + pt_BR = "BUG: Configura??o %0 %1", ru = "??????: ????? %0 %1", sk = "CHYBA: Config %0 %1", sv = "FEL: Konfiguration %0 %1", @@ -1095,7 +1220,9 @@ nb = "m? spesifiseres eksplisitt", nds = "muss ausdr?cklich spezifiziert werden", nl = "moet expliciet gespecifieerd worden", + pl = "musi by? jasno podany", pt = "Tem que ser especificado explicitamente", + pt_BR = "precisa ser especificado explicitamente", ru = "?????? ???? ??????? ????", sk = "mus? by? explicitne ?pecifikovan?", sv = "m?ste vara explicit specifierad", @@ -1106,7 +1233,7 @@ -- This is an error string for a buggy config element. See notes above. ["must be string or table of strings"] = { cs = "mus? b?t ?et?zcem nebo tabulkou ?et?zc?", - de = "muss ein String oder eine Tabelle von Strings sein", + de = "muss eine Zeichenkette oder eine Tabelle mit Zeichenketten sein", el = "?????? ?? ????? ??? ????????????? ? ??????? ??? ?????????????", en_AU = "must be string or table of strings", en_CA = "must be string or table of strings", @@ -1119,7 +1246,9 @@ nb = "m? v?re streng eller tabell av strenger", nds = "muss String oder Tabelle von Strings sein", nl = "moet een string of een tabel met strings zijn", + pl = "musi by? ci?giem lub tabel? ci?g?w", pt = "Tem que ser uma express?o ou uma tabela de express?es", + pt_BR = "precisa ser um texto ou uma tabela de textos", ru = "?????? ???? ??????? ??? ???????? ?????", sk = "mus? by? re?azec alebo tabu?ka re?azcov", sv = "m?ste vara en str?ng eller en tabell av str?ngar", @@ -1130,7 +1259,7 @@ -- This is an error string for a buggy config element. See notes above. ["must be a string or number"] = { cs = "mus? b?t ?et?zcem nebo ??slem", - de = "muss ein String oder eine Zahl sein", + de = "muss eine Zeichenkette oder Zahl sein", el = "?????? ?? ????? ????????????? ? ???????", en_AU = "must be a string or number", en_CA = "must be a string or number", @@ -1143,7 +1272,9 @@ nb = "m? v?re streng eller nummer", nds = "muss String oder Nummer sein", nl = "moet een string of een nummer zijn", + pl = "musi by? ci?giem lub liczb?", pt = "Tem que ser uma express?o ou um n?mero", + pt_BR = "precisa ser um texto ou um n?mero", ru = "?????? ???? ??????? ??? ??????", sk = "mus? by? re?azec alebo ??slo", sv = "m?ste vara en str?ng eller ett nummer", @@ -1154,7 +1285,7 @@ -- This is an error string for a buggy config element. See notes above. ["can't be empty string"] = { cs = "nem??e b?t pr?zdn?m ?et?zcem", - de = "darf kein leerer String sein", + de = "darf keine leere Zeichenkette sein", el = "??? ?????? ?? ????? ????? ?????????????", en_AU = "can't be empty string", en_CA = "can't be empty string", @@ -1167,7 +1298,9 @@ nb = "kan ikke v?re tom streng", nds = "kann String nicht leeren", nl = "kan geen lege string zijn", + pl = "nie mo?e by? pustym ci?giem", pt = "N?o pode ser uma express?o vazia", + pt_BR = "n?o pode ser um texto em branco", ru = "?? ????? ???? ?????? ???????", sk = "nem??e by? re?azec", sv = "kan inte vara en tom str?ng", @@ -1178,6 +1311,7 @@ -- This is an error string for a buggy config element. See notes above. ["URL doesn't have protocol"] = { cs = "URL nem? ur?en? protokol", + da = "URL har ikke en protekol", de = "URL hat kein Protokoll", el = "?? URL ??? ???????? ????????? ??????????", en_AU = "URL doesn't have protocol", @@ -1187,10 +1321,13 @@ fi = "URL ei sis?ll? protokollaa", fr = "L'URL manque un protocole", hu = "URL-nek nincs protokollja", + it = "URL malformato (senza protocollo)", nb = "URL har ikke protokoll", nds = "URL hat kein Protokoll", nl = "URL heeft geen protocol", + pl = "URL nie ma protoko?u", pt = "O URL n?o tem o protocolo", + pt_BR = "N?o existe protocolo na URL", ru = "URL ?? ???????? ????????", sk = "URL neur?uje protokol", sv = "URL saknar protokoll", @@ -1201,6 +1338,7 @@ -- This is an error string for a buggy config element. See notes above. ["URL doesn't have host"] = { cs = "URL neobsahuje hostitele", + da = "URL mangler v?rt", de = "URL hat keinen Host", el = "?? URL ??? ???????? ????????? ??????????", en_AU = "URL doesn't have host", @@ -1210,10 +1348,13 @@ fi = "URL ei sis?ll? palvelinta", fr = "L'URL manque un nom d'h?te", hu = "URL-nek nincs hosztja", + it = "URL malformato (senza host)", nb = "URL har ikke ver", nds = "URL hat keinen Host", nl = "URL heeft geen host", + pl = "URL nie ma hosta", pt = "O URL n?o tem servidor", + pt_BR = "N?o existe o host na URL", ru = "URL ?? ???????? ????", sk = "URL neobsahuje hostite?a", sv = "URL saknar v?rd", @@ -1224,6 +1365,7 @@ -- This is an error string for a buggy config element. See notes above. ["URL doesn't have path"] = { cs = "URL neobsahuje cestu", + da = "URL mangler sti", de = "URL hat keinen Pfad", el = "?? URL ??? ???????? ?? ????????", en_AU = "URL doesn't have path", @@ -1233,10 +1375,13 @@ fi = "URL ei sis?ll? polkua", fr = "L'URL manque un chemin", hu = "URL-nek nincs ?tvonala", + it = "URL malformato (senza percorso)", nb = "URL har ikke sti", nds = "URL hat keinen Pfad", nl = "URL heeft geen pad", + pl = "URL nie ma ?cie?ki", pt = "O URL n?o tem recurso", + pt_BR = "N?o existe o caminho na URL", ru = "URL ?? ???????? ????", sk = "URL neobsahuje cestu", sv = "URL saknar s?kv?g", @@ -1247,6 +1392,7 @@ -- This is an error string for a buggy config element. See notes above. ["URL protocol is unsupported"] = { cs = "Protokol v URL nen? podporov?n", + da = "URL protekol er ikke underst?ttet", de = "URL Protokoll wird nicht unterst?tzt", el = "?? ????????? ??? ???????? ?? URL ??? ?????????????", en_AU = "URL protocol is unsupported", @@ -1256,10 +1402,13 @@ fi = "URL:n protokollaa ei tueta", fr = "Le protocole de l'URL n'est pas support?", hu = "URL protokoll nem t?mogatott", + it = "URL malformato (protocollo non supportato)", nb = "URL-protokollen er ikke st?ttet", nds = "URL Protokoll wird nicht unterst?tzt", nl = "protocol van URL wordt niet ondersteund", + pl = "protok?? URL nie obs?ugiwany", pt = "O protocolo do URL n?o ? suportado", + pt_BR = "O protocolo da URL n?o ? suportado", ru = "???????? URL ?? ??????????????", sk = "URL protokol nieje podporovan?", sv = "URL-protokollet har inget st?d", @@ -1272,7 +1421,7 @@ -- such as "0644" on Unix. ["Permission string is invalid"] = { cs = "?et?zec s opr?vn?n?mi je neplatn?", - de = "Berechtigungsstring ist ung?ltig", + de = "Berechtigungszeichenkette ist ung?ltig", el = "?? ????????????? ??? ?????????? ?? ?????????? ????? ?????.", en_AU = "Permission string is invalid", en_CA = "Permission string is invalid", @@ -1285,7 +1434,9 @@ nb = "Rettighetsstrengen er ugyldig", nds = "Zugriffsberechtigungs String ist ung?ltig", nl = "Permissie string is niet geldig", + pl = "Ci?g uprawnie? jest niepoprawny", pt = "A express?o de permiss?o n?o ? v?lida", + pt_BR = "O texto de permiss?o ? inv?lido", ru = "?????? ???? ??????? ???????????", sk = "Re?azec pr?v je neplatn?", sv = "R?ttighetsstr?ngen ?r ogiltig", @@ -1310,7 +1461,9 @@ nb = "er ikke en gyldig egenskap", nds = "ist keine g?ltige Eigenschaft", nl = "is geen geldige eigenschap", + pl = "nie jest poprawym atrybutem", pt = "n?o ? uma propriedade v?lida", + pt_BR = "n?o ? uma propriedade v?lida", ru = "???????????? ????????", sk = "nieje spr?vnym atrib?tom", sv = "?r inte ett giltigt attribut", @@ -1336,7 +1489,9 @@ nb = "m? v?re %0", nds = "muss %0 sein", nl = "moet %0 zijn", + pl = "musi by? %0", pt = "tem que ser %0", + pt_BR = "precisa ser %0", ru = "?????? ???? %0", sk = "mus? by? %0", sv = "m?ste vara %0", @@ -1347,7 +1502,8 @@ -- Data type for "must be %0" above... ["string"] = { cs = "?et?zec", - de = "String", + da = "streng", + de = "Zeichenkette", el = "?????????????", en_AU = "string", en_CA = "string", @@ -1360,7 +1516,9 @@ nb = "streng", nds = "string", nl = "string", + pl = "ci?giem", pt = "express?o", + pt_BR = "texto", ru = "???????", sk = "re?azec", sv = "str?ng", @@ -1385,7 +1543,9 @@ nb = "boolsk verdi", nds = "boolean", nl = "boolean", + pl = "warto?ci? logiczn?", pt = "boleano", + pt_BR = "booleano", ru = "???????", sk = "booleovsk? hodnota", sv = "boolskt v?rde", @@ -1410,7 +1570,9 @@ nb = "nummer", nds = "Nummer", nl = "nummer", + pl = "liczb?", pt = "n?mero", + pt_BR = "n?mero", ru = "??????", sk = "??slo", sv = "nummer", @@ -1421,6 +1583,7 @@ -- Data type for "must be %0" above... ["function"] = { cs = "funkce", + da = "funktion", de = "Funktion", el = "function", en_AU = "function", @@ -1434,7 +1597,9 @@ nb = "funksjon", nds = "Funktion", nl = "functie", + pl = "funkcj?", pt = "fun??o", + pt_BR = "fun??o", ru = "????????", sk = "funkcia", sv = "funktion", @@ -1459,7 +1624,9 @@ nb = "tabell", nds = "Tabelle", nl = "tabel", + pl = "tabel?", pt = "tabela", + pt_BR = "tabela", ru = "????????", sk = "tabu?ka", sv = "tabell", @@ -1485,7 +1652,9 @@ nb = "intern feil i bzlib: %0", nds = "bzlib l?ste eine internen Fehler aus: %0", nl = "bzlib heeft een interne fout veroorzaakt: %0", + pl = "bzlib wywo?a? b??d wewn?trzny: %0", pt = "A bzlib despoletou um erro interno: %0", + pt_BR = "bzlib disparou um erro interno: %0", ru = "????????? ?????? ? bzlib: %0", sk = "bzlib sp?sobilo vn?torn? chybu: %0", sv = "internt fel i bzlib: %0", @@ -1511,7 +1680,9 @@ nb = "Avbryt", nds = "Abbrechen", nl = "Annuleren", + pl = "Anuluj", pt = "Cancelar", + pt_BR = "Cancelar", ru = "????????", sk = "Zru?", sv = "Avbryt", @@ -1523,6 +1694,7 @@ -- the user clicks the Cancel button. ["Cancel installation"] = { cs = "Zru?it instalaci", + da = "Afbryd installation", de = "Installation abbrechen", el = "??????? ????????????", en_AU = "Cancel Installation", @@ -1532,11 +1704,13 @@ fi = "Peru asennus", fr = "Annuler l'installation", hu = "Telep?t?s megszak?t?sa", - it = "Annullare l'installazione", + it = "Annulla l'installazione", nb = "Avbryt installasjonen", nds = "Installation abbrechen", nl = "Installatie afbreken?", + pl = "Anuluj Instalacj?", pt = "Cancelar a instala??o", + pt_BR = "Cancelar instala??o", ru = "???????? ?????????", sk = "Zru? in?tal?ciu", sv = "Avbryt installationen", @@ -1557,10 +1731,13 @@ fi = "Paketin tiedostojen listaus ep?onnistui", fr = "Ne peux pas ?num?rer les fichiers de l'archive", hu = "Az arch?vum nem csomagolhat? ki", + it = "Impossibile enumerare l'archivio", nb = "Kunne ikke liste filer i arkivet", nds = "Konnte Archive nicht nummerieren", nl = "Kan het archief niet weergeven", + pl = "nie mo?na przetworzy? archiwum", pt = "Foi imposs?vel enumerar o arquivo", + pt_BR = "N?o foi poss?vel enumerar o arquivo", ru = "?? ???? ????????? ?????", sk = "Nem??em prelistova? arch?v", sv = "Kunde inte lista filen", @@ -1586,7 +1763,9 @@ nb = "Kunne ikke ?pne arkivet", nds = "Kann Archiv nicht ?ffnen", nl = "Kon archief niet openen", + pl = "Nie mo?na otworzy? archiwum", pt = "Foi imposs?vel abrir o arquivo", + pt_BR = "N?o foi poss?vel abrir o arquivo", ru = "?? ???? ??????? ?????", sk = "Nem??em otvori? arch?v", sv = "Kunde inte ?ppna filen", @@ -1614,7 +1793,9 @@ nb = "Velg installasjonssti etter nummer (trykk enter for #1), eller skriv inn din egen.", nds = "W?hlen Sie das Installationsverzeichnis durch Dr?cken einer Nummer (enter f?r #1), oder geben Sie selber einen ein.", nl = "Kies installatiemap met het bijbehorende nummer, of voer u eigen keuze in.", + pl = "Wybierz miejsce instalacji wybieraj?c numer (naci?nij enter dla #1), lub wpisz w?asn?.", pt = "Escolha o destino da instala??o pelo seu n?mero (pressione enter para o primeiro destino), ou introduza um outro destino.", + pt_BR = "Escolha um destino de instala??o pelo n?mero (pressione enter para 1), ou informe o seu pr?pio.", ru = "???????? ???? ????????? (??????? Enter ??? ?????? 1), ??? ??????? ????.", sk = "Vyberte cie? in?tal?cie pomocou ??sla (stla?te enter pre prv? mo?nos?).", sv = "V?lj s?kv?g f?r installationen efter nummer (tryck enter f?r #1), eller skriv in din egen.", @@ -1628,6 +1809,7 @@ -- user before the prompt. ["Choose number to change."] = { cs = "Zadejte ??slo pro zm?nu.", + da = "V?lg nummer som skal ?ndres.", de = "W?hlen Sie eine Nummer zum ?ndern.", el = "???????? ??? ?????? ??? ?????? ?? ????????.", en_AU = "Choose number to change.", @@ -1641,7 +1823,9 @@ nb = "Velg nummer som skal endres.", nds = "W?hle eine Nummer zum ?ndern", nl = "Kies een nummer om te veranderen", + pl = "Wybierz numer, aby zmieni?.", pt = "Escolha um n?mero para alterar", + pt_BR = "Escolha o n?mero para alterar", ru = "???????? ????? ??? ?????????", sk = "Vyberte pomocou ??sla ak chcete zmeni? nastavenie", sv = "V?lj nummer som skall ?ndras.", @@ -1667,7 +1851,9 @@ nb = "Konflikt!", nds = "Konflikt!", nl = "Conflict!", + pl = "Konflikt!", pt = "Conflito!", + pt_BR = "Conflito!", ru = "????????!", sk = "Konflikt!", sv = "Konflikt!", @@ -1695,7 +1881,9 @@ nb = "Kunne ikke sikkerhetskopiere fil for tilbakerulling", nds = "Datei konnte f?r die Wiederherstellung nicht gesichert werden", nl = "Kon bestand niet backupen om de installatie terug te kunnen draaien", + pl = "Nie mo?na zaarchiwizowa? pliku do odtworzenia", pt = "Foi imposs?vel salvaguardar o ficheiro para refazer as ac??es", + pt_BR = "N?o foi poss?vel criar um backup ou restaurar o arquivo", ru = "?? ???? ????????? ????? ????? ??? ??????????????", sk = "Nem??em z?lohova? s?bor pre obnovu", sv = "Kunde inte s?kerhetskopiera filen f?r ?terst?llning", @@ -1719,10 +1907,13 @@ fi = "Asennusluettelon luominen ep?onnistui", fr = "Echec de cr?ation du fichier manifest", hu = "Telep?tend? f?jlok list?j?nak l?trehoz?sa sikertelen", + it = "Impossibile creare la lista dei file installati su disco.", nb = "Kunne ikke lage manifest", nds = "Erstellen des Manifests schlug fehl.", nl = "Kon het installatiemanifest niet maken", + pl = "Nie mo?na utworzy? manifestu", pt = "Foi imposs?vel criar o manifesto", + pt_BR = "N?o ? poss?vel criar o manifest", ru = "?? ???? ??????? ????????", sk = "Nem??em vytvori? manifest", sv = "Kunde inte skapa manifest", @@ -1746,7 +1937,9 @@ nb = "Noen filer kunne ikke tilbakestilles. Den eksisterende installasjonen er sannsynligvis skadet.", nds = "Konnte einige Dateien nicht wiederherstellen. Ihre Installation ist m?glicherweise besch?digt.", nl = "Kon sommige bestanden niet terugzetten. Uw bestaande installatie is waarschijnlijk beschadigd.", + pl = "Nie mo?na odtworzy? niekt?rych plik?w. Twoja aktualna instalacja jest prawdopodobnie uszkodzona.", pt = "Foi imposs?vel recuperar alguns ficheiros. Provavelmente, a sua instala??o est? danificada.", + pt_BR = "N?o foi poss?vel restaurar alguns arquivos. Sua instala??o existente est?, provavelmente, danificada.", ru = "?? ???? ???????????? ????????? ?????. ???? ????????? ??????? ??????????.", sk = "Nem??em obnovi? niektor? s?bory. Va?a aktu?lna in?tal?cia je zrejme po?koden?.", sv = "N?gra filer kunde inte ?terskapas. Den existerande installationen ?r troligtvis skadad.", @@ -1757,6 +1950,7 @@ -- Error message when deleting a file fails. ["Deletion failed!"] = { cs = "Maz?n? selhalo!", + da = "Kunne ikke slette!", de = "L?schen fehlgeschlagen!", el = "??????? ? ????????!", en_AU = "Deletion failed!", @@ -1766,14 +1960,16 @@ fi = "Tiedoston poisto ep?onnistui!", fr = "Suppression de fichier ?chou?e!", hu = "T?rl?s sikertelen!", - it = "Cancellazione fallita!", + it = "Eliminazione del file fallita!", nb = "Kunne ikke slette!", nds = "L?schen fehlgeschlagen!", nl = "Verwijderen mislukt!", + pl = "Kasowanie nieudane!", pt = "A remo??o falhou!", + pt_BR = "Falha ao apagar o arquivo!", ru = "?? ???? ???????!", sk = "Odstra?ovanie s?boru zlyhalo!", - sv = "Kunde inte radera!", + sv = "Radering misslyckades!", tr = "Silme i?lemi ba?ar?lamad?!", zh_TW = "????" }; @@ -1797,7 +1993,9 @@ nb = "Katalog:", nds = "Ordner:", nl = "Map:", + pl = "Folder:", pt = "Directoria:", + pt_BR = "Pasta:", ru = "?????:", sk = "Adres?r:", sv = "Katalog:", @@ -1822,7 +2020,9 @@ nb = "Destinasjon", nds = "Ziel", nl = "Bestemming", + pl = "Miejsce docelowe", pt = "Destino", + pt_BR = "Destino", ru = "??????????", sk = "Cie?", sv = "M?l", @@ -1848,7 +2048,9 @@ nb = "Laster ned", nds = "Lade herunter", nl = "Bezig met downloaden", + pl = "Pobieranie", pt = "A descarregar", + pt_BR = "Baixando", ru = "?????????? ??????", sk = "S?ahujem", sv = "H?mtar", @@ -1869,14 +2071,16 @@ fi = "Sy?t? polku, johon tiedostot asennetaan.", fr = "Entrez le chemin d'installation souhait? pour vos fichiers.", hu = "Add meg az ?tvonalat, ahova a f?jlokat telep?thetem.", - it = "Inserisci il percorso dove installare i file.", + it = "Inserisci il percorso di installazione.", nb = "Skriv inn destinasjonssti for installasjonen.", nds = "Pfad eingeben, in den installiert werden soll.", nl = "Geef de map op waar de bestanden geinstalleerd zullen worden", + pl = "Podaj ?cie?k? gdzie pliki b?d? zainstalowane.", pt = "Introduza o caminho para os ficheiros que ser?o instalados.", + pt_BR = "Entre o caminho aonde os arquivos ser?o instalados.", ru = "??????? ???? ???? ????? ??????????? ?????????.", sk = "Zadajte cestu kam chcete in?talova?", - sv = "V?lj den mapp d?r filerna ska installeras.", + sv = "V?lj s?kv?g f?r installationen", tr = "Dosyalar?n kurulaca?? yolu giriniz.", zh_TW = "??????????" }; @@ -1884,6 +2088,7 @@ -- Error message when a file we expect to load can't be read from disk. ["failed to load file '%0'"] = { cs = "nepoda?ilo se na??st soubor '%0'", + da = "Kunne ikke indl?se fil '%0'", de = "Laden von Datei '%0' fehlgeschlagen", el = "??????? ?? ??????? ??? ??????? '%0'", en_AU = "failed to load file '%0'", @@ -1897,7 +2102,9 @@ nb = "kunne ikke laste fil '%0'", nds = "Fehler beim Laden von '%0'", nl = "laden van bestand \"%0\" mislukt", + pl = "Nie mo?na za?adowa? pliku '%0'", pt = "falhou a carregar o filheiro '%0'", + pt_BR = "falha ao carregar o arquivo '%0'", ru = "?? ???? ????????? ???? '%0'", sk = "nem??em nahra? s?bor '%0'", sv = "Misslyckades med att l?sa filen '%0'", @@ -1922,7 +2129,9 @@ nb = "Fatal feil", nds = "Fataler Fehler", nl = "Fatale fout", + pl = "Powa?ny b??d", pt = "Erro fatal", + pt_BR = "Erro fatal", ru = "????????? ??????", sk = "Z?VA?N? CHYBA", sv = "Allvarligt fel", @@ -1946,7 +2155,9 @@ nb = "Kunne ikke lage fil!", nds = "Datei Erstellung ist fehlgeschlagen!", nl = "aanmaken bestand mislukt!", + pl = "Nie mo?na utworzy? pliku!", pt = "Falhou a cria??o do ficheiro!", + pt_BR = "Erro na cria??o do arquivo!", ru = "?? ???? ??????? ????!", sk = "Nem??em vytvori? s?bor!", sv = "Misslyckades med att skapa fil!", @@ -1957,6 +2168,7 @@ -- This is an error message when failing to get a file from the network. ["File download failed!"] = { cs = "Nepoda?ilo se st?hnout soubor!", + da = "Download af fil mislykkedes!", de = "Dateidownload fehlgeschlagen!", el = "? ???? ??????? ???????!", en_AU = "File download failed!", @@ -1970,7 +2182,9 @@ nb = "Kunne ikke laste ned fil!", nds = "Dateidownload fehlgeschlagen!", nl = "downloaden van bestand mislukt!", + pl = "Nie mo?na pobra? pliku!", pt = "Falhou a descarregar!", + pt_BR = "Erro ao baixar o arquivo!", ru = "?????? ?????????? ?????!", sk = "S?ahovanie zlyhalo!", sv = "H?mtning av fil misslyckades!", @@ -1991,14 +2205,16 @@ fi = "Tiedosto \"%0\" on jo olemassa! Korvaa?", fr = "Le fichier '%0' existe d?j?! Le remplacer?", hu = "'%0' m?r l?tezik! Fel?l?rjam?", - it = "Il file %0 esiste gi?! Rimpiazzare?", + it = "Il file %0 esiste gi?! Sostituire?", nb = "Filen '%0' eksisterer allerede! Skrive over?", nds = "Datei '%0' existiert bereits! ?berschreiben?", nl = "Bestand \"%0\" bestaat al! Vervangen?", + pl = "Plik '%0' ju? istnieje! Nadpisa??", pt = "O ficheiro '%0' j? existe! Substituir?", + pt_BR = "Arquivo '%0' j? existe! Substituir?", ru = "???? '%0' ??? ??????????! ?????????", sk = "S?bor '%0' u? existuje! Prep?sa??", - sv = "Filen '%0' existerar redan! Vill du ers?tta filen?", + sv = "Filen '%0' existerar redan! Vill du ers?tta den?", tr = "'%0' dosyas? zaten var! De?i?tirilsin mi?", zh_TW = "?? '%0' ??????????" }; @@ -2021,7 +2237,9 @@ nb = "Ferdig", nds = "Fertig", nl = "Voltooien", + pl = "Zako?cz", pt = "Finalizar", + pt_BR = "Concluir", ru = "??????????", sk = "Dokon?i?", sv = "Slutf?r", @@ -2046,7 +2264,9 @@ nb = "Kunne ikke starte grafisk grensesnitt", nds = "Fehler beim starten der GUI", nl = "Opstarten GUI mislukt", + pl = "GUI nie m?g? si? uruchomi?", pt = "O GUI falhou a iniciar", + pt_BR = "Falha ao iniciar a GUI", ru = "?????? ??????? ???????????? ??????????", sk = "Nieje mo?n? spusti? GUI", sv = "Kunde inte starta grafisk gr?nssnitt", @@ -2072,7 +2292,9 @@ nb = "Installasjonen ble ikke ferdig. Vi vil tilbakestille alle endringer som ble gjort.", nds = "Unvollst?ndige Installation. Alle Ver?nderungen werden r?ckg?ngig gemacht.", nl = "Incomplete installatie. De veranderingen zullen ongedaan gemaakt worden.", + pl = "Niekompletna instalacja. Cofniemy dokonane zmiany.", pt = "Instala??o incompleta. Todas as altera??es ser?o desfeitas.", + pt_BR = "Instala??o incompleta. As altera??es feitas ser?o revertidas.", ru = "?????? ?????????. ??? ????????? ????? ????????.", sk = "Ne?pln? in?tal?cia. Vraciam spa? vykonan? zmeny.", sv = "Ofullst?ndig installation. ?terst?llning av alla gjorda ?ndringar utf?rs.", @@ -2097,7 +2319,9 @@ nb = "Installasjonen var en suksess.", nds = "Die Installation war erfolgreich", nl = "De installatie is succesvol verlopen.", + pl = "Instalacja zako?czona poprawnie.", pt = "A instala??o foi bem sucedida.", + pt_BR = "Instala??o conclu?da com sucesso.", ru = "????????? ???? ???????.", sk = "In?tal?cia je hotov?.", sv = "Installationen lyckades.", @@ -2123,7 +2347,9 @@ nb = "Installerer", nds = "Installiere ...", nl = "Installeren", + pl = "Instalacja", pt = "A instalar", + pt_BR = "Instalando", ru = "?????????", sk = "In?talujem", sv = "Installerar", @@ -2149,7 +2375,9 @@ nb = "Valg", nds = "Optionen", nl = "Opties", + pl = "Opcje", pt = "Op??es", + pt_BR = "Op??es", ru = "?????????", sk = "Mo?nosti", sv = "Alternativ", @@ -2175,7 +2403,9 @@ nb = "(Jeg vil skrive inn min egen sti.)", nds = "(Ich m?chte einen Pfad angeben.)", nl = "(Ik wil een pad specificeren.)", + pl = "(Chc? poda? ?cie?k?.)", pt = "(Eu quero especificar o caminho.)", + pt_BR = "(Eu quero especificar um caminho.)", ru = "(??????? ????.)", sk = "(Chcem zada? cestu ru?ne)", sv = "(Jag vill skriva in en egen s?kv?g.)", @@ -2200,7 +2430,9 @@ nb = "KB/s", nds = "kB/s", nl = "KB/s", + pl = "KB/s", pt = "KB/s", + pt_BR = "KB/s", ru = "??/?", sk = "KB/s", sv = "KB/s", @@ -2224,7 +2456,9 @@ nb = "B/s", nds = "B/s", nl = "B/s", + pl = "B/s", pt = "B/s", + pt_BR = "B/s", ru = "?/?", sk = "B/s", sv = "B/s", @@ -2236,6 +2470,7 @@ -- This is a number (%0) followed by the localized "KB/s" or "B/s" (%1). ["%0 %1"] = { cs = "%0 %1", + da = "%0 %1", de = "%0 %1", el = "%0 %1", en_AU = "%0 %1", @@ -2249,7 +2484,9 @@ nb = "%0 %1", nds = "%0 %1", nl = "%0 %1", + pl = "%0 %1", pt = "%0 %1", + pt_BR = "%0 %1", ru = "%0 %1", sk = "%0 %1", sv = "%0 %1", @@ -2275,7 +2512,9 @@ nb = "%0 %1, %2:%3:%4 igjen", nds = "%0 %1, %2:%3:%4 verbleiben", nl = "%0 %1, %2:%3:%4 resterend", + pl = "%0 %1, %2:%3:%4 do ko?ca", pt = "restam %0 %1, %2:%3:%4", + pt_BR = "%0 %1, faltam %2:%3:%4", ru = "%0 %1, ???????? %2:%3:%4", sk = "%0 %1, %2:%3:%4 zost?va", sv = "%0 %1, %2:%3:%4 ?terst?r", @@ -2299,7 +2538,9 @@ nb = "st?r fast", nds = "Angehalten", nl = "geen progressie", + pl = "wstrzymano", pt = "Parado", + pt_BR = "parado", ru = "????????", sk = "zastaven?", sv = "avstannad", @@ -2311,6 +2552,7 @@ -- download rate determined in one of the above strings (%2). ["%0: %1%% (%2)"] = { cs = "%0: %1%% (%2)", + da = "%0: %1%% (%2)", de = "%0: %1%% (%2)", el = "%0: %1%% (%2)", en_AU = "%0: %1%% (%2)", @@ -2324,7 +2566,9 @@ nb = "%0: %1%% (%2)", nds = "%0: %1%% (%2)", nl = "%0: %1%% (%2)", + pl = "%0: %1%% (%2)", pt = "%0: %1%% (%2)", + pt_BR = "%0: %1%% (%2)", ru = "%0: %1%% (%2)", sk = "%0: %1%% (%2)", sv = "%0: %1%% (%2)", @@ -2348,8 +2592,10 @@ it = "Inserire il prossimo disco", nb = "Mediaendring", nds = "Medien Wechsel", - nl = "Verwissel medium", + nl = "Verwissel CD/medium", + pl = "Zmiana no?nika", pt = "Mudan?a de media", + pt_BR = "M?dia alterada", ru = "????? ?????", sk = "V?mena m?dia", sv = "Mediabyte", @@ -2361,6 +2607,7 @@ -- folder/directory in the filesystem. ["Directory creation failed"] = { cs = "Selhalo vytv??en? adres??e", + da = "Kunne ikke oprette katalog", de = "Erstellung eines Verzeichnisses fehlgeschlagen", el = "? ??????????? ??????? ???????", en_AU = "Directory creation failed", @@ -2374,7 +2621,9 @@ nb = "Kunne ikke lage katalog", nds = "Ordner erstellen schlug fehl!", nl = "Aanmaken folder mislukt", + pl = "Tworzenie katalogu nie powiod?o si?", pt = "A cria??o da directoria falhou", + pt_BR = "Falha na cria??o do diret?rio", ru = "?????? ???????? ????????", sk = "Nem??em vytvori? adres?r", sv = "Kunde inte skapa katalog", @@ -2386,6 +2635,7 @@ -- "No" would take the 'N' hotkey in English. ["N_ever"] = { cs = "Ni_kdy", + da = "Al_drig", de = "Ni_emals", el = "_????", en_AU = "N_ever", @@ -2399,7 +2649,9 @@ nb = "Al_dri", nds = "N_ie", nl = "No_oit", + pl = "N_igdy", pt = "N_unca", + pt_BR = "N_unca", ru = "?_??????", sk = "N_ikdy", sv = "Al_drig", @@ -2425,7 +2677,9 @@ nb = "Neste", nds = "Weiter", nl = "Volgende", + pl = "Dalej", pt = "Seguinte", + pt_BR = "Avan?ar", ru = "?????", sk = "?alej", sv = "N?sta", @@ -2450,7 +2704,9 @@ nb = "Nei", nds = "Nein", nl = "Nee", + pl = "Nie", pt = "N?o", + pt_BR = "N?o", ru = "???", sk = "Nie", sv = "Nej", @@ -2475,7 +2731,9 @@ nb = "Ja", nds = "Ja", nl = "Ja", + pl = "Tak", pt = "Sim", + pt_BR = "Sim", ru = "??", sk = "?no", sv = "Ja", @@ -2501,7 +2759,9 @@ nb = "Ikke funnet", nds = "Nicht gefunden", nl = "Niet Gevonden", + pl = "Nie znaleziono", pt = "Inexistente", + pt_BR = "N?o Encontrado", ru = "?? ???????", sk = "Nem??em n?js?", sv = "Hittades inte", @@ -2526,7 +2786,9 @@ nb = "Ingenting ? gj?re!", nds = "Nichts zu tun!", nl = "Niets te doen!", + pl = "Nic do zrobienia!", pt = "Nada por fazer!", + pt_BR = "Nada para fazer!", ru = "?????? ??????!", sk = "Nem?m ?o robi?", sv = "Ingenting att g?ra!", @@ -2551,7 +2813,9 @@ nb = "OK", nds = "OK", nl = "OK", + pl = "OK", pt = "Aceitar", + pt_BR = "OK", ru = "??", sk = "OK", sv = "OK", @@ -2566,6 +2830,7 @@ -- header, with more information to follow later. ["PANIC"] = { cs = "SELH?N?", + da = "PANIK", de = "PANIK", el = "???????", en_AU = "PANIC", @@ -2579,7 +2844,9 @@ nb = "PANIKK", nds = "PANIK", nl = "PROBLEEM", + pl = "PANIKA", pt = "P?NICO", + pt_BR = "P?NICO", ru = "????????? ??????", sk = "PANIKA", sv = "PANIK", @@ -2603,7 +2870,9 @@ nb = "Sett inn '%0'", nds = "Bitte '%0' in das Laufwerk einlegen.", nl = "Laadt '%0' a.u.b.", + pl = "Prosz? w?o?y? '%0'", pt = "Por favor insira '%0'", + pt_BR = "Por favor, insira '%0'", ru = "????????, ??????????, '%0'", sk = "Pros?m vlo?te '%0'", sv = "S?tt in '%0'", @@ -2630,7 +2899,9 @@ nb = "Trykk enter for ? fortsette.", nds = "Enter dr?cken, um fortzufahren.", nl = "Toets enter om door te gaan.", + pl = "Prosz? nacisn?? enter, aby kontynuowa?.", pt = "Pressione enter para continuar.", + pt_BR = "Pressione enter para continuar.", ru = "??????? Enter ??? ???????????", sk = "Stla?te Enter pre pokra?ovanie.", sv = "Tryck enter f?r att forts?tta.", @@ -2657,7 +2928,9 @@ nb = "Alvorlig problem", nds = "Ernstzunehmender Fehler", nl = "Serieus probleem", + pl = "Powa?ny b??d", pt = "Problema s?rio", + pt_BR = "Problema s?rio", ru = "????????? ??????", sk = "V??ny probl?m", sv = "Allvarligt problem", @@ -2678,11 +2951,13 @@ fi = "Ajetaan alas...", fr = "Fermeture en cours...", hu = "Le?ll?t?s...", - it = "Spegnimento in corso...", + it = "Uscita in corso...", nb = "Avslutter...", nds = "Fahre runter ...", nl = "Afsluiten...", + pl = "Zamykanie...", pt = "A terminar...", + pt_BR = "Desligando...", ru = "??????????", sk = "Vyp?nam sa...", sv = "Avslutar...", @@ -2707,7 +2982,9 @@ nb = "Du kan lukke denne nettleseren n?.", nds = "Sie k?nnen den Browser nun schlie?en.", nl = "U kunt dit scherm nu sluiten.", + pl = "Mo?esz zamkn?? ju? przegl?dark?.", pt = "J? pode fechar este browser.", + pt_BR = "Voc? n?o pode fechar esse navegador agora.", ru = "?????? ??????? ???????.", sk = "M??ete zavre? tento prehliada?.", sv = "Du kan st?nga denna webbl?sare nu.", @@ -2728,11 +3005,13 @@ fi = "Symbolisen linkin luominen ep?onnistui!", fr = "Cr?ation de lien symbolique ?chou?e!", hu = "Symlink k?sz?t?s sikertelen!", - it = "Creazione del collegamento fallita!", + it = "Creazione del collegamento (symlink) fallita!", nb = "Kunne ikke lage symbolsk lenke!", nds = "Symbolischer Link erstellen schlug fehl!", nl = "Aanmaken Symlink mislukt!", + pl = "Nie uda?o si? utworzy? odno?nika symbolicznego!", pt = "A cria??o de uma liga??o simb?lica falhou!", + pt_BR = "Falha na cria??o do link simb?lico!", ru = "?????? ???????? ??????!", sk = "Nem??em vytvori? symlink", sv = "Kunde inte skapa symbolisk l?nk!", @@ -2753,11 +3032,13 @@ fi = "J?rjestelm? pys?ytti asennusohjelman.", fr = "L'installeur a ?t? interrompu par le syst?me.", hu = "A telep?t? megszak?tva a rendszer ?ltal.", - it = "L'installer ? stato fermato dal sistema.", + it = "L'installazione ? stata terminata dal sistema operativo.", nb = "Installasjonsprogrammet ble stoppet av systemet.", nds = "Der Installer wurde vom System gestoppt.", nl = "Het installatieprogramma is door het systeem gestopt.", + pl = "Instalator zosta? zatrzymany przez system.", pt = "O instalador foi parado pelo sistema.", + pt_BR = "O instalador foi parado pelo sistema.", ru = "????????? ????????? ???? ??????????? ????????.", sk = "In?tal?tor bol zastaven? syst?mom.", sv = "Installationsprogrammet blev stoppat av systemet.", @@ -2782,7 +3063,9 @@ nb = "Installasjonsprogrammet kr?sjet pga. en feil.", nds = "Der Installer ist Aufgrund eines Fehlers abgest?rzt.", nl = "Het installatieprogramma is door een bug gecrasht.", + pl = "Instalator przerwa? dzia?anie z powodu b??du.", pt = "O instalador terminou acidentalmente devido a um erro.", + pt_BR = "O instalador quebrou devido a um bug.", ru = "????????? ????????? ??????????? ??-?? ??????.", sk = "In?tal?tor havaroval k?li chybe.", sv = "Installationsprogrammet kraschade pga. ett fel.", @@ -2807,7 +3090,9 @@ nb = "Inverter valg", nds = "Umschalten", nl = "Aan/Uit", + pl = "Prze??cz", pt = "Alternar", + pt_BR = "Alternar", ru = "???????????", sk = "V?ber", sv = "V?xla", @@ -2834,7 +3119,9 @@ nb = "Ukjent filtype i arkivet", nds = "Ubekannter Datey-Typ im Archiv", nl = "Onbekend bestandstype in archief", + pl = "Nie znany typ pliku w archiwum.", pt = "Tipo de ficheiro desconhecido no arquivo", + pt_BR = "Tipo de arquivo desconhecido no arquivo", ru = "??????????? ??? ????? ? ??????", sk = "Nezn?my typ s?boru v arch?ve", sv = "Ok?nd filtyp p?tr?ffad i arkivet", @@ -2859,7 +3146,9 @@ nb = "Lisensen m? godkjennes f?r du kan installere", nds = "Du must den Lizenzbedingungen zustimmen, um die Installation fortzusetzen", nl = "U moet akkoord gaan met de licentie om te kunnen installeren", + pl = "Musisz zaakceptowa? licencj? przed instalacj?", pt = "Tem que aceitar a licen?a antes de prosseguir com a instala??o", + pt_BR = "Voc? precisa aceitar essa licensa antes de poder instalar", ru = "?? ?????? ??????????? ? ???????????? ??????????? ????? ?????????? ?????????", sk = "Mus?te s?hlasi? s licenciou pokia? chcete pokra?ova? v in?tal?cii", sv = "Du m?ste acceptera licensavtalet innan du kan forts?tta med installationen", @@ -2889,7 +3178,9 @@ nb = "Metadata", nds = "Metadaten", nl = "Metadata", + pl = "Metadane", pt = "Meta-Informa??o", + pt_BR = "Meta-dados", ru = "??????????", sk = "Metad?ta", sv = "Metadata", @@ -2909,14 +3200,16 @@ fi = "Virheellinen komentorivi", fr = "Ligne de commande invalide", hu = "Helytelen parancssor", - it = "Linea di comando non valida", + it = "Parametri nella riga di comando non validi", nb = "Ugyldig kommandolinje", nds = "Ung?ltige Befehlszeile", nl = "Ongeldige opdrachtregel", + pl = "Niepoprawny parametr", pt = "Argumento da linha de comandos inv?lido", + pt_BR = "Linha de comando inv?lida", ru = "???????? ????????? ??????", sk = "Chybn? parametre", - sv = "Ogiltigt argument", + sv = "Ogiltigt kommando", tr = "Ge?ersiz komut sat?r?", zh_TW = "?????" }; @@ -2935,10 +3228,13 @@ fi = "Asennusluetteloa paketille \"%0\" ei kyetty lukemaan.", fr = "Impossible de charger le fichier manifeste de '%0'", hu = "'%0' f?jllista bet?lt?se sikertelen", + it = "Impossibile caricare il manifest file per '%0'", nb = "Kunne ikke laste manifestfil for '%0'", nds = "Konnte Manifest f?r '%0' nicht laden.", nl = "Kan manifest bestand for '%0' niet laden", + pl = "Nie mo?na za?adowa? manifestu dla pliku '%0'", pt = "Foi imposs?vel carregar o ficheiro de manifesto para '%0'", + pt_BR = "N?o ? poss?vel carregar o arquivo manifest de '%0'", ru = "?? ???? ????????? ???? ????????? '%0'", sk = "Nem??em nahra? manifest s?bor pre '%0'", sv = "Kunde inte ladda manifestfil f?r '%0'", @@ -2950,6 +3246,7 @@ -- (%0) that doesn't exist. ["File %0 not found"] = { cs = "Soubor '%0' nebyl nalezen", + da = "Filen '%0' ikke fundet", de = "Datei %0 nicht gefunden.", el = "?? ?????? %0 ??? ???????", en_AU = "File %0 not found", @@ -2963,7 +3260,9 @@ nb = "Filen '%0' ble ikke funnet", nds = "Datei %0 wurde nicht gefunden", nl = "Bestand %0 niet gevonden", + pl = "Plik %0 nie znaleziony", pt = "O ficheiro %0 n?o foi encontrado", + pt_BR = "Arquivo %0 n?o encontrado", ru = "???? %0 ?? ??????", sk = "Nena?iel som s?bor %0", sv = "Filen '%0' hittades inte", @@ -2982,14 +3281,17 @@ en_CA = "Uninstall", en_GB = "Uninstall", es = "Desinstalar", + et = "Eemalda", fi = "Asennuksen poisto", fr = "D?sinstaller", hu = "Elt?vol?t?s", - it = "Rimuovi", + it = "Disinstalla", nb = "Avinstallasjon", nds = "Deinstalleren", nl = "De?nstalleren", + pl = "Odinstaluj", pt = "Desinstalar", + pt_BR = "Desinstalar", ru = "???????", sk = "Odin?talova?", sv = "Avinstallera", @@ -3014,7 +3316,9 @@ nb = "Er du sikker p? at du vil avinstallere '%0'?", nds = "Sind sie sicher, dass sie '%0' deinstallieren wollen?", nl = "Bent u er zeker van dat u '%0' wilt de?nstalleren?", + pl = "Czy na pewno chcesz odinsalowa? '%0'?", pt = "Tem a certeza que quer desinstalar '%0'?", + pt_BR = "Voc? tem certeza que deseja desinstalar '%0'?", ru = "?? ???????, ??? ?????? ??????? '%0'?", sk = "Ste si ist? ?e chcete odin?talova? '%0'?", sv = "?r du s?ker p? att du vill avinstallera '%0'?", @@ -3040,7 +3344,9 @@ nb = "Avinstallerer", nds = "Deinstallation", nl = "De?nstallatie", + pl = "Odinstalowywanie", pt = "A desinstalar", + pt_BR = "Desinstalando", ru = "????????", sk = "Odin?talov?vam", sv = "Avinstallerar", @@ -3064,7 +3370,9 @@ nb = "Avinstallasjonen er ferdig", nds = "Deinstallation abgeschlossen", nl = "De?nstallatie voltooid", + pl = "Odinstalowanie zako?czone", pt = "A desinstala??o foi bem sucedida", + pt_BR = "Desinstala??o completa", ru = "???????? ?????????", sk = "Odin?tal?cia dokon?en?", sv = "Avinstallation slutf?rd", @@ -3094,7 +3402,9 @@ nb = "[Gj?r vinduet bredere!]", nds = "[Mach das Fenster breiter!]", nl = "[Maak het scherm breder!]", + pl = "[Zr?b szersze okno!]", pt = "[Torne a janela mais larga!]", + pt_BR = "[Aumente a largura da janela!]", ru = "???????? ???? ????!", sk = "[Roztiahnite okno do ??rky!]", sv = "[G?r f?nstret bredare!]", @@ -3124,7 +3434,9 @@ nb = "[Gj?r vinduet h?yere!]", nds = "[Mach das Fenster h?her!]", nl = "[Maak het scherm langer!]", + pl = "[Zr?b wy?sze okno!]", pt = "[Torne a janela mais alta!]", + pt_BR = "[Aumente a altura da janela!]", ru = "???????? ???? ????!", sk = "[Roztiahnite okno do v??ky!]", sv = "[G?r f?nstret h?gre!]", @@ -3146,9 +3458,12 @@ fi = "Kohdan lis??minen ty?p?yt?valikkoon ep?onnistui.", fr = "Echec de l'installation des ?l?ments du bureau", hu = "Asztali ikon l?trehoz?sa sikertelen", + it = "L'installazione di un oggetto nel menu delle applicazioni ? fallita", nds = "Desktop Menu-Eintrag konnte nicht erstellt werden.", nl = "Installatie van het bureaublad menu item is mislukt", + pl = "Nie uda?o si? utworzy? elementu menu", pt = "A instala??o do menu no desktop falhou", + pt_BR = "Falha ao instalar o item do menu", ru = "?? ??????? ?????????? ??????? ????", sk = "Nepodarilo sa mi nain?talova? odkaz na plochu", sv = "Misslycklades med att l?gga till genv?g i programmenyn", @@ -3170,9 +3485,12 @@ fi = "Kohdan poistaminen ty?p?yt?valikkosta ep?onnistui.", fr = "Echec de la d?sinstallation des ?l?ments du bureau", hu = "Asztali ikon elt?vol?t?sa sikertelen", + it = "La disinstallazione di un oggetto del menu ? fallita", nds = "Desktop Menu-Eintrag konnte nicht entfernt werden.", nl = "De?nstallatie van het bureaublad menu item is mislukt", + pl = "Nie uda?o si? odinstalowa? elementu menu", pt = "A desinstala??o do menu no desktop falhou", + pt_BR = "Falha ao remover o item do menu", ru = "?? ??????? ??????? ??????? ????", sk = "Nepodarilo sa mi odin?talova? odkaz z plochy", sv = "Misslyckades med att ta bort genv?g i programmenyn", From DONOTREPLY at icculus.org Tue Mar 25 03:16:19 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 25 Mar 2008 03:16:19 -0400 Subject: r562 - trunk/scripts Message-ID: <20080325071619.31536.qmail@icculus.org> Author: icculus Date: 2008-03-25 03:16:18 -0400 (Tue, 25 Mar 2008) New Revision: 562 Modified: trunk/scripts/localization.lua Log: Removed the zlib strings (they aren't actually used in MojoSetup), and improved comments for some strings that appear to be producing undesirable results on launchpad. Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-25 07:02:48 UTC (rev 561) +++ trunk/scripts/localization.lua 2008-03-25 07:16:18 UTC (rev 562) @@ -49,156 +49,9 @@ }; MojoSetup.localization = { - -- zlib error message - ["need dictionary"] = { - cs = "je t?eba slovn?k", - da = "beh?ver ordbog", - de = "W?rterbuch ben?tigt", - el = "?????????? ??????", - en_AU = "need dictionary", - en_CA = "need dictionary", - en_GB = "need dictionary", - es = "necesita diccionario", - et = "vaja s?nastiku", - fi = "tarve sanastolle", - fr = "dictionnaire n?cessaire", - hu = "sz?t?r sz?ks?ges", - it = "zlib: need dictionary", - ja = "??????", - nb = "trenger ordbok", - nds = "W?rterbuch ben?tigt", - nl = "woordenboek nodig", - pl = "potrzebny s?ownik", - pt = "? necess?rio um dicion?rio", - pt_BR = "precisa de dicion?rio", - ru = "????????? ???????", - sk = "potrebujem slovn?k", - sv = "beh?ver ordbok", - tr = "s?zl?k gerekiyor", - uk = "???????? ???????", - zh_TW = "????" - }; - - -- zlib error message - ["data error"] = { - cs = "datov? chyba", - da = "datafejl", - de = "Datenfehler", - el = "?????? ?????????", - en_AU = "data error", - en_CA = "data error", - en_GB = "data error", - es = "error de datos", - et = "andmeviga", - fi = "datavirhe", - fr = "Erreur de donn?es", - hu = "adat hiba", - it = "zlib: data error", - ja = "?????", - nb = "datafeil", - nds = "Datenfehler", - nl = "data fout", - pl = "b??d danych", - pt = "erro de dados", - pt_BR = "erro de dados", - ru = "?????? ??????", - sk = "chyba d?t", - sv = "datafel", - tr = "veri hatas?", - uk = "??????? ?????", - zh_TW = "????" - }; - - -- zlib error message - ["memory error"] = { - cs = "pam??ov? chyba", - da = "hukommelsesfejl", - de = "Speicherfehler", - el = "?????? ??????", - en_AU = "memory error", - en_CA = "memory error", - en_GB = "memory error", - es = "error de memoria", - et = "m?luviga", - fi = "muistivirhe", - fr = "Erreur m?moire", - hu = "mem?ria hiba", - it = "zlib: memory error", - ja = "????", - nb = "minnefeil", - nds = "Speicherfehler", - nl = "geheugen fout", - pl = "b??d pami?ci", - pt = "erro na mem?ria", - pt_BR = "erro de mem?ria", - ru = "?????? ??????", - sk = "chyba pam?te", - sv = "minnesfel", - tr = "bellek hatas?", - uk = "??????? ???'???", - zh_TW = "?????" - }; - - -- zlib error message - ["buffer error"] = { - cs = "chyba bufferu", - da = "buffer fejl", - de = "Pufferfehler", - el = "?????? ?????????? ????? ???????????", - en_AU = "buffer error", - en_CA = "buffer error", - en_GB = "buffer error", - es = "error de buffer", - et = "puhvriviga", - fi = "puskurivirhe", - fr = "Erreur de tampon", - hu = "puffer hiba", - it = "zlib: buffer error", - ja = "??????", - nb = "bufferfeil", - nds = "Pufferfehler", - nl = "buffer fout", - pl = "b??d bufora", - pt = "erro no tamp?o", - pt_BR = "Erro de armazenamento", - ru = "?????? ??????", - sk = "chyba vyrovn?vacej pam?te", - sv = "bufferfel", - tr = "tampon hatas?", - uk = "??????? ??????", - zh_TW = "?????" - }; - - -- zlib error message - ["version error"] = { - cs = "chyba verze", - da = "versionsfejl", - de = "Versionsfehler", - el = "????????? ?????? ??????????", - en_AU = "version error", - en_CA = "version error", - en_GB = "version error", - es = "error de versi?n", - et = "versiooniviga", - fi = "versiovirhe", - fr = "Erreur de version", - hu = "veriz? hiba", - it = "zlib: version error", - nb = "versjonsfeil", - nds = "Versionsfehler", - nl = "versie fout", - pl = "b??d wersji", - pt = "erro na vers?o", - pt_BR = "erro de vers?o", - ru = "?????? ??????", - sk = "chyba verzie", - sv = "versionsfel", - tr = "s?r?m hatas?", - uk = "??????? ??????", - zh_TW = "????" - }; - - -- zlib error message + -- This may be shown to the end-user if the application gets extremely + -- confused. It may be shown in desperate sitations when we know + -- something has gone wrong, but not what exactly. ["unknown error"] = { cs = "nezn?m? chyba", da = "ukendt fejl", @@ -229,7 +82,10 @@ }; -- stdio UI plugin says this for "OK"-only msgboxes. "%0" is the message - -- box's text content. + -- box's text content. "[hit enter]" should be translated, too! It's + -- trying to tell the application's user that they should press the + -- key that is normally used to complete a line of text at a terminal's + -- prompt. ["NOTICE: %0\n[hit enter]"] = { cs = "UPOZORN?N?: %0\n[stiskn?te enter]", da = "NB: %0\n[tryk enter]", @@ -260,6 +116,13 @@ -- stdio UI plugin says this for yes/no prompts that default to yes. -- "%0" is the question the user is being asked to respond to. + -- "[Y/n]" are two options that the user will have to type in response. + -- Please pick reasonable abbreviations for YES and NO that can be + -- typed easily by the user. Case of the "Y" and "n" are not important, + -- although we are using the capital letter to show the default option + -- if the user just presses enter. Be sure to translate the strings "Y" + -- and "N", elsewhere, to match what you enter here! At runtime, the + -- user's response is compared to those strings without case sensitivity. ["%0 [Y/n]: "] = { cs = "%0 [A/n]: ", da = "%0 [J/n]: ", @@ -290,6 +153,13 @@ -- stdio UI plugin says this for yes/no prompts that default to no. -- "%0" is the question the user is being asked to respond to. + -- "[y/N]" are two options that the user will have to type in response. + -- Please pick reasonable abbreviations for YES and NO that can be + -- typed easily by the user. Case of the "Y" and "n" are not important, + -- although we are using the capital letter to show the default option + -- if the user just presses enter. Be sure to translate the strings "Y" + -- and "N", elsewhere, to match what you enter here! At runtime, the + -- user's response is compared to those strings without case sensitivity. ["%0 [y/N]: "] = { cs = "%0 [a/N] ", da = "%0 [j/N]: ", @@ -320,6 +190,15 @@ -- stdio UI plugin says this for yes/no/always/never prompts. -- "%0" is the question the user is being asked to respond to. + -- "[Y/n/Always/Never]" are options that the user will have to type in + -- response. Please pick reasonable abbreviations for YES and NO (and + -- full words for ALWAYS and NEVER) that can be typed easily by the user. + -- Case of the "Y" and "n" are not important; there is no default option + -- chosen here, so the user will have to fully type out one of these four + -- options in response. Be sure to translate the strings "Y", "N", + -- "Always", and "Never", elsewhere, to match what you enter here! At + -- runtime, the user's response is compared to those strings without + -- case sensitivity. ["%0 [y/n/Always/Never]: "] = { cs = "%0 [a/n/V?dy/niKdy] ", da = "%0 [j/n/Alltid/Aldrig]: ", @@ -349,6 +228,9 @@ }; -- This is used for "yes" in stdio UI's yes/no prompts (case insensitive). + -- Make sure this matches the string you chose for the "[y/n]" and + -- the "y/n/always/never" prompt, above! This should be reasonable for + -- the end user to enter at a terminal prompt. ["Y"] = { cs = "A", da = "J", @@ -378,6 +260,9 @@ }; -- This is used for "no" in stdio UI's yes/no prompts (case insensitive). + -- Make sure this matches the string you chose for the "[y/n]" and + -- the "y/n/always/never" prompt, above! This should be reasonable for + -- the end user to enter at a terminal prompt. ["N"] = { cs = "N", da = "N", @@ -407,7 +292,9 @@ }; -- This is used for "always" in stdio UI's yes/no/always/never prompts - -- (case insensitive). + -- (case insensitive). Make sure this matches the string you chose for + -- the "y/n/always/never" prompt, above! This should be reasonable for + -- the end user to enter at a terminal prompt. ["Always"] = { cs = "V?dy", da = "Altid", @@ -437,7 +324,9 @@ }; -- This is used for "never" in stdio UI's yes/no/always/never prompts - -- (case insensitive). + -- (case insensitive). Make sure this matches the string you chose for + -- the "y/n/always/never" prompt, above! This should be reasonable for + -- the end user to enter at a terminal prompt. ["Never"] = { cs = "niKdy", da = "Aldrig", From DONOTREPLY at icculus.org Tue Mar 25 03:24:56 2008 From: DONOTREPLY at icculus.org (DONOTREPLY at icculus.org) Date: 25 Mar 2008 03:24:56 -0400 Subject: r563 - trunk/scripts Message-ID: <20080325072456.7455.qmail@icculus.org> Author: icculus Date: 2008-03-25 03:24:51 -0400 (Tue, 25 Mar 2008) New Revision: 563 Modified: trunk/scripts/localization.lua Log: Another comment tweak. Modified: trunk/scripts/localization.lua =================================================================== --- trunk/scripts/localization.lua 2008-03-25 07:16:18 UTC (rev 562) +++ trunk/scripts/localization.lua 2008-03-25 07:24:51 UTC (rev 563) @@ -415,8 +415,8 @@ -- This is the string used for the '%0' in the above string. -- This is only for the stdio UI, so choose something easy and - -- reasonable for the user to manually type. The UIs use a different - -- string for their button ("Back" vs "back" specifically). + -- reasonable for the user to manually type. The graphical UIs use a + -- different string for their button ("Back" vs "back" specifically). ["back"] = { cs = "zp?t", da = "tilbage",