3c814b674f49f9a30d4b8d227e0fe7061a18766a braney Tue Sep 1 09:21:28 2026 -0700 registryPages: correlate the trackDb settings docs with the cart, refs #37908 #37838 Two files in the tree say which track types a setting applies to, and they were written from different evidence. trackDbLibrary.shtml carries a hand-written types list per setting, which is what #37908 has been correcting. cartTrackVarCatalog files each cart variable under the config function that reads it and records the trackDb types that function serves, which came from reading hui.c and the per-type Ui functions. Where a trackDb setting and a cart variable are the same knob, the two are answering the same question, so they can be compared. 60 of the 261 documented settings have a runtime override. 46 of those pairs are comparable, 12 agree exactly, and 28 have a type the config code serves that the docs do not list. The output is a candidate list, not a verdict, and the page says so. Two known false-positive shapes are called out on it: a variable read by two config functions collects the types of both, and a pair joined by tdbDefault rather than by name is weaker evidence, so those are reported separately. Also factors the palette and the shared reset out of venn.css and index.css into tokens.css, since a third page now needs them. diff --git src/hg/utils/registryPages/tokens.css src/hg/utils/registryPages/tokens.css new file mode 100644 index 00000000000..72cbc3d95af --- /dev/null +++ src/hg/utils/registryPages/tokens.css @@ -0,0 +1,52 @@ +/* tokens.css - the palette and type both registry pages share. + Light is defined on bare :root; the dark values are repeated under the media + query and under the [data-theme] stamp, so the viewer's own choice wins in + both directions and a viewer on the default "system" setting still gets a + complete palette. + + The four registry colors are slots 1, 4, 6 and 5 of the browser data-viz + categorical palette, chosen because all four have to be told apart at once + in the Venn: they clear the all-pairs colorblind and normal-vision gates in + both light and dark. Every name also carries a text label, which is what + the contrast warning on the light yellow and pink asks for. */ +:root{ + color-scheme: light; + --bg:#f4f6f8; --panel:#ffffff; --ink:#131a20; --ink2:#4a5a66; --ink3:#7c8b95; + --rule:#dbe2e8; --rule2:#eaeff3; --chipbg:#eef2f5; --chiphov:#e0e7ec; + --track:#e87ba4; --url:#2a78d6; --file:#008300; --conf:#eda100; + --s-track:#e87ba4; --s-url:#2a78d6; --s-file:#008300; --s-conf:#eda100; + --tdb:#4a3aa7; + --fill:0.11; + --tipbg:#1b2429; --tipink:#eef3f6; --tipink2:#a9bcc6; --tipline:#33434c; + --display:"Archivo","Helvetica Neue",Arial,sans-serif; + --body:"IBM Plex Serif",Georgia,"Times New Roman",serif; + --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; +} +@media (prefers-color-scheme: dark){ + :root:not([data-theme="light"]){ + color-scheme: dark; + --bg:#171a1d; --panel:#1e2226; --ink:#e9edf1; --ink2:#a8b4bd; --ink3:#7b8891; + --rule:#2d353b; --rule2:#262d33; --chipbg:#242b31; --chiphov:#303941; + --track:#d55181; --url:#3987e5; --file:#008300; --conf:#c98500; + --s-track:#d55181; --s-url:#3987e5; --s-file:#008300; --s-conf:#c98500; + --tdb:#9085e9; + --fill:0.17; + --tipbg:#0d1114; --tipink:#eef3f6; --tipink2:#9fb0ba; --tipline:#2a353c; + } +} +:root[data-theme="dark"]{ + color-scheme: dark; + --bg:#171a1d; --panel:#1e2226; --ink:#e9edf1; --ink2:#a8b4bd; --ink3:#7b8891; + --rule:#2d353b; --rule2:#262d33; --chipbg:#242b31; --chiphov:#303941; + --track:#d55181; --url:#3987e5; --file:#008300; --conf:#c98500; + --s-track:#d55181; --s-url:#3987e5; --s-file:#008300; --s-conf:#c98500; + --tdb:#9085e9; + --fill:0.17; + --tipbg:#0d1114; --tipink:#eef3f6; --tipink2:#9fb0ba; --tipline:#2a353c; +} + +*{box-sizing:border-box} +a{color:inherit; text-underline-offset:3px; text-decoration-thickness:1px; + text-decoration-color:var(--url)} +a:hover{text-decoration-color:currentColor} +a:focus-visible{outline:2px solid var(--url); outline-offset:2px; border-radius:2px}