From 8a5e2639d349402ad66d838ed45a124b53c35b7e Mon Sep 17 00:00:00 2001 From: Dania Rifki Date: Sat, 7 Feb 2026 18:40:56 +0800 Subject: Format docs with prettier Also adjust custom.css a little --- doc/docs/de/doc/advanced/do.md | 3 + doc/docs/de/doc/advanced/line-decorators.md | 3 + doc/docs/de/doc/advanced/macro.md | 6 + doc/docs/de/doc/advanced/module.md | 8 + doc/docs/de/doc/advanced/try.md | 2 + doc/docs/de/doc/assignment/assignment.md | 5 + .../de/doc/assignment/destructuring-assignment.md | 11 + doc/docs/de/doc/assignment/if-assignment.md | 4 + ...ng-clause-controlling-destructive-assignment.md | 3 + doc/docs/de/doc/assignment/varargs-assignment.md | 1 + doc/docs/de/doc/control-flow/conditionals.md | 7 + doc/docs/de/doc/control-flow/continue.md | 2 + doc/docs/de/doc/control-flow/for-loop.md | 6 + doc/docs/de/doc/control-flow/switch.md | 11 + doc/docs/de/doc/control-flow/while-loop.md | 3 + doc/docs/de/doc/data-structures/comprehensions.md | 16 ++ doc/docs/de/doc/data-structures/table-literals.md | 9 + doc/docs/de/doc/functions/backcalls.md | 4 + doc/docs/de/doc/functions/function-literals.md | 27 +- doc/docs/de/doc/functions/function-stubs.md | 1 + doc/docs/de/doc/getting-started/usage.md | 88 +++--- doc/docs/de/doc/language-basics/attributes.md | 3 + doc/docs/de/doc/language-basics/comment.md | 1 + doc/docs/de/doc/language-basics/literals.md | 5 + doc/docs/de/doc/language-basics/operator.md | 16 +- doc/docs/de/doc/language-basics/whitespace.md | 2 + .../de/doc/objects/object-oriented-programming.md | 22 ++ doc/docs/de/doc/objects/with-statement.md | 6 + doc/docs/de/doc/reference/the-yuescript-library.md | 319 ++++++++++++--------- doc/docs/de/index.md | 1 + doc/docs/de/try/index.md | 1 + 31 files changed, 410 insertions(+), 186 deletions(-) (limited to 'doc/docs/de') diff --git a/doc/docs/de/doc/advanced/do.md b/doc/docs/de/doc/advanced/do.md index 6f81f9d..265a5ba 100644 --- a/doc/docs/de/doc/advanced/do.md +++ b/doc/docs/de/doc/advanced/do.md @@ -8,6 +8,7 @@ do print var print var -- nil hier ``` + ```yue @@ -31,6 +32,7 @@ counter = do print counter! print counter! ``` + ```yue @@ -53,6 +55,7 @@ tbl = { 1234 } ``` + ```yue diff --git a/doc/docs/de/doc/advanced/line-decorators.md b/doc/docs/de/doc/advanced/line-decorators.md index dd26925..dbeaeb5 100644 --- a/doc/docs/de/doc/advanced/line-decorators.md +++ b/doc/docs/de/doc/advanced/line-decorators.md @@ -5,6 +5,7 @@ Zur Vereinfachung können `for`-Schleifen und `if`-Anweisungen auf einzelne Anwe ```yuescript print "Hallo Welt" if name == "Rob" ``` + ```yue @@ -18,6 +19,7 @@ Und mit einfachen Schleifen: ```yuescript print "Element: ", item for item in *items ``` + ```yue @@ -33,6 +35,7 @@ game\update! while game\isRunning! reader\parse_line! until reader\eof! ``` + ```yue diff --git a/doc/docs/de/doc/advanced/macro.md b/doc/docs/de/doc/advanced/macro.md index a3e155a..a030aea 100644 --- a/doc/docs/de/doc/advanced/macro.md +++ b/doc/docs/de/doc/advanced/macro.md @@ -32,6 +32,7 @@ macro and = (...) -> "#{ table.concat {...}, ' and ' }" if $and f1!, f2!, f3! print "OK" ``` + ```yue @@ -94,6 +95,7 @@ if cond then end ]==] ``` + ```yue @@ -142,6 +144,7 @@ import "utils" as { } [1, 2, 3] |> $map(_ * 2) |> $filter(_ > 4) |> $each print _ ``` + ```yue @@ -172,6 +175,7 @@ Es gibt einige eingebaute Makros, aber du kannst sie überschreiben, indem du Ma print $FILE -- String des aktuellen Modulnamens print $LINE -- gibt 2 aus ``` + ```yue @@ -238,6 +242,7 @@ macro printNumAndStr = (num `Num, str `String) -> | $printNumAndStr 123, "hallo" ``` + ```yue @@ -262,6 +267,7 @@ macro printNumAndStr = (num, str) -> $printNumAndStr 123, "hallo" ``` + ```yue diff --git a/doc/docs/de/doc/advanced/module.md b/doc/docs/de/doc/advanced/module.md index bdc5d86..f20deec 100644 --- a/doc/docs/de/doc/advanced/module.md +++ b/doc/docs/de/doc/advanced/module.md @@ -28,6 +28,7 @@ do import "lpeg" as :C, :Ct, :Cmt import "export" as {one, two, Something:{umm:{ch}}} ``` + ```yue @@ -67,6 +68,7 @@ do import table.concat print concat ["a", tostring 1] ``` + ```yue @@ -98,6 +100,7 @@ do print FLAG FLAG = 123 ``` + ```yue @@ -140,6 +143,7 @@ export y = -> export class Something umm: "cool" ``` + ```yue @@ -166,6 +170,7 @@ Benannter Export mit Destructuring. export :loadstring, to_lua: tolua = yue export {itemA: {:fieldA = 'default'}} = tb ``` + ```yue @@ -182,6 +187,7 @@ export.itemA = tb export. = items export["a-b-c"] = 123 ``` + ```yue @@ -208,6 +214,7 @@ else export with tmp j = 2000 ``` + ```yue @@ -234,6 +241,7 @@ export default -> print "hallo" 123 ``` + ```yue diff --git a/doc/docs/de/doc/advanced/try.md b/doc/docs/de/doc/advanced/try.md index 4550e92..2505967 100644 --- a/doc/docs/de/doc/advanced/try.md +++ b/doc/docs/de/doc/advanced/try.md @@ -29,6 +29,7 @@ catch err print yue.traceback err print result ``` + ```yue @@ -82,6 +83,7 @@ catch e print e e ``` + ```yue diff --git a/doc/docs/de/doc/assignment/assignment.md b/doc/docs/de/doc/assignment/assignment.md index b74501f..ed56e46 100644 --- a/doc/docs/de/doc/assignment/assignment.md +++ b/doc/docs/de/doc/assignment/assignment.md @@ -7,6 +7,7 @@ hello = "world" a, b, c = 1, 2, 3 hello = 123 -- nutzt die bestehende Variable ``` + ```yue @@ -31,6 +32,7 @@ x %= 10 s ..= "world" -- legt eine neue lokale Variable an, wenn sie nicht existiert arg or= "default value" ``` + ```yue @@ -54,6 +56,7 @@ Mit verketteten Zuweisungen kannst du mehrere Variablen auf denselben Wert setze a = b = c = d = e = 0 x = y = z = f! ``` + ```yue @@ -81,6 +84,7 @@ do a = 1 B = 2 ``` + ```yue @@ -120,6 +124,7 @@ do B = 2 local Temp = "a local value" ``` + ```yue diff --git a/doc/docs/de/doc/assignment/destructuring-assignment.md b/doc/docs/de/doc/assignment/destructuring-assignment.md index 0a08e22..5582468 100644 --- a/doc/docs/de/doc/assignment/destructuring-assignment.md +++ b/doc/docs/de/doc/assignment/destructuring-assignment.md @@ -12,6 +12,7 @@ thing = [1, 2] [a, b] = thing print a, b ``` + ```yue @@ -37,6 +38,7 @@ print hello, the_day :day = obj -- einfache Destructuring-Zuweisung ohne Klammern ist ok ``` + ```yue @@ -68,6 +70,7 @@ obj2 = { {numbers: [first, second], properties: {color: color}} = obj2 print first, second, color ``` + ```yue @@ -95,6 +98,7 @@ Wenn die Destructuring-Anweisung kompliziert ist, kannst du sie gerne auf mehrer } } = obj2 ``` + ```yue @@ -113,6 +117,7 @@ Es ist üblich, Werte aus einer Tabelle zu extrahieren und ihnen lokale Variable ```yuescript {:concat, :insert} = table ``` + ```yue @@ -126,6 +131,7 @@ Das ist effektiv dasselbe wie `import`, aber du kannst Felder umbenennen, indem ```yuescript {:mix, :max, random: rand} = math ``` + ```yue @@ -139,6 +145,7 @@ Du kannst Standardwerte beim Destructuring angeben, z. B.: ```yuescript {:name = "namenlos", :job = "arbeitlos"} = person ``` + ```yue @@ -152,6 +159,7 @@ Du kannst `_` als Platzhalter verwenden, wenn du eine Listen-Destructuring-Zuwei ```yuescript [_, two, _, four] = items ``` + ```yue @@ -171,6 +179,7 @@ print first -- gibt aus: erster print bulk -- gibt aus: {"zweiter", "dritter", "vierter"} print last -- gibt aus: letzter ``` + ```yue @@ -195,6 +204,7 @@ Der Spread-Operator kann an unterschiedlichen Positionen verwendet werden, um un -- Alles außer den mittleren Elementen erfassen [first, ..._, last] = orders ``` + ```yue @@ -223,6 +233,7 @@ tuples = [ for [left, right] in *tuples print left, right ``` + ```yue diff --git a/doc/docs/de/doc/assignment/if-assignment.md b/doc/docs/de/doc/assignment/if-assignment.md index 884a8d2..21bc8be 100644 --- a/doc/docs/de/doc/assignment/if-assignment.md +++ b/doc/docs/de/doc/assignment/if-assignment.md @@ -6,6 +6,7 @@ if user := database.find_user "moon" print user.name ``` + ```yue @@ -23,6 +24,7 @@ elseif world := os.getenv "world" else print "nichts :(" ``` + ```yue @@ -43,6 +45,7 @@ if success, result := pcall -> "Ergebnis ohne Probleme erhalten" print result -- Variable result ist im Scope print "OK" ``` + ```yue @@ -62,6 +65,7 @@ while byte := stream\read_one! -- mit dem Byte etwas anfangen print byte ``` + ```yue diff --git a/doc/docs/de/doc/assignment/the-using-clause-controlling-destructive-assignment.md b/doc/docs/de/doc/assignment/the-using-clause-controlling-destructive-assignment.md index 63bf016..ce8a45c 100644 --- a/doc/docs/de/doc/assignment/the-using-clause-controlling-destructive-assignment.md +++ b/doc/docs/de/doc/assignment/the-using-clause-controlling-destructive-assignment.md @@ -17,6 +17,7 @@ my_func! print i -- wird 0 ausgeben ``` + ```yue @@ -52,6 +53,7 @@ my_func = (using nil) -> my_func! print i -- gibt 100 aus, i bleibt unverändert ``` + ```yue @@ -80,6 +82,7 @@ my_func = (add using k, i) -> my_func(22) print i, k -- diese wurden aktualisiert ``` + ```yue diff --git a/doc/docs/de/doc/assignment/varargs-assignment.md b/doc/docs/de/doc/assignment/varargs-assignment.md index b211a8a..96927fa 100644 --- a/doc/docs/de/doc/assignment/varargs-assignment.md +++ b/doc/docs/de/doc/assignment/varargs-assignment.md @@ -10,6 +10,7 @@ count = select '#', ... first = select 1, ... print ok, count, first ``` + ```yue diff --git a/doc/docs/de/doc/control-flow/conditionals.md b/doc/docs/de/doc/control-flow/conditionals.md index d20e6e3..56663d1 100644 --- a/doc/docs/de/doc/control-flow/conditionals.md +++ b/doc/docs/de/doc/control-flow/conditionals.md @@ -7,6 +7,7 @@ if have_coins else print "Keine Münzen" ``` + ```yue @@ -25,6 +26,7 @@ Eine Kurzsyntax für einzelne Anweisungen kann ebenfalls verwendet werden: have_coins = false if have_coins then print "Münzen erhalten" else print "Keine Münzen" ``` + ```yue @@ -40,6 +42,7 @@ Da `if`-Anweisungen als Ausdrücke verwendet werden können, kann man das auch s have_coins = false print if have_coins then "Münzen erhalten" else "Keine Münzen" ``` + ```yue @@ -65,6 +68,7 @@ else print message -- gibt aus: Ich bin sehr groß ``` + ```yue @@ -90,6 +94,7 @@ Das Gegenteil von `if` ist `unless`: unless os.date("%A") == "Monday" print "Es ist nicht Montag!" ``` + ```yue @@ -102,6 +107,7 @@ unless os.date("%A") == "Monday" ```yuescript print "You're lucky!" unless math.random! > 0.1 ``` + ```yue @@ -123,6 +129,7 @@ if a in [1, 3, 5, 7] if a in list print "Prüfen, ob `a` in einer Liste ist" ``` + ```yue diff --git a/doc/docs/de/doc/control-flow/continue.md b/doc/docs/de/doc/control-flow/continue.md index a6210d4..4b5ccdc 100644 --- a/doc/docs/de/doc/control-flow/continue.md +++ b/doc/docs/de/doc/control-flow/continue.md @@ -9,6 +9,7 @@ while i < 10 continue if i % 2 == 0 print i ``` + ```yue @@ -29,6 +30,7 @@ odds = for x in *my_numbers continue if x % 2 == 1 x ``` + ```yue diff --git a/doc/docs/de/doc/control-flow/for-loop.md b/doc/docs/de/doc/control-flow/for-loop.md index 3bf63d4..827d983 100644 --- a/doc/docs/de/doc/control-flow/for-loop.md +++ b/doc/docs/de/doc/control-flow/for-loop.md @@ -12,6 +12,7 @@ for k = 1, 15, 2 -- ein optionaler Schritt for key, value in pairs object print key, value ``` + ```yue @@ -33,6 +34,7 @@ Die Slicing- und **\***-Operatoren können verwendet werden, genau wie bei Compr for item in *items[2, 4] print item ``` + ```yue @@ -49,6 +51,7 @@ for item in *items do print item for j = 1, 10, 3 do print j ``` + ```yue @@ -70,6 +73,7 @@ doubled_evens = for i = 1, 20 else i ``` + ```yue @@ -90,6 +94,7 @@ Beispiel: die erste Zahl größer als 10 finden: first_large = for n in *numbers break n if n > 10 ``` + ```yue @@ -112,6 +117,7 @@ func_b = -> return for i = 1, 10 do i print func_a! -- gibt nil aus print func_b! -- gibt Tabellenobjekt aus ``` + ```yue diff --git a/doc/docs/de/doc/control-flow/switch.md b/doc/docs/de/doc/control-flow/switch.md index 81e08bd..5e5107b 100644 --- a/doc/docs/de/doc/control-flow/switch.md +++ b/doc/docs/de/doc/control-flow/switch.md @@ -11,6 +11,7 @@ switch name := "Dan" else print "Ich kenne dich nicht mit dem Namen #{name}" ``` + ```yue @@ -39,6 +40,7 @@ next_number = switch b else error "so hoch kann ich nicht zählen!" ``` + ```yue @@ -62,6 +64,7 @@ msg = switch math.random(1, 5) when 2 then "Du hast fast Glück" else "nicht so viel Glück" ``` + ```yue @@ -87,6 +90,7 @@ switch math.random(1, 5) when 1 else print "nicht so viel Glück" ``` + ```yue @@ -124,6 +128,7 @@ for item in *items when :width, :height print "Größe #{width}, #{height}" ``` + ```yue @@ -154,6 +159,7 @@ switch item when {pos: {:x = 50, :y = 200}} print "Vec2 #{x}, #{y}" -- Tabellen-Destrukturierung greift trotzdem ``` + ```yue @@ -181,6 +187,7 @@ switch tb when [1, 2, b = 3] -- b hat einen Standardwert print "1, 2, #{b}" ``` + ```yue @@ -206,6 +213,7 @@ switch tb else print "ungültig" ``` + ```yue @@ -231,6 +239,7 @@ switch tb else print "ungültig" ``` + ```yue @@ -257,6 +266,7 @@ switch tb ] print "getroffen", fourth ``` + ```yue @@ -282,6 +292,7 @@ switch segments print "Ressource:", resource -- gibt aus: "logs" print "Aktion:", action -- gibt aus: "view" ``` + ```yue diff --git a/doc/docs/de/doc/control-flow/while-loop.md b/doc/docs/de/doc/control-flow/while-loop.md index a875bf9..6d9f089 100644 --- a/doc/docs/de/doc/control-flow/while-loop.md +++ b/doc/docs/de/doc/control-flow/while-loop.md @@ -10,6 +10,7 @@ while i > 0 while running == true do my_function! ``` + ```yue @@ -31,6 +32,7 @@ until i == 0 until running == false do my_function! ``` + ```yue @@ -56,6 +58,7 @@ repeat i -= 1 until i == 0 ``` + ```yue diff --git a/doc/docs/de/doc/data-structures/comprehensions.md b/doc/docs/de/doc/data-structures/comprehensions.md index 7e00c57..4d74e06 100644 --- a/doc/docs/de/doc/data-structures/comprehensions.md +++ b/doc/docs/de/doc/data-structures/comprehensions.md @@ -10,6 +10,7 @@ Das folgende Beispiel erstellt eine Kopie der `items`-Tabelle, aber mit verdoppe items = [ 1, 2, 3, 4 ] doubled = [item * 2 for i, item in ipairs items] ``` + ```yue @@ -24,6 +25,7 @@ Die Elemente in der neuen Tabelle können mit einer `when`-Klausel eingeschränk ```yuescript slice = [item for i, item in ipairs items when i > 1 and i < 3] ``` + ```yue @@ -37,6 +39,7 @@ Da es üblich ist, über die Werte einer numerisch indizierten Tabelle zu iterie ```yuescript doubled = [item * 2 for item in *items] ``` + ```yue @@ -55,6 +58,7 @@ data = flat = [...v for k,v in pairs data] -- flat ist jetzt [1, 2, 3, 4, 5, 6] ``` + ```yue @@ -79,6 +83,7 @@ y_coords = [9, 2, 3] points = [ [x, y] for x in *x_coords \ for y in *y_coords] ``` + ```yue @@ -96,6 +101,7 @@ Numerische `for`-Schleifen können ebenfalls in Comprehensions verwendet werden: ```yuescript evens = [i for i = 1, 100 when i % 2 == 0] ``` + ```yue @@ -119,6 +125,7 @@ thing = { thing_copy = {k, v for k, v in pairs thing} ``` + ```yue @@ -136,6 +143,7 @@ thing_copy = {k, v for k, v in pairs thing} ```yuescript no_color = {k, v for k, v in pairs thing when k != "color"} ``` + ```yue @@ -150,6 +158,7 @@ Der **\***-Operator wird ebenfalls unterstützt. Hier erstellen wir eine Nachsch numbers = [1, 2, 3, 4] sqrts = {i, math.sqrt i for i in *numbers} ``` + ```yue @@ -167,6 +176,7 @@ In diesem Beispiel konvertieren wir ein Array von Paaren in eine Tabelle, wobei tuples = [ ["hallo", "Welt"], ["foo", "bar"]] tbl = {unpack tuple for tuple in *tuples} ``` + ```yue @@ -185,6 +195,7 @@ Hier setzen wir die minimalen und maximalen Grenzen und nehmen alle Elemente mit ```yuescript slice = [item for item in *items[1, 5]] ``` + ```yue @@ -198,6 +209,7 @@ Jedes der Slice-Argumente kann weggelassen werden, um einen sinnvollen Standard ```yuescript slice = [item for item in *items[2,]] ``` + ```yue @@ -211,6 +223,7 @@ Wenn die Mindestgrenze weggelassen wird, ist sie standardmäßig 1. Hier geben w ```yuescript slice = [item for item in *items[,,2]] ``` + ```yue @@ -225,6 +238,7 @@ Sowohl die Mindest- als auch die Maximalgrenze können negativ sein; dann werden -- die letzten 4 Elemente nehmen slice = [item for item in *items[-4,-1]] ``` + ```yue @@ -239,6 +253,7 @@ Die Schrittweite kann ebenfalls negativ sein, wodurch die Elemente in umgekehrte ```yuescript reverse_slice = [item for item in *items[-1,1,-1]] ``` + ```yue @@ -258,6 +273,7 @@ sub_list = items[2, 4] -- die letzten 4 Elemente nehmen last_four_items = items[-4, -1] ``` + ```yue diff --git a/doc/docs/de/doc/data-structures/table-literals.md b/doc/docs/de/doc/data-structures/table-literals.md index 46181d7..4b127d8 100644 --- a/doc/docs/de/doc/data-structures/table-literals.md +++ b/doc/docs/de/doc/data-structures/table-literals.md @@ -5,6 +5,7 @@ Wie in Lua werden Tabellen mit geschweiften Klammern definiert. ```yuescript some_values = [1, 2, 3, 4] ``` + ```yue @@ -22,6 +23,7 @@ some_values = { ["Lieblingsessen"]: "Reis" } ``` + ```yue @@ -42,6 +44,7 @@ profile = shoe_size: 13, favorite_foods: ["Eis", "Donuts"] ``` + ```yue @@ -63,6 +66,7 @@ values = { occupation: "Verbrechensbekämpfung" } ``` + ```yue @@ -83,6 +87,7 @@ my_function dance: "Tango", partner: "keiner" y = type: "Hund", legs: 4, tails: 1 ``` + ```yue @@ -101,6 +106,7 @@ tbl = { end: "Hunger" } ``` + ```yue @@ -121,6 +127,7 @@ person = { :hair, :height, shoe_size: 40 } print_table :hair, :height ``` + ```yue @@ -141,6 +148,7 @@ t = { "Hallo Welt": true } ``` + ```yue @@ -158,6 +166,7 @@ Lua-Tabellen haben einen Array-Teil und einen Hash-Teil, aber manchmal möchte m some_values = [1, 2, 3, 4] list_with_one_element = [1, ] ``` + ```yue diff --git a/doc/docs/de/doc/functions/backcalls.md b/doc/docs/de/doc/functions/backcalls.md index dbac86b..08b012d 100644 --- a/doc/docs/de/doc/functions/backcalls.md +++ b/doc/docs/de/doc/functions/backcalls.md @@ -6,6 +6,7 @@ Backcalls werden verwendet, um Callbacks zu entkoppeln (unnesting). Sie werden m x <- f print "hallo" .. x ``` + ```yue @@ -21,6 +22,7 @@ Fat-Arrow-Funktionen sind ebenfalls verfügbar. <= f print @value ``` + ```yue @@ -36,6 +38,7 @@ Du kannst einen Platzhalter angeben, an welcher Stelle die Backcall-Funktion als (x) <- map _, [1, 2, 3] x * 2 ``` + ```yue @@ -55,6 +58,7 @@ result, msg = do check info print result, msg ``` + ```yue diff --git a/doc/docs/de/doc/functions/function-literals.md b/doc/docs/de/doc/functions/function-literals.md index d3bfb11..1c9b00f 100644 --- a/doc/docs/de/doc/functions/function-literals.md +++ b/doc/docs/de/doc/functions/function-literals.md @@ -6,6 +6,7 @@ Alle Funktionen werden mit einem Funktionsausdruck erstellt. Eine einfache Funkt my_function = -> my_function() -- leere Funktion aufrufen ``` + ```yue @@ -24,6 +25,7 @@ func_b = -> value = 100 print "Der Wert:", value ``` + ```yue @@ -42,6 +44,7 @@ Wenn eine Funktion keine Argumente hat, kann sie mit dem `!`-Operator statt leer func_a! func_b() ``` + ```yue @@ -56,6 +59,7 @@ Funktionen mit Argumenten werden erstellt, indem der Pfeil von einer Argumentlis ```yuescript sum = (x, y) -> print "Summe", x + y ``` + ```yue @@ -72,6 +76,7 @@ print sum 10, 20 a b c "a", "b", "c" ``` + ```yue @@ -88,6 +93,7 @@ Um Mehrdeutigkeiten beim Aufruf zu vermeiden, können die Argumente auch in Klam ```yuescript print "x:", sum(10, 20), "y:", sum(30, 40) ``` + ```yue @@ -104,6 +110,7 @@ Funktionen wandeln die letzte Anweisung im Funktionskörper in ein `return` um. sum = (x, y) -> x + y print "Die Summe ist ", sum 10, 20 ``` + ```yue @@ -118,6 +125,7 @@ Wenn du explizit zurückgeben willst, verwende `return`: ```yuescript sum = (x, y) -> return x + y ``` + ```yue @@ -132,6 +140,7 @@ Wie in Lua können Funktionen mehrere Werte zurückgeben. Die letzte Anweisung m mystery = (x, y) -> x + y, x - y a, b = mystery 10, 20 ``` + ```yue @@ -148,6 +157,7 @@ Da es in Lua üblich ist, beim Methodenaufruf ein Objekt als erstes Argument zu ```yuescript func = (num) => @value + num ``` + ```yue @@ -165,6 +175,7 @@ my_function = (name = "etwas", height = 100) -> print "Hallo, ich bin", name print "Meine Größe ist", height ``` + ```yue @@ -181,6 +192,7 @@ Der Ausdruck für den Standardwert wird im Funktionskörper in der Reihenfolge d some_args = (x = 100, y = x + 1000) -> print x + y ``` + ```yue @@ -202,6 +214,7 @@ b = x-10 c = x -y d = x- z ``` + ```yue @@ -223,6 +236,7 @@ Steht ein Leerzeichen zwischen Variable und String-Literal, verhält sich der Au x = func"hallo" + 100 y = func "hallo" + 100 ``` + ```yue @@ -247,6 +261,7 @@ cool_func 1, 2, 5, 6, 7, 8 ``` + ```yue @@ -269,6 +284,7 @@ my_func 5, 6, 7, 9, 1, 2, 5, 4 ``` + ```yue @@ -289,6 +305,7 @@ x = [ 8, 9, 10 ] ``` + ```yue @@ -309,6 +326,7 @@ y = [ my_func 1, 2, 3, 5, 6, 7 ] ``` + ```yue @@ -335,6 +353,7 @@ if func 1, 2, 3, print "hallo" print "Ich bin innerhalb der if-Bedingung" ``` + ```yue @@ -357,8 +376,8 @@ if func 1, 2, 3, YueScript unterstützt jetzt Destructuring von Funktionsparametern, wenn das Argument ein Objekt ist. Es gibt zwei Formen von Destructuring-Tabellenliteralen: -* **Geschweifte Klammern/Objektparameter**, die optionale Standardwerte erlauben, wenn Felder fehlen (z. B. `{:a, :b}`, `{a: a1 = 123}`). -* **Unverpackte einfache Tabellensyntax**, die mit einer Sequenz aus Key-Value- oder Shorthand-Bindings beginnt und so lange läuft, bis ein anderer Ausdruck sie beendet (z. B. `:a, b: b1, :c`). Diese Form extrahiert mehrere Felder aus demselben Objekt. +- **Geschweifte Klammern/Objektparameter**, die optionale Standardwerte erlauben, wenn Felder fehlen (z. B. `{:a, :b}`, `{a: a1 = 123}`). +- **Unverpackte einfache Tabellensyntax**, die mit einer Sequenz aus Key-Value- oder Shorthand-Bindings beginnt und so lange läuft, bis ein anderer Ausdruck sie beendet (z. B. `:a, b: b1, :c`). Diese Form extrahiert mehrere Felder aus demselben Objekt. ```yuescript f1 = (:a, :b, :c) -> @@ -372,6 +391,7 @@ f2 = ({a: a1 = 123, :b = 'abc'}, c = {}) -> arg1 = {a: 0} f2 arg1, arg2 ``` + ```yue @@ -401,6 +421,7 @@ findFirstEven = (list): nil -> if sub % 2 == 0 return sub ``` + ```yue @@ -425,6 +446,7 @@ findFirstEven = (list) -> return sub nil ``` + ```yue @@ -466,6 +488,7 @@ process = (...args) -> process 1, nil, 3, nil, 5 ``` + ```yue diff --git a/doc/docs/de/doc/functions/function-stubs.md b/doc/docs/de/doc/functions/function-stubs.md index 66b3ddb..cd4382a 100644 --- a/doc/docs/de/doc/functions/function-stubs.md +++ b/doc/docs/de/doc/functions/function-stubs.md @@ -24,6 +24,7 @@ run_callback my_object.write -- bindet das Objekt in eine neue Funktion ein run_callback my_object\write ``` + ```yue diff --git a/doc/docs/de/doc/getting-started/usage.md b/doc/docs/de/doc/getting-started/usage.md index f3c9333..2c10406 100644 --- a/doc/docs/de/doc/getting-started/usage.md +++ b/doc/docs/de/doc/getting-started/usage.md @@ -4,49 +4,51 @@ YueScript-Modul in Lua verwenden: -* **Fall 1** - - "your_yuescript_entry.yue" in Lua require'n. - ```Lua - require("yue")("your_yuescript_entry") - ``` - Dieser Code funktioniert weiterhin, wenn du "your_yuescript_entry.yue" im gleichen Pfad zu "your_yuescript_entry.lua" kompilierst. In den restlichen YueScript-Dateien verwendest du einfach normales **require** oder **import**. Die Zeilennummern in Fehlermeldungen werden korrekt behandelt. - -* **Fall 2** - - YueScript-Modul require'n und das Fehlermapping manuell umschreiben. - - ```lua - local yue = require("yue") - yue.insert_loader() - local success, result = xpcall(function() - return require("yuescript_module_name") - end, function(err) - return yue.traceback(err) - end) - ``` - -* **Fall 3** - - Die YueScript-Compilerfunktion in Lua verwenden. - - ```lua - local yue = require("yue") - local codes, err, globals = yue.to_lua([[ - f = -> - print "Hallo Welt" - f! - ]],{ - implicit_return_root = true, - reserve_line_number = true, - lint_global = true, - space_over_tab = false, - options = { - target = "5.4", - path = "/script" - } - }) - ``` +- **Fall 1** + + "your_yuescript_entry.yue" in Lua require'n. + + ```Lua + require("yue")("your_yuescript_entry") + ``` + + Dieser Code funktioniert weiterhin, wenn du "your_yuescript_entry.yue" im gleichen Pfad zu "your_yuescript_entry.lua" kompilierst. In den restlichen YueScript-Dateien verwendest du einfach normales **require** oder **import**. Die Zeilennummern in Fehlermeldungen werden korrekt behandelt. + +- **Fall 2** + + YueScript-Modul require'n und das Fehlermapping manuell umschreiben. + + ```lua + local yue = require("yue") + yue.insert_loader() + local success, result = xpcall(function() + return require("yuescript_module_name") + end, function(err) + return yue.traceback(err) + end) + ``` + +- **Fall 3** + + Die YueScript-Compilerfunktion in Lua verwenden. + + ```lua + local yue = require("yue") + local codes, err, globals = yue.to_lua([[ + f = -> + print "Hallo Welt" + f! + ]],{ + implicit_return_root = true, + reserve_line_number = true, + lint_global = true, + space_over_tab = false, + options = { + target = "5.4", + path = "/script" + } + }) + ``` ## YueScript-Tool diff --git a/doc/docs/de/doc/language-basics/attributes.md b/doc/docs/de/doc/language-basics/attributes.md index 0fa3654..8c37d82 100644 --- a/doc/docs/de/doc/language-basics/attributes.md +++ b/doc/docs/de/doc/language-basics/attributes.md @@ -6,6 +6,7 @@ Syntax-Unterstützung für Lua-5.4-Attribute. Du kannst weiterhin die Deklaratio const a = 123 close _ = : -> print "Außerhalb des Gültigkeitsbereichs." ``` + ```yue @@ -21,6 +22,7 @@ Du kannst Destructuring mit als konstant markierten Variablen verwenden. const {:a, :b, c, d} = tb -- a = 1 ``` + ```yue @@ -36,6 +38,7 @@ Du kannst auch eine globale Variable als `const` deklarieren. global const Constant = 123 -- Constant = 1 ``` + ```yue diff --git a/doc/docs/de/doc/language-basics/comment.md b/doc/docs/de/doc/language-basics/comment.md index dec9bb0..0216162 100644 --- a/doc/docs/de/doc/language-basics/comment.md +++ b/doc/docs/de/doc/language-basics/comment.md @@ -12,6 +12,7 @@ Alles okay. func --[[Port]] 3000, --[[IP]] "192.168.1.1" ``` + ```yue diff --git a/doc/docs/de/doc/language-basics/literals.md b/doc/docs/de/doc/language-basics/literals.md index 55a5aaa..23e8582 100644 --- a/doc/docs/de/doc/language-basics/literals.md +++ b/doc/docs/de/doc/language-basics/literals.md @@ -12,6 +12,7 @@ some_string = "Hier ist ein String -- String-Interpolation gibt es nur in doppelt angeführten Strings. print "Ich bin mir zu #{math.random! * 100}% sicher." ``` + ```yue @@ -34,6 +35,7 @@ integer = 1_000_000 hex = 0xEF_BB_BF binary = 0B10011 ``` + ```yue @@ -55,6 +57,7 @@ str = | - item1 - #{expr} ``` + ```yue @@ -78,6 +81,7 @@ fn = -> bar: baz return str ``` + ```yue @@ -99,6 +103,7 @@ str = | path: "C:\Program Files\App" note: 'He said: "#{Hello}!"' ``` + ```yue diff --git a/doc/docs/de/doc/language-basics/operator.md b/doc/docs/de/doc/language-basics/operator.md index a7b8c5c..12143d5 100644 --- a/doc/docs/de/doc/language-basics/operator.md +++ b/doc/docs/de/doc/language-basics/operator.md @@ -1,11 +1,12 @@ # Operatoren -Alle binären und unären Operatoren von Lua sind verfügbar. Zusätzlich ist **!=** ein Alias für **~=**, und entweder **\** oder **::** kann für verkettete Funktionsaufrufe wie `tb\func!` oder `tb::func!` verwendet werden. Außerdem bietet YueScript einige spezielle Operatoren für ausdrucksstärkeren Code. +Alle binären und unären Operatoren von Lua sind verfügbar. Zusätzlich ist **!=** ein Alias für **~=**, und entweder **\*\* oder **::\*\* kann für verkettete Funktionsaufrufe wie `tb\func!` oder `tb::func!` verwendet werden. Außerdem bietet YueScript einige spezielle Operatoren für ausdrucksstärkeren Code. ```yuescript tb\func! if tb ~= nil tb::func! if tb != nil ``` + ```yue @@ -27,6 +28,7 @@ a = 5 print 1 <= a <= 10 -- Ausgabe: true ``` + ```yue @@ -64,6 +66,7 @@ print v(1) > v(2) <= v(3) false ]] ``` + ```yue @@ -101,6 +104,7 @@ Der Operator **[] =** wird verwendet, um Werte an Tabellen anzuhängen. tab = [] tab[] = "Wert" ``` + ```yue @@ -118,6 +122,7 @@ tbB = [4, 5, 6] tbA[] = ...tbB -- tbA ist jetzt [1, 2, 3, 4, 5, 6] ``` + ```yue @@ -149,6 +154,7 @@ a = {1, 2, 3, x: 1} b = {4, 5, y: 1} merge = {...a, ...b} ``` + ```yue @@ -179,6 +185,7 @@ last = data.items[#] second_last = data.items[#-1] data.items[#] = 1 ``` + ```yue @@ -212,6 +219,7 @@ print d.value close _ = : -> print "Außerhalb des Gültigkeitsbereichs" ``` + ```yue @@ -245,6 +253,7 @@ print tb.value tb.<> = __index: {item: "hallo"} print tb.item ``` + ```yue @@ -266,6 +275,7 @@ Destrukturiere Metatable mit Metamethoden-Schlüssel, der von **<>** umschlossen {item, :new, :, : getter} = tb print item, new, close, getter ``` + ```yue @@ -293,6 +303,7 @@ with? io.open "test.txt", "w" \write "hello" \close! ``` + ```yue @@ -329,6 +340,7 @@ readFile "example.txt" |> render |> print ``` + ```yue @@ -357,6 +369,7 @@ func a ?? {} a ??= false ``` + ```yue @@ -414,6 +427,7 @@ tb = tb: { } ``` + ```yue diff --git a/doc/docs/de/doc/language-basics/whitespace.md b/doc/docs/de/doc/language-basics/whitespace.md index 9d5889d..0915692 100644 --- a/doc/docs/de/doc/language-basics/whitespace.md +++ b/doc/docs/de/doc/language-basics/whitespace.md @@ -9,6 +9,7 @@ Eine Anweisung endet normalerweise an einem Zeilenumbruch. Du kannst auch ein Se ```yuescript a = 1; b = 2; print a + b ``` + ```yue @@ -29,6 +30,7 @@ Rx.Observable \map (value) -> value .. '!' \subscribe print ``` + ```yue diff --git a/doc/docs/de/doc/objects/object-oriented-programming.md b/doc/docs/de/doc/objects/object-oriented-programming.md index 1c116a3..706cfda 100644 --- a/doc/docs/de/doc/objects/object-oriented-programming.md +++ b/doc/docs/de/doc/objects/object-oriented-programming.md @@ -15,6 +15,7 @@ class Inventory else @items[name] = 1 ``` + ```yue @@ -46,6 +47,7 @@ inv = Inventory! inv\add_item "T-Shirt" inv\add_item "Hose" ``` + ```yue @@ -77,6 +79,7 @@ b\give_item "Hemd" -- gibt sowohl Hose als auch Hemd aus print item for item in *a.clothes ``` + ```yue @@ -104,6 +107,7 @@ class Person new: => @clothes = [] ``` + ```yue @@ -125,6 +129,7 @@ class BackPack extends Inventory if #@items > size then error "Rucksack ist voll" super name ``` + ```yue @@ -151,6 +156,7 @@ class Shelf -- gibt aus: Shelf wurde von Cupboard geerbt class Cupboard extends Shelf ``` + ```yue @@ -189,6 +195,7 @@ class MyClass extends ParentClass -- super als Wert entspricht der Elternklasse: assert super == ParentClass ``` + ```yue @@ -217,6 +224,7 @@ assert b.__class == BackPack print BackPack.size -- gibt 10 aus ``` + ```yue @@ -247,6 +255,7 @@ Der Name der Klasse, wie sie deklariert wurde, wird im Feld `__name` gespeichert ```yuescript print BackPack.__name -- gibt Backpack aus ``` + ```yue @@ -272,6 +281,7 @@ Things\some_func! -- Klassenvariablen in Instanzen nicht sichtbar assert Things().some_func == nil ``` + ```yue @@ -300,6 +310,7 @@ Counter! print Counter.count -- gibt 2 aus ``` + ```yue @@ -322,6 +333,7 @@ Die Aufrufsemantik von `@@` ist ähnlich wie bei `@`. Wenn du einen `@@`-Namen a ```yuescript @@hello 1,2,3,4 ``` + ```yue @@ -340,6 +352,7 @@ Hier ist eine alternative Möglichkeit, eine Klassenvariable zu erstellen: class Things @class_var = "Hallo Welt" ``` + ```yue @@ -361,6 +374,7 @@ class MoreThings some_method: => log "Hallo Welt: " .. secret ``` + ```yue @@ -384,6 +398,7 @@ Wenn sie alleine verwendet werden, sind sie Aliase für `self` und `self.__class assert @ == self assert @@ == self.__class ``` + ```yue @@ -398,6 +413,7 @@ Zum Beispiel kannst du mit `@@` in einer Instanzmethode schnell eine neue Instan ```yuescript some_instance_method = (...) => @@ ... ``` + ```yue @@ -423,6 +439,7 @@ class Something @@biz = biz @@baz = baz ``` + ```yue @@ -448,6 +465,7 @@ new = (@fieldA, @fieldB) => @ obj = new {}, 123, "abc" print obj ``` + ```yue @@ -467,6 +485,7 @@ x = class Bucket drops: 0 add_drop: => @drops += 1 ``` + ```yue @@ -487,6 +506,7 @@ BigBucket = class extends Bucket assert Bucket.__name == "BigBucket" ``` + ```yue @@ -503,6 +523,7 @@ Du kannst sogar den Körper weglassen und eine leere anonyme Klasse schreiben: ```yuescript x = class ``` + ```yue @@ -532,6 +553,7 @@ y\func! assert y.__class.__parent ~= X -- X ist nicht die Elternklasse von Y ``` + ```yue diff --git a/doc/docs/de/doc/objects/with-statement.md b/doc/docs/de/doc/objects/with-statement.md index 446f837..adeeda6 100644 --- a/doc/docs/de/doc/objects/with-statement.md +++ b/doc/docs/de/doc/objects/with-statement.md @@ -15,6 +15,7 @@ with Person! \save! print .name ``` + ```yue @@ -33,6 +34,7 @@ Das `with`-Statement kann auch als Ausdruck verwendet werden und gibt den Wert z file = with File "Lieblingsessen.txt" \set_encoding "utf8" ``` + ```yue @@ -52,6 +54,7 @@ create_person = (name, relatives) -> me = create_person "Leaf", [dad, mother, sister] ``` + ```yue @@ -74,6 +77,7 @@ with str := "Hallo" print "Original:", str print "Großbuchstaben:", \upper! ``` + ```yue @@ -95,6 +99,7 @@ with tb ["key-name"] = value [] = "abc" -- an "tb" anhängen ``` + ```yue @@ -115,6 +120,7 @@ with tb with? obj print obj.name ``` + ```yue diff --git a/doc/docs/de/doc/reference/the-yuescript-library.md b/doc/docs/de/doc/reference/the-yuescript-library.md index 1838ced..0c371bf 100644 --- a/doc/docs/de/doc/reference/the-yuescript-library.md +++ b/doc/docs/de/doc/reference/the-yuescript-library.md @@ -17,6 +17,7 @@ Die YueScript-Sprachbibliothek. Die YueScript-Version. **Signatur:** + ```lua version: string ``` @@ -30,6 +31,7 @@ version: string Der Dateitrennzeichen-String der aktuellen Plattform. **Signatur:** + ```lua dirsep: string ``` @@ -43,6 +45,7 @@ dirsep: string Der Cache für kompilierten Modulcode. **Signatur:** + ```lua yue_compiled: {string: string} ``` @@ -56,6 +59,7 @@ yue_compiled: {string: string} Die YueScript-Compilerfunktion. Sie kompiliert YueScript-Code zu Lua-Code. **Signatur:** + ```lua to_lua: function(code: string, config?: Config): --[[codes]] string | nil, @@ -65,17 +69,17 @@ to_lua: function(code: string, config?: Config): **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| code | string | Der YueScript-Code. | -| config | Config | [Optional] Die Compiler-Optionen. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | --------------------------------- | +| code | string | Der YueScript-Code. | +| config | Config | [Optional] Die Compiler-Optionen. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| string \| nil | Der kompilierte Lua-Code oder `nil`, falls die Kompilierung fehlgeschlagen ist. | -| string \| nil | Die Fehlermeldung oder `nil`, falls die Kompilierung erfolgreich war. | +| Rückgabetyp | Beschreibung | +| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | +| string \| nil | Der kompilierte Lua-Code oder `nil`, falls die Kompilierung fehlgeschlagen ist. | +| string \| nil | Die Fehlermeldung oder `nil`, falls die Kompilierung erfolgreich war. | | {{string, integer, integer}} \| nil | Die globalen Variablen im Code (mit Name, Zeile und Spalte) oder `nil`, wenn die Compiler-Option `lint_global` false ist. | ### file_exist @@ -87,21 +91,22 @@ to_lua: function(code: string, config?: Config): Prüft, ob eine Quelldatei existiert. Kann überschrieben werden, um das Verhalten anzupassen. **Signatur:** + ```lua file_exist: function(filename: string): boolean ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| filename | string | Der Dateiname. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | -------------- | +| filename | string | Der Dateiname. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| boolean | Ob die Datei existiert. | +| Rückgabetyp | Beschreibung | +| ----------- | ----------------------- | +| boolean | Ob die Datei existiert. | ### read_file @@ -112,21 +117,22 @@ file_exist: function(filename: string): boolean Liest eine Quelldatei. Kann überschrieben werden, um das Verhalten anzupassen. **Signatur:** + ```lua read_file: function(filename: string): string ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| filename | string | Der Dateiname. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | -------------- | +| filename | string | Der Dateiname. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| string | Der Dateiinhalt. | +| Rückgabetyp | Beschreibung | +| ----------- | ---------------- | +| string | Der Dateiinhalt. | ### insert_loader @@ -137,21 +143,22 @@ read_file: function(filename: string): string Fügt den YueScript-Loader in die Package-Loader (Searcher) ein. **Signatur:** + ```lua insert_loader: function(pos?: integer): boolean ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| pos | integer | [Optional] Position, an der der Loader eingefügt wird. Standard ist 3. | +| Parameter | Typ | Beschreibung | +| --------- | ------- | ---------------------------------------------------------------------- | +| pos | integer | [Optional] Position, an der der Loader eingefügt wird. Standard ist 3. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| boolean | Ob der Loader erfolgreich eingefügt wurde. Scheitert, wenn er bereits eingefügt ist. | +| Rückgabetyp | Beschreibung | +| ----------- | ------------------------------------------------------------------------------------ | +| boolean | Ob der Loader erfolgreich eingefügt wurde. Scheitert, wenn er bereits eingefügt ist. | ### remove_loader @@ -162,15 +169,16 @@ insert_loader: function(pos?: integer): boolean Entfernt den YueScript-Loader aus den Package-Loadern (Searchern). **Signatur:** + ```lua remove_loader: function(): boolean ``` **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| boolean | Ob der Loader erfolgreich entfernt wurde. Scheitert, wenn er nicht eingefügt ist. | +| Rückgabetyp | Beschreibung | +| ----------- | --------------------------------------------------------------------------------- | +| boolean | Ob der Loader erfolgreich entfernt wurde. Scheitert, wenn er nicht eingefügt ist. | ### loadstring @@ -181,6 +189,7 @@ remove_loader: function(): boolean Lädt YueScript-Code aus einem String in eine Funktion. **Signatur:** + ```lua loadstring: function(input: string, chunkname: string, env: table, config?: Config): --[[loaded function]] nil | function(...: any): (any...), @@ -189,19 +198,19 @@ loadstring: function(input: string, chunkname: string, env: table, config?: Conf **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| input | string | Der YueScript-Code. | -| chunkname | string | Der Name des Code-Chunks. | -| env | table | Die Environment-Tabelle. | -| config | Config | [Optional] Die Compiler-Optionen. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | --------------------------------- | +| input | string | Der YueScript-Code. | +| chunkname | string | Der Name des Code-Chunks. | +| env | table | Die Environment-Tabelle. | +| config | Config | [Optional] Die Compiler-Optionen. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | +| Rückgabetyp | Beschreibung | +| --------------- | --------------------------------------------------------------------- | | function \| nil | Die geladene Funktion oder `nil`, falls das Laden fehlgeschlagen ist. | -| string \| nil | Die Fehlermeldung oder `nil`, falls das Laden erfolgreich war. | +| string \| nil | Die Fehlermeldung oder `nil`, falls das Laden erfolgreich war. | ### loadstring @@ -212,6 +221,7 @@ loadstring: function(input: string, chunkname: string, env: table, config?: Conf Lädt YueScript-Code aus einem String in eine Funktion. **Signatur:** + ```lua loadstring: function(input: string, chunkname: string, config?: Config): --[[loaded function]] nil | function(...: any): (any...), @@ -220,18 +230,18 @@ loadstring: function(input: string, chunkname: string, config?: Config): **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| input | string | Der YueScript-Code. | -| chunkname | string | Der Name des Code-Chunks. | -| config | Config | [Optional] Die Compiler-Optionen. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | --------------------------------- | +| input | string | Der YueScript-Code. | +| chunkname | string | Der Name des Code-Chunks. | +| config | Config | [Optional] Die Compiler-Optionen. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | +| Rückgabetyp | Beschreibung | +| --------------- | --------------------------------------------------------------------- | | function \| nil | Die geladene Funktion oder `nil`, falls das Laden fehlgeschlagen ist. | -| string \| nil | Die Fehlermeldung oder `nil`, falls das Laden erfolgreich war. | +| string \| nil | Die Fehlermeldung oder `nil`, falls das Laden erfolgreich war. | ### loadstring @@ -242,6 +252,7 @@ loadstring: function(input: string, chunkname: string, config?: Config): Lädt YueScript-Code aus einem String in eine Funktion. **Signatur:** + ```lua loadstring: function(input: string, config?: Config): --[[loaded function]] nil | function(...: any): (any...), @@ -250,17 +261,17 @@ loadstring: function(input: string, config?: Config): **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| input | string | Der YueScript-Code. | -| config | Config | [Optional] Die Compiler-Optionen. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | --------------------------------- | +| input | string | Der YueScript-Code. | +| config | Config | [Optional] Die Compiler-Optionen. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | +| Rückgabetyp | Beschreibung | +| --------------- | --------------------------------------------------------------------- | | function \| nil | Die geladene Funktion oder `nil`, falls das Laden fehlgeschlagen ist. | -| string \| nil | Die Fehlermeldung oder `nil`, falls das Laden erfolgreich war. | +| string \| nil | Die Fehlermeldung oder `nil`, falls das Laden erfolgreich war. | ### loadfile @@ -271,6 +282,7 @@ loadstring: function(input: string, config?: Config): Lädt YueScript-Code aus einer Datei in eine Funktion. **Signatur:** + ```lua loadfile: function(filename: string, env: table, config?: Config): nil | function(...: any): (any...), @@ -279,18 +291,18 @@ loadfile: function(filename: string, env: table, config?: Config): **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| filename | string | Der Dateiname. | -| env | table | Die Environment-Tabelle. | -| config | Config | [Optional] Die Compiler-Optionen. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | --------------------------------- | +| filename | string | Der Dateiname. | +| env | table | Die Environment-Tabelle. | +| config | Config | [Optional] Die Compiler-Optionen. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | +| Rückgabetyp | Beschreibung | +| --------------- | --------------------------------------------------------------------- | | function \| nil | Die geladene Funktion oder `nil`, falls das Laden fehlgeschlagen ist. | -| string \| nil | Die Fehlermeldung oder `nil`, falls das Laden erfolgreich war. | +| string \| nil | Die Fehlermeldung oder `nil`, falls das Laden erfolgreich war. | ### loadfile @@ -301,6 +313,7 @@ loadfile: function(filename: string, env: table, config?: Config): Lädt YueScript-Code aus einer Datei in eine Funktion. **Signatur:** + ```lua loadfile: function(filename: string, config?: Config): nil | function(...: any): (any...), @@ -309,17 +322,17 @@ loadfile: function(filename: string, config?: Config): **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| filename | string | Der Dateiname. | -| config | Config | [Optional] Die Compiler-Optionen. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | --------------------------------- | +| filename | string | Der Dateiname. | +| config | Config | [Optional] Die Compiler-Optionen. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | +| Rückgabetyp | Beschreibung | +| --------------- | --------------------------------------------------------------------- | | function \| nil | Die geladene Funktion oder `nil`, falls das Laden fehlgeschlagen ist. | -| string \| nil | Die Fehlermeldung oder `nil`, falls das Laden erfolgreich war. | +| string \| nil | Die Fehlermeldung oder `nil`, falls das Laden erfolgreich war. | ### dofile @@ -330,23 +343,24 @@ loadfile: function(filename: string, config?: Config): Lädt YueScript-Code aus einer Datei in eine Funktion und führt sie aus. **Signatur:** + ```lua dofile: function(filename: string, env: table, config?: Config): any... ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| filename | string | Der Dateiname. | -| env | table | Die Environment-Tabelle. | -| config | Config | [Optional] Die Compiler-Optionen. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | --------------------------------- | +| filename | string | Der Dateiname. | +| env | table | Die Environment-Tabelle. | +| config | Config | [Optional] Die Compiler-Optionen. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| any... | Die Rückgabewerte der geladenen Funktion. | +| Rückgabetyp | Beschreibung | +| ----------- | ----------------------------------------- | +| any... | Die Rückgabewerte der geladenen Funktion. | ### dofile @@ -357,22 +371,23 @@ dofile: function(filename: string, env: table, config?: Config): any... Lädt YueScript-Code aus einer Datei in eine Funktion und führt sie aus. **Signatur:** + ```lua dofile: function(filename: string, config?: Config): any... ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| filename | string | Der Dateiname. | -| config | Config | [Optional] Die Compiler-Optionen. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | --------------------------------- | +| filename | string | Der Dateiname. | +| config | Config | [Optional] Die Compiler-Optionen. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| any... | Die Rückgabewerte der geladenen Funktion. | +| Rückgabetyp | Beschreibung | +| ----------- | ----------------------------------------- | +| any... | Die Rückgabewerte der geladenen Funktion. | ### find_modulepath @@ -383,21 +398,22 @@ dofile: function(filename: string, config?: Config): any... Löst den YueScript-Modulnamen in einen Dateipfad auf. **Signatur:** + ```lua find_modulepath: function(name: string): string ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| name | string | Der Modulname. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | -------------- | +| name | string | Der Modulname. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| string | Der Dateipfad. | +| Rückgabetyp | Beschreibung | +| ----------- | -------------- | +| string | Der Dateipfad. | ### pcall @@ -410,21 +426,22 @@ Fängt Fehler ab und gibt einen Statuscode sowie Ergebnisse oder ein Fehlerobjek Schreibt die Fehlerzeilennummer bei Fehlern auf die ursprüngliche Zeilennummer im YueScript-Code um. **Signatur:** + ```lua pcall: function(f: function, ...: any): boolean, any... ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| f | function | Die aufzurufende Funktion. | -| ... | any | Argumente für die Funktion. | +| Parameter | Typ | Beschreibung | +| --------- | -------- | --------------------------- | +| f | function | Die aufzurufende Funktion. | +| ... | any | Argumente für die Funktion. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | +| Rückgabetyp | Beschreibung | +| ------------ | ---------------------------------------------------- | | boolean, ... | Statuscode und Funktionsresultate oder Fehlerobjekt. | ### require @@ -437,21 +454,22 @@ Lädt ein Modul (Lua oder YueScript). Schreibt die Fehlerzeilennummer auf die ursprüngliche Zeilennummer im YueScript-Code um, wenn das Modul ein YueScript-Modul ist und das Laden fehlschlägt. **Signatur:** + ```lua require: function(name: string): any... ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| modname | string | Der Name des zu ladenden Moduls. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | -------------------------------- | +| modname | string | Der Name des zu ladenden Moduls. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| any | Der Wert in `package.loaded[modname]`, falls das Modul bereits geladen ist. Andernfalls wird ein Loader gesucht und der finale Wert von `package.loaded[modname]` sowie Loader-Daten als zweites Ergebnis zurückgegeben. | +| Rückgabetyp | Beschreibung | +| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| any | Der Wert in `package.loaded[modname]`, falls das Modul bereits geladen ist. Andernfalls wird ein Loader gesucht und der finale Wert von `package.loaded[modname]` sowie Loader-Daten als zweites Ergebnis zurückgegeben. | ### p @@ -462,15 +480,16 @@ require: function(name: string): any... Inspiziert die Struktur der übergebenen Werte und gibt String-Repräsentationen aus. **Signatur:** + ```lua p: function(...: any) ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| ... | any | Die zu inspizierenden Werte. | +| Parameter | Typ | Beschreibung | +| --------- | --- | ---------------------------- | +| ... | any | Die zu inspizierenden Werte. | ### options @@ -481,6 +500,7 @@ p: function(...: any) Die aktuellen Compiler-Optionen. **Signatur:** + ```lua options: Config.Options ``` @@ -494,21 +514,22 @@ options: Config.Options Die Traceback-Funktion, die Stacktrace-Zeilennummern auf die ursprünglichen Zeilennummern im YueScript-Code umschreibt. **Signatur:** + ```lua traceback: function(message: string): string ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| message | string | Die Traceback-Nachricht. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | ------------------------ | +| message | string | Die Traceback-Nachricht. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| string | Die umgeschriebene Traceback-Nachricht. | +| Rückgabetyp | Beschreibung | +| ----------- | --------------------------------------- | +| string | Die umgeschriebene Traceback-Nachricht. | ### is_ast @@ -519,22 +540,23 @@ traceback: function(message: string): string Prüft, ob der Code dem angegebenen AST entspricht. **Signatur:** + ```lua is_ast: function(astName: string, code: string): boolean ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| astName | string | Der AST-Name. | -| code | string | Der Code. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | ------------- | +| astName | string | Der AST-Name. | +| code | string | Der Code. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| boolean | Ob der Code dem AST entspricht. | +| Rückgabetyp | Beschreibung | +| ----------- | ------------------------------- | +| boolean | Ob der Code dem AST entspricht. | ### AST @@ -545,6 +567,7 @@ is_ast: function(astName: string, code: string): boolean Die AST-Typdefinition mit Name, Zeile, Spalte und Unterknoten. **Signatur:** + ```lua type AST = {string, integer, integer, any} ``` @@ -558,6 +581,7 @@ type AST = {string, integer, integer, any} Konvertiert Code in AST. **Signatur:** + ```lua to_ast: function(code: string, flattenLevel?: number, astName?: string, reserveComment?: boolean): --[[AST]] AST | nil, @@ -566,18 +590,18 @@ to_ast: function(code: string, flattenLevel?: number, astName?: string, reserveC **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| code | string | Der Code. | -| flattenLevel | integer | [Optional] Der Flatten-Level. Höher bedeutet mehr Flattening. Standard ist 0. Maximum ist 2. | -| astName | string | [Optional] Der AST-Name. Standard ist "File". | -| reserveComment | boolean | [Optional] Ob die ursprünglichen Kommentare beibehalten werden. Standard ist false. | +| Parameter | Typ | Beschreibung | +| -------------- | ------- | -------------------------------------------------------------------------------------------- | +| code | string | Der Code. | +| flattenLevel | integer | [Optional] Der Flatten-Level. Höher bedeutet mehr Flattening. Standard ist 0. Maximum ist 2. | +| astName | string | [Optional] Der AST-Name. Standard ist "File". | +| reserveComment | boolean | [Optional] Ob die ursprünglichen Kommentare beibehalten werden. Standard ist false. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| AST \| nil | Der AST oder `nil`, falls die Konvertierung fehlgeschlagen ist. | +| Rückgabetyp | Beschreibung | +| ------------- | ---------------------------------------------------------------------- | +| AST \| nil | Der AST oder `nil`, falls die Konvertierung fehlgeschlagen ist. | | string \| nil | Die Fehlermeldung oder `nil`, falls die Konvertierung erfolgreich war. | ### format @@ -589,25 +613,26 @@ to_ast: function(code: string, flattenLevel?: number, astName?: string, reserveC Formatiert den YueScript-Code. **Signatur:** + ```lua format: function(code: string, tabSize?: number, reserveComment?: boolean): string ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| code | string | Der Code. | -| tabSize | integer | [Optional] Die Tab-Größe. Standard ist 4. | +| Parameter | Typ | Beschreibung | +| -------------- | ------- | ---------------------------------------------------------------------------------- | +| code | string | Der Code. | +| tabSize | integer | [Optional] Die Tab-Größe. Standard ist 4. | | reserveComment | boolean | [Optional] Ob die ursprünglichen Kommentare beibehalten werden. Standard ist true. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| string | Der formatierte Code. | +| Rückgabetyp | Beschreibung | +| ----------- | --------------------- | +| string | Der formatierte Code. | -### __call +### \_\_call **Typ:** Metamethod. @@ -617,21 +642,22 @@ Required das YueScript-Modul. Schreibt die Fehlerzeilennummer bei Ladefehlern auf die ursprüngliche Zeilennummer im YueScript-Code um. **Signatur:** + ```lua metamethod __call: function(self: yue, module: string): any... ``` **Parameter:** -| Parameter | Typ | Beschreibung | -| --- | --- | --- | -| module | string | Der Modulname. | +| Parameter | Typ | Beschreibung | +| --------- | ------ | -------------- | +| module | string | Der Modulname. | **Rückgabe:** -| Rückgabetyp | Beschreibung | -| --- | --- | -| any | Der Modulwert. | +| Rückgabetyp | Beschreibung | +| ----------- | -------------- | +| any | Der Modulwert. | ## Config @@ -648,6 +674,7 @@ Die Compiler-Optionen. Ob der Compiler die globalen Variablen im Code sammeln soll. **Signatur:** + ```lua lint_global: boolean ``` @@ -661,6 +688,7 @@ lint_global: boolean Ob der Compiler für den Root-Codeblock ein implizites Return verwenden soll. **Signatur:** + ```lua implicit_return_root: boolean ``` @@ -674,6 +702,7 @@ implicit_return_root: boolean Ob der Compiler die ursprüngliche Zeilennummer im kompilierten Code beibehalten soll. **Signatur:** + ```lua reserve_line_number: boolean ``` @@ -687,6 +716,7 @@ reserve_line_number: boolean Ob der Compiler die ursprünglichen Kommentare im kompilierten Code beibehalten soll. **Signatur:** + ```lua reserve_comment: boolean ``` @@ -700,6 +730,7 @@ reserve_comment: boolean Ob der Compiler statt Tabzeichen Leerzeichen verwenden soll. **Signatur:** + ```lua space_over_tab: boolean ``` @@ -713,6 +744,7 @@ space_over_tab: boolean Ob der Compiler den zu kompilierenden Code als dasselbe aktuell kompilierte Modul behandeln soll. Nur für internen Gebrauch. **Signatur:** + ```lua same_module: boolean ``` @@ -726,6 +758,7 @@ same_module: boolean Ob die Compiler-Fehlermeldung einen Zeilennummern-Offset enthalten soll. Nur für internen Gebrauch. **Signatur:** + ```lua line_offset: integer ``` @@ -739,6 +772,7 @@ line_offset: integer Die Ziel-Lua-Version. **Signatur:** + ```lua enum LuaTarget "5.1" @@ -758,6 +792,7 @@ end Zusätzliche Optionen für die Kompilierung. **Signatur:** + ```lua options: Options ``` @@ -777,6 +812,7 @@ Zusätzliche Compiler-Optionen. Die Ziel-Lua-Version für die Kompilierung. **Signatur:** + ```lua target: LuaTarget ``` @@ -790,6 +826,7 @@ target: LuaTarget Zusätzlicher Modul-Suchpfad. **Signatur:** + ```lua path: string ``` @@ -803,6 +840,7 @@ path: string Ob lokale Variablen in Traceback-Fehlermeldungen ausgegeben werden sollen. Standard ist false. **Signatur:** + ```lua dump_locals: boolean ``` @@ -816,6 +854,7 @@ dump_locals: boolean Ob Fehlermeldungen vereinfacht werden sollen. Standard ist true. **Signatur:** + ```lua simplified: boolean ``` diff --git a/doc/docs/de/index.md b/doc/docs/de/index.md index 1a923b2..94bd00f 100644 --- a/doc/docs/de/index.md +++ b/doc/docs/de/index.md @@ -21,4 +21,5 @@ footer: message: MIT-Lizenz. copyright: Copyright © 2017-2026 Li Jin. Alle Rechte vorbehalten. --- + --- diff --git a/doc/docs/de/try/index.md b/doc/docs/de/try/index.md index f8c3193..4c17c6c 100755 --- a/doc/docs/de/try/index.md +++ b/doc/docs/de/try/index.md @@ -1,4 +1,5 @@ # YueScript Online-Compiler + --- Probiere YueScript im Browser mit WASM aus. -- cgit v1.2.3-55-g6feb