change: Falt-Voreinstellung wird ein Umschalter, Schwelle ab M abwärts (D44)
Statt eines Aufklapp-Menüs mit zwei Einträgen jetzt ein Umschalter neben „verworfene einblenden" und „günstigster Pfad". Die beiden Einträge waren nie unabhängige Befehle, sondern die zwei Stellungen einer Sache — jeder beschreibt einen vollständigen Faltzustand, zusammen decken sie ihn ab. Die Schwelle schließt M jetzt ein (atMostM statt belowM): Ein M-Paket ist selbst noch die Einheit, die man als Ganzes plant, seine Zerlegung ist schon das Innere. Offen bleiben L, XL, XXL — und Knoten ohne Größenangabe. Der Zustand des Knopfes wird bei jedem Rendern am Baum abgelesen, nicht gemerkt: Klappt jemand danach einen Knoten von Hand um, springt er von selbst heraus, statt etwas zu behaupten, das nicht mehr stimmt. Deshalb auch nicht persistiert — der Faltzustand steht im Text. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
9bbe7d78cc
commit
417006960f
@@ -21,12 +21,13 @@ export function needsBreakdown(n){
|
||||
return !!n.size && SIZE_RANK[n.size] >= SIZE_RANK.M && !n.children.length;
|
||||
}
|
||||
|
||||
/* Faltung-Voreinstellung „alles unter Größe M zuklappen" (SPEC §9, D44):
|
||||
Knoten mit ANGEGEBENER Größe kleiner als M. Fehlt die Angabe, wird nichts
|
||||
angenommen — der günstigste Pfad rechnet sie zwar als M (D18), das ist aber
|
||||
eine Kostenannahme des Werkzeugs und keine Aussage des Autors; danach den
|
||||
Baum zuzuklappen hieße, eine Vermutung wie eine Angabe zu behandeln. */
|
||||
export function belowM(n){ return !!n.size && SIZE_RANK[n.size] < SIZE_RANK.M; }
|
||||
/* Faltung-Voreinstellung „Größe M und kleiner zuklappen" (SPEC §9, D44):
|
||||
Knoten mit ANGEGEBENER Größe bis einschließlich M — offen bleiben also nur
|
||||
L, XL, XXL. Fehlt die Angabe, wird nichts angenommen: Der günstigste Pfad
|
||||
rechnet sie zwar als M (D18), das ist aber eine Kostenannahme des Werkzeugs
|
||||
und keine Aussage des Autors; danach den Baum zuzuklappen hieße, eine
|
||||
Vermutung wie eine Angabe zu behandeln. */
|
||||
export function atMostM(n){ return !!n.size && SIZE_RANK[n.size] <= SIZE_RANK.M; }
|
||||
|
||||
/* Sichtbare Kinder: verworfene ausblenden, außer showDiscarded ist gesetzt. */
|
||||
export function visibleChildren(n, showDiscarded){
|
||||
|
||||
Reference in New Issue
Block a user