[Scummvm-git-logs] scummvm master -> 912ffa448f605d0204afc91075f32d9b62816831
sev-
noreply at scummvm.org
Tue Mar 21 11:32:49 UTC 2023
This automated email contains information about 3 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
61552c2e96 I18N: Add script to automatically generate scummvm.appdata.xml from *.po files
dc9baac9d0 I18N: Add simpler template for easy modification and order language tags alphabetically
912ffa448f I18N: Refactor generate-appdata.py
Commit: 61552c2e96dfa843e67ba298a72e3965f66c7d28
https://github.com/scummvm/scummvm/commit/61552c2e96dfa843e67ba298a72e3965f66c7d28
Author: Ankush Dutt (ankushd100 at gmail.com)
Date: 2023-03-21T12:32:42+01:00
Commit Message:
I18N: Add script to automatically generate scummvm.appdata.xml from *.po files
Changed paths:
A devtools/generate-appdata.py
dists/scummvm.appdata.xml
diff --git a/devtools/generate-appdata.py b/devtools/generate-appdata.py
new file mode 100644
index 00000000000..f955a8eae2b
--- /dev/null
+++ b/devtools/generate-appdata.py
@@ -0,0 +1,339 @@
+#!/usr/bin/env python3
+
+# This script generates a dists/scummvm.appdata.xml file with multilanguage support.
+# The multilanguage data is extracted from po/*.po files
+
+from xml.dom import minidom
+import re
+import os
+
+
+def extract_summary(file):
+ with open('../po/' + file) as f:
+ content = f.read()
+ pattern = r'#: dists\/scummvm\.appdata\.xml\.cpp:32\nmsgid ".+"\nmsgstr "(.+)"'
+ summary_match = re.search(pattern, content)
+ if summary_match:
+ summary = summary_match.group(1)
+ return summary.strip()
+ else:
+ return None
+
+
+def extract_par1(file):
+ with open('../po/' + file) as f:
+ content = f.read()
+ pattern = r'#: dists\/scummvm\.appdata\.xml\.cpp:37\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
+ par1_match = re.search(pattern, content)
+ if par1_match:
+ par1 = par1_match.group(2)
+ if par1:
+ return par1.strip()
+ else:
+ return None
+ else:
+ return None
+
+
+def extract_par2(file):
+ with open('../po/' + file) as f:
+ content = f.read()
+ pattern = r'#: dists\/scummvm\.appdata\.xml\.cpp:45\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
+ par2_match = re.search(pattern, content)
+ if par2_match:
+ par2 = par2_match.group(2)
+ if par2:
+ return par2.strip()
+ else:
+ return None
+ else:
+ return None
+
+
+def extract_par3(file):
+ with open('../po/' + file) as f:
+ content = f.read()
+ pattern = r'#: dists\/scummvm\.appdata\.xml\.cpp:51\nmsgid ""\n(.+\n)*msgstr ""\n((.+\n)*)'
+ par3_match = re.search(pattern, content)
+ if par3_match:
+ par3 = par3_match.group(2)
+ if par3:
+ return par3.strip()
+ else:
+ return None
+ else:
+ return None
+
+
+doc = minidom.Document()
+
+copyright_comment_elem = doc.createComment(
+ " Copyright 2020-2023 The ScummVM Team ")
+doc.appendChild(copyright_comment_elem)
+
+component_elem = doc.createElement("component")
+component_elem.setAttribute("type", "desktop")
+doc.appendChild(component_elem)
+
+
+id_elem = doc.createElement("id")
+id_text = doc.createTextNode("scummvm.desktop")
+id_elem.appendChild(id_text)
+component_elem.appendChild(id_elem)
+
+metadata_license_elem = doc.createElement("metadata_license")
+metadata_license_text = doc.createTextNode("CC0-1.0")
+metadata_license_elem.appendChild(metadata_license_text)
+component_elem.appendChild(metadata_license_elem)
+
+project_license_elem = doc.createElement("project_license")
+project_license_text = doc.createTextNode("GPL-3.0-or-later")
+project_license_elem.appendChild(project_license_text)
+component_elem.appendChild(project_license_elem)
+
+name_elem = doc.createElement("name")
+name_text = doc.createTextNode("ScummVM")
+name_elem.appendChild(name_text)
+component_elem.appendChild(name_elem)
+
+summary_elem = doc.createElement("summary")
+summary_text = doc.createTextNode(
+ "Interpreter for numerous adventure games and role-playing games")
+summary_elem.appendChild(summary_text)
+component_elem.appendChild(summary_elem)
+
+# get file names of all .po files
+file_names = []
+for filename in os.listdir("../po/"):
+ if filename.endswith(".po"):
+ file_names.append(filename)
+
+# summary translations
+for file in file_names:
+ summary = extract_summary(file)
+ if (summary is None):
+ continue
+ summary_elem = doc.createElement("summary")
+ summary_text = doc.createTextNode(summary)
+ summary_elem.appendChild(summary_text)
+ lang = file[0] + file[1]
+ summary_elem.setAttribute("xml:lang", lang)
+ component_elem.appendChild(summary_elem)
+
+developer_name_elem = doc.createElement("developer_name")
+developer_name_text = doc.createTextNode("The ScummVM Team")
+developer_name_elem.appendChild(developer_name_text)
+component_elem.appendChild(developer_name_elem)
+
+provides_elem = doc.createElement("provides")
+component_elem.appendChild(provides_elem)
+
+id_elem = doc.createElement("id")
+id_text = doc.createTextNode("scummvm.desktop")
+id_elem.appendChild(id_text)
+provides_elem.appendChild(id_elem)
+
+description_elem = doc.createElement("description")
+component_elem.appendChild(description_elem)
+
+# paragraph 1
+p_elem = doc.createElement("p")
+p_text = doc.createTextNode('''ScummVM is a program which allows you to run a wide variety of classic
+graphical point-and -click adventure games and role-playing games,
+provided you already have their data files. The clever part about this:
+ScummVM just replaces the executables shipped with the game,
+allowing you to play them on systems for which they were never designed!''')
+p_elem.appendChild(p_text)
+description_elem.appendChild(p_elem)
+
+# paragraph 1 translations
+for file in file_names:
+ par1 = extract_par1(file)
+ if (par1 is None):
+ continue
+
+ # par1 also contains " (quotes) around the text; so we need to replace them with empty
+ # character otherwise " will appear in scummvm.appdata.xml generated file
+ par1 = par1.replace('"', '')
+
+ p_elem = doc.createElement("p")
+ p_text = doc.createTextNode(par1)
+ p_elem.appendChild(p_text)
+ lang = file[0] + file[1]
+ p_elem.setAttribute("xml:lang", lang)
+ description_elem.appendChild(p_elem)
+
+# paragraph 2
+p_elem = doc.createElement("p")
+p_text = doc.createTextNode('''Currently, ScummVM supports a huge library of adventures with over 250 games in total.
+It supports many classics published by legendary studios like LucasArts, Sierra On-Line,
+Revolution Software, Cyan, Inc. and Westwood Studios.''')
+p_elem.appendChild(p_text)
+description_elem.appendChild(p_elem)
+
+# paragraph 2 translations
+for file in file_names:
+ par2 = extract_par2(file)
+ if (par2 is None):
+ continue
+ par2 = par2.replace('"', '')
+ p_elem = doc.createElement("p")
+ p_text = doc.createTextNode(par2)
+ p_elem.appendChild(p_text)
+ lang = file[0] + file[1]
+ p_elem.setAttribute("xml:lang", lang)
+ description_elem.appendChild(p_elem)
+
+# paragraph 3
+p_elem = doc.createElement("p")
+p_text = doc.createTextNode('''Next to ground-breaking titles like the Monkey Island series, Broken Sword,
+Myst, Blade Runner and countless other games you will find
+some really obscure adventures and truly hidden gems to explore.''')
+p_elem.appendChild(p_text)
+description_elem.appendChild(p_elem)
+
+# paragraph 3 translations
+for file in file_names:
+ par3 = extract_par3(file)
+ if (par3 is None):
+ continue
+ par3 = par3.replace('"', '')
+ p_elem = doc.createElement("p")
+ p_text = doc.createTextNode(par3)
+ p_elem.appendChild(p_text)
+ lang = file[0] + file[1]
+ p_elem.setAttribute("xml:lang", lang)
+ description_elem.appendChild(p_elem)
+
+screenshots_elem = doc.createElement("screenshots")
+component_elem.appendChild(screenshots_elem)
+
+screenshot_elem = doc.createElement("screenshot")
+screenshots_elem.appendChild(screenshot_elem)
+screenshot_elem.setAttribute("type", "default")
+
+image_elem = doc.createElement("image")
+image_text = doc.createTextNode(
+ "https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_1.png")
+image_elem.appendChild(image_text)
+screenshot_elem.appendChild(image_elem)
+
+caption_elem = doc.createElement("caption")
+caption_text = doc.createTextNode("ScummVM Launcher")
+caption_elem.appendChild(caption_text)
+screenshot_elem.appendChild(caption_elem)
+
+screenshot_elem = doc.createElement("screenshot")
+screenshots_elem.appendChild(screenshot_elem)
+
+image_elem = doc.createElement("image")
+image_text = doc.createTextNode(
+ "https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_2.png")
+image_elem.appendChild(image_text)
+screenshot_elem.appendChild(image_elem)
+
+caption_elem = doc.createElement("caption")
+caption_text = doc.createTextNode(
+ "ScummVM running 'Flight of the Amazon Queen'")
+caption_elem.appendChild(caption_text)
+screenshot_elem.appendChild(caption_elem)
+
+screenshot_elem = doc.createElement("screenshot")
+screenshots_elem.appendChild(screenshot_elem)
+
+image_elem = doc.createElement("image")
+image_text = doc.createTextNode(
+ "https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_3.png")
+image_elem.appendChild(image_text)
+screenshot_elem.appendChild(image_elem)
+
+caption_elem = doc.createElement("caption")
+caption_text = doc.createTextNode("ScummVM running 'Beneath a Steel Sky'")
+caption_elem.appendChild(caption_text)
+screenshot_elem.appendChild(caption_elem)
+
+screenshot_elem = doc.createElement("screenshot")
+screenshots_elem.appendChild(screenshot_elem)
+
+image_elem = doc.createElement("image")
+image_text = doc.createTextNode(
+ "https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_4.png")
+image_elem.appendChild(image_text)
+screenshot_elem.appendChild(image_elem)
+
+caption_elem = doc.createElement("caption")
+caption_text = doc.createTextNode(
+ "ScummVM running 'The Curse of Monkey Island'")
+caption_elem.appendChild(caption_text)
+screenshot_elem.appendChild(caption_elem)
+
+screenshot_elem = doc.createElement("screenshot")
+screenshots_elem.appendChild(screenshot_elem)
+
+image_elem = doc.createElement("image")
+image_text = doc.createTextNode(
+ "https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_5.png")
+image_elem.appendChild(image_text)
+screenshot_elem.appendChild(image_elem)
+
+caption_elem = doc.createElement("caption")
+caption_text = doc.createTextNode("ScummVM running a demo of 'Myst'")
+caption_elem.appendChild(caption_text)
+screenshot_elem.appendChild(caption_elem)
+
+url_elem = doc.createElement("url")
+url_text = doc.createTextNode("https://www.scummvm.org")
+url_elem.appendChild(url_text)
+url_elem.setAttribute("type", "homepage")
+component_elem.appendChild(url_elem)
+
+update_contact_elem = doc.createElement("update_contact")
+update_contact_text = doc.createTextNode("scummvm-devel at lists.scummvm.org")
+update_contact_elem.appendChild(update_contact_text)
+component_elem.appendChild(update_contact_elem)
+
+# content ratings
+content_rating_elem = doc.createElement("content_rating")
+content_rating_elem.setAttribute("type", "oars-1.1")
+component_elem.appendChild(content_rating_elem)
+
+content_attribute_ids = {
+ "violence-cartoon": "none",
+ "violence-fantasy": "none",
+ "violence-realistic": "none",
+ "violence-bloodshed": "none",
+ "violence-sexual": "none",
+ "violence-desecration": "none",
+ "violence-slavery": "none",
+ "violence-worship": "none",
+ "drugs-alcohol": "none",
+ "drugs-narcotics": "none",
+ "drugs-tobacco": "none",
+ "sex-nudity": "none",
+ "sex-themes": "none",
+ "sex-homosexuality": "none",
+ "sex-prostitution": "none",
+ "sex-adultery": "none",
+ "sex-appearance": "none",
+ "language-profanity": "none",
+ "language-humor": "none",
+ "language-discrimination": "none",
+ "social-chat": "none",
+ "social-info": "none",
+ "social-audio": "none",
+ "social-location": "none",
+ "social-contacts": "none",
+ "money-purchasing": "none",
+ "money-gambling": "none",
+}
+
+for id in content_attribute_ids:
+ content_attribute_elem = doc.createElement("content_attribute")
+ content_attribute_text = doc.createTextNode(content_attribute_ids[id])
+ content_attribute_elem.appendChild(content_attribute_text)
+ content_attribute_elem.setAttribute("id", id)
+ content_rating_elem.appendChild(content_attribute_elem)
+
+# write to scummvm.appdata.xml file
+with open("../dists/scummvm.appdata.xml", "wb") as f:
+ f.write(doc.toprettyxml(indent=" ", encoding="UTF-8"))
diff --git a/dists/scummvm.appdata.xml b/dists/scummvm.appdata.xml
index b10f2f844fc..0c4eaadf90d 100644
--- a/dists/scummvm.appdata.xml
+++ b/dists/scummvm.appdata.xml
@@ -6,29 +6,258 @@
<project_license>GPL-3.0-or-later</project_license>
<name>ScummVM</name>
<summary>Interpreter for numerous adventure games and role-playing games</summary>
+ <summary xml:lang="ru">ÐнÑеÑпÑеÑаÑÐ¾Ñ Ð¼Ð½Ð¾Ð¶ÐµÑÑва пÑиклÑÑенÑеÑкиÑ
и ÑолевÑÑ
игÑ</summary>
+ <summary xml:lang="ja">æ°å¤ãã®ã¢ããã³ãã£ã¼ã²ã¼ã ããã¼ã«ãã¬ã¤ã³ã°ã²ã¼ã ã®é訳</summary>
+ <summary xml:lang="es">Intérprete de numerosas aventuras gráficas y RPG</summary>
+ <summary xml:lang="uk">ÐнÑеÑпÑеÑаÑÐ¾Ñ Ð´Ð»Ñ ÑиÑленниÑ
пÑигодниÑÑкиÑ
Ñ ÑолÑовиÑ
ÑгоÑ</summary>
+ <summary xml:lang="be">ÐнÑÑÑпÑÑÑаÑÐ°Ñ Ð¼Ð½Ð¾Ð³ÑÑ
аванÑÑÑнÑÑ
Ñ ÑолÑвÑÑ
гÑлÑнÑÑ</summary>
+ <summary xml:lang="fr">Interpréteur pour de nombreux jeux d'aventure et jeux de rôle</summary>
+ <summary xml:lang="it">Interprete per numerosi giochi di avventura e di ruolo</summary>
+ <summary xml:lang="nl">Interpreter voor diverse adventure spellen en rollenspellen</summary>
+ <summary xml:lang="hu">Interpreter számos kalandjátékhoz és szerepjátékhoz</summary>
+ <summary xml:lang="pt">Interpretador de vários jogos de aventura e RPGs</summary>
+ <summary xml:lang="ko">ì¬ë¬ ì´ëë²¤ì² ê²ìê³¼ RPG를 ìí ì¸í°í리í°</summary>
<summary xml:lang="de">Interpreter für zahlreiche Adventure-Spiele und RPGs</summary>
+ <summary xml:lang="ca">Intèrpret per a nombrosos jocs d'aventura i jocs de rol</summary>
+ <summary xml:lang="pl">Interpreter wielu gier przygodowych oraz RPG</summary>
+ <summary xml:lang="pt">Interpretador para vários jogos de aventura e RPG</summary>
+ <summary xml:lang="fi">Pelitulkki lukuisille seikkailu- ja roolipeleille</summary>
+ <summary xml:lang="nb">Programvaretolk for utallige eventyr- og rollespill</summary>
+ <summary xml:lang="he">×פרש ×¢××ר ×ספר ×××× ×©× ×ש××§× ×רפתק××ת ××ש××§× ×ª×¤×§××××</summary>
<developer_name>The ScummVM Team</developer_name>
<provides>
<id>scummvm.desktop</id>
</provides>
<description>
- <p>
- ScummVM is a program which allows you to run a wide variety of classic
- graphical point-and-click adventure games and role-playing games,
- provided you already have their data files. The clever part about this:
- ScummVM just replaces the executables shipped with the game,
- allowing you to play them on systems for which they were never designed!
- </p>
- <p>
- Currently, ScummVM supports a huge library of adventures with over 250 games in total.
- It supports many classics published by legendary studios like LucasArts, Sierra On-Line,
- Revolution Software, Cyan, Inc. and Westwood Studios.
- </p>
- <p>
- Next to ground-breaking titles like the Monkey Island series, Broken Sword,
- Myst, Blade Runner and countless other games you will find
- some really obscure adventures and truly hidden gems to explore.
- </p>
+ <p>ScummVM is a program which allows you to run a wide variety of classic
+graphical point-and -click adventure games and role-playing games,
+provided you already have their data files. The clever part about this:
+ScummVM just replaces the executables shipped with the game,
+allowing you to play them on systems for which they were never designed!</p>
+ <p xml:lang="ru">ScummVM - ÑÑо пÑогÑамма, коÑоÑÐ°Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ Ð·Ð°Ð¿ÑÑкаÑÑ ÑиÑокий ÑпекÑÑ
+клаÑÑиÑеÑкиÑ
гÑаÑиÑеÑкиÑ
пÑиклÑÑенÑеÑкиÑ
Ð¸Ð³Ñ Ð¸ ÑолевÑÑ
игÑ, пÑи ÑÑловии, ÑÑо
+Ñ Ð²Ð°Ñ Ñже еÑÑÑ Ð¸Ñ
ÑÐ°Ð¹Ð»Ñ Ð´Ð°Ð½Ð½ÑÑ
. Самое Ñмное в ÑÑом: ScummVM пÑоÑÑо заменÑеÑ
+иÑполнÑемÑе ÑайлÑ, поÑÑавлÑемÑе Ñ Ð¸Ð³Ñой, позволÑÑ Ð²Ð°Ð¼ игÑаÑÑ Ð² ниÑ
на
+ÑиÑÑемаÑ
, Ð´Ð»Ñ ÐºÐ¾ÑоÑÑÑ
они никогда не бÑли ÑазÑабоÑанÑ!</p>
+ <p xml:lang="ja">ScummVMã¯ããã¼ã¿ãã¡ã¤ã«ãæ¢ã«ããå ´åã«ããã¾ãã¾ãªå¤å
¸çãªã°ã©ãã£ã«ã«ãã¤
+ã³ãã¢ã³ãã¯ãªãã¯ã¢ããã³ãã£ã¼ã²ã¼ã ããã¼ã«ãã¬ã¤ã³ã°ã²ã¼ã ãå®è¡ã§ããã
+ãã«ããããã°ã©ã ã§ããããã«é¢ããå·§å¦ãªé¨åï¼ScummVMã¯ãã²ã¼ã ã«ä»å±ãã¦ã
+ãå®è¡å¯è½ãã¡ã¤ã«ãç½®ãæããã ããªã®ã§ãè¨è¨ããããã¨ã®ãªãã·ã¹ãã ã§å®è¡
+ã§ãã¾ã!</p>
+ <p xml:lang="es">ScummVM es un programa que te permite ejecutar una amplia selección de
+aventuras gráficas «point-and-click» y RPG clásicos, siempre y cuando ya
+tengas sus archivos de datos. Lo interesante es que ScummVM se limita a
+sustituir los ejecutables de cada juego, ¡lo que permite jugarlos en
+sistemas para los que nunca fueron diseñados!</p>
+ <p xml:lang="uk">ScummVM - Ñе пÑогÑама, Ñка дозволÑÑ Ð·Ð°Ð¿ÑÑкаÑи ÑиÑокий ÑпекÑÑ ÐºÐ»Ð°ÑиÑниÑ
+гÑаÑÑÑниÑ
пÑигодниÑÑкиÑ
ÑÐ³Ð¾Ñ Ñа ÑолÑовиÑ
ÑгоÑ, ÑкÑо Ñ Ð²Ð°Ñ Ð²Ð¶Ðµ Ñ ÑÑ
Ñайли
+даниÑ
. ЩонайголовнÑÑе: ScummVM пÑоÑÑо замÑнÑÑ Ð²Ð¸ÐºÐ¾Ð½ÑÐ²Ð°Ð½Ñ Ñайли, Ñо
+поÑÑаÑаÑÑÑÑÑ Ñазом Ñз гÑоÑ, дозволÑÑÑи вÑдÑвоÑÑваÑи ÑÑ
Ñ ÑиÑÑемаÑ
, Ð´Ð»Ñ ÑкиÑ
+вони нÑколи не бÑли ÑозÑобленÑ!</p>
+ <p xml:lang="be">ScummVM â гÑÑа пÑагÑама Ð´Ð»Ñ Ð·Ð°Ð¿ÑÑÐºÑ ÑознÑÑ
клÑÑÑÑнÑÑ
гÑаÑÑÑнÑÑ
point-and-
+click аванÑÑÑнÑÑ
Ñ ÑалÑвÑÑ
гÑлÑнÑÑ, пÑÑ Ñмове, ÑÑо Ð²Ñ Ð¼Ð°ÐµÑе зÑвеÑÑÐºÑ ÑÑÑ
+гÑлÑнÑÑ. ÐаÑаÑей, ScummVM пÑоÑÑа замÑнÑе вÑканалÑнÑÑ ÑÐ°Ð¹Ð»Ñ Ð³ÑлÑнÑÑ,
+дазвалÑÑÑÑ Ð³ÑлÑÑÑ Ð½Ð° ÑÑÑÑÑмаÑ
, на ÑкÑÑ ÑÑ
нÑÐºÐ¾Ð»Ñ Ð½Ðµ ÑаÑпÑаÑоÑвалÑ!</p>
+ <p xml:lang="fr">ScummVM est un programme qui vous permet d'exécuter une grande variété de
+jeux d'aventure graphique point-and-click et de jeux de rôle, à condition
+que vous ayez déjà leurs fichiers de données. Ce qui est génial dans tout
+ça : ScummVM remplace simplement les exécutables livrés avec les jeux, ce
+qui vous permet de jouer sur des systèmes pour lesquels ces jeux n'ont
+jamais été conçus !</p>
+ <p xml:lang="it">ScummVM è un programma che permette di eseguire svariate avventure grafiche
+e giochi di ruolo classici, a patto di averne a disposizione i files
+originali. Il bello è che ScummVM sostituisce gli eseguibili originari,
+permettendo di eseguire i giochi su piattaforme per cui non erano neppure
+mai stati pensati!</p>
+ <p xml:lang="el">Το ScummVM είναι μια εÏαÏμογή ÏοÏ
ÏÎ±Ï ÎµÏιÏÏÎÏει να ÏαίξεÏε μια εÏ
Ïεία
+Ïοικιλία αÏÏ ÎºÎ»Î±ÏÏικά ÏαιÏνίδια ÏεÏιÏÎÏÎµÎ¹Î±Ï point-and-click, και ÏÏλÏν
+(adventure και role-playing), αÏκεί να ÎÏεÏε ÏÏην καÏοÏή ÏÎ±Ï Ïα αÏÏεία
+δεδομÎνÏν ÏοÏ
Ï. Το ενδιαÏÎÏον Ïε αÏ
Ïή Ïην Ï
ÏÏθεÏη είναι Ïο εξήÏ: Ïο ScummVM
+αÏλά ανÏικαθιÏÏά Ïα εκÏελÎÏιμα ÏοÏ
ÏÏ
νÏδεÏ
αν Ïα ÏαιÏνίδια, εÏιÏÏÎÏονÏÎ¬Ï ÏαÏ
+να Ïα ÏαίξεÏε Ïε ÏÏ
ÏÏήμαÏα για Ïα οÏοία δεν είÏαν ÏÏεδιαÏÏεί ÏοÏÎ!</p>
+ <p xml:lang="nl">ScummVM is een programma die het mogelijk maakt om een grote verscheidenheid
+aan klassieke grafische point-and-click adventure spellen en rollenspellen
+te spelen, mits je de benodigde data bestanden al hebt. Het unieke hiervan
+is: ScummVM vervangt de executables die bij het spel geleverd worden,
+waardoor je ze kan spelen op systemen waar ze niet voor waren gemaakt!</p>
+ <p xml:lang="hu">A ScummVM egy olyan program, mely számos klasszikus grafikus point-and-click
+kalandjáték és szerepjáték futtatását teszi lehetÅvé, feltéve, hogy már
+rendelkeznek az adatfájljaikkal. Az okos rész ebben: A ScummVM csak
+kicseréli a játékkal szállÃtott futtatható fájlokat, lehetÅvé téve számukra,
+hogy olyan rendszereken játsszák Åket, amelyekre soha nem lettek tervezve!</p>
+ <p xml:lang="ko">ScummVMì ë°ì´í° íì¼ì ê°ì§ ê²½ì° ë¤ìí ê³ ì ê·¸ëí½ í¬ì¸í¸ ì¤ í´ë¦ ì´ë벤ì²
+ê²ìê³¼ 롤íë ì ê²ìì ì¤íí ì ìê² íë íë¡ê·¸ë¨ì
ëë¤. ScummVMì ê²ìê³¼
+í¨ê» ì ê³µë ì¤ííì¼ì ëì²´í기 ë문ì ìë ê²ìì´ ì¤íëëë¡ ì¤ê³ëì§ ìì
+ìì¤í
ììë ì¤íí ì ììµëë¤!</p>
+ <p xml:lang="de">ScummVM ist ein Programm, welches dir ermöglicht, zahlreiche Adventures und
+RPGs auszuführen, vorausgesetzt, du bist im Besitz der passenden
+Spieldateien. ScummVM ersetzt dabei die ausführbaren Programmdateien, die
+ursprünglich mit dem Spiel mitgeliefert wurden. Dadurch können diese Spiele
+auf Systemen gespielt werden, für welche sie nie entwickelt wurden!</p>
+ <p xml:lang="ca">ScummVM és un programa que permet executar una à mplia varietat de jocs
+clà ssics d'aventures grà fiques «point-and-click» i jocs de rol, sempre que
+ja tingueu els seus fitxers de dades. La part intel·ligent sobre això:
+ScummVM només substitueix els executables originals del joc, permetent-vos
+jugar-los en sistemes per als quals mai van ser dissenyats!</p>
+ <p xml:lang="pl">ScummVM to program pozwalajÄ
cy na uruchomienie bogatego wyboru klasycznych
+graficznych gier przygodowych typu âwskaż i kliknijâ, oraz gier RPG - pod
+warunkiem posiadania ich danych. ScummVM podmienia oryginalny program gier,
+pozwalajÄ
c na granie w nie na systemach, na które nigdy nie byÅy napisane!</p>
+ <p xml:lang="pt">ScummVM é um programa que permite que você execute uma ampla variedade de
+jogos clássicos de point-and-click (apontar e clicar) e RPG, desde que você
+já tenha seus arquivos de dados. A melhor parte: ScummVM apenas substitui os
+executáveis do jogo, permitindo que você os jogue em sistemas para os quais
+eles nunca foram projetados!</p>
+ <p xml:lang="fi">ScummVM on ohjelma jonka avulla voit pelata lukuisia klassisia graafisia
+seikkailu- ja roolipelejä, olettaen että sinulla on jo pelien datatiedostot.
+Tämä on fiksua koska: ScummVM korvaa itse ajettavan peliohjelman, joten voit
+pelata pelejä jopa alustoilla joille pelejä ei koskaan suunniteltu!</p>
+ <p xml:lang="nb">ScummVM er et program som lar deg kjøre et bredt assortiment av klassiske
+pek-og-klikk-eventyrspill og rollespill â forutsatt at du allerede har
+datafilene til spillet. Det finurlige med det hele er at ScummVM kun
+erstatter selve programdelen av spillet og gjør det slik at du kan spille
+det på plattformer det aldri var utviklet til å kjøre på!</p>
+ <p xml:lang="he">ScummVM ××× × ×ª×× × ×©××פשרת ××ר××¥ ××××× ×¨×× ×©× ×ש××§× ×רפתק××ת ×רפ××× ×צ××¢-
+×××§××§ ××ש××§× ×ª×¤×§××××, ×××× ×ª× ×§××¦× ×× ×ª×× ×× ×©×××. ××××§ ×××¢× ××× ×××: ScummVM
+×××××¤× ×¨×§ ×ת ×§×××¥ ×ר××¦× ×©××××¢ ×¢× ××ש××§, ×× ×©××פשר ×ש××§ ××× ×¢× ×ער××ת ×××××
+××ש××§ ××¢××× ×× ×ª××× ×!</p>
+ <p>Currently, ScummVM supports a huge library of adventures with over 250 games in total.
+It supports many classics published by legendary studios like LucasArts, Sierra On-Line,
+Revolution Software, Cyan, Inc. and Westwood Studios.</p>
+ <p xml:lang="ru">РнаÑÑоÑÑее вÑÐµÐ¼Ñ ScummVM поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¾Ð³ÑомнÑÑ Ð±Ð¸Ð±Ð»Ð¸Ð¾ÑÐµÐºÑ Ð¿ÑиклÑÑений,
+наÑÑиÑÑваÑÑÑÑ Ð² обÑей ÑложноÑÑи более 4000 игÑ. Ðн поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¼Ð½Ð¾Ð¶ÐµÑÑво
+клаÑÑиÑеÑкиÑ
пÑоизведений, вÑпÑÑеннÑÑ
легендаÑнÑми ÑÑÑдиÑми, Ñакими как
+LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. и Westwood
+Studios.</p>
+ <p xml:lang="ja">ç¾å¨ãScummVMã¯ãåè¨4000ãè¶
ããã²ã¼ã ãåããè¨å¤§ãªã¢ããã³ãã£ã¼ã©ã¤ãã©ãª
+ããµãã¼ããã¦ãã¾ãã LucasArtsãSierra On-LineãRevolution SoftwareãCyanã
+Inc.ãWestwoodStudiosãªã©ã®ä¼èª¬çãªã¹ã¿ã¸ãªã«ãã£ã¦å
¬éãããå¤ãã®ã¯ã©ã·ãã¯
+ããµãã¼ããã¦ãã¾ã.</p>
+ <p xml:lang="es">ScummVM es compatible con una inmensa biblioteca de más de 4 000 juegos en
+total. Funciona con muchos de los clásicos publicados por estudios
+legendarios como LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc.
+y Westwood Studios.</p>
+ <p xml:lang="uk">Рданий ÑÐ°Ñ ScummVM пÑдÑÑимÑÑ Ð²ÐµÐ»Ð¸ÑÐµÐ·Ð½Ñ Ð±ÑблÑоÑÐµÐºÑ Ð¿ÑигодниÑÑкиÑ
ÑÐ³Ð¾Ñ Ñз
+загалÑÐ½Ð¾Ñ ÐºÑлÑкÑÑÑÑ Ð¿Ð¾Ð½Ð°Ð´ 4000. ÐÑÐ¾ÐµÐºÑ Ð¿ÑдÑÑимÑÑ Ð±Ð°Ð³Ð°Ñо клаÑиÑниÑ
ÑвоÑÑв,
+опÑблÑкованиÑ
Ñакими легендаÑними ÑÑÑдÑÑми, Ñк LucasArts, Sierra On-Line,
+Revolution Software, Cyan, Inc. Ñа Westwood Studios.</p>
+ <p xml:lang="be">Ðа гÑÑÑ Ð¼Ð¾Ð¼Ð°Ð½Ñ ScummVM падÑÑÑмлÑвае вÑлÑÑÑзнÑÑ Ð±ÑблÑÑÑÑÐºÑ Ð°Ð²Ð°Ð½ÑÑÑ, дзе болей
+за 4000 гÑлÑнÑÑ. ÐÑ Ð·Ð¼Ð¾Ð¶Ð°Ñе дакÑанÑÑÑа да многÑÑ
клÑÑÑÑнÑÑ
ÑвоÑаÑ, вÑданÑÑ
+леÒÑндаÑнÑÐ¼Ñ ÑÑÑдÑÑÐ¼Ñ Ñк LucasArts, Sierra On-Line, Revolution Software,
+Cyan, Inc. Ñ Westwood Studios.</p>
+ <p xml:lang="fr">Actuellement, ScummVM supporte une énorme collection d'aventures avec plus
+de 4000 jeux au total. Il prend en charge de nombreux classiques publiés par
+des studios légendaires comme LucasArts, Sierra On-Line, Revolution
+Software, Cyan, Inc. et Westwood Studios.</p>
+ <p xml:lang="it">Attualmente, ScummVM supporta una vastissima collezione di giochi di
+avventura, per un totale di oltre 4000 titoli. Tra questi, molti giochi
+rinomati pubblicati da editori leggendari come la LucasArts, la Sierra On-
+Line, la Revolution Software, la Cyan, Inc. o i Westwood Studios.</p>
+ <p xml:lang="el">Το ScummVM Ï
ÏοÏÏηÏίζει μια ÏεÏάÏÏια βιβλιοθήκη αÏÏ ÏαιÏνίδια ÏεÏιÏÎÏειαÏ
+(adventure games) με ÏεÏιÏÏÏÏεÏοÏ
Ï Î±ÏÏ 4000 ÏίÏλοÏ
Ï ÏÏ
νολικά. Î¥ÏοÏÏηÏίζει
+ÏολλοÏÏ Î±ÏÏ ÏοÏ
Ï ÎºÎ»Î±ÏÏικοÏÏ ÏίÏλοÏ
Ï ÏοÏ
ÎÏοÏ
ν εκδÏÏει θÏÏ
λικά ÏÏοÏνÏιο ÏÏÏÏ
+οι LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. και Westwood
+Studios.</p>
+ <p xml:lang="nl">Momenteel ondersteunt ScummVM een enorme hoeveelheid adventures van meer dan
+4000 spellen in totaal. Het ondersteunt vele klassiekers gepubliceerd door
+legendarische studios als LucasArts, Sierra On-Line, Revolution Software,
+Cyan, Inc. en Westwood Studios.</p>
+ <p xml:lang="hu">Jelenleg a ScummVM egy hatalmas kalandkönyvtárat támogat, összesen több mint
+4000 játékkal. Támogatja számos legendás stúdió által kiadott klasszikust,
+mint például a LucasArts, a Sierra On-Line, a Revolution Software, a Cyan,
+Inc. és a Westwood Studios.</p>
+ <p xml:lang="ko">íì¬ ScummVMì í©ê³ 4000ê°ë¥¼ ëë ìë§ì ì´ëë²¤ì² ê²ìì ì§ìí©ëë¤.
+LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc., ê·¸ë¦¬ê³ Westwood
+Studios ê°ì ì ì¤ì ì¸ ì¤íëì¤ìì ë°íë ë§ì ê³ ì ì ì§ìí©ëë¤.</p>
+ <p xml:lang="de">Aktuell unterstützt ScummVM eine umfangreiche Bibliothek von Adventure-
+Spielen mit insgesamt über 4000 Spielen. Unterstützt werden viele Klassiker,
+die von legendären Studios wie LucasArts, Sierra On-Line, Revolution
+Software, Cyan Inc. und den Westwood Studios entwickelt wurden.</p>
+ <p xml:lang="ca">Actualment, ScummVM suporta una enorme biblioteca d'aventures amb més de
+4.000 jocs en total. Dóna suport a molts clà ssics publicats per estudis
+llegendaris com LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. i
+Westwood Studios.</p>
+ <p xml:lang="pl">Obecnie ScummVM obsÅuguje wielki katalog przygód liczÄ
cy razem ponad 4000
+gier. ObsÅuguje wiele klasycznych gier wydanych przez legandarne studia
+takie jak LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. oraz
+Westwood Studios.</p>
+ <p xml:lang="pt">Atualmente o ScummVM suporta uma enorme biblioteca de aventuras com mais de
+4000 jogos no total. Ele suporta muitos clássicos publicados por estúdios
+lendários como LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. e
+Westwood Studios.</p>
+ <p xml:lang="fi">Tällä hetkellä ScummVM tukee jättimäistä seikkailujen kirjastoa, kaikkiaan
+yli 4000 peliä. Se tukee lukuisia klassikkoja legendaarisilta studioilta
+kuten LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. ja Westwood
+Studios.</p>
+ <p xml:lang="nb">For øyeblikket støtter ScummVM et eventyrlig bibliotek på over 4000
+spilltitler totalt. Det støtter mange klassikere utgitt av legendariske
+spillstudioer som bl.a. LucasArts, Sierra On-Line, Revolution Software,
+Cyan, Inc. og Westwood Studios.</p>
+ <p xml:lang="he">× ××× ×××××, ScummVM ת×××ת ×ספר×× ×¢× ×§×ת ×©× ×רפתק××ת, ×¢× ×××¢×× ×-4000 ×ש××§××
+××¡× ×××. ××× ××× ×××× ××§××ס××§×ת ×©× ××××¤× ×× ×××××× ××× LucasArts, Sierra On-
+Line, Revolution Software, Cyan, Inc. ××× Westwood Studios.</p>
+ <p>Next to ground-breaking titles like the Monkey Island series, Broken Sword,
+Myst, Blade Runner and countless other games you will find
+some really obscure adventures and truly hidden gems to explore.</p>
+ <p xml:lang="ru">ÐаÑÑÐ´Ñ Ñ Ð½Ð¾Ð²Ð°ÑоÑÑкими игÑами, Ñакими как ÑеÑÐ¸Ñ Monkey Island, Broken Sword,
+Myst, Blade Runner и беÑÑиÑленное множеÑÑво дÑÑгиÑ
игÑ, Ð²Ñ Ð½Ð°Ð¹Ð´ÐµÑе
+дейÑÑвиÑелÑно малоизвеÑÑнÑе пÑиклÑÑÐµÐ½Ð¸Ñ Ð¸ дейÑÑвиÑелÑно ÑкÑÑÑÑе ÑокÑовиÑа
+Ð´Ð»Ñ Ð¸ÑÑледованиÑ.</p>
+ <p xml:lang="ja">ã¢ã³ãã¼ã¢ã¤ã©ã³ãã·ãªã¼ãºãããã¼ã¯ã³ã½ã¼ãããã¹ãããã¬ã¼ãã©ã³ãã¼ããã®
+ä»ã®ç¡æ°ã®ã²ã¼ã ãªã©ã®ç»æçãªã¿ã¤ãã«ã®æ¨ªã«ãããã¤ãã®æ¬å½ã«ããã¾ããªåéº
+ã¨çã«é ãããå®ç³ãè¦ã¤ãããã¨ãã§ãã¾ã.</p>
+ <p xml:lang="es">Podrás jugar a tÃtulos tan innovadores como las sagas de Monkey Island,
+Broken Sword, Myst, Blade Runner como aventuras menos conocidas y otras
+joyas ocultas.</p>
+ <p xml:lang="uk">ÐкÑÑм новаÑоÑÑÑкиÑ
ÑгоÑ, Ñк-Ð¾Ñ ÑеÑÑÑ Monkey Island, Broken Sword, Myst,
+Blade Runner Ñа незлÑÑÐµÐ½Ð½Ð¾Ñ ÐºÑлÑкоÑÑÑ ÑнÑиÑ
, ви знайдеÑе декÑлÑка ÑпÑавдÑ
+маловÑдомиÑ
пÑигодниÑÑкиÑ
ÑÐ³Ð¾Ñ Ñа ÑпÑÐ°Ð²Ð´Ñ Ð¿ÑиÑ
ованиÑ
доÑогоÑÑнниÑ
каменÑв,
+ÑÐºÑ ÑлÑд доÑлÑдиÑи.</p>
+ <p xml:lang="be">Разам з ÑÑвалÑÑÑйнÑÐ¼Ñ Ð³ÑлÑнÑÐ¼Ñ Ñк Monkey Island, Broken Sword, Myst, Blade
+Runner Ñ Ð±ÐµÐ·ÑлÑÑам ÑнÑÑÑ
гÑлÑнÑÑ, Ð²Ñ Ð·Ð½Ð¾Ð¹Ð´Ð·ÑÑе наÑамÑÑÑ Ð¼Ð°Ð»Ð°Ð²ÑдомÑÑ Ð°Ð²Ð°Ð½ÑÑÑÑ
+й пÑÑÑ
аванÑÑ ÑкаÑбÑ.</p>
+ <p xml:lang="fr">à côté de titres révolutionnaires comme la série Monkey Island, Broken Sword
+(Les Chevaliers de Baphomet) , Myst, Blade Runner et d'innombrables autres
+jeux, vous trouverez des aventures vraiment obscures et des pépites vraiment
+bien cachées à explorer.</p>
+ <p xml:lang="it">Pietre miliari come la saga di Monkey Island, Broken Sword, Myst, Blade
+Runner e innumerevoli altri titoli tutti da scoprire. Potrai trovare
+avventure sconosciute ai più ma anche dei gioiellini ingiustamente
+dimenticati.</p>
+ <p xml:lang="el">Îαζί με καινοÏÏμοÏ
Ï Î³Î¹Î± Ïην εÏοÏή ÏοÏ
Ï ÏίÏλοÏ
Ï, ÏÏÏÏ Î®Ïαν οι ÏειÏÎÏ Monkey
+Island, Broken Sword, Myst, Blade Runner και αμÎÏÏηÏα άλλα ÏαιÏνίδια, θα
+βÏείÏε και μεÏικοÏÏ ÏÏεÏικά άγνÏÏÏοÏ
Ï ÏίÏλοÏ
Ï ÏεÏιÏÎÏÎµÎ¹Î±Ï ÎºÎ±Î¹ ÏÏαγμαÏικά
+κÏÏ
μμÎνα διαμανÏάκια για να εξεÏεÏ
νήÏεÏε.</p>
+ <p xml:lang="nl">Naast spraakmakende titels zoals de Monkey Island series, Broken Sword,
+Myst, Blade Runner en talloze andere spellen zal je enkele vage adventures
+vinden en echte verborgen pareltjes ontdekken.</p>
+ <p xml:lang="hu">Az olyan úttörÅ cÃmek mellett, mint a Monkey Island sorozat, a Broken Sword,
+a Myst, a Blade Runner és számtalan más játék, valóban homályos kalandokat
+és valóban rejtett drágaköveket találhat.</p>
+ <p xml:lang="ko">Monkey Island ì리ì¦, Broken Sword, Myst, Blade Runnerì ê°ì´ í기ì ì¸ íì´í
+ì ë¹ë¡¯í´, ì ìë ¤ì§ì§ ìì ì´ëë²¤ì² ê²ìê³¼ ì§ì í ì¨ê²¨ì§ ë³´ìì ì°¾ìë³¼ ì ì
+ìµëë¤.</p>
+ <p xml:lang="de">Neben bahnbrechenden Titel wie der Monkey Island-Serie, Baphomets Fluch,
+Myst, Blade Runner und zahllosen weiteren Spielen wirst du auch einige
+wirklich kuriose Adventures und versteckte Schätze entdecken.</p>
+ <p xml:lang="ca">Al costat de tÃtols innovadors com la sèrie Monkey Island, Broken Sword,
+Myst, Blade Runner i molts altres jocs trobareu algunes aventures realment
+fosques i altres gemmes realment ocultes per explorar.</p>
+ <p xml:lang="pl">Poza przeÅomowymi tytuÅami, takimi jak seria Monkey Island, Broken Sword,
+Myst, Blade Runner i wieloma innymi, znajdziesz tu również wiele maÅo
+znanych przygód i naprawdÄ maÅo znanych pereÅek.</p>
+ <p xml:lang="pt">Ao lado de tÃtulos inovadores como a série Monkey Island, Broken Sword,
+Myst, Blade Runner e inúmeros outros jogos, você encontrará algumas
+aventuras realmente obscuras e verdadeiras joias raras para explorar.</p>
+ <p xml:lang="fi">Uraauurtaneiden Monkey Island-, Broken Sword-, Myst-, Blade Runner- ja
+lukuisten muiden pelien ohelta löydät myös vähemmän tunnettuja helmiä
+tutkittavaksesi.</p>
+ <p xml:lang="nb">Sammen med banebrytende titler som Monkey Island-serien, Broken Sword, Myst,
+Blade Runner og utallige andre spill finner du også enkelte kuriositeter og
+skjulte skatter det kan være verdt å gi et forsøk.</p>
+ <p xml:lang="he">××¦× ××תר×× ×¤××¨×¦× ××¨× ××× ×¡×רת ×× ××§×פ××, ××¨× ×©××ר×, Myst, ××××× ×¨×× ×¨
+×××× ×¡×¤×ר ×ש××§×× × ×ספ×× ×ª×××× ××צ×× ×× ×רפתק××ת ×¢××××ת ××¤× ×× ×ת × ×¡×ª×¨×ת ×©× ××ש
+ש××××ת שת××× ××ת×.</p>
</description>
<screenshots>
<screenshot type="default">
Commit: dc9baac9d01400f0fed68bfbf9a344a2cfbd8782
https://github.com/scummvm/scummvm/commit/dc9baac9d01400f0fed68bfbf9a344a2cfbd8782
Author: Ankush Dutt (ankushd100 at gmail.com)
Date: 2023-03-21T12:32:42+01:00
Commit Message:
I18N: Add simpler template for easy modification and order language tags alphabetically
Changed paths:
devtools/generate-appdata.py
dists/scummvm.appdata.xml
diff --git a/devtools/generate-appdata.py b/devtools/generate-appdata.py
index f955a8eae2b..f91159f77e9 100644
--- a/devtools/generate-appdata.py
+++ b/devtools/generate-appdata.py
@@ -3,10 +3,100 @@
# This script generates a dists/scummvm.appdata.xml file with multilanguage support.
# The multilanguage data is extracted from po/*.po files
-from xml.dom import minidom
import re
import os
+appdata_xml_template = '''<?xml version="1.0" encoding="UTF-8"?>
+<!-- Copyright 2020-2023 The ScummVM Team -->
+<component type="desktop">
+ <id>scummvm.desktop</id>
+ <metadata_license>CC0-1.0</metadata_license>
+ <project_license>GPL-3.0-or-later</project_license>
+ <name>ScummVM</name>
+ <summary>Interpreter for numerous adventure games and role-playing games</summary>
+ <summary xml:lang="xy">I18N: One line summary as shown in *nix distributions</summary>
+ <developer_name>The ScummVM Team</developer_name>
+ <provides>
+ <id>scummvm.desktop</id>
+ </provides>
+ <description>
+ <p>
+ ScummVM is a program which allows you to run a wide variety of classic
+ graphical point-and-click adventure games and role-playing games,
+ provided you already have their data files. The clever part about this:
+ ScummVM just replaces the executables shipped with the game,
+ allowing you to play them on systems for which they were never designed!
+ </p>
+ <p xml:lang="xy">I18N: 1 of 3 paragraph of ScummVM description in *nix distributions</p>
+ <p>
+ Currently, ScummVM supports a huge library of adventures with over 250 games in total.
+ It supports many classics published by legendary studios like LucasArts, Sierra On-Line,
+ Revolution Software, Cyan, Inc. and Westwood Studios.
+ </p>
+ <p xml:lang="xy">I18N: 2 of 3 paragraph of ScummVM description in *nix distributions</p>
+ <p>
+ Next to ground-breaking titles like the Monkey Island series, Broken Sword,
+ Myst, Blade Runner and countless other games you will find
+ some really obscure adventures and truly hidden gems to explore.
+ </p>
+ <p xml:lang="xy">I18N: 3 of 3 paragraph of ScummVM description in *nix distributions</p>
+ </description>
+ <screenshots>
+ <screenshot type="default">
+ <image>https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_1.png</image>
+ <caption>ScummVM Launcher</caption>
+ </screenshot>
+ <screenshot>
+ <image>https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_2.png</image>
+ <caption>ScummVM running 'Flight of the Amazon Queen'</caption>
+ </screenshot>
+ <screenshot>
+ <image>https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_3.png</image>
+ <caption>ScummVM running 'Beneath a Steel Sky'</caption>
+ </screenshot>
+ <screenshot>
+ <image>https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_4.png</image>
+ <caption>ScummVM running 'The Curse of Monkey Island'</caption>
+ </screenshot>
+ <screenshot>
+ <image>https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_5.png</image>
+ <caption>ScummVM running a demo of 'Myst'</caption>
+ </screenshot>
+ </screenshots>
+ <url type="homepage">https://www.scummvm.org</url>
+ <update_contact>scummvm-devel at lists.scummvm.org</update_contact>
+ <content_rating type="oars-1.1">
+ <content_attribute id="violence-cartoon">none</content_attribute>
+ <content_attribute id="violence-fantasy">none</content_attribute>
+ <content_attribute id="violence-realistic">none</content_attribute>
+ <content_attribute id="violence-bloodshed">none</content_attribute>
+ <content_attribute id="violence-sexual">none</content_attribute>
+ <content_attribute id="violence-desecration">none</content_attribute>
+ <content_attribute id="violence-slavery">none</content_attribute>
+ <content_attribute id="violence-worship">none</content_attribute>
+ <content_attribute id="drugs-alcohol">none</content_attribute>
+ <content_attribute id="drugs-narcotics">none</content_attribute>
+ <content_attribute id="drugs-tobacco">none</content_attribute>
+ <content_attribute id="sex-nudity">none</content_attribute>
+ <content_attribute id="sex-themes">none</content_attribute>
+ <content_attribute id="sex-homosexuality">none</content_attribute>
+ <content_attribute id="sex-prostitution">none</content_attribute>
+ <content_attribute id="sex-adultery">none</content_attribute>
+ <content_attribute id="sex-appearance">none</content_attribute>
+ <content_attribute id="language-profanity">none</content_attribute>
+ <content_attribute id="language-humor">none</content_attribute>
+ <content_attribute id="language-discrimination">none</content_attribute>
+ <content_attribute id="social-chat">none</content_attribute>
+ <content_attribute id="social-info">none</content_attribute>
+ <content_attribute id="social-audio">none</content_attribute>
+ <content_attribute id="social-location">none</content_attribute>
+ <content_attribute id="social-contacts">none</content_attribute>
+ <content_attribute id="money-purchasing">none</content_attribute>
+ <content_attribute id="money-gambling">none</content_attribute>
+ </content_rating>
+</component>
+'''
+
def extract_summary(file):
with open('../po/' + file) as f:
@@ -65,275 +155,106 @@ def extract_par3(file):
return None
-doc = minidom.Document()
-
-copyright_comment_elem = doc.createComment(
- " Copyright 2020-2023 The ScummVM Team ")
-doc.appendChild(copyright_comment_elem)
-
-component_elem = doc.createElement("component")
-component_elem.setAttribute("type", "desktop")
-doc.appendChild(component_elem)
-
-
-id_elem = doc.createElement("id")
-id_text = doc.createTextNode("scummvm.desktop")
-id_elem.appendChild(id_text)
-component_elem.appendChild(id_elem)
-
-metadata_license_elem = doc.createElement("metadata_license")
-metadata_license_text = doc.createTextNode("CC0-1.0")
-metadata_license_elem.appendChild(metadata_license_text)
-component_elem.appendChild(metadata_license_elem)
-
-project_license_elem = doc.createElement("project_license")
-project_license_text = doc.createTextNode("GPL-3.0-or-later")
-project_license_elem.appendChild(project_license_text)
-component_elem.appendChild(project_license_elem)
-
-name_elem = doc.createElement("name")
-name_text = doc.createTextNode("ScummVM")
-name_elem.appendChild(name_text)
-component_elem.appendChild(name_elem)
-
-summary_elem = doc.createElement("summary")
-summary_text = doc.createTextNode(
- "Interpreter for numerous adventure games and role-playing games")
-summary_elem.appendChild(summary_text)
-component_elem.appendChild(summary_elem)
-
# get file names of all .po files
file_names = []
for filename in os.listdir("../po/"):
if filename.endswith(".po"):
file_names.append(filename)
+file_names.sort()
+
# summary translations
+summary_translations = ""
+
+# first_translation is used to determine the indentation (first translation will not require any indentation)
+first_translation = True
+
for file in file_names:
summary = extract_summary(file)
if (summary is None):
continue
- summary_elem = doc.createElement("summary")
- summary_text = doc.createTextNode(summary)
- summary_elem.appendChild(summary_text)
- lang = file[0] + file[1]
- summary_elem.setAttribute("xml:lang", lang)
- component_elem.appendChild(summary_elem)
-
-developer_name_elem = doc.createElement("developer_name")
-developer_name_text = doc.createTextNode("The ScummVM Team")
-developer_name_elem.appendChild(developer_name_text)
-component_elem.appendChild(developer_name_elem)
-
-provides_elem = doc.createElement("provides")
-component_elem.appendChild(provides_elem)
-
-id_elem = doc.createElement("id")
-id_text = doc.createTextNode("scummvm.desktop")
-id_elem.appendChild(id_text)
-provides_elem.appendChild(id_elem)
-
-description_elem = doc.createElement("description")
-component_elem.appendChild(description_elem)
-
-# paragraph 1
-p_elem = doc.createElement("p")
-p_text = doc.createTextNode('''ScummVM is a program which allows you to run a wide variety of classic
-graphical point-and -click adventure games and role-playing games,
-provided you already have their data files. The clever part about this:
-ScummVM just replaces the executables shipped with the game,
-allowing you to play them on systems for which they were never designed!''')
-p_elem.appendChild(p_text)
-description_elem.appendChild(p_elem)
+
+ lang = '"' + file[0] + file[1] + '"'
+ summary_translations += ('' if first_translation else ' ') + '<summary xml:lang=' + \
+ lang + '>' + summary + '</summary>\n'
+ first_translation = False
+
+summary_translations = summary_translations.rstrip('\n')
+
+regex_pattern = r'<summary xml:lang="xy">I18N: One line summary as shown in \*nix distributions<\/summary>'
+
+appdata_xml_template = re.sub(
+ regex_pattern, summary_translations, appdata_xml_template)
# paragraph 1 translations
+par1_translations = ""
+first_translation = True
+
for file in file_names:
par1 = extract_par1(file)
if (par1 is None):
continue
- # par1 also contains " (quotes) around the text; so we need to replace them with empty
- # character otherwise " will appear in scummvm.appdata.xml generated file
+ # par1 also contains " (quotes) around the text; so we need to replace them with empty character
+ # otherwise " (quotes) will appear in scummvm.appdata.xml generated file
par1 = par1.replace('"', '')
- p_elem = doc.createElement("p")
- p_text = doc.createTextNode(par1)
- p_elem.appendChild(p_text)
- lang = file[0] + file[1]
- p_elem.setAttribute("xml:lang", lang)
- description_elem.appendChild(p_elem)
-
-# paragraph 2
-p_elem = doc.createElement("p")
-p_text = doc.createTextNode('''Currently, ScummVM supports a huge library of adventures with over 250 games in total.
-It supports many classics published by legendary studios like LucasArts, Sierra On-Line,
-Revolution Software, Cyan, Inc. and Westwood Studios.''')
-p_elem.appendChild(p_text)
-description_elem.appendChild(p_elem)
+ lang = '"' + file[0] + file[1] + '"'
+ par1_translations += ('' if first_translation else ' ') + '<p xml:lang=' + \
+ lang + '>' + par1 + '</p>\n'
+ first_translation = False
+
+par1_translations = par1_translations.rstrip('\n')
+
+regex_pattern = r'<p xml:lang="xy">I18N: 1 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
+
+appdata_xml_template = re.sub(
+ regex_pattern, par1_translations, appdata_xml_template)
# paragraph 2 translations
+par2_translations = ""
+first_translation = True
+
for file in file_names:
par2 = extract_par2(file)
if (par2 is None):
continue
par2 = par2.replace('"', '')
- p_elem = doc.createElement("p")
- p_text = doc.createTextNode(par2)
- p_elem.appendChild(p_text)
- lang = file[0] + file[1]
- p_elem.setAttribute("xml:lang", lang)
- description_elem.appendChild(p_elem)
-
-# paragraph 3
-p_elem = doc.createElement("p")
-p_text = doc.createTextNode('''Next to ground-breaking titles like the Monkey Island series, Broken Sword,
-Myst, Blade Runner and countless other games you will find
-some really obscure adventures and truly hidden gems to explore.''')
-p_elem.appendChild(p_text)
-description_elem.appendChild(p_elem)
+
+ lang = '"' + file[0] + file[1] + '"'
+ par2_translations += ('' if first_translation else ' ') + '<p xml:lang=' + \
+ lang + '>' + par2 + '</p>\n'
+ first_translation = False
+
+par2_translations = par2_translations.rstrip('\n')
+
+regex_pattern = r'<p xml:lang="xy">I18N: 2 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
+
+appdata_xml_template = re.sub(
+ regex_pattern, par2_translations, appdata_xml_template)
# paragraph 3 translations
+par3_translations = ""
+first_translation = True
+
for file in file_names:
par3 = extract_par3(file)
if (par3 is None):
continue
par3 = par3.replace('"', '')
- p_elem = doc.createElement("p")
- p_text = doc.createTextNode(par3)
- p_elem.appendChild(p_text)
- lang = file[0] + file[1]
- p_elem.setAttribute("xml:lang", lang)
- description_elem.appendChild(p_elem)
-
-screenshots_elem = doc.createElement("screenshots")
-component_elem.appendChild(screenshots_elem)
-
-screenshot_elem = doc.createElement("screenshot")
-screenshots_elem.appendChild(screenshot_elem)
-screenshot_elem.setAttribute("type", "default")
-
-image_elem = doc.createElement("image")
-image_text = doc.createTextNode(
- "https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_1.png")
-image_elem.appendChild(image_text)
-screenshot_elem.appendChild(image_elem)
-
-caption_elem = doc.createElement("caption")
-caption_text = doc.createTextNode("ScummVM Launcher")
-caption_elem.appendChild(caption_text)
-screenshot_elem.appendChild(caption_elem)
-
-screenshot_elem = doc.createElement("screenshot")
-screenshots_elem.appendChild(screenshot_elem)
-
-image_elem = doc.createElement("image")
-image_text = doc.createTextNode(
- "https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_2.png")
-image_elem.appendChild(image_text)
-screenshot_elem.appendChild(image_elem)
-
-caption_elem = doc.createElement("caption")
-caption_text = doc.createTextNode(
- "ScummVM running 'Flight of the Amazon Queen'")
-caption_elem.appendChild(caption_text)
-screenshot_elem.appendChild(caption_elem)
-
-screenshot_elem = doc.createElement("screenshot")
-screenshots_elem.appendChild(screenshot_elem)
-
-image_elem = doc.createElement("image")
-image_text = doc.createTextNode(
- "https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_3.png")
-image_elem.appendChild(image_text)
-screenshot_elem.appendChild(image_elem)
-
-caption_elem = doc.createElement("caption")
-caption_text = doc.createTextNode("ScummVM running 'Beneath a Steel Sky'")
-caption_elem.appendChild(caption_text)
-screenshot_elem.appendChild(caption_elem)
-
-screenshot_elem = doc.createElement("screenshot")
-screenshots_elem.appendChild(screenshot_elem)
-
-image_elem = doc.createElement("image")
-image_text = doc.createTextNode(
- "https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_4.png")
-image_elem.appendChild(image_text)
-screenshot_elem.appendChild(image_elem)
-
-caption_elem = doc.createElement("caption")
-caption_text = doc.createTextNode(
- "ScummVM running 'The Curse of Monkey Island'")
-caption_elem.appendChild(caption_text)
-screenshot_elem.appendChild(caption_elem)
-
-screenshot_elem = doc.createElement("screenshot")
-screenshots_elem.appendChild(screenshot_elem)
-
-image_elem = doc.createElement("image")
-image_text = doc.createTextNode(
- "https://www.scummvm.org/frs/extras/storefront/screenshots/screenshot_5.png")
-image_elem.appendChild(image_text)
-screenshot_elem.appendChild(image_elem)
-
-caption_elem = doc.createElement("caption")
-caption_text = doc.createTextNode("ScummVM running a demo of 'Myst'")
-caption_elem.appendChild(caption_text)
-screenshot_elem.appendChild(caption_elem)
-
-url_elem = doc.createElement("url")
-url_text = doc.createTextNode("https://www.scummvm.org")
-url_elem.appendChild(url_text)
-url_elem.setAttribute("type", "homepage")
-component_elem.appendChild(url_elem)
-
-update_contact_elem = doc.createElement("update_contact")
-update_contact_text = doc.createTextNode("scummvm-devel at lists.scummvm.org")
-update_contact_elem.appendChild(update_contact_text)
-component_elem.appendChild(update_contact_elem)
-
-# content ratings
-content_rating_elem = doc.createElement("content_rating")
-content_rating_elem.setAttribute("type", "oars-1.1")
-component_elem.appendChild(content_rating_elem)
-
-content_attribute_ids = {
- "violence-cartoon": "none",
- "violence-fantasy": "none",
- "violence-realistic": "none",
- "violence-bloodshed": "none",
- "violence-sexual": "none",
- "violence-desecration": "none",
- "violence-slavery": "none",
- "violence-worship": "none",
- "drugs-alcohol": "none",
- "drugs-narcotics": "none",
- "drugs-tobacco": "none",
- "sex-nudity": "none",
- "sex-themes": "none",
- "sex-homosexuality": "none",
- "sex-prostitution": "none",
- "sex-adultery": "none",
- "sex-appearance": "none",
- "language-profanity": "none",
- "language-humor": "none",
- "language-discrimination": "none",
- "social-chat": "none",
- "social-info": "none",
- "social-audio": "none",
- "social-location": "none",
- "social-contacts": "none",
- "money-purchasing": "none",
- "money-gambling": "none",
-}
-
-for id in content_attribute_ids:
- content_attribute_elem = doc.createElement("content_attribute")
- content_attribute_text = doc.createTextNode(content_attribute_ids[id])
- content_attribute_elem.appendChild(content_attribute_text)
- content_attribute_elem.setAttribute("id", id)
- content_rating_elem.appendChild(content_attribute_elem)
+
+ lang = '"' + file[0] + file[1] + '"'
+ par3_translations += ('' if first_translation else ' ') + '<p xml:lang=' + \
+ lang + '>' + par3 + '</p>\n'
+ first_translation = False
+
+par3_translations = par3_translations.rstrip('\n')
+
+regex_pattern = r'<p xml:lang="xy">I18N: 3 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
+
+appdata_xml_template = re.sub(
+ regex_pattern, par3_translations, appdata_xml_template)
# write to scummvm.appdata.xml file
-with open("../dists/scummvm.appdata.xml", "wb") as f:
- f.write(doc.toprettyxml(indent=" ", encoding="UTF-8"))
+with open("../dists/scummvm.appdata.xml", "w") as f:
+ f.write(appdata_xml_template)
diff --git a/dists/scummvm.appdata.xml b/dists/scummvm.appdata.xml
index 0c4eaadf90d..68de2b679e3 100644
--- a/dists/scummvm.appdata.xml
+++ b/dists/scummvm.appdata.xml
@@ -6,99 +6,104 @@
<project_license>GPL-3.0-or-later</project_license>
<name>ScummVM</name>
<summary>Interpreter for numerous adventure games and role-playing games</summary>
- <summary xml:lang="ru">ÐнÑеÑпÑеÑаÑÐ¾Ñ Ð¼Ð½Ð¾Ð¶ÐµÑÑва пÑиклÑÑенÑеÑкиÑ
и ÑолевÑÑ
игÑ</summary>
- <summary xml:lang="ja">æ°å¤ãã®ã¢ããã³ãã£ã¼ã²ã¼ã ããã¼ã«ãã¬ã¤ã³ã°ã²ã¼ã ã®é訳</summary>
- <summary xml:lang="es">Intérprete de numerosas aventuras gráficas y RPG</summary>
- <summary xml:lang="uk">ÐнÑеÑпÑеÑаÑÐ¾Ñ Ð´Ð»Ñ ÑиÑленниÑ
пÑигодниÑÑкиÑ
Ñ ÑолÑовиÑ
ÑгоÑ</summary>
<summary xml:lang="be">ÐнÑÑÑпÑÑÑаÑÐ°Ñ Ð¼Ð½Ð¾Ð³ÑÑ
аванÑÑÑнÑÑ
Ñ ÑолÑвÑÑ
гÑлÑнÑÑ</summary>
+ <summary xml:lang="ca">Intèrpret per a nombrosos jocs d'aventura i jocs de rol</summary>
+ <summary xml:lang="de">Interpreter für zahlreiche Adventure-Spiele und RPGs</summary>
+ <summary xml:lang="es">Intérprete de numerosas aventuras gráficas y RPG</summary>
+ <summary xml:lang="fi">Pelitulkki lukuisille seikkailu- ja roolipeleille</summary>
<summary xml:lang="fr">Interpréteur pour de nombreux jeux d'aventure et jeux de rôle</summary>
- <summary xml:lang="it">Interprete per numerosi giochi di avventura e di ruolo</summary>
- <summary xml:lang="nl">Interpreter voor diverse adventure spellen en rollenspellen</summary>
+ <summary xml:lang="he">×פרש ×¢××ר ×ספר ×××× ×©× ×ש××§× ×רפתק××ת ××ש××§× ×ª×¤×§××××</summary>
<summary xml:lang="hu">Interpreter számos kalandjátékhoz és szerepjátékhoz</summary>
- <summary xml:lang="pt">Interpretador de vários jogos de aventura e RPGs</summary>
+ <summary xml:lang="it">Interprete per numerosi giochi di avventura e di ruolo</summary>
+ <summary xml:lang="ja">æ°å¤ãã®ã¢ããã³ãã£ã¼ã²ã¼ã ããã¼ã«ãã¬ã¤ã³ã°ã²ã¼ã ã®é訳</summary>
<summary xml:lang="ko">ì¬ë¬ ì´ëë²¤ì² ê²ìê³¼ RPG를 ìí ì¸í°í리í°</summary>
- <summary xml:lang="de">Interpreter für zahlreiche Adventure-Spiele und RPGs</summary>
- <summary xml:lang="ca">Intèrpret per a nombrosos jocs d'aventura i jocs de rol</summary>
+ <summary xml:lang="nb">Programvaretolk for utallige eventyr- og rollespill</summary>
+ <summary xml:lang="nl">Interpreter voor diverse adventure spellen en rollenspellen</summary>
<summary xml:lang="pl">Interpreter wielu gier przygodowych oraz RPG</summary>
<summary xml:lang="pt">Interpretador para vários jogos de aventura e RPG</summary>
- <summary xml:lang="fi">Pelitulkki lukuisille seikkailu- ja roolipeleille</summary>
- <summary xml:lang="nb">Programvaretolk for utallige eventyr- og rollespill</summary>
- <summary xml:lang="he">×פרש ×¢××ר ×ספר ×××× ×©× ×ש××§× ×רפתק××ת ××ש××§× ×ª×¤×§××××</summary>
+ <summary xml:lang="pt">Interpretador de vários jogos de aventura e RPGs</summary>
+ <summary xml:lang="ru">ÐнÑеÑпÑеÑаÑÐ¾Ñ Ð¼Ð½Ð¾Ð¶ÐµÑÑва пÑиклÑÑенÑеÑкиÑ
и ÑолевÑÑ
игÑ</summary>
+ <summary xml:lang="uk">ÐнÑеÑпÑеÑаÑÐ¾Ñ Ð´Ð»Ñ ÑиÑленниÑ
пÑигодниÑÑкиÑ
Ñ ÑолÑовиÑ
ÑгоÑ</summary>
<developer_name>The ScummVM Team</developer_name>
<provides>
<id>scummvm.desktop</id>
</provides>
<description>
- <p>ScummVM is a program which allows you to run a wide variety of classic
-graphical point-and -click adventure games and role-playing games,
-provided you already have their data files. The clever part about this:
-ScummVM just replaces the executables shipped with the game,
-allowing you to play them on systems for which they were never designed!</p>
- <p xml:lang="ru">ScummVM - ÑÑо пÑогÑамма, коÑоÑÐ°Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ Ð·Ð°Ð¿ÑÑкаÑÑ ÑиÑокий ÑпекÑÑ
-клаÑÑиÑеÑкиÑ
гÑаÑиÑеÑкиÑ
пÑиклÑÑенÑеÑкиÑ
Ð¸Ð³Ñ Ð¸ ÑолевÑÑ
игÑ, пÑи ÑÑловии, ÑÑо
-Ñ Ð²Ð°Ñ Ñже еÑÑÑ Ð¸Ñ
ÑÐ°Ð¹Ð»Ñ Ð´Ð°Ð½Ð½ÑÑ
. Самое Ñмное в ÑÑом: ScummVM пÑоÑÑо заменÑеÑ
-иÑполнÑемÑе ÑайлÑ, поÑÑавлÑемÑе Ñ Ð¸Ð³Ñой, позволÑÑ Ð²Ð°Ð¼ игÑаÑÑ Ð² ниÑ
на
-ÑиÑÑемаÑ
, Ð´Ð»Ñ ÐºÐ¾ÑоÑÑÑ
они никогда не бÑли ÑазÑабоÑанÑ!</p>
- <p xml:lang="ja">ScummVMã¯ããã¼ã¿ãã¡ã¤ã«ãæ¢ã«ããå ´åã«ããã¾ãã¾ãªå¤å
¸çãªã°ã©ãã£ã«ã«ãã¤
-ã³ãã¢ã³ãã¯ãªãã¯ã¢ããã³ãã£ã¼ã²ã¼ã ããã¼ã«ãã¬ã¤ã³ã°ã²ã¼ã ãå®è¡ã§ããã
-ãã«ããããã°ã©ã ã§ããããã«é¢ããå·§å¦ãªé¨åï¼ScummVMã¯ãã²ã¼ã ã«ä»å±ãã¦ã
-ãå®è¡å¯è½ãã¡ã¤ã«ãç½®ãæããã ããªã®ã§ãè¨è¨ããããã¨ã®ãªãã·ã¹ãã ã§å®è¡
-ã§ãã¾ã!</p>
+ <p>
+ ScummVM is a program which allows you to run a wide variety of classic
+ graphical point-and-click adventure games and role-playing games,
+ provided you already have their data files. The clever part about this:
+ ScummVM just replaces the executables shipped with the game,
+ allowing you to play them on systems for which they were never designed!
+ </p>
+ <p xml:lang="be">ScummVM â гÑÑа пÑагÑама Ð´Ð»Ñ Ð·Ð°Ð¿ÑÑÐºÑ ÑознÑÑ
клÑÑÑÑнÑÑ
гÑаÑÑÑнÑÑ
point-and-
+click аванÑÑÑнÑÑ
Ñ ÑалÑвÑÑ
гÑлÑнÑÑ, пÑÑ Ñмове, ÑÑо Ð²Ñ Ð¼Ð°ÐµÑе зÑвеÑÑÐºÑ ÑÑÑ
+гÑлÑнÑÑ. ÐаÑаÑей, ScummVM пÑоÑÑа замÑнÑе вÑканалÑнÑÑ ÑÐ°Ð¹Ð»Ñ Ð³ÑлÑнÑÑ,
+дазвалÑÑÑÑ Ð³ÑлÑÑÑ Ð½Ð° ÑÑÑÑÑмаÑ
, на ÑкÑÑ ÑÑ
нÑÐºÐ¾Ð»Ñ Ð½Ðµ ÑаÑпÑаÑоÑвалÑ!</p>
+ <p xml:lang="ca">ScummVM és un programa que permet executar una à mplia varietat de jocs
+clà ssics d'aventures grà fiques «point-and-click» i jocs de rol, sempre que
+ja tingueu els seus fitxers de dades. La part intel·ligent sobre això:
+ScummVM només substitueix els executables originals del joc, permetent-vos
+jugar-los en sistemes per als quals mai van ser dissenyats!</p>
+ <p xml:lang="de">ScummVM ist ein Programm, welches dir ermöglicht, zahlreiche Adventures und
+RPGs auszuführen, vorausgesetzt, du bist im Besitz der passenden
+Spieldateien. ScummVM ersetzt dabei die ausführbaren Programmdateien, die
+ursprünglich mit dem Spiel mitgeliefert wurden. Dadurch können diese Spiele
+auf Systemen gespielt werden, für welche sie nie entwickelt wurden!</p>
+ <p xml:lang="el">Το ScummVM είναι μια εÏαÏμογή ÏοÏ
ÏÎ±Ï ÎµÏιÏÏÎÏει να ÏαίξεÏε μια εÏ
Ïεία
+Ïοικιλία αÏÏ ÎºÎ»Î±ÏÏικά ÏαιÏνίδια ÏεÏιÏÎÏÎµÎ¹Î±Ï point-and-click, και ÏÏλÏν
+(adventure και role-playing), αÏκεί να ÎÏεÏε ÏÏην καÏοÏή ÏÎ±Ï Ïα αÏÏεία
+δεδομÎνÏν ÏοÏ
Ï. Το ενδιαÏÎÏον Ïε αÏ
Ïή Ïην Ï
ÏÏθεÏη είναι Ïο εξήÏ: Ïο ScummVM
+αÏλά ανÏικαθιÏÏά Ïα εκÏελÎÏιμα ÏοÏ
ÏÏ
νÏδεÏ
αν Ïα ÏαιÏνίδια, εÏιÏÏÎÏονÏÎ¬Ï ÏαÏ
+να Ïα ÏαίξεÏε Ïε ÏÏ
ÏÏήμαÏα για Ïα οÏοία δεν είÏαν ÏÏεδιαÏÏεί ÏοÏÎ!</p>
<p xml:lang="es">ScummVM es un programa que te permite ejecutar una amplia selección de
aventuras gráficas «point-and-click» y RPG clásicos, siempre y cuando ya
tengas sus archivos de datos. Lo interesante es que ScummVM se limita a
sustituir los ejecutables de cada juego, ¡lo que permite jugarlos en
sistemas para los que nunca fueron diseñados!</p>
- <p xml:lang="uk">ScummVM - Ñе пÑогÑама, Ñка дозволÑÑ Ð·Ð°Ð¿ÑÑкаÑи ÑиÑокий ÑпекÑÑ ÐºÐ»Ð°ÑиÑниÑ
-гÑаÑÑÑниÑ
пÑигодниÑÑкиÑ
ÑÐ³Ð¾Ñ Ñа ÑолÑовиÑ
ÑгоÑ, ÑкÑо Ñ Ð²Ð°Ñ Ð²Ð¶Ðµ Ñ ÑÑ
Ñайли
-даниÑ
. ЩонайголовнÑÑе: ScummVM пÑоÑÑо замÑнÑÑ Ð²Ð¸ÐºÐ¾Ð½ÑÐ²Ð°Ð½Ñ Ñайли, Ñо
-поÑÑаÑаÑÑÑÑÑ Ñазом Ñз гÑоÑ, дозволÑÑÑи вÑдÑвоÑÑваÑи ÑÑ
Ñ ÑиÑÑемаÑ
, Ð´Ð»Ñ ÑкиÑ
-вони нÑколи не бÑли ÑозÑобленÑ!</p>
- <p xml:lang="be">ScummVM â гÑÑа пÑагÑама Ð´Ð»Ñ Ð·Ð°Ð¿ÑÑÐºÑ ÑознÑÑ
клÑÑÑÑнÑÑ
гÑаÑÑÑнÑÑ
point-and-
-click аванÑÑÑнÑÑ
Ñ ÑалÑвÑÑ
гÑлÑнÑÑ, пÑÑ Ñмове, ÑÑо Ð²Ñ Ð¼Ð°ÐµÑе зÑвеÑÑÐºÑ ÑÑÑ
-гÑлÑнÑÑ. ÐаÑаÑей, ScummVM пÑоÑÑа замÑнÑе вÑканалÑнÑÑ ÑÐ°Ð¹Ð»Ñ Ð³ÑлÑнÑÑ,
-дазвалÑÑÑÑ Ð³ÑлÑÑÑ Ð½Ð° ÑÑÑÑÑмаÑ
, на ÑкÑÑ ÑÑ
нÑÐºÐ¾Ð»Ñ Ð½Ðµ ÑаÑпÑаÑоÑвалÑ!</p>
+ <p xml:lang="fi">ScummVM on ohjelma jonka avulla voit pelata lukuisia klassisia graafisia
+seikkailu- ja roolipelejä, olettaen että sinulla on jo pelien datatiedostot.
+Tämä on fiksua koska: ScummVM korvaa itse ajettavan peliohjelman, joten voit
+pelata pelejä jopa alustoilla joille pelejä ei koskaan suunniteltu!</p>
<p xml:lang="fr">ScummVM est un programme qui vous permet d'exécuter une grande variété de
jeux d'aventure graphique point-and-click et de jeux de rôle, à condition
que vous ayez déjà leurs fichiers de données. Ce qui est génial dans tout
ça : ScummVM remplace simplement les exécutables livrés avec les jeux, ce
qui vous permet de jouer sur des systèmes pour lesquels ces jeux n'ont
jamais été conçus !</p>
+ <p xml:lang="he">ScummVM ××× × ×ª×× × ×©××פשרת ××ר××¥ ××××× ×¨×× ×©× ×ש××§× ×רפתק××ת ×רפ××× ×צ××¢-
+×××§××§ ××ש××§× ×ª×¤×§××××, ×××× ×ª× ×§××¦× ×× ×ª×× ×× ×©×××. ××××§ ×××¢× ××× ×××: ScummVM
+×××××¤× ×¨×§ ×ת ×§×××¥ ×ר××¦× ×©××××¢ ×¢× ××ש××§, ×× ×©××פשר ×ש××§ ××× ×¢× ×ער××ת ×××××
+××ש××§ ××¢××× ×× ×ª××× ×!</p>
+ <p xml:lang="hu">A ScummVM egy olyan program, mely számos klasszikus grafikus point-and-click
+kalandjáték és szerepjáték futtatását teszi lehetÅvé, feltéve, hogy már
+rendelkeznek az adatfájljaikkal. Az okos rész ebben: A ScummVM csak
+kicseréli a játékkal szállÃtott futtatható fájlokat, lehetÅvé téve számukra,
+hogy olyan rendszereken játsszák Åket, amelyekre soha nem lettek tervezve!</p>
<p xml:lang="it">ScummVM è un programma che permette di eseguire svariate avventure grafiche
e giochi di ruolo classici, a patto di averne a disposizione i files
originali. Il bello è che ScummVM sostituisce gli eseguibili originari,
permettendo di eseguire i giochi su piattaforme per cui non erano neppure
mai stati pensati!</p>
- <p xml:lang="el">Το ScummVM είναι μια εÏαÏμογή ÏοÏ
ÏÎ±Ï ÎµÏιÏÏÎÏει να ÏαίξεÏε μια εÏ
Ïεία
-Ïοικιλία αÏÏ ÎºÎ»Î±ÏÏικά ÏαιÏνίδια ÏεÏιÏÎÏÎµÎ¹Î±Ï point-and-click, και ÏÏλÏν
-(adventure και role-playing), αÏκεί να ÎÏεÏε ÏÏην καÏοÏή ÏÎ±Ï Ïα αÏÏεία
-δεδομÎνÏν ÏοÏ
Ï. Το ενδιαÏÎÏον Ïε αÏ
Ïή Ïην Ï
ÏÏθεÏη είναι Ïο εξήÏ: Ïο ScummVM
-αÏλά ανÏικαθιÏÏά Ïα εκÏελÎÏιμα ÏοÏ
ÏÏ
νÏδεÏ
αν Ïα ÏαιÏνίδια, εÏιÏÏÎÏονÏÎ¬Ï ÏαÏ
-να Ïα ÏαίξεÏε Ïε ÏÏ
ÏÏήμαÏα για Ïα οÏοία δεν είÏαν ÏÏεδιαÏÏεί ÏοÏÎ!</p>
+ <p xml:lang="ja">ScummVMã¯ããã¼ã¿ãã¡ã¤ã«ãæ¢ã«ããå ´åã«ããã¾ãã¾ãªå¤å
¸çãªã°ã©ãã£ã«ã«ãã¤
+ã³ãã¢ã³ãã¯ãªãã¯ã¢ããã³ãã£ã¼ã²ã¼ã ããã¼ã«ãã¬ã¤ã³ã°ã²ã¼ã ãå®è¡ã§ããã
+ãã«ããããã°ã©ã ã§ããããã«é¢ããå·§å¦ãªé¨åï¼ScummVMã¯ãã²ã¼ã ã«ä»å±ãã¦ã
+ãå®è¡å¯è½ãã¡ã¤ã«ãç½®ãæããã ããªã®ã§ãè¨è¨ããããã¨ã®ãªãã·ã¹ãã ã§å®è¡
+ã§ãã¾ã!</p>
+ <p xml:lang="ko">ScummVMì ë°ì´í° íì¼ì ê°ì§ ê²½ì° ë¤ìí ê³ ì ê·¸ëí½ í¬ì¸í¸ ì¤ í´ë¦ ì´ë벤ì²
+ê²ìê³¼ 롤íë ì ê²ìì ì¤íí ì ìê² íë íë¡ê·¸ë¨ì
ëë¤. ScummVMì ê²ìê³¼
+í¨ê» ì ê³µë ì¤ííì¼ì ëì²´í기 ë문ì ìë ê²ìì´ ì¤íëëë¡ ì¤ê³ëì§ ìì
+ìì¤í
ììë ì¤íí ì ììµëë¤!</p>
+ <p xml:lang="nb">ScummVM er et program som lar deg kjøre et bredt assortiment av klassiske
+pek-og-klikk-eventyrspill og rollespill â forutsatt at du allerede har
+datafilene til spillet. Det finurlige med det hele er at ScummVM kun
+erstatter selve programdelen av spillet og gjør det slik at du kan spille
+det på plattformer det aldri var utviklet til å kjøre på!</p>
<p xml:lang="nl">ScummVM is een programma die het mogelijk maakt om een grote verscheidenheid
aan klassieke grafische point-and-click adventure spellen en rollenspellen
te spelen, mits je de benodigde data bestanden al hebt. Het unieke hiervan
is: ScummVM vervangt de executables die bij het spel geleverd worden,
waardoor je ze kan spelen op systemen waar ze niet voor waren gemaakt!</p>
- <p xml:lang="hu">A ScummVM egy olyan program, mely számos klasszikus grafikus point-and-click
-kalandjáték és szerepjáték futtatását teszi lehetÅvé, feltéve, hogy már
-rendelkeznek az adatfájljaikkal. Az okos rész ebben: A ScummVM csak
-kicseréli a játékkal szállÃtott futtatható fájlokat, lehetÅvé téve számukra,
-hogy olyan rendszereken játsszák Åket, amelyekre soha nem lettek tervezve!</p>
- <p xml:lang="ko">ScummVMì ë°ì´í° íì¼ì ê°ì§ ê²½ì° ë¤ìí ê³ ì ê·¸ëí½ í¬ì¸í¸ ì¤ í´ë¦ ì´ë벤ì²
-ê²ìê³¼ 롤íë ì ê²ìì ì¤íí ì ìê² íë íë¡ê·¸ë¨ì
ëë¤. ScummVMì ê²ìê³¼
-í¨ê» ì ê³µë ì¤ííì¼ì ëì²´í기 ë문ì ìë ê²ìì´ ì¤íëëë¡ ì¤ê³ëì§ ìì
-ìì¤í
ììë ì¤íí ì ììµëë¤!</p>
- <p xml:lang="de">ScummVM ist ein Programm, welches dir ermöglicht, zahlreiche Adventures und
-RPGs auszuführen, vorausgesetzt, du bist im Besitz der passenden
-Spieldateien. ScummVM ersetzt dabei die ausführbaren Programmdateien, die
-ursprünglich mit dem Spiel mitgeliefert wurden. Dadurch können diese Spiele
-auf Systemen gespielt werden, für welche sie nie entwickelt wurden!</p>
- <p xml:lang="ca">ScummVM és un programa que permet executar una à mplia varietat de jocs
-clà ssics d'aventures grà fiques «point-and-click» i jocs de rol, sempre que
-ja tingueu els seus fitxers de dades. La part intel·ligent sobre això:
-ScummVM només substitueix els executables originals del joc, permetent-vos
-jugar-los en sistemes per als quals mai van ser dissenyats!</p>
<p xml:lang="pl">ScummVM to program pozwalajÄ
cy na uruchomienie bogatego wyboru klasycznych
graficznych gier przygodowych typu âwskaż i kliknijâ, oraz gier RPG - pod
warunkiem posiadania ich danych. ScummVM podmienia oryginalny program gier,
@@ -108,75 +113,76 @@ jogos clássicos de point-and-click (apontar e clicar) e RPG, desde que você
já tenha seus arquivos de dados. A melhor parte: ScummVM apenas substitui os
executáveis do jogo, permitindo que você os jogue em sistemas para os quais
eles nunca foram projetados!</p>
- <p xml:lang="fi">ScummVM on ohjelma jonka avulla voit pelata lukuisia klassisia graafisia
-seikkailu- ja roolipelejä, olettaen että sinulla on jo pelien datatiedostot.
-Tämä on fiksua koska: ScummVM korvaa itse ajettavan peliohjelman, joten voit
-pelata pelejä jopa alustoilla joille pelejä ei koskaan suunniteltu!</p>
- <p xml:lang="nb">ScummVM er et program som lar deg kjøre et bredt assortiment av klassiske
-pek-og-klikk-eventyrspill og rollespill â forutsatt at du allerede har
-datafilene til spillet. Det finurlige med det hele er at ScummVM kun
-erstatter selve programdelen av spillet og gjør det slik at du kan spille
-det på plattformer det aldri var utviklet til å kjøre på!</p>
- <p xml:lang="he">ScummVM ××× × ×ª×× × ×©××פשרת ××ר××¥ ××××× ×¨×× ×©× ×ש××§× ×רפתק××ת ×רפ××× ×צ××¢-
-×××§××§ ××ש××§× ×ª×¤×§××××, ×××× ×ª× ×§××¦× ×× ×ª×× ×× ×©×××. ××××§ ×××¢× ××× ×××: ScummVM
-×××××¤× ×¨×§ ×ת ×§×××¥ ×ר××¦× ×©××××¢ ×¢× ××ש××§, ×× ×©××פשר ×ש××§ ××× ×¢× ×ער××ת ×××××
-××ש××§ ××¢××× ×× ×ª××× ×!</p>
- <p>Currently, ScummVM supports a huge library of adventures with over 250 games in total.
-It supports many classics published by legendary studios like LucasArts, Sierra On-Line,
-Revolution Software, Cyan, Inc. and Westwood Studios.</p>
- <p xml:lang="ru">РнаÑÑоÑÑее вÑÐµÐ¼Ñ ScummVM поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¾Ð³ÑомнÑÑ Ð±Ð¸Ð±Ð»Ð¸Ð¾ÑÐµÐºÑ Ð¿ÑиклÑÑений,
-наÑÑиÑÑваÑÑÑÑ Ð² обÑей ÑложноÑÑи более 4000 игÑ. Ðн поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¼Ð½Ð¾Ð¶ÐµÑÑво
-клаÑÑиÑеÑкиÑ
пÑоизведений, вÑпÑÑеннÑÑ
легендаÑнÑми ÑÑÑдиÑми, Ñакими как
-LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. и Westwood
+ <p xml:lang="ru">ScummVM - ÑÑо пÑогÑамма, коÑоÑÐ°Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ Ð·Ð°Ð¿ÑÑкаÑÑ ÑиÑокий ÑпекÑÑ
+клаÑÑиÑеÑкиÑ
гÑаÑиÑеÑкиÑ
пÑиклÑÑенÑеÑкиÑ
Ð¸Ð³Ñ Ð¸ ÑолевÑÑ
игÑ, пÑи ÑÑловии, ÑÑо
+Ñ Ð²Ð°Ñ Ñже еÑÑÑ Ð¸Ñ
ÑÐ°Ð¹Ð»Ñ Ð´Ð°Ð½Ð½ÑÑ
. Самое Ñмное в ÑÑом: ScummVM пÑоÑÑо заменÑеÑ
+иÑполнÑемÑе ÑайлÑ, поÑÑавлÑемÑе Ñ Ð¸Ð³Ñой, позволÑÑ Ð²Ð°Ð¼ игÑаÑÑ Ð² ниÑ
на
+ÑиÑÑемаÑ
, Ð´Ð»Ñ ÐºÐ¾ÑоÑÑÑ
они никогда не бÑли ÑазÑабоÑанÑ!</p>
+ <p xml:lang="uk">ScummVM - Ñе пÑогÑама, Ñка дозволÑÑ Ð·Ð°Ð¿ÑÑкаÑи ÑиÑокий ÑпекÑÑ ÐºÐ»Ð°ÑиÑниÑ
+гÑаÑÑÑниÑ
пÑигодниÑÑкиÑ
ÑÐ³Ð¾Ñ Ñа ÑолÑовиÑ
ÑгоÑ, ÑкÑо Ñ Ð²Ð°Ñ Ð²Ð¶Ðµ Ñ ÑÑ
Ñайли
+даниÑ
. ЩонайголовнÑÑе: ScummVM пÑоÑÑо замÑнÑÑ Ð²Ð¸ÐºÐ¾Ð½ÑÐ²Ð°Ð½Ñ Ñайли, Ñо
+поÑÑаÑаÑÑÑÑÑ Ñазом Ñз гÑоÑ, дозволÑÑÑи вÑдÑвоÑÑваÑи ÑÑ
Ñ ÑиÑÑемаÑ
, Ð´Ð»Ñ ÑкиÑ
+вони нÑколи не бÑли ÑозÑобленÑ!</p>
+ <p>
+ Currently, ScummVM supports a huge library of adventures with over 250 games in total.
+ It supports many classics published by legendary studios like LucasArts, Sierra On-Line,
+ Revolution Software, Cyan, Inc. and Westwood Studios.
+ </p>
+ <p xml:lang="be">Ðа гÑÑÑ Ð¼Ð¾Ð¼Ð°Ð½Ñ ScummVM падÑÑÑмлÑвае вÑлÑÑÑзнÑÑ Ð±ÑблÑÑÑÑÐºÑ Ð°Ð²Ð°Ð½ÑÑÑ, дзе болей
+за 4000 гÑлÑнÑÑ. ÐÑ Ð·Ð¼Ð¾Ð¶Ð°Ñе дакÑанÑÑÑа да многÑÑ
клÑÑÑÑнÑÑ
ÑвоÑаÑ, вÑданÑÑ
+леÒÑндаÑнÑÐ¼Ñ ÑÑÑдÑÑÐ¼Ñ Ñк LucasArts, Sierra On-Line, Revolution Software,
+Cyan, Inc. Ñ Westwood Studios.</p>
+ <p xml:lang="ca">Actualment, ScummVM suporta una enorme biblioteca d'aventures amb més de
+4.000 jocs en total. Dóna suport a molts clà ssics publicats per estudis
+llegendaris com LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. i
+Westwood Studios.</p>
+ <p xml:lang="de">Aktuell unterstützt ScummVM eine umfangreiche Bibliothek von Adventure-
+Spielen mit insgesamt über 4000 Spielen. Unterstützt werden viele Klassiker,
+die von legendären Studios wie LucasArts, Sierra On-Line, Revolution
+Software, Cyan Inc. und den Westwood Studios entwickelt wurden.</p>
+ <p xml:lang="el">Το ScummVM Ï
ÏοÏÏηÏίζει μια ÏεÏάÏÏια βιβλιοθήκη αÏÏ ÏαιÏνίδια ÏεÏιÏÎÏειαÏ
+(adventure games) με ÏεÏιÏÏÏÏεÏοÏ
Ï Î±ÏÏ 4000 ÏίÏλοÏ
Ï ÏÏ
νολικά. Î¥ÏοÏÏηÏίζει
+ÏολλοÏÏ Î±ÏÏ ÏοÏ
Ï ÎºÎ»Î±ÏÏικοÏÏ ÏίÏλοÏ
Ï ÏοÏ
ÎÏοÏ
ν εκδÏÏει θÏÏ
λικά ÏÏοÏνÏιο ÏÏÏÏ
+οι LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. και Westwood
Studios.</p>
- <p xml:lang="ja">ç¾å¨ãScummVMã¯ãåè¨4000ãè¶
ããã²ã¼ã ãåããè¨å¤§ãªã¢ããã³ãã£ã¼ã©ã¤ãã©ãª
-ããµãã¼ããã¦ãã¾ãã LucasArtsãSierra On-LineãRevolution SoftwareãCyanã
-Inc.ãWestwoodStudiosãªã©ã®ä¼èª¬çãªã¹ã¿ã¸ãªã«ãã£ã¦å
¬éãããå¤ãã®ã¯ã©ã·ãã¯
-ããµãã¼ããã¦ãã¾ã.</p>
<p xml:lang="es">ScummVM es compatible con una inmensa biblioteca de más de 4 000 juegos en
total. Funciona con muchos de los clásicos publicados por estudios
legendarios como LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc.
y Westwood Studios.</p>
- <p xml:lang="uk">Рданий ÑÐ°Ñ ScummVM пÑдÑÑимÑÑ Ð²ÐµÐ»Ð¸ÑÐµÐ·Ð½Ñ Ð±ÑблÑоÑÐµÐºÑ Ð¿ÑигодниÑÑкиÑ
ÑÐ³Ð¾Ñ Ñз
-загалÑÐ½Ð¾Ñ ÐºÑлÑкÑÑÑÑ Ð¿Ð¾Ð½Ð°Ð´ 4000. ÐÑÐ¾ÐµÐºÑ Ð¿ÑдÑÑимÑÑ Ð±Ð°Ð³Ð°Ñо клаÑиÑниÑ
ÑвоÑÑв,
-опÑблÑкованиÑ
Ñакими легендаÑними ÑÑÑдÑÑми, Ñк LucasArts, Sierra On-Line,
-Revolution Software, Cyan, Inc. Ñа Westwood Studios.</p>
- <p xml:lang="be">Ðа гÑÑÑ Ð¼Ð¾Ð¼Ð°Ð½Ñ ScummVM падÑÑÑмлÑвае вÑлÑÑÑзнÑÑ Ð±ÑблÑÑÑÑÐºÑ Ð°Ð²Ð°Ð½ÑÑÑ, дзе болей
-за 4000 гÑлÑнÑÑ. ÐÑ Ð·Ð¼Ð¾Ð¶Ð°Ñе дакÑанÑÑÑа да многÑÑ
клÑÑÑÑнÑÑ
ÑвоÑаÑ, вÑданÑÑ
-леÒÑндаÑнÑÐ¼Ñ ÑÑÑдÑÑÐ¼Ñ Ñк LucasArts, Sierra On-Line, Revolution Software,
-Cyan, Inc. Ñ Westwood Studios.</p>
+ <p xml:lang="fi">Tällä hetkellä ScummVM tukee jättimäistä seikkailujen kirjastoa, kaikkiaan
+yli 4000 peliä. Se tukee lukuisia klassikkoja legendaarisilta studioilta
+kuten LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. ja Westwood
+Studios.</p>
<p xml:lang="fr">Actuellement, ScummVM supporte une énorme collection d'aventures avec plus
de 4000 jeux au total. Il prend en charge de nombreux classiques publiés par
des studios légendaires comme LucasArts, Sierra On-Line, Revolution
Software, Cyan, Inc. et Westwood Studios.</p>
+ <p xml:lang="he">× ××× ×××××, ScummVM ת×××ת ×ספר×× ×¢× ×§×ת ×©× ×רפתק××ת, ×¢× ×××¢×× ×-4000 ×ש××§××
+××¡× ×××. ××× ××× ×××× ××§××ס××§×ת ×©× ××××¤× ×× ×××××× ××× LucasArts, Sierra On-
+Line, Revolution Software, Cyan, Inc. ××× Westwood Studios.</p>
+ <p xml:lang="hu">Jelenleg a ScummVM egy hatalmas kalandkönyvtárat támogat, összesen több mint
+4000 játékkal. Támogatja számos legendás stúdió által kiadott klasszikust,
+mint például a LucasArts, a Sierra On-Line, a Revolution Software, a Cyan,
+Inc. és a Westwood Studios.</p>
<p xml:lang="it">Attualmente, ScummVM supporta una vastissima collezione di giochi di
avventura, per un totale di oltre 4000 titoli. Tra questi, molti giochi
rinomati pubblicati da editori leggendari come la LucasArts, la Sierra On-
Line, la Revolution Software, la Cyan, Inc. o i Westwood Studios.</p>
- <p xml:lang="el">Το ScummVM Ï
ÏοÏÏηÏίζει μια ÏεÏάÏÏια βιβλιοθήκη αÏÏ ÏαιÏνίδια ÏεÏιÏÎÏειαÏ
-(adventure games) με ÏεÏιÏÏÏÏεÏοÏ
Ï Î±ÏÏ 4000 ÏίÏλοÏ
Ï ÏÏ
νολικά. Î¥ÏοÏÏηÏίζει
-ÏολλοÏÏ Î±ÏÏ ÏοÏ
Ï ÎºÎ»Î±ÏÏικοÏÏ ÏίÏλοÏ
Ï ÏοÏ
ÎÏοÏ
ν εκδÏÏει θÏÏ
λικά ÏÏοÏνÏιο ÏÏÏÏ
-οι LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. και Westwood
-Studios.</p>
+ <p xml:lang="ja">ç¾å¨ãScummVMã¯ãåè¨4000ãè¶
ããã²ã¼ã ãåããè¨å¤§ãªã¢ããã³ãã£ã¼ã©ã¤ãã©ãª
+ããµãã¼ããã¦ãã¾ãã LucasArtsãSierra On-LineãRevolution SoftwareãCyanã
+Inc.ãWestwoodStudiosãªã©ã®ä¼èª¬çãªã¹ã¿ã¸ãªã«ãã£ã¦å
¬éãããå¤ãã®ã¯ã©ã·ãã¯
+ããµãã¼ããã¦ãã¾ã.</p>
+ <p xml:lang="ko">íì¬ ScummVMì í©ê³ 4000ê°ë¥¼ ëë ìë§ì ì´ëë²¤ì² ê²ìì ì§ìí©ëë¤.
+LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc., ê·¸ë¦¬ê³ Westwood
+Studios ê°ì ì ì¤ì ì¸ ì¤íëì¤ìì ë°íë ë§ì ê³ ì ì ì§ìí©ëë¤.</p>
+ <p xml:lang="nb">For øyeblikket støtter ScummVM et eventyrlig bibliotek på over 4000
+spilltitler totalt. Det støtter mange klassikere utgitt av legendariske
+spillstudioer som bl.a. LucasArts, Sierra On-Line, Revolution Software,
+Cyan, Inc. og Westwood Studios.</p>
<p xml:lang="nl">Momenteel ondersteunt ScummVM een enorme hoeveelheid adventures van meer dan
4000 spellen in totaal. Het ondersteunt vele klassiekers gepubliceerd door
legendarische studios als LucasArts, Sierra On-Line, Revolution Software,
Cyan, Inc. en Westwood Studios.</p>
- <p xml:lang="hu">Jelenleg a ScummVM egy hatalmas kalandkönyvtárat támogat, összesen több mint
-4000 játékkal. Támogatja számos legendás stúdió által kiadott klasszikust,
-mint például a LucasArts, a Sierra On-Line, a Revolution Software, a Cyan,
-Inc. és a Westwood Studios.</p>
- <p xml:lang="ko">íì¬ ScummVMì í©ê³ 4000ê°ë¥¼ ëë ìë§ì ì´ëë²¤ì² ê²ìì ì§ìí©ëë¤.
-LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc., ê·¸ë¦¬ê³ Westwood
-Studios ê°ì ì ì¤ì ì¸ ì¤íëì¤ìì ë°íë ë§ì ê³ ì ì ì§ìí©ëë¤.</p>
- <p xml:lang="de">Aktuell unterstützt ScummVM eine umfangreiche Bibliothek von Adventure-
-Spielen mit insgesamt über 4000 Spielen. Unterstützt werden viele Klassiker,
-die von legendären Studios wie LucasArts, Sierra On-Line, Revolution
-Software, Cyan Inc. und den Westwood Studios entwickelt wurden.</p>
- <p xml:lang="ca">Actualment, ScummVM suporta una enorme biblioteca d'aventures amb més de
-4.000 jocs en total. Dóna suport a molts clà ssics publicats per estudis
-llegendaris com LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. i
-Westwood Studios.</p>
<p xml:lang="pl">Obecnie ScummVM obsÅuguje wielki katalog przygód liczÄ
cy razem ponad 4000
gier. ObsÅuguje wiele klasycznych gier wydanych przez legandarne studia
takie jak LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. oraz
@@ -185,79 +191,79 @@ Westwood Studios.</p>
4000 jogos no total. Ele suporta muitos clássicos publicados por estúdios
lendários como LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. e
Westwood Studios.</p>
- <p xml:lang="fi">Tällä hetkellä ScummVM tukee jättimäistä seikkailujen kirjastoa, kaikkiaan
-yli 4000 peliä. Se tukee lukuisia klassikkoja legendaarisilta studioilta
-kuten LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. ja Westwood
+ <p xml:lang="ru">РнаÑÑоÑÑее вÑÐµÐ¼Ñ ScummVM поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¾Ð³ÑомнÑÑ Ð±Ð¸Ð±Ð»Ð¸Ð¾ÑÐµÐºÑ Ð¿ÑиклÑÑений,
+наÑÑиÑÑваÑÑÑÑ Ð² обÑей ÑложноÑÑи более 4000 игÑ. Ðн поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¼Ð½Ð¾Ð¶ÐµÑÑво
+клаÑÑиÑеÑкиÑ
пÑоизведений, вÑпÑÑеннÑÑ
легендаÑнÑми ÑÑÑдиÑми, Ñакими как
+LucasArts, Sierra On-Line, Revolution Software, Cyan, Inc. и Westwood
Studios.</p>
- <p xml:lang="nb">For øyeblikket støtter ScummVM et eventyrlig bibliotek på over 4000
-spilltitler totalt. Det støtter mange klassikere utgitt av legendariske
-spillstudioer som bl.a. LucasArts, Sierra On-Line, Revolution Software,
-Cyan, Inc. og Westwood Studios.</p>
- <p xml:lang="he">× ××× ×××××, ScummVM ת×××ת ×ספר×× ×¢× ×§×ת ×©× ×רפתק××ת, ×¢× ×××¢×× ×-4000 ×ש××§××
-××¡× ×××. ××× ××× ×××× ××§××ס××§×ת ×©× ××××¤× ×× ×××××× ××× LucasArts, Sierra On-
-Line, Revolution Software, Cyan, Inc. ××× Westwood Studios.</p>
- <p>Next to ground-breaking titles like the Monkey Island series, Broken Sword,
-Myst, Blade Runner and countless other games you will find
-some really obscure adventures and truly hidden gems to explore.</p>
- <p xml:lang="ru">ÐаÑÑÐ´Ñ Ñ Ð½Ð¾Ð²Ð°ÑоÑÑкими игÑами, Ñакими как ÑеÑÐ¸Ñ Monkey Island, Broken Sword,
-Myst, Blade Runner и беÑÑиÑленное множеÑÑво дÑÑгиÑ
игÑ, Ð²Ñ Ð½Ð°Ð¹Ð´ÐµÑе
-дейÑÑвиÑелÑно малоизвеÑÑнÑе пÑиклÑÑÐµÐ½Ð¸Ñ Ð¸ дейÑÑвиÑелÑно ÑкÑÑÑÑе ÑокÑовиÑа
-Ð´Ð»Ñ Ð¸ÑÑледованиÑ.</p>
- <p xml:lang="ja">ã¢ã³ãã¼ã¢ã¤ã©ã³ãã·ãªã¼ãºãããã¼ã¯ã³ã½ã¼ãããã¹ãããã¬ã¼ãã©ã³ãã¼ããã®
-ä»ã®ç¡æ°ã®ã²ã¼ã ãªã©ã®ç»æçãªã¿ã¤ãã«ã®æ¨ªã«ãããã¤ãã®æ¬å½ã«ããã¾ããªåéº
-ã¨çã«é ãããå®ç³ãè¦ã¤ãããã¨ãã§ãã¾ã.</p>
- <p xml:lang="es">Podrás jugar a tÃtulos tan innovadores como las sagas de Monkey Island,
-Broken Sword, Myst, Blade Runner como aventuras menos conocidas y otras
-joyas ocultas.</p>
- <p xml:lang="uk">ÐкÑÑм новаÑоÑÑÑкиÑ
ÑгоÑ, Ñк-Ð¾Ñ ÑеÑÑÑ Monkey Island, Broken Sword, Myst,
-Blade Runner Ñа незлÑÑÐµÐ½Ð½Ð¾Ñ ÐºÑлÑкоÑÑÑ ÑнÑиÑ
, ви знайдеÑе декÑлÑка ÑпÑавдÑ
-маловÑдомиÑ
пÑигодниÑÑкиÑ
ÑÐ³Ð¾Ñ Ñа ÑпÑÐ°Ð²Ð´Ñ Ð¿ÑиÑ
ованиÑ
доÑогоÑÑнниÑ
каменÑв,
-ÑÐºÑ ÑлÑд доÑлÑдиÑи.</p>
+ <p xml:lang="uk">Рданий ÑÐ°Ñ ScummVM пÑдÑÑимÑÑ Ð²ÐµÐ»Ð¸ÑÐµÐ·Ð½Ñ Ð±ÑблÑоÑÐµÐºÑ Ð¿ÑигодниÑÑкиÑ
ÑÐ³Ð¾Ñ Ñз
+загалÑÐ½Ð¾Ñ ÐºÑлÑкÑÑÑÑ Ð¿Ð¾Ð½Ð°Ð´ 4000. ÐÑÐ¾ÐµÐºÑ Ð¿ÑдÑÑимÑÑ Ð±Ð°Ð³Ð°Ñо клаÑиÑниÑ
ÑвоÑÑв,
+опÑблÑкованиÑ
Ñакими легендаÑними ÑÑÑдÑÑми, Ñк LucasArts, Sierra On-Line,
+Revolution Software, Cyan, Inc. Ñа Westwood Studios.</p>
+ <p>
+ Next to ground-breaking titles like the Monkey Island series, Broken Sword,
+ Myst, Blade Runner and countless other games you will find
+ some really obscure adventures and truly hidden gems to explore.
+ </p>
<p xml:lang="be">Разам з ÑÑвалÑÑÑйнÑÐ¼Ñ Ð³ÑлÑнÑÐ¼Ñ Ñк Monkey Island, Broken Sword, Myst, Blade
Runner Ñ Ð±ÐµÐ·ÑлÑÑам ÑнÑÑÑ
гÑлÑнÑÑ, Ð²Ñ Ð·Ð½Ð¾Ð¹Ð´Ð·ÑÑе наÑамÑÑÑ Ð¼Ð°Ð»Ð°Ð²ÑдомÑÑ Ð°Ð²Ð°Ð½ÑÑÑÑ
й пÑÑÑ
аванÑÑ ÑкаÑбÑ.</p>
+ <p xml:lang="ca">Al costat de tÃtols innovadors com la sèrie Monkey Island, Broken Sword,
+Myst, Blade Runner i molts altres jocs trobareu algunes aventures realment
+fosques i altres gemmes realment ocultes per explorar.</p>
+ <p xml:lang="de">Neben bahnbrechenden Titel wie der Monkey Island-Serie, Baphomets Fluch,
+Myst, Blade Runner und zahllosen weiteren Spielen wirst du auch einige
+wirklich kuriose Adventures und versteckte Schätze entdecken.</p>
+ <p xml:lang="el">Îαζί με καινοÏÏμοÏ
Ï Î³Î¹Î± Ïην εÏοÏή ÏοÏ
Ï ÏίÏλοÏ
Ï, ÏÏÏÏ Î®Ïαν οι ÏειÏÎÏ Monkey
+Island, Broken Sword, Myst, Blade Runner και αμÎÏÏηÏα άλλα ÏαιÏνίδια, θα
+βÏείÏε και μεÏικοÏÏ ÏÏεÏικά άγνÏÏÏοÏ
Ï ÏίÏλοÏ
Ï ÏεÏιÏÎÏÎµÎ¹Î±Ï ÎºÎ±Î¹ ÏÏαγμαÏικά
+κÏÏ
μμÎνα διαμανÏάκια για να εξεÏεÏ
νήÏεÏε.</p>
+ <p xml:lang="es">Podrás jugar a tÃtulos tan innovadores como las sagas de Monkey Island,
+Broken Sword, Myst, Blade Runner como aventuras menos conocidas y otras
+joyas ocultas.</p>
+ <p xml:lang="fi">Uraauurtaneiden Monkey Island-, Broken Sword-, Myst-, Blade Runner- ja
+lukuisten muiden pelien ohelta löydät myös vähemmän tunnettuja helmiä
+tutkittavaksesi.</p>
<p xml:lang="fr">à côté de titres révolutionnaires comme la série Monkey Island, Broken Sword
(Les Chevaliers de Baphomet) , Myst, Blade Runner et d'innombrables autres
jeux, vous trouverez des aventures vraiment obscures et des pépites vraiment
bien cachées à explorer.</p>
+ <p xml:lang="he">××¦× ××תר×× ×¤××¨×¦× ××¨× ××× ×¡×רת ×× ××§×פ××, ××¨× ×©××ר×, Myst, ××××× ×¨×× ×¨
+×××× ×¡×¤×ר ×ש××§×× × ×ספ×× ×ª×××× ××צ×× ×× ×רפתק××ת ×¢××××ת ××¤× ×× ×ת × ×¡×ª×¨×ת ×©× ××ש
+ש××××ת שת××× ××ת×.</p>
+ <p xml:lang="hu">Az olyan úttörÅ cÃmek mellett, mint a Monkey Island sorozat, a Broken Sword,
+a Myst, a Blade Runner és számtalan más játék, valóban homályos kalandokat
+és valóban rejtett drágaköveket találhat.</p>
<p xml:lang="it">Pietre miliari come la saga di Monkey Island, Broken Sword, Myst, Blade
Runner e innumerevoli altri titoli tutti da scoprire. Potrai trovare
avventure sconosciute ai più ma anche dei gioiellini ingiustamente
dimenticati.</p>
- <p xml:lang="el">Îαζί με καινοÏÏμοÏ
Ï Î³Î¹Î± Ïην εÏοÏή ÏοÏ
Ï ÏίÏλοÏ
Ï, ÏÏÏÏ Î®Ïαν οι ÏειÏÎÏ Monkey
-Island, Broken Sword, Myst, Blade Runner και αμÎÏÏηÏα άλλα ÏαιÏνίδια, θα
-βÏείÏε και μεÏικοÏÏ ÏÏεÏικά άγνÏÏÏοÏ
Ï ÏίÏλοÏ
Ï ÏεÏιÏÎÏÎµÎ¹Î±Ï ÎºÎ±Î¹ ÏÏαγμαÏικά
-κÏÏ
μμÎνα διαμανÏάκια για να εξεÏεÏ
νήÏεÏε.</p>
- <p xml:lang="nl">Naast spraakmakende titels zoals de Monkey Island series, Broken Sword,
-Myst, Blade Runner en talloze andere spellen zal je enkele vage adventures
-vinden en echte verborgen pareltjes ontdekken.</p>
- <p xml:lang="hu">Az olyan úttörÅ cÃmek mellett, mint a Monkey Island sorozat, a Broken Sword,
-a Myst, a Blade Runner és számtalan más játék, valóban homályos kalandokat
-és valóban rejtett drágaköveket találhat.</p>
+ <p xml:lang="ja">ã¢ã³ãã¼ã¢ã¤ã©ã³ãã·ãªã¼ãºãããã¼ã¯ã³ã½ã¼ãããã¹ãããã¬ã¼ãã©ã³ãã¼ããã®
+ä»ã®ç¡æ°ã®ã²ã¼ã ãªã©ã®ç»æçãªã¿ã¤ãã«ã®æ¨ªã«ãããã¤ãã®æ¬å½ã«ããã¾ããªåéº
+ã¨çã«é ãããå®ç³ãè¦ã¤ãããã¨ãã§ãã¾ã.</p>
<p xml:lang="ko">Monkey Island ì리ì¦, Broken Sword, Myst, Blade Runnerì ê°ì´ í기ì ì¸ íì´í
ì ë¹ë¡¯í´, ì ìë ¤ì§ì§ ìì ì´ëë²¤ì² ê²ìê³¼ ì§ì í ì¨ê²¨ì§ ë³´ìì ì°¾ìë³¼ ì ì
ìµëë¤.</p>
- <p xml:lang="de">Neben bahnbrechenden Titel wie der Monkey Island-Serie, Baphomets Fluch,
-Myst, Blade Runner und zahllosen weiteren Spielen wirst du auch einige
-wirklich kuriose Adventures und versteckte Schätze entdecken.</p>
- <p xml:lang="ca">Al costat de tÃtols innovadors com la sèrie Monkey Island, Broken Sword,
-Myst, Blade Runner i molts altres jocs trobareu algunes aventures realment
-fosques i altres gemmes realment ocultes per explorar.</p>
+ <p xml:lang="nb">Sammen med banebrytende titler som Monkey Island-serien, Broken Sword, Myst,
+Blade Runner og utallige andre spill finner du også enkelte kuriositeter og
+skjulte skatter det kan være verdt å gi et forsøk.</p>
+ <p xml:lang="nl">Naast spraakmakende titels zoals de Monkey Island series, Broken Sword,
+Myst, Blade Runner en talloze andere spellen zal je enkele vage adventures
+vinden en echte verborgen pareltjes ontdekken.</p>
<p xml:lang="pl">Poza przeÅomowymi tytuÅami, takimi jak seria Monkey Island, Broken Sword,
Myst, Blade Runner i wieloma innymi, znajdziesz tu również wiele maÅo
znanych przygód i naprawdÄ maÅo znanych pereÅek.</p>
<p xml:lang="pt">Ao lado de tÃtulos inovadores como a série Monkey Island, Broken Sword,
Myst, Blade Runner e inúmeros outros jogos, você encontrará algumas
aventuras realmente obscuras e verdadeiras joias raras para explorar.</p>
- <p xml:lang="fi">Uraauurtaneiden Monkey Island-, Broken Sword-, Myst-, Blade Runner- ja
-lukuisten muiden pelien ohelta löydät myös vähemmän tunnettuja helmiä
-tutkittavaksesi.</p>
- <p xml:lang="nb">Sammen med banebrytende titler som Monkey Island-serien, Broken Sword, Myst,
-Blade Runner og utallige andre spill finner du også enkelte kuriositeter og
-skjulte skatter det kan være verdt å gi et forsøk.</p>
- <p xml:lang="he">××¦× ××תר×× ×¤××¨×¦× ××¨× ××× ×¡×רת ×× ××§×פ××, ××¨× ×©××ר×, Myst, ××××× ×¨×× ×¨
-×××× ×¡×¤×ר ×ש××§×× × ×ספ×× ×ª×××× ××צ×× ×× ×רפתק××ת ×¢××××ת ××¤× ×× ×ת × ×¡×ª×¨×ת ×©× ××ש
-ש××××ת שת××× ××ת×.</p>
+ <p xml:lang="ru">ÐаÑÑÐ´Ñ Ñ Ð½Ð¾Ð²Ð°ÑоÑÑкими игÑами, Ñакими как ÑеÑÐ¸Ñ Monkey Island, Broken Sword,
+Myst, Blade Runner и беÑÑиÑленное множеÑÑво дÑÑгиÑ
игÑ, Ð²Ñ Ð½Ð°Ð¹Ð´ÐµÑе
+дейÑÑвиÑелÑно малоизвеÑÑнÑе пÑиклÑÑÐµÐ½Ð¸Ñ Ð¸ дейÑÑвиÑелÑно ÑкÑÑÑÑе ÑокÑовиÑа
+Ð´Ð»Ñ Ð¸ÑÑледованиÑ.</p>
+ <p xml:lang="uk">ÐкÑÑм новаÑоÑÑÑкиÑ
ÑгоÑ, Ñк-Ð¾Ñ ÑеÑÑÑ Monkey Island, Broken Sword, Myst,
+Blade Runner Ñа незлÑÑÐµÐ½Ð½Ð¾Ñ ÐºÑлÑкоÑÑÑ ÑнÑиÑ
, ви знайдеÑе декÑлÑка ÑпÑавдÑ
+маловÑдомиÑ
пÑигодниÑÑкиÑ
ÑÐ³Ð¾Ñ Ñа ÑпÑÐ°Ð²Ð´Ñ Ð¿ÑиÑ
ованиÑ
доÑогоÑÑнниÑ
каменÑв,
+ÑÐºÑ ÑлÑд доÑлÑдиÑи.</p>
</description>
<screenshots>
<screenshot type="default">
Commit: 912ffa448f605d0204afc91075f32d9b62816831
https://github.com/scummvm/scummvm/commit/912ffa448f605d0204afc91075f32d9b62816831
Author: Ankush Dutt (ankushd100 at gmail.com)
Date: 2023-03-21T12:32:42+01:00
Commit Message:
I18N: Refactor generate-appdata.py
Changed paths:
devtools/generate-appdata.py
diff --git a/devtools/generate-appdata.py b/devtools/generate-appdata.py
index f91159f77e9..b2ed7457afc 100644
--- a/devtools/generate-appdata.py
+++ b/devtools/generate-appdata.py
@@ -155,106 +155,108 @@ def extract_par3(file):
return None
-# get file names of all .po files
-file_names = []
-for filename in os.listdir("../po/"):
- if filename.endswith(".po"):
- file_names.append(filename)
+def get_summary_translations(po_file_names):
+ summary_translations = ""
-file_names.sort()
+ # first_translation is used to determine the indentation (first translation will not require any indentation)
+ first_translation = True
-# summary translations
-summary_translations = ""
+ for file in po_file_names:
+ summary = extract_summary(file)
+ if (summary is None):
+ continue
-# first_translation is used to determine the indentation (first translation will not require any indentation)
-first_translation = True
+ lang = '"' + file[0] + file[1] + '"'
+ summary_translations += ('' if first_translation else ' ') + '<summary xml:lang=' + \
+ lang + '>' + summary + '</summary>\n'
+ first_translation = False
-for file in file_names:
- summary = extract_summary(file)
- if (summary is None):
- continue
+ summary_translations = summary_translations.rstrip('\n')
- lang = '"' + file[0] + file[1] + '"'
- summary_translations += ('' if first_translation else ' ') + '<summary xml:lang=' + \
- lang + '>' + summary + '</summary>\n'
- first_translation = False
+ return summary_translations
-summary_translations = summary_translations.rstrip('\n')
-regex_pattern = r'<summary xml:lang="xy">I18N: One line summary as shown in \*nix distributions<\/summary>'
+def substitute_summary_translations(summary_translations, xml):
+ pattern = r'<summary xml:lang="xy">I18N: One line summary as shown in \*nix distributions<\/summary>'
-appdata_xml_template = re.sub(
- regex_pattern, summary_translations, appdata_xml_template)
+ appdata_xml = re.sub(pattern, summary_translations, xml)
-# paragraph 1 translations
-par1_translations = ""
-first_translation = True
+ return appdata_xml
-for file in file_names:
- par1 = extract_par1(file)
- if (par1 is None):
- continue
- # par1 also contains " (quotes) around the text; so we need to replace them with empty character
- # otherwise " (quotes) will appear in scummvm.appdata.xml generated file
- par1 = par1.replace('"', '')
+def get_parx_translations(x, po_file_names):
+ parx_translations = ""
+ first_translation = True
+
+ for file in po_file_names:
+ parx = ""
+ if (x == 1):
+ parx = extract_par1(file)
+ elif (x == 2):
+ parx = extract_par2(file)
+ else:
+ parx = extract_par3(file)
+
+ if (parx is None):
+ continue
+
+ # parx also contains " (quotes) around the text; so we need to replace them with empty character
+ # otherwise " (quotes) will appear in scummvm.appdata.xml generated file
+ parx = parx.replace('"', '')
+
+ lang = '"' + file[0] + file[1] + '"'
+ parx_translations += ('' if first_translation else ' ') + '<p xml:lang=' + \
+ lang + '>' + parx + '</p>\n'
+ first_translation = False
+
+ parx_translations = parx_translations.rstrip('\n')
+
+ return parx_translations
- lang = '"' + file[0] + file[1] + '"'
- par1_translations += ('' if first_translation else ' ') + '<p xml:lang=' + \
- lang + '>' + par1 + '</p>\n'
- first_translation = False
-par1_translations = par1_translations.rstrip('\n')
+def substitute_parx_translations(x, parx_translations, xml):
+ pattern = r'<p xml:lang="xy">I18N: 1 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
-regex_pattern = r'<p xml:lang="xy">I18N: 1 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
+ if (x == 2):
+ pattern = r'<p xml:lang="xy">I18N: 2 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
+ elif (x == 3):
+ pattern = r'<p xml:lang="xy">I18N: 3 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
-appdata_xml_template = re.sub(
- regex_pattern, par1_translations, appdata_xml_template)
+ appdata_xml = re.sub(pattern, parx_translations, xml)
+ return appdata_xml
-# paragraph 2 translations
-par2_translations = ""
-first_translation = True
-for file in file_names:
- par2 = extract_par2(file)
- if (par2 is None):
- continue
- par2 = par2.replace('"', '')
+def get_po_files():
+ po_file_names = []
+ for filename in os.listdir("../po/"):
+ if filename.endswith(".po"):
+ po_file_names.append(filename)
- lang = '"' + file[0] + file[1] + '"'
- par2_translations += ('' if first_translation else ' ') + '<p xml:lang=' + \
- lang + '>' + par2 + '</p>\n'
- first_translation = False
+ po_file_names.sort()
-par2_translations = par2_translations.rstrip('\n')
+ return po_file_names
-regex_pattern = r'<p xml:lang="xy">I18N: 2 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
-appdata_xml_template = re.sub(
- regex_pattern, par2_translations, appdata_xml_template)
+def main():
+ po_file_names = get_po_files()
-# paragraph 3 translations
-par3_translations = ""
-first_translation = True
+ summary_translations = get_summary_translations(po_file_names)
+ xml = substitute_summary_translations(
+ summary_translations, appdata_xml_template)
-for file in file_names:
- par3 = extract_par3(file)
- if (par3 is None):
- continue
- par3 = par3.replace('"', '')
+ par1_translations = get_parx_translations(1, po_file_names)
+ xml = substitute_parx_translations(1, par1_translations, xml)
- lang = '"' + file[0] + file[1] + '"'
- par3_translations += ('' if first_translation else ' ') + '<p xml:lang=' + \
- lang + '>' + par3 + '</p>\n'
- first_translation = False
+ par2_translations = get_parx_translations(2, po_file_names)
+ xml = substitute_parx_translations(2, par2_translations, xml)
-par3_translations = par3_translations.rstrip('\n')
+ par3_translations = get_parx_translations(3, po_file_names)
+ xml = substitute_parx_translations(3, par3_translations, xml)
-regex_pattern = r'<p xml:lang="xy">I18N: 3 of 3 paragraph of ScummVM description in \*nix distributions<\/p>'
+ # write to scummvm.appdata.xml file
+ with open("../dists/scummvm.appdat3a.xml", "w") as f:
+ f.write(xml)
-appdata_xml_template = re.sub(
- regex_pattern, par3_translations, appdata_xml_template)
-# write to scummvm.appdata.xml file
-with open("../dists/scummvm.appdata.xml", "w") as f:
- f.write(appdata_xml_template)
+if __name__ == '__main__':
+ main()
More information about the Scummvm-git-logs
mailing list