Kiste
EN

Changelog

Was sich mit jeder Version von Kiste geändert hat — neue Funktionen, Verbesserungen und behobene Fehler.

0.9.38 19. Juli 2026 Scharfe Pixel und der eigene Programm-Ordner

Neu

  • Neu umgebung.programm_ordner(): der Ordner, in dem dein gebautes Programm liegt. Damit findet ein installiertes Programm seine mitgelieferten Dateien — Symbole, Beispielbilder, Vorlagen — verlässlich, egal aus welchem Ordner es gestartet wurde. Vorher gab es nur das Arbeitsverzeichnis, und das zeigt bei einer Verknüpfung oft woandershin. Zum Lesen mitgelieferter Dateien; für eigene Nutzerdaten bleibt der Benutzerordner richtig.

Behoben

  • Bilder, die du mit gui.bild_an aus einer Datei zeichnest, werden beim Vergrößern jetzt scharf skaliert (Nearest-Neighbor) statt verwaschen — Pixel-Kunst bleibt gestochen scharf, wie beim Zeichnen aus dem Speicher (gui.leinwand_bild) schon zuvor. Vorher glättete Kiste solche Bilder beim Strecken, was kleine Pixel zu Matsch verwischte.
0.9.37 18. Juli 2026 Einpacken und ausliefern — ZIP an Bord, Bilder überlagern, animierte GIF

Neu

  • Kiste kann jetzt packen: nutze pack gibt dir ZIP-Archive und gzip. Mehrere Dateien werden zu einem .zip gebündelt (pack.zip_erstelle), ein ganzer Ordner mit einem Aufruf (pack.zip_aus_ordner), wieder ausgepackt wird mit pack.zip_entpacke — samt Schutz davor, dass ein Archiv Dateien außerhalb des Zielordners ablegt. Archive lassen sich auch ganz im Arbeitsspeicher bauen (pack.zip_von_bytes), und die Kompressionsstufe (0–9) ist wählbar. Dazu gzip für einzelne Dateien. Alles ist in Kiste eingebaut, kein externes Programm nötig. Das neue Kapitel 37 im Lernbuch führt hin.
  • Neu bild.zeichne_auf: ein Bild aufs andere zeichnen, mit Transparenz — durchsichtige Ränder bleiben durchsichtig. Damit lassen sich Sprites zusammensetzen oder Bilder überlagern, ohne die Transparenz zu verlieren (anders als das einfache Pixel-Setzen, das immer deckend malt).
  • Animierte GIF sind gehärtet: sie laufen jetzt in Endlos-Schleife, transparente Ränder scheinen nicht mehr durch und frühere Bilder geistern nicht nach — auch bei unterschiedlich großen Einzelbildern. Die Bilderliste darf jetzt auch Stück für Stück aufgebaut werden, nicht nur als festes [a, b].
  • Drei GUI-Helfer: gui.zeige_im_ordner öffnet den Datei-Manager und markiert eine Datei; gui.strg_beim_klick und gui.umschalt_beim_klick verraten im Klick-Handler, ob Strg bzw. Umschalt gedrückt war — die Grundlage für Mehrfach-Auswahl.

Geändert

  • Der native „Speichern unter"-Dialog blockiert die Oberfläche nicht mehr. Öffnete ein Programm ihn direkt nach einem anderen Fenster (erst eine Frage, dann Speichern), blieb das erste Fenster sichtbar hängen, bis alles geschlossen war. Jetzt läuft der Speichern-Dialog nebenläufig und die Oberfläche zeichnet sauber weiter — wie unter Linux schon zuvor.
0.9.36 17. Juli 2026 Feinschliff aus der Werkstatt — echte OS-Dialoge und drei stille Fallen

Geändert

  • Datei-Dialoge mit Endungs-Filter — etwa wenn ein Programm nur Bilder auswählen lässt — zeigen jetzt das gewohnte Fenster des Betriebssystems statt eines fremd aussehenden Ersatzes. Unter Windows ist das der Explorer-Dialog, unter Linux zenity bzw. kdialog. Der Endungs-Filter wird dabei mitgegeben. (Die ungefilterte Datei-Auswahl war schon vorher nativ; jetzt zieht die gefilterte nach.)
  • Der Eingabe-Dialog (etwa „Wie soll die Sammlung heißen?") setzt die Frage jetzt über das Textfeld, das dadurch die volle Breite bekommt. Vorher standen Frage und Feld in derselben Zeile, und bei einer längeren Frage blieb ein Feld von wenigen Zeichen übrig. Mit Enter lässt sich jetzt bestätigen.

Behoben

  • Eine Funktion, die nichts zurückgibt, lieferte im gebauten Programm still eine 0 statt „nichts" — falsche Daten ohne Warnung, und anders als beim Ausführen mit kiste run. Umgekehrt wurde gib nichts ausgerechnet abgelehnt, obwohl dieselbe Funktion ganz ohne gib anstandslos durchging. Beides ist behoben: „gibt nichts zurück" verhält sich jetzt in allen drei Ausführungsarten gleich. Wer aus Versehen den Rückgabewert einer solchen Funktion nimmt (nimm x = tuwas()), bekommt jetzt überall dieselbe klare Meldung statt einer erfundenen 0.
  • Eine global — also ganz oben im Programm — angelegte leere Liste war aus Funktionen heraus unsichtbar: das Programm brach mit „unbekannte Variable" ab, obwohl die Liste sichtbar zwei Zeilen höher stand. Jetzt ist sie überall sichtbar, wie man es erwartet.
  • xs = [] (eine Liste leeren) lief beim Ausführen, wurde aber im gebauten Programm abgelehnt. Ein alltägliches Muster — jetzt läuft es in beiden.
0.9.35 16. Juli 2026 Datenbank an Bord — SQLite

Neu

  • Kiste hat jetzt eine Datenbank: nutze db gibt dir SQLite — eine vollwertige Datenbank, die als einzige Datei auf der Platte lebt. Kein Server, keine Installation, nichts einzurichten; sie steckt schon in Kiste drin. Damit lassen sich Fragen wie „alle Werke ab 2020, nach Jahr sortiert" oder „wie viele sind es überhaupt?" stellen, statt eine ganze Datei zu laden und alles selbst durchzugehen.
  • Elf Funktionen: db.öffne (Datei) und db.öffne_speicher (nur im Arbeitsspeicher, ideal zum Üben), db.ausführe, db.abfrage, db.eine_zeile, db.ein_wert, db.letzte_id, db.schließe — und für zusammenhängende Änderungen db.beginne, db.bestätige, db.rolle_zurück.
  • Werte werden als Parameter übergeben, entweder benannt (:titel plus Karte) oder der Reihe nach (? plus Liste) — nie als zusammengeklebter Text. Das ist gleichzeitig bequemer und sicherer.
  • db.abfrage liefert eine Liste von Karten: eine Karte pro Zeile, der Spaltenname ist der Schlüssel. Das neue Kapitel 36 im Lernbuch führt Schritt für Schritt hin, SQL-Vorkenntnisse braucht es nicht.

Geändert

  • Festgeschrieben: Listen und Karten sind Referenzen. Wer eine Liste oder Karte weitergibt, gibt dieselbe weiter — keine Kopie; Änderungen sind über jede Referenz sichtbar. Das war immer so gedacht, stand aber nirgends geschrieben. Jetzt steht es in der Sprachbeschreibung und ist in allen drei Ausführungsarten nachgewiesen.
  • Das Lernbuch zeigt in 22.4b jetzt auch, wie man Werte aus einer Liste von Karten wieder herausliest — bisher stand dort nur, wie man sie aufbaut.

Behoben

  • Eine Karte in einer Liste gab im gebauten Programm still „nichts" zurück statt des Werts: bei nimm werke = [{"titel": "Sonne"}] lieferte werke[0]["titel"] nichts — ohne Fehlermeldung, und anders als beim Ausführen mit kiste run. Falsche Daten ohne Warnung sind schlimmer als ein Abbruch, deshalb hatte das Vorrang. Kurios am Rande: gemischte Karten wie {"titel": "Sonne", "jahr": 2026} funktionierten, gleichartige brachen — genau deshalb fiel es so lange nicht auf.
  • Ein Aufruf mitten in einer Textmontage funktionierte nie: sag "{begrüßung(name)}" brach mit „erwartet text, bekam Ganz" ab. Dasselbe in Listen- und Karten-Literalen sowie bei text.länge(begrüßung(name)). Ein alltägliches Muster — jetzt geht es.
  • wiederhole über eine globale Liste innerhalb einer Funktion lieferte falsche Parameter-Typen — also ausgerechnet der häufigste Aufbau: die Daten stehen oben im Programm, eine Funktion arbeitet sie ab.
  • Ein Doppelklick auf der Leinwand tat nichts: der Handler wurde angenommen und nie ausgeführt. Die Leinwand unterstützt den Doppelklick jetzt wirklich (maus_x/maus_y geben die Stelle, der Einfachklick kommt weiterhin ohne Verzögerung). Bedienelemente, die keinen Doppelklick können, melden das nun, statt stillschweigend nichts zu tun.
  • Gemischte Karten lassen sich jetzt auch beschreiben (m["titel"] = "Mond") und nicht nur anlegen.
0.9.34 15. Juli 2026 Große GUI-Erweiterung — professionelle Oberflächen

Neu

  • Scrollbare Bereiche, ein umbrechendes Kachel-Raster und speicherbare Teiler-Positionen — lange Inhalte sprengen nicht mehr das Fenster.
  • Vollwertige Formulare mit Eingabeprüfung, Passwortfeld, frei tippbarer Combobox, Datumsfeld und feinstufigem Schieberegler. Der Absenden-Knopf bleibt gesperrt, bis alle Felder gültig sind.
  • Viele neue Dialoge: Text eingeben, Farbe wählen, Fortschritt/Warten anzeigen, Ordner wählen und Datei-Dialoge mit Endungs-Filter — dazu Rechtsklick-Kontextmenüs auf beliebigen Elementen.
  • Formatierter Text per Markdown, anklickbare Links, Karten mit Titel, Symbole, Trennlinien, aufklappbare Abschnitte (Accordion) und eigene Icons aus Bilddateien.
  • Ein Baum-Widget für Datei- und Ordner-Ansichten sowie sortierbare Tabellen (Klick auf den Spaltenkopf).
  • App-Integration: Desktop-Benachrichtigungen, Zwischenablage lesen, „Wirklich schließen?"-Abfrage beim Fenster-Schließen und volle Reiter-Steuerung inklusive Tabs mit Icon.
  • Der GUI-Designer in der IDE kennt alle neuen Bausteine und Eigenschaften — Oberflächen lassen sich weiterhin per Drag-and-drop zusammenklicken.
0.9.29 12. Juli 2026 Text sauber zentrieren

Neu

  • Grafische Programme können jetzt die Pixelbreite eines Textes (gui.text_breite) in einer bestimmten Schriftgröße messen. Damit lässt sich Text exakt zentrieren — die halbe Breite links von der Mitte — statt die Position zu schätzen. Praktisch für Menüs, Punktestände und Game-Over-Bildschirme.
0.9.28 11. Juli 2026 Große Bilder durchgehen — jetzt richtig schnell

Neu

  • Grafische Programme können jetzt alle Pixel eines Bildes in EINEM Schritt lesen (bild.hole_puffer) — das Gegenstück zum schnellen Setzen mit bild.setze_puffer. Wer ein großes Bild Pixel für Pixel durchgeht (etwa um es umzufärben oder in Farben umzurechnen), war bisher durch tausende Einzelabfragen ausgebremst; mit einem einzigen Massen-Abruf geht das nun um ein Vielfaches schneller.
0.9.27 11. Juli 2026 Fenster in fester Größe

Neu

  • Ein Fenster lässt sich jetzt auf seine Inhaltsgröße festlegen (gui.fenster_fest): der Maximieren-Knopf wird deaktiviert und die Größe nicht mehr veränderbar. Praktisch für kleine Dialog- und Hilfe-Fenster, die maximiert nur leere Fläche zeigen würden.
0.9.26 10. Juli 2026 Links öffnen, Text kopieren, eigenes Icon

Neu

  • gui.öffne_url öffnet eine Internet-Adresse im Standard-Browser; beginnt sie mit mailto:, öffnet sich das Mailprogramm.
  • gui.kopiere_text legt beliebigen Text in die Zwischenablage — nützlich, um zum Beispiel eine Adresse zum Kopieren anzubieten, statt sie abtippen zu lassen.
  • gui.setze_app_icon macht ein eigenes Logo (aus einer PNG-Datei) zum Fenster- und Taskleisten-Symbol des Programms — statt des neutralen Standard-Symbols.
0.9.25 10. Juli 2026 Tabellen-Spalten so breit, wie du willst

Neu

  • Die Spaltenbreiten einer Tabelle lassen sich jetzt frei einstellen (gui.spalten_breite). Bisher richtete sich die Breite nur nach dem Inhalt und war gedeckelt — für Nachschlage-Tabellen mit längerem Text zu schmal, sodass er abgeschnitten wurde. Jetzt bleibt jeder Text voll sichtbar.
0.9.24 10. Juli 2026 Die rechte Maustaste — und ein stiller Fehler weniger

Neu

  • Grafische Programme hören jetzt auf die rechte Maustaste: gui.bei_maus_rechts meldet den Rechtsklick, gui.maus_taste sagt in jedem Maus-Ereignis, welche Taste im Spiel ist. Auch das Ziehen mit gedrückter rechter Taste funktioniert. Damit bekommt ein Malprogramm die vertraute Belegung: links malen, rechts radieren.

Behoben

  • json.erzeugt schrieb im gebauten Programm nur solche Werte richtig, die aus json.geparst stammten. Eine selbst geschriebene Karte wie {"name": "held"} wurde bei Text-Werten stillschweigend zu null, bei Zahlen brach das Programm ab. Jetzt schreibt json.erzeugt jede Karte und jede Liste korrekt — im Interpreter und im gebauten Programm gleich.
  • Listen dürfen jetzt überall dort stehen, wo ein beliebiger Wert erlaubt ist: json.erzeugt([1, 2, 3]) funktioniert, ebenso Listen von Karten und Listen als Wert in einer Karte.
0.9.23 9. Juli 2026 Riesige Bilder blitzschnell

Neu

  • Grafische Programme können ein ganzes Bild jetzt in EINEM Schritt setzen (bild.setze_puffer), statt Pixel für Pixel. Große Bilder entstehen dadurch dramatisch schneller — ein Voll-Aufbau von 1500×1000 Pixeln fiel von mehreren Sekunden auf Sekundenbruchteile.
  • Große Zeichenflächen bleiben flüssig: ein Bild kann als stehende Ebene auf der Leinwand liegen und wird nur dann neu übernommen, wenn es sich wirklich geändert hat (gui.leinwand_bild_fest). So ruckelt das Ziehen von Formen und das Schwenken auch bei sehr großen Leinwänden nicht mehr.
0.9.22 9. Juli 2026 Mauszeiger wechselt sofort

Behoben

  • Ein per Tastenkürzel gewechselter Mauszeiger wird jetzt sofort sichtbar — vorher erschien der neue Zeiger erst, sobald man die Maus bewegte.
0.9.21 8. Juli 2026 Animierte GIFs mit eigener Dauer pro Bild

Neu

  • Animierte GIFs können jetzt für jedes Einzelbild eine eigene Anzeigedauer haben (bild.schreibe_gif_animiert_dauern) — nicht mehr nur ein fester Takt für alle Bilder. Ideal für Animationen mit unterschiedlich langen Frames.
0.9.20 8. Juli 2026 Abgerundete Grafiken

Neu

  • Grafische Programme können jetzt abgerundete und berandete Formen zeichnen: runde Farbflächen oder reine Umrisse auf der Leinwand (gui.rechteck_rund) und sanft berandete „Karten" um Bedienelemente herum (gui.karte). Das gibt Oberflächen einen weichen, modernen Look.
0.9.19 8. Juli 2026 Eigenes Bild als Mauszeiger

Neu

  • Der Mauszeiger über einer Zeichenfläche kann jetzt ein eigenes Bild sein — eine SVG- oder PNG-Datei (gui.setze_cursor_bild). So bekommt in einem Mal-Programm jedes Werkzeug seinen eigenen, wiedererkennbaren Zeiger.
0.9.18 8. Juli 2026 Mauszeiger je Werkzeug

Neu

  • Eine Zeichenfläche kann ihren Mauszeiger wechseln (gui.setze_cursor): Fadenkreuz, Hand, Text oder ein Pipetten-Symbol — passend zum aktiven Werkzeug.
0.9.17 7. Juli 2026 Tooltips folgen der Sprache

Geändert

  • Ein Hinweistext (Tooltip) an einem Bedienelement lässt sich jetzt jederzeit ändern und wirkt sofort — praktisch, wenn ein Programm die Sprache umschaltet und die Tooltips mitwandern sollen.
0.9.16 7. Juli 2026 Ein zweites Fenster öffnen

Neu

  • Ein Programm kann jetzt zur Laufzeit ein zweites Fenster öffnen (gui.zeige nach dem Start) und wieder schließen (gui.fenster_schließe) — ideal für Dialoge oder ein eigenes Werkzeug-/Einstellungsfenster, während das Hauptfenster weiterläuft.
0.9.15 7. Juli 2026 Pixel-Grafik flüssig zeichnen

Neu

  • Ein Bild, das du im Speicher zusammengesetzt hast, lässt sich jetzt als ein einziges, scharf skaliertes Objekt auf die Leinwand zeichnen (gui.leinwand_bild) — ideal für Pixel-Grafik. So bleibt das Zeichnen auch bei großen Flächen flüssig, statt aus tausenden einzelnen Rechtecken aufgebaut zu werden.
0.9.14 6. Juli 2026 Fenster öffnen mittig

Behoben

  • Ein Programmfenster öffnet jetzt zentriert und vollständig sichtbar auf dem Bildschirm — vorher konnte es je nach Größe unten oder rechts über den Rand hinausragen.
0.9.13 6. Juli 2026 Fenster maximieren

Neu

  • Ein Fenster lässt sich jetzt aus dem Programm heraus maximieren (gui.maximiere): Es füllt den aktuellen Monitor, behält aber die Titelleiste samt den Knöpfen zum Verkleinern und Schließen — anders als der randlose Vollbildmodus.
0.9.12 6. Juli 2026 Bildschirmgröße abfragen

Neu

  • Programme können jetzt die Größe der Bildschirm-Arbeitsfläche abfragen (gui.bildschirm_breite und gui.bildschirm_höhe) — praktisch, um die Fenstergröße an den Monitor anzupassen, schon bevor das Fenster geöffnet wird.
0.9.11 6. Juli 2026 Strg-Tastenkürzel funktionieren zuverlässig

Behoben

  • Die Tastenkürzel Strg+Z, Strg+Y, Strg+C, Strg+V, Strg+X und Strg+A lösen jetzt zuverlässig aus, wenn du sie in einem eigenen Programm mit gui.taste registrierst — vorher fing das GUI-System genau diese sechs ab, sodass sie nicht ankamen.
0.9.10 6. Juli 2026 Menü und Kontrollkästchen zur Laufzeit umbeschriften

Neu

  • Die Menüleiste eines Fensters lässt sich jetzt zur Laufzeit neu aufbauen (gui.menü_anwenden). Zusammen mit gui.setze_text kannst du damit Menütitel und -einträge im laufenden Programm ändern — zum Beispiel für eine Sprachumschaltung, die die ganze Oberfläche auf Knopfdruck übersetzt.
  • gui.setze_text wirkt jetzt auch auf Kontrollkästchen: So lässt sich auch deren Beschriftung im laufenden Programm ändern.
0.9.9 5. Juli 2026 Dialoge funktionieren auch im Vollbild

Behoben

  • Ja/Nein- und Info-Dialoge (gui.dialog_frage, gui.dialog_info) sind unter Windows jetzt echte Fenster des Betriebssystems — wie schon die Datei-Dialoge. Dadurch reagieren sie auch, wenn das Programm gerade im Vollbild läuft (vorher erschien der Dialog zwar, ließ sich aber nicht anklicken).
0.9.8 5. Juli 2026 Mitwachsende Zeichenfläche & Vollbild

Neu

  • Eine Zeichenfläche kann jetzt mit dem Fenster mitwachsen (gui.leinwand_elastisch): Sie füllt den verfügbaren Platz und passt sich an, wenn du das Fenster vergrößerst oder in den Vollbild wechselst. Die aktuelle Größe fragst du mit gui.leinwand_breite und gui.leinwand_höhe ab, auf Änderungen reagierst du mit gui.bei_größe.
  • Neu ist außerdem gui.vollbild, um ein Fenster in den Vollbildmodus zu schalten und wieder zurück.
0.9.7 4. Juli 2026 Native Datei-Dialoge & Mausrad

Neu

  • Öffnen- und Speichern-Dialoge nutzen jetzt den vertrauten Datei-Dialog deines Systems statt eines eigenen Fensters — unter Windows den Explorer-Dialog, unter Linux den von zenity bzw. kdialog (mit Rückfall auf den bisherigen Dialog, falls keins davon installiert ist).
  • Die Leinwand kennt jetzt ein Mausrad-Ereignis (gui.bei_maus_rad, mit gui.rad_dy / gui.rad_dx): Damit lassen sich zum Beispiel Zoom und Schwenk in einem Zeichenprogramm bauen.

Behoben

  • Ein Tooltip an einem Bedienelement ganz am Rand wird nicht mehr über den Fensterrand hinaus abgeschnitten, sondern rückt zurück ins Fenster.
0.9.6 3. Juli 2026 Verschachtelte Objekt-Listen & Tooltips

Neu

  • Ein Objekt kann jetzt eine Liste von Objekten halten, und die kannst du verschachtelt ansprechen — zum Beispiel frames[f].ebenen[e]…: das Bild eines Frames, darin eine Ebene, darin ein Pixel.
  • Einer Liste von Objekten kannst du jetzt zur Laufzeit neue hinzufügen und wieder entfernen (liste.hänge_an / liste.entferne) — alle müssen zur selben Klasse gehören.
  • Icon-Knöpfe können jetzt einen Tooltip haben: Bleibst du mit der Maus länger auf einem Symbol, erscheint ein kleiner Text, der erklärt, was es tut (gui.setze_tooltip). So bleiben Oberflächen mit vielen Symbolen verständlich.
0.9.5 2. Juli 2026 Flüssigeres Zeichnen & Listen von Objekten

Neu

  • Eine Liste von Objekten lässt sich jetzt auch aus Funktionen heraus voll verwenden: das Element an einer Stelle direkt ansprechen (liste[i].methode()), seine Felder lesen und ändern und Elemente umsortieren. Vorher ging das nur auf oberster Ebene.

Geändert

  • GUI-Programme, die viel zeichnen, laufen jetzt deutlich flüssiger: Die Leinwand aktualisiert den Bildschirm gebündelt — einmal pro Bild statt nach jedem einzelnen Strich. Besonders spürbar, wenn eine gefüllte Fläche neu gezeichnet wird, etwa beim Aufziehen von Linie oder Rechteck.
0.9.4 1. Juli 2026 Bilder speichern und laden

Neu

  • Kiste kann jetzt mit Bildern umgehen: Mit dem neuen bild-Modul erzeugst du ein Bild, malst Pixel oder ganze Blöcke hinein und speicherst es als PNG, JPEG, GIF, BMP oder TIFF — sogar als animiertes GIF. Bestehende Bilder (auch WEBP) lädst du mit bild.lade.
  • Der Speichern-Dialog (gui.dialog_speichern) ist unter Windows jetzt der echte „Speichern unter“-Dialog des Betriebssystems — ein normal großes Fenster statt eines kleinen Kästchens im Programm.
  • Klapplisten (gui.auswahl_box) können jetzt einen Startwert haben: gui.setze_wert(liste, "…") wählt ihn vor.
0.9.3 30. Juni 2026 Layout zentrieren, Maus-Loslassen, Icons und Schweizer Schreibweise

Neu

  • Leisten und Bedienelemente lassen sich jetzt sauber zentrieren und verteilen: gui.zentriert(widget) legt etwas mittig in den verfügbaren Platz, gui.dehnbar() ist ein dehnbarer Platzhalter. Damit zentrierst du eine Gruppe in einer Leiste oder schiebst Elemente an die beiden Ränder — ganz ohne Pixel-Rechnerei.
  • Neben Klick und Ziehen gibt es jetzt auch das Loslassen der Maustaste: gui.bei_maus_los ruft deine Funktion auf, sobald du nach einem Ziehen die Taste loslässt. Damit lassen sich Werkzeuge bauen, die man aufzieht — drücken, ziehen (mit Vorschau), loslassen, fertig (zum Beispiel Linie und Rechteck).
  • Für Knöpfe gibt es jetzt auch die Rückgängig- und Wiederholen-Pfeile als Icon: gui.knopf_icon("", "rückgängig") bzw. "wiederholen".
  • Kiste versteht jetzt auch die Schweizer Schreibweise ohne ß: eingebaute Funktionen darfst du mit „ss“ statt „ß“ schreiben — text.grossgeschrieben wirkt wie text.großgeschrieben, gui.feste_grösse wie gui.feste_größe. Beide Schreibweisen funktionieren.
0.9.2 Juni 2026 Klassen aus Funktionen, klarere Operatoren

Neu

  • Klassen-Objekte, die du auf oberster Ebene anlegst, lassen sich jetzt auch aus Funktionen heraus verwenden — Methoden aufrufen und Felder lesen. Vorher waren von dort nur einfache Werte und Listen sichtbar.

Geändert

  • In der Kiste-IDE und auf der Webseite erscheinen die Vergleichszeichen != <= >= jetzt genau so, wie du sie tippst — vorher wurden sie als ≠ ≤ ≥ zusammengezogen.
0.9.1 Juni 2026 Mehrzeilige Ausdrücke

Neu

  • Lange Ausdrücke dürfen jetzt über mehrere Zeilen gehen — innerhalb von Klammern oder mit einem Operator am Zeilenende. Verschachtelte Bedingungen und Rechnungen bleiben so übersichtlich.
0.9.0 Juni 2026 Erste öffentliche Version

Neu

  • Die komplette Sprache Kiste mit deutschen Befehlen und klaren deutschen Fehlermeldungen.
  • Native Programme: Aus deinem Code wird eine eigenständige Datei, die ohne Installation läuft (unter Windows eine .exe).
  • Die Kiste-IDE — Editor mit farbiger Syntax, Fehleranzeige schon beim Tippen, Ausführen per F5, Auto-Vervollständigung und ein GUI-Designer zum Zusammenklicken von Fenstern.
  • Grafische Oberflächen (gui) und Ton/Musik (klang) für eigene Programme und Spiele.
  • 19 eingebaute Bausteine — von Text, Listen und Mathe über Dateien und Zeit bis zu Netz, JSON und CSV.
  • Ein-Klick-Installer für Windows; eine Linux-Version als Beta.
  • Tab-Vervollständigung in der IDE und eine Update-Prüfung beim Start.