Skip to content
21 changes: 14 additions & 7 deletions client/i18next-scanner.config.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -68,17 +68,25 @@ function flush(done) {
done();
}


module.exports = {
input: [
'client/src/**/*.{tsx,ts}',
'src/**/*.{tsx,ts}',
// Use ! to filter out files or directories
'!client/i18n/**',
'!i18n/**',
'!**/node_modules/**',
],
options: {
debug: true,
removeUnusedKeys: true,
/**
* For example, the return value of a `TabTitle` element is
* subject to translation, but it is removed because it cannot
* be detected by i18next-scanner.
*
* The relevant section will be displayed as a warning when
* `npm run translate` is executed, and resolving the warning
* will restore it to `true`.
*/
removeUnusedKeys: false,
func: {
list: ['i18next.t', 'i18n.t', 't'],
extensions: ['.js', '.jsx'] // not .ts or .tsx since we use i18next-scanner-typescript!
Expand Down Expand Up @@ -111,8 +119,8 @@ module.exports = {
return ''; // Return empty string for other languages
},
resource: {
loadPath: './client/public/locales/{{lng}}/{{ns}}.json',
savePath: './client/public/locales/{{lng}}/{{ns}}.json',
loadPath: './public/locales/{{lng}}/{{ns}}.json',
savePath: './public/locales/{{lng}}/{{ns}}.json',
jsonIndent: 2,
lineEnding: '\n'
},
Expand Down Expand Up @@ -148,5 +156,4 @@ module.exports = {
done();
}
),

};
78 changes: 39 additions & 39 deletions client/public/locales/de/translation.json
Original file line number Diff line number Diff line change
@@ -1,41 +1,21 @@
{
"Caption": {
"translation": "Lean-Lern-Spiel-Server"
},
"Subcaption": {
"description": "Eine Sammlung von Lernspielen für den Beweisassistenten <1>Lean</1> <i>(Lean 4)</i> und dessen mathematische Bibliothek <2>mathlib</2>"
},
"Development notes": {
"translation": "Entwicklungsstand",
"description": "Der Spieleserver und die alle Spiele befinden sich in fortlaufender Entwicklung. Wir bitten darum, Fehler und Ungereimtheiten als <1>GitHub Issue</1> zu melden."
},
"Adding new games": {
"translation": "Neue Spiele hinzufügen",
"description": "Für alle, die selbst Spiel entwickeln möchten, gibt es ein <1>GameSkeleton Github Repo</1> als Vorlage und die Anleitung <2>How to Create a Game</2>.<p>Die <3>Anleitung</3> erklärt auch, wie ein solches Spiel mittels einer passenden URL auf den Sever geladen und gespiel werden kann. Fragen dazu beantworten wir gern.</p><p>Als Kacheln sichtbar ist auf dieser Seite nur eine kuratierte Auswahl an existierenden Spielen. Wir erweitern diese Auswahl auf Anfrage sehr gerne.</p>"
},
"Funding": {
"translation": "Finanzierung",
"description": "Dieser Spiele-Server wird bereitgestellt vom Zentrum für Informations- und Medientechnologie der Heinrich-Heine-Universität Düsseldorf. Die lean4game-Software wurde im Rahmen des Projekts <1>ADAM: Anticipating the Digital Age of Mathematics</1> entwickelt, finanziert durch das Programm <i>Freiraum 2022</i> der <i>Stiftung Innovation in der Hochschullehre</i>. Der laufende Betrieb des Servers und die Weiterentwicklung der Software werden durch Mittel des <i>AI for Math Fund</i> der Stiftung <i>Renaissance Philanthropy</i> ermöglicht."
},
"Server capacity": {
"translation": "Server-Auslastung",
"description": "Diese Server läuft auf universitäter Infrastruktur mit begrenzten Kapazitäten. Wir schätzen, dass unsere Konfiguration etwa 50 gleichzeitige Spiele mit hoher Leistung und bis zu 180 gleichzeitige Spiele mit geringerer Leistung unterstützen wird."
},
"No Games": {
"description": "Kein Spiel geladen. Öffne <1>http://localhost:3000/#/g/local/FOLDER</1> um ein Spiel direkt aus einem lokalen Ordner zu laden."
},
"Progress saving": {
"translation": "Spielstandspeicherung",
"description": "Das Spiel speichert den Spielstand im lokalen Browserspeicher. Wird dieser gelöscht, ist der Spielstand nicht wiederherstellbar!<br/>Achtung: In üblichen Browsern bewirkt ein löschen von Cookies auch ein löschen des lokalen Browserspeichers (z.B. \"local site data\"). Der Spielstand sollte vorgehend heruntergeladen werden!"
},
"Development": {
"translation": "Entwicklung",
"description": "Der Spieleserver wurde entwickelt von <strong>Alexander Bentkamp</strong>, <strong>Jon Eugster</strong>. Basierend auf einem Prototyp von <strong>Patrick Massot</strong>.Der Sourcecode dieses Lean-Game-Engine ist <1>auf Github verfügbar</1>. Bei Problemen, bitte einen <2>Github-Issue</2> ausfüllen oder direkt mit uns Kontakt aufnehmen."
},
"Accessibility": {
"translation": "Barrierefreiheit",
"description": "Sollten Sie auf Barrieren stoßen, die Ihnen den Zugang erschweren, wenden Sie sich bitte an uns! Wir sind bestrebt, solche Barrieren nach besten Kräften zu beseitigen."
},
"Caption.translation": "Lean-Lern-Spiel-Server",
"Subcaption.description": "Eine Sammlung von Lernspielen für den Beweisassistenten <1>Lean</1> <i>(Lean 4)</i> und dessen mathematische Bibliothek <2>mathlib</2>",
"Development notes.translation": "Entwicklungsstand",
"Development notes.description": "Der Spieleserver und die alle Spiele befinden sich in fortlaufender Entwicklung. Wir bitten darum, Fehler und Ungereimtheiten als <1>GitHub Issue</1> zu melden.",
"Adding new games.translation": "Neue Spiele hinzufügen",
"Adding new games.description": "Für alle, die selbst Spiel entwickeln möchten, gibt es ein <1>GameSkeleton Github Repo</1> als Vorlage und die Anleitung <2>How to Create a Game</2>.<p>Die <3>Anleitung</3> erklärt auch, wie ein solches Spiel mittels einer passenden URL auf den Sever geladen und gespiel werden kann. Fragen dazu beantworten wir gern.</p><p>Als Kacheln sichtbar ist auf dieser Seite nur eine kuratierte Auswahl an existierenden Spielen. Wir erweitern diese Auswahl auf Anfrage sehr gerne.</p>",
"Funding.translation": "Finanzierung",
"Funding.description": "Dieser Spiele-Server wird bereitgestellt vom Zentrum für Informations- und Medientechnologie der Heinrich-Heine-Universität Düsseldorf. Die lean4game-Software wurde im Rahmen des Projekts <1>ADAM: Anticipating the Digital Age of Mathematics</1> entwickelt, finanziert durch das Programm <i>Freiraum 2022</i> der <i>Stiftung Innovation in der Hochschullehre</i>. Der laufende Betrieb des Servers und die Weiterentwicklung der Software werden durch Mittel des <i>AI for Math Fund</i> der Stiftung <i>Renaissance Philanthropy</i> ermöglicht.",
"Server capacity.translation": "Server-Auslastung",
"Server capacity.description": "Diese Server läuft auf universitäter Infrastruktur mit begrenzten Kapazitäten. Wir schätzen, dass unsere Konfiguration etwa 50 gleichzeitige Spiele mit hoher Leistung und bis zu 180 gleichzeitige Spiele mit geringerer Leistung unterstützen wird.",
"No Games.description": "Kein Spiel geladen. Öffne <1>http://localhost:3000/#/g/local/FOLDER</1> um ein Spiel direkt aus einem lokalen Ordner zu laden.",
"Progress saving.translation": "Spielstandspeicherung",
"Progress saving.description": "Das Spiel speichert den Spielstand im lokalen Browserspeicher. Wird dieser gelöscht, ist der Spielstand nicht wiederherstellbar!<br/>Achtung: In üblichen Browsern bewirkt ein löschen von Cookies auch ein löschen des lokalen Browserspeichers (z.B. \"local site data\"). Der Spielstand sollte vorgehend heruntergeladen werden!",
"Development.translation": "Entwicklung",
"Development.description": "Der Spieleserver wurde entwickelt von <strong>Alexander Bentkamp</strong>, <strong>Jon Eugster</strong>. Basierend auf einem Prototyp von <strong>Patrick Massot</strong>.Der Sourcecode dieses Lean-Game-Engine ist <1>auf Github verfügbar</1>. Bei Problemen, bitte einen <2>Github-Issue</2> ausfüllen oder direkt mit uns Kontakt aufnehmen.",
"Accessibility.translation": "Barrierefreiheit",
"Accessibility.description": "Sollten Sie auf Barrieren stoßen, die Ihnen den Zugang erschweren, wenden Sie sich bitte an uns! Wir sind bestrebt, solche Barrieren nach besten Kräften zu beseitigen.",
"Tactics": "Taktiken",
"<p>Game rules determine if it is allowed to skip levels and if the games runs checks to only allow unlocked tactics and theorems in proofs.</p><1>Note: \"Unlocked\" tactics (or theorems) are determined by two things: The set of minimal tactics needed to solve a level, plus any tactics you unlocked in another level. That means if you unlock <1>simp</1> in a level, you can use it henceforth in any level.</1><p>The options are:</p>": "<p>Die Spielregeln bestimmen ob es erlaubt ist, Levels zu überspringen und ob das Spiel überprüft welche Taktiken und Theoreme freigeschaltet sind und nur diese im Beweis akzeptiert.</p><1>Bemerkung: \"Freigeschaltete\" Taktiken (und Theoreme) werden durch zwei Faktoren bestimmt: The Menge der Taktiken die minimal notwending sind um den Level zu lösen und dazu die Menge aller Taktiken, die in einem anderen Level freigeschaltet wurden. Das bedeutet wenn <1>simp</1> in einem Level freigeschaltet wird, kann diese Taktik danach in jeglichen Levels verwendet werden.",
"Game Rules": "Spielregeln",
Expand Down Expand Up @@ -98,7 +78,7 @@
"Layout": "Seitenlayout",
"Always visible": "Immer sichtbar",
"Save my settings (in the browser store)": "Einstellungen im Browser speichern.",
"<p>Select a JSON file with the saved game progress to load your progress.</p><1><0>Warning:</0> This will delete your current game progress! Consider <2>downloading your current progress</2> first!</1>": "<p>Wähle eine JSON-Datei mit einem Spielstand, um diesen zu laden.</p><1><0>Achtung:</0> Deraktuelle Spielstand wird dabei überschrieben! Wenn du noch einmal zum aktuellen Spielstand zurückkehren möchtest, solltest du zunächst den <2>aktuellen Spielstand herunterladen</2>!</1>",
"<p>Select a JSON file with the saved game progress to load your progress.</p><1><0>Warning:</0> This will delete your current game progress! Consider <2>downloading your current progress</2> first!</1>": "<p>Wähle eine JSON-Datei mit einem Spielstand, um diesen zu laden.</p><1><0>Achtung:</0> Deraktuelle Spielstand wird dabei überschrieben! Wenn du noch einmal zum aktuellen Spielstand zurückkehren möchtest, solltest du zunächst den <2>aktuellen Spielstand herunterladen</2>!</1>",
"Upload Saved Progress": "Spielstand hochladen",
"Load selected file": "Ausgewählte Datei hochladen",
"Mobile": "Mobil",
Expand All @@ -125,5 +105,25 @@
"close menu": "Menü schließen",
"open menu": "Menü öffnen",
"Editor Mode": "",
"Typewriter Mode": ""
"Typewriter Mode": "",
"Inventory": "",
"next level": "",
"Game Info & Credits": "",
"Clear Progress": "",
"Download Progress": "",
"Unlock this item!": "",
"view the Lean game server on Github": "",
"<p>Do you want to delete your saved progress irreversibly?</p>": "",
"<p>Deleting everything will delete all your proofs and your collected inventory! It's recommended to download your progress first.</p><p>(Saves from other games are not deleted.)</p>": "",
"Delete this Level": "",
"Delete this World": "",
"Delete Everything": "",
"Download & Delete everything": "",
"<0>Impressum</0><1><strong>Contact:</strong><br/>Marcus Zibrowius<br/>Mathematisches Institut der Heinrich-Heine-Universität Düsseldorf<br/>Universitätsstr. 1<br/>40225 Düsseldorf<br/>Germany<br/>+49 211 81-14690<br/><14>Contact Details</14></1><2><strong>Legal form:</strong><br/>The Heinrich Heine University Düsseldorf is a corporation under public law. It is legally represented by the Rector Prof. Dr. Anja Steinbeck. The responsible supervisory authority is the Ministry of Culture and Science of North Rhine-Westphalia, Völklinger Straße 49, 40221 Düsseldorf.</2><3><strong>VAT identification number:</strong><br/>according to §27a Sales Tax Act<br/>DE 811222416</3><4><0>Impressum HHU</0></4>": "",
"<0></0><1><0></0><1></1></1><2></2><3><0></0></3><4></4><5><0></0></5><6></6><7><0></0></7>": "",
"Use country flags to represent languages": "",
"Show locked inventory items": "",
"Controls": "",
"Browser Storage": "",
"<0>Privacy Policy</0><p>Our server collects metadata (such as IP address, browser, operating system) and the data that the user enters into the editor. The data is used to compute the Lean output and display it to the user. The information will be stored as long as the user stays on our website and will be deleted immediately afterwards. We keep logs to improve our software, but the contained data is anonymized.</p><p>We do not use cookies, but your game progress is stored in the browser as site data. Your game progress is not saved on the server; if you delete your browser storage, it is completely gone.</p><p>Our server is located in Germany.</p><4><strong>Contact:</strong><br/>Marcus Zibrowius<br/>Mathematisches Institut der Heinrich-Heine-Universität Düsseldorf<br/>Universitätsstr. 1<br/>40225 Düsseldorf<br/>Germany<br/>+49 211 81 13858<br/><14>Contact Details</14><br/><16>Technical Contact</16></4>": ""
}
Loading
Loading