Zahlenfelder: überflüssige Nullen nicht anzeigen (100 statt 100.000) #172

Closed
opened 2026-09-19 11:41:53 +02:00 by meleki · 3 comments
Owner

Aus #2 („Offen bleibt die Anzeige-Frage: sollen überflüssige Nullen weg (100 statt 100.000, 9.091 bleibt)? Das wäre eine Zeile in formatNumber und würde für alle Zahlenfelder gelten; der Graph macht es bereits so. Dafür bei Bedarf eine eigene Notiz anlegen.“).

Befund

  • formatNumber (src/ui/math.ts:18) gibt immer NUMBER_DECIMALS = 3 Nachkommastellen aus. Zahlenfelder im Inspector zeigen dadurch 100.000 statt 100.

Zu bauen (Vorschlag)

  • Überflüssige Nullen am Ende weglassen (100, 0.5, 9.091), gespeichert wird unverändert.
  • Felder mit ausdrücklich decimals behalten ihre Stellen nicht erzwungen, sondern höchstens so viele.
  • e2e-Checks, die Feldtexte lesen, nachziehen.

Offen (mit Vorschlag)

  1. Überall oder nur im Inspector? Vorschlag: überall, wo formatNumber benutzt wird, damit Graph, Inspector und Tabs gleich aussehen.
Aus #2 („Offen bleibt die Anzeige-Frage: sollen überflüssige Nullen weg (`100` statt `100.000`, `9.091` bleibt)? Das wäre eine Zeile in `formatNumber` und würde für alle Zahlenfelder gelten; der Graph macht es bereits so. Dafür bei Bedarf eine eigene Notiz anlegen.“). ## Befund - `formatNumber` (`src/ui/math.ts:18`) gibt immer `NUMBER_DECIMALS` = 3 Nachkommastellen aus. Zahlenfelder im Inspector zeigen dadurch `100.000` statt `100`. ## Zu bauen (Vorschlag) - Überflüssige Nullen am Ende weglassen (`100`, `0.5`, `9.091`), gespeichert wird unverändert. - Felder mit ausdrücklich `decimals` behalten ihre Stellen nicht erzwungen, sondern höchstens so viele. - e2e-Checks, die Feldtexte lesen, nachziehen. ## Offen (mit Vorschlag) 1. **Überall oder nur im Inspector?** Vorschlag: überall, wo `formatNumber` benutzt wird, damit Graph, Inspector und Tabs gleich aussehen.
meleki added the new label 2026-09-19 11:41:53 +02:00

vorschlag passt: überall

vorschlag passt: überall
admin removed the new label 2026-09-19 11:49:37 +02:00
admin added this to the Development project 2026-09-19 11:49:42 +02:00
admin moved this to Next in Development on 2026-09-19 12:48:12 +02:00
Author
Owner

Erledigt in 4f546c0 (Wiki: ff256e8), umgesetzt wie besprochen: überall.

Was sich ändert

  • formatNumber rundet wie bisher auf höchstens 3 Stellen und lässt danach die Nullen am Ende weg: 100.000 → 100, 0.500 → 0.5, 9.091 bleibt. Gespeichert wird unverändert, -0 wird weiter als 0 angezeigt.
  • Gilt für Inspector, Graph-Nodes, Shader-Nodes sowie Dauer und fps in den Tabs Animation und Tile (z. B. 2 s statt 2.0 s).
  • Felder mit eigener Stellenzahl (decimals) zeigen höchstens so viele Stellen, nicht mehr immer genau so viele.
  • Die eigene Ganzzahl-Regel in NodeView.ts ist überflüssig geworden und entfernt.
  • Bewusst nicht angefasst: Anzeigen, die absichtlich toFixed nutzen (Zeit in der Partikel-Vorschau 0.00 s, Dauer in der Sound-Vorschau). Sie laufen nicht über formatNumber.

Tests

npm run check                        → 111 Files, 1596 Tests (vorher 1594), CHECK EXIT 0
npm run build                        → BUILD EXIT 0
GM_STEPS=10,22,28 (frisch geseedet)  → ALL PASSED – 106 checks
  • Unit-Tests in tests/ui/math.test.ts angepasst und ergänzt: Ganzzahlen behalten ihre Nullen (100 bei 0 Stellen, 1000), 2.0004 → 2, decimals als Obergrenze.
  • Gegenprobe: 3 eingebaute Fehler, alle gefangen (wichtigster Fall: ohne Punkt-Wächter würde aus 100 eine 1).
  • e2e: 22a erwartet 30 und prüft, dass 30.000 nicht mehr erscheint; 28 erwartet Value: 0.5. Screenshots angesehen.
  • Check-Summe bleibt 1076 (kein neuer Check). Der CI-Lauf zu 4f546c0 lief beim Schließen noch, das Ergebnis ist hier noch nicht eingetragen.

Doku: Wiki Keyboard (Beschreibung der Zahlenfelder).

Erledigt in 4f546c0 (Wiki: ff256e8), umgesetzt wie besprochen: **überall**. **Was sich ändert** - `formatNumber` rundet wie bisher auf höchstens 3 Stellen und lässt danach die Nullen am Ende weg: `100.000` → `100`, `0.500` → `0.5`, `9.091` bleibt. Gespeichert wird unverändert, `-0` wird weiter als `0` angezeigt. - Gilt für Inspector, Graph-Nodes, Shader-Nodes sowie Dauer und fps in den Tabs Animation und Tile (z. B. `2 s` statt `2.0 s`). - Felder mit eigener Stellenzahl (`decimals`) zeigen höchstens so viele Stellen, nicht mehr immer genau so viele. - Die eigene Ganzzahl-Regel in `NodeView.ts` ist überflüssig geworden und entfernt. - Bewusst nicht angefasst: Anzeigen, die absichtlich `toFixed` nutzen (Zeit in der Partikel-Vorschau `0.00 s`, Dauer in der Sound-Vorschau). Sie laufen nicht über `formatNumber`. **Tests** ``` npm run check → 111 Files, 1596 Tests (vorher 1594), CHECK EXIT 0 npm run build → BUILD EXIT 0 GM_STEPS=10,22,28 (frisch geseedet) → ALL PASSED – 106 checks ``` - Unit-Tests in `tests/ui/math.test.ts` angepasst und ergänzt: Ganzzahlen behalten ihre Nullen (`100` bei 0 Stellen, `1000`), `2.0004` → `2`, `decimals` als Obergrenze. - Gegenprobe: 3 eingebaute Fehler, alle gefangen (wichtigster Fall: ohne Punkt-Wächter würde aus `100` eine `1`). - e2e: 22a erwartet `30` und prüft, dass `30.000` nicht mehr erscheint; 28 erwartet `Value: 0.5`. Screenshots angesehen. - Check-Summe bleibt **1076** (kein neuer Check). Der CI-Lauf zu 4f546c0 lief beim Schließen noch, das Ergebnis ist hier noch nicht eingetragen. **Doku:** Wiki *Keyboard* (Beschreibung der Zahlenfelder).
admin moved this to Done in Development on 2026-09-19 14:30:04 +02:00
Author
Owner

Nachtrag CI zu 4f546c0: grün, in den Job-Logs selbst nachgelesen.

  • Gate (Task 152): 111 Testdateien grün, CHECK EXIT 0
  • Suite (Task 153): ALL PASSED – 1076 checks, Smokes 24 / 19 / 21

Die Summe bleibt wie erwartet bei 1076.

**Nachtrag CI zu `4f546c0`:** grün, in den Job-Logs selbst nachgelesen. - Gate (Task 152): 111 Testdateien grün, `CHECK EXIT 0` - Suite (Task 153): `ALL PASSED – 1076 checks`, Smokes 24 / 19 / 21 Die Summe bleibt wie erwartet bei 1076.
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: meleki/feuerwerk#172