diff --git a/ltex-ls/.config/ltex-ls/dictionary.txt b/ltex-ls/.config/ltex-ls/dictionary.txt new file mode 100644 index 0000000..2959355 --- /dev/null +++ b/ltex-ls/.config/ltex-ls/dictionary.txt @@ -0,0 +1,125 @@ +Machine +Actor-Scripting-Spiele +SHENZEN +TIS +Assemblysprachen +MMO-Strategiespiel +Screeps +Robocode +Combat +while True: learn() +Actor-Scripting-Spielen +while +True +learn +goto +while-Schleifen +Konditionalblöcke +bibliotheksinternen +spieleigene +spieleigenen +Scripture +Gameengine +GoTo +Instruktionssprünge +Humans +Summentyps +id +AStStmt +Expr-Objekten +StmtSideEffect +AstStmt +Summentyp +Expr +programmdefinierten +Bytecodeevaluation +Bytecoderepräsentation +Bytecodes +Bytecodedarstellung +Debug +Instruktionslisten +Instruktionsliste +Reduktionsschritte +Datentransformationssysteme +Akteurverhalten +CryEngine +Gameengines +Zachtronics +Engines +Kowarschick +itch.io +Indiespielentwickler +Instruktionsblöcken +Instruktionsketten +Instruktionszeiger +Runtimeobjekt +Instruktionszähler +Bytecodeinterpreter +Bytecodeoperationen +Lightbot +blockbasierte +Blockbasierte +blockbasierten +skriptbasierten +Bytecodeinstruktionen +Compilertechniken +Compilerstruktur +Zach +Skriptbasierte +rasterbasierte +feldweise +Bytecodedarstellungen +Tree-walk +Bytecodecompiler +ASTs +Parsern +Tree +Kindelemente +LLVM-Compiler +LLVM-Projekt +LLVM-IR +Clang +LLVM-Projekts +Bytecodezwischensprache +Bytecodeprogramme +Jsofocaml +maschinencodeähnlichen +Typüberprüfung +bytecodeähnliche +Reduktionsschritten +intermediate +Transpiler +Plattformabdeckung +Transpiliert +Compileroptimierungen +Compiler-Backends +transpiliert +Kompilationsprozesses +Kompilationsschritte +Performanzvorteile +Kompilationsprozess +literale +spielspezifische +Integrated +Typkonvertierungen +Typkonvertierung +Literalsyntax +literalen +Typsynthese +spieldefinierten +Markerinterface +Programmvalidierung +Instruktionskonstrukte +Typkorrektheit +literaler +spieldefinierte +Konditionalblocks +Summentypen +Konditionaloperator +Ahead-of-time +bytecodeartige +bytecodeartigen +spielinternen +Typsyntheseprozess +Konditionalblöcken +bibliotheksinterne diff --git a/ltex-ls/.config/ltex-ls/disable.txt b/ltex-ls/.config/ltex-ls/disable.txt new file mode 100644 index 0000000..9b15b0c --- /dev/null +++ b/ltex-ls/.config/ltex-ls/disable.txt @@ -0,0 +1,4 @@ +GERMAN_WORD_REPEAT_RULE +DE_SENTENCE_WHITESPACE +EINHEIT_LEERZEICHEN +COMMA_PARENTHESIS_WHITESPACE diff --git a/ltex-ls/.config/ltex-ls/false.txt b/ltex-ls/.config/ltex-ls/false.txt new file mode 100644 index 0000000..7eb0d33 --- /dev/null +++ b/ltex-ls/.config/ltex-ls/false.txt @@ -0,0 +1,43 @@ +{"rule":"GERMAN_WORD_REPEAT_RULE","sentence":"^\\QIn Spielen wie Human Resource Machine \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q und Tuk Tuk \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q nutzt der Spieler eine klassische Skriptsprache, in welcher meist Akteure innerhalb der Spielwelt direkt über entsprechende Instruktionen kontrolliert werden.\\E$"} +{"rule":"COMMA_PARENTHESIS_WHITESPACE","sentence":"^\\QWas ist .\\E$"} +{"rule":"DOPPELTE_SATZZEICHEN","sentence":"^\\QWarum F?.\\E$"} +{"rule":"COMMA_PARENTHESIS_WHITESPACE","sentence":"^\\QDie Gameengine Unity baut auf dem .NET-Ökosystem auf.\\E$"} +{"rule":"PRAEP_DAT","sentence":"^\\QDa auch F-Bibliotheken problemlos in C-Projekte eingebunden werden können, wurde für die Implementierung von die Programmiersprache F genutzt.\\E$"} +{"rule":"EMPFOHLENE_GETRENNTSCHREIBUNG","sentence":"^\\QIn Spielen mit nichtlinearen Programmstrukturen, wie while True: learn() werden hier die konkreten Werte oft als das Netzwerk durchlaufende Objekte dargestellt.\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QIn dieser Struktur ist auch zu sehen, wie die Programmdarstellung der Bibliothek flexibel erweiterbar ist: Die Variante AstStmt.\\E$"} +{"rule":"DE_SENTENCE_WHITESPACE","sentence":"^\\QExternal enthält, ähnlichw\\E$"} +{"rule":"DE_SENTENCE_WHITESPACE","sentence":"^\\QStmtSideEffect kann eine beliebige Aktion darstellen, welche vom Bibliotheksnutzer als Funktion übergeben werden kann.\\E$"} +{"rule":"DE_SENTENCE_WHITESPACE","sentence":"^\\QExternal enthält hier wieder eine Funktion, welche einen beliebigen primitiven Wert zurückgibt.\\E$"} +{"rule":"PUNCTUATION_PARAGRAPH_END","sentence":"^\\QQuellcode Bytecode\\E$"} +{"rule":"F_ANSTATT_PH","sentence":"^\\QIn while True: learn() wird die Programmstruktur als Graphstruktur visualisiert.\\E$"} +{"rule":"EMPFOHLENE_GETRENNTSCHREIBUNG","sentence":"^\\QSpiele welche sich auf die Gestaltung von Datenflussstrukturen fokussieren, nutzen hierfür meist eine nichtlineare Darstellung.\\E$"} +{"rule":"COMMA_PARENTHESIS_WHITESPACE","sentence":"^\\QDie Gameengines Unity und Godot bauen auf dem .NET-Ökosystem auf.\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QItch.io Zeug\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QErstprüfer: Prof. Dr. Tim Reichert Zweitprüfer: Ulrich Straus\\E$"} +{"rule":"EINHEIT_LEERZEICHEN","sentence":"^\\QLaut Nutzungsdaten von itch.io, einer der beliebtesten Spielportale für Indiespielentwickler, verwenden 77% aller Spiele, welche die genutzte Engine angeben, Unity.\\E$"} +{"rule":"COMMA_PARENTHESIS_WHITESPACE","sentence":"^\\QUm also ein möglichst breites Spektrum an Spielentwicklern ansprechen zu können, but \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q daher auf dem .NET-Ökosystem auf.\\E$"} +{"rule":"COMMA_PARENTHESIS_WHITESPACE","sentence":"^\\QUm also ein möglichst breites Spektrum an Spielentwicklern ansprechen zu können, baut \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q daher auf dem .NET-Ökosystem auf.\\E$"} +{"rule":"EMPFOHLENE_GETRENNTSCHREIBUNG","sentence":"^\\QSpiele mit nichtlinearen Programmiersprachen.\\E$"} +{"rule":"PUNCTUATION_PARAGRAPH_END","sentence":"^\\QSolche Graphstrukturen eignen sich gut, um komplexe mathematische oder logische Berechnungen darzustellen und werden außerhalb von Programmierspielen beispielsweise in visuellen Datenflussprogrammiersprachen wie Pure Data\\E$"} +{"rule":"F_ANSTATT_PH","sentence":"^\\QSolche Graphstrukturen eignen sich gut, um komplexe mathematische oder logische Berechnungen darzustellen und werden außerhalb von Programmierspielen beispielsweise in visuellen Datenflussprogrammiersprachen wie der vor allem für Klangsynthese und Audiosignalverarbeitung eingesetzten Sprache Pure Data oder der Simulationssoftware Simulink eingesetzt.\\E$"} +{"rule":"DE_CASE","sentence":"^\\QDas hier erwartete Interface \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q definiert zwei Funktionen, die ein solcher Ausdruck implementieren muss: [\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q] Generiert eine Textdarstellung des Ausdrucks.\\E$"} +{"rule":"PUNCTUATION_PARAGRAPH_END","sentence":"^\\Q\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q unterscheidet zwischen zwei Oberkategorien von Programmdarstellungen: lineare Darstellungen rekursive Baumdarstellungen\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QAbstract Syntax Trees.\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QEs gibt zwei übliche Möglichkeiten, Bytecodes anzuwenden: Als Zwischendarstellung (Intermediate Representation, \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q)\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QEin weiteres Beispiel für die Verwendung als Zwischendarstellung ist der in \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q Compiler Js_of_ocaml, welcher OCaml-Bytecode in Javascript übersetzt\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QBeim sogenannten constant folding werden beispielsweise Teilausdrücke identifiziert, die keine Nebeneffekte enthalten und nicht auf unbekannte Variablen referenzieren.\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QBeim sogenannten constant folding werden beispielsweise Teilausdrücke identifiziert, die keine Nebeneffekte enthalten und jedes Mal denselben Wert zurückgeben werden \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q.\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QEs gibt zwei übliche Möglichkeiten, Bytecodes anzuwenden: als intermediate Representation (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q) oder zur Ausführung in einem Bytecodeinterpreter.\\E$"} +{"rule":"F_ANSTATT_PH","sentence":"^\\QIn \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q wird die Programmstruktur als Graphstruktur visualisiert.\\E$"} +{"rule":"F_ANSTATT_PH","sentence":"^\\QAusdrücke werden in \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q in einer graphbasierten Darstellung bearbeitet, \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q zeigt den Ausdruckseditor in \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q.\\E$"} +{"rule":"F_ANSTATT_PH","sentence":"^\\QAusdrücke werden in \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q in einer graphbasierten Darstellung bearbeitet, welche sowohl die Struktur als auch die Evaluation des Ausdrucks visuell darstellt.\\E$"} +{"rule":"F_ANSTATT_PH","sentence":"^\\QIn \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q wird die Programmstruktur als Graphstruktur dargestellt.\\E$"} +{"rule":"DE_CASE","sentence":"^\\QAls Programmierspiele bezeichnet man Spiele, in welchen die Spielenden Programme entwickeln müssen, um im Spiel voranzukommen.\\E$"} +{"rule":"F_ANSTATT_PH","sentence":"^\\QSolche Graphstrukturen eignen sich gut, um komplexe mathematische oder logische Berechnungen darzustellen und werden außerhalb von Programmierspielen beispielsweise in visuellen Datenflussprogrammiersprachen wie der vor allem für Klangsynthese und Audiosignalverarbeitung eingesetzten Sprache \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q oder der Simulationssoftware Simulink eingesetzt.\\E$"} +{"rule":"F_ANSTATT_PH","sentence":"^\\QSolche Graphstrukturen eignen sich gut, um komplexe mathematische oder logische Berechnungen darzustellen und werden außerhalb von Programmierspielen beispielsweise in visuellen Datenflussprogrammiersprachen wie der vor allem für Klangsynthese und Audiosignalverarbeitung eingesetzten Sprache \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q oder der Simulationssoftware \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q eingesetzt.\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QDa keine konkrete Syntax vorgegeben werden soll, setzt \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q hier auf eine strukturierte Darstellung in Form eines Abstract Syntax Trees \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q.\\E$"} +{"rule":"PUNCTUATION_PARAGRAPH_END","sentence":"^\\Q\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q bietet hier die folgenden binären Operationen: [arithmetische Operatoren] \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q), \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q), \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q), \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q), \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (%\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q) [numerische Vergleichsoperatoren] \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q), \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q) [generische Vergleichsoperatoren] \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q), \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q) [logische Operatoren] \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q), \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q) [Zeichenkettenkonkatenation] \\E(?:Dummy|Ina|Jimmy-)[0-9]+$"} +{"rule":"F_ANSTATT_PH","sentence":"^\\QAusdrücke werden in \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q in einer graphbasierten Darstellung bearbeitet, welche sowohl die Struktur als auch die Auswertung des Ausdrucks visuell darstellt.\\E$"} +{"rule":"COMMA_BEHIND_RELATIVE_CLAUSE","sentence":"^\\QDer größte Vorteil der Übersetzung in Maschinencode ist die Laufzeiteffizienz und Hardwarenähe, die dadurch erreicht werden kann \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q.\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QDa keine konkrete Syntax vorgegeben werden soll, setzt \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q hier auf eine strukturierte Darstellung in Form eines Abstract Syntax Trees (\\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q).\\E$"} +{"rule":"GERMAN_SPELLER_RULE","sentence":"^\\QDer Aufbau der textbasierten Programmierspiele von Zachtronics ist ähnlich: laut Firmengründer \\E(?:Dummy|Ina|Jimmy-)[0-9]+\\Q setzen diese auf eine weitgehend klassische Parser- und Compilerstruktur, welche den Programmcode in eine separate Laufzeitsimulation übergibt, die den Code schrittweise ausführt.\\E$"} diff --git a/ltex-ls/.config/ltex-ls/hiddenFalsePositives.txt b/ltex-ls/.config/ltex-ls/hiddenFalsePositives.txt new file mode 100644 index 0000000..eb6333b --- /dev/null +++ b/ltex-ls/.config/ltex-ls/hiddenFalsePositives.txt @@ -0,0 +1 @@ +Tuk Tuk