Terminal-Chrome, das nichts einfärbt
Eine Kopf- und eine Fussleiste für Terminals. Reine Graustufen, harte Kanten, Haarlinien statt Flächen. Kein Farbton trägt Bedeutung — der einzige laute Ton, den das System kennt, ist die Umkehrung von Schrift und Grund.
Nicht abgebildet, sondern angeschlossen
Alles unten ist dieselbe Layout-Engine, die auch die SVG-Dateien erzeugt hat. Drehen Sie an den Reglern — die Leisten rechnen ihr Layout bei jedem Wert neu.
Drei Regeln, aus denen alles Übrige folgt
Rot für Fehler funktioniert nur, solange nichts anderes rot ist. In einer Statusleiste mit neun Segmenten ist das nie lange der Fall. Termbar Mono verzichtet deshalb ganz auf Farbton und arbeitet mit sechs Graustufen.
Was dringend ist, tauscht Schrift und Grund. Ein invertierter Block sticht stärker heraus als jeder Farbakzent, kostet keine Bedeutungsebene und funktioniert in beiden Themes identisch.
Segmente werden durch eine 1-px-Linie geschieden, oben wie unten um 10 px eingerückt. Sie trennt, ohne zu rahmen. Powerline-Pfeile, Kapseln und abgesetzte Flächen sind bewusst nicht Teil des Systems.
Anatomie
Ein Segment trägt höchstens drei Rollen: einen Glyphen, eine Marke und einen Messwert. Wer eine vierte braucht, braucht ein zweites Segment.
| Grösse | Wert | Begründung |
|---|---|---|
| Höhe Kopfleiste | 36 px | Vier Einheiten des 9-px-Rasters; nimmt den 18-px-Inversionsblock mit 9 px Luft auf. |
| Höhe Fussleiste | 32 px | Bewusst niedriger — der Fuss ist Zustand, nicht Ort, und darf nachrangig wirken. |
| Schriftgrad | 12 px | Kleinste Grösse, die als Monospace auf 1× noch pixelgenau sitzt. |
| Zeichenvorschub | 7.2 px | 0.6 em. Über textLength gesperrt, damit jede Monospace gleich breit setzt. |
| Innenabstand | 12 px | Abstand von der Haarlinie zum ersten Atom. |
| Atomabstand | 8 px | Zwischen Glyph, Marke und Wert; enger gesetzte Paare nutzen 5–7 px. |
| Glyphenfeld | 13 px | Zeichnung in 12 × 12, um 1.08 skaliert — so steht der Glyph auf der Versalhöhe. |
| Einrückung Haarlinie | 10 px | Oben und unten. Die Linie trennt, berührt aber nie die Kante. |
| Tick-Meter | 8 × 3 px | Acht harte Blöcke, 2 px Fuge. Auflösung 12.5 % — mehr suggeriert falsche Genauigkeit. |
Dreizehn Zeichen, alle im selben 12 × 12-Feld konstruiert, ausschliesslich aus Geraden und Quadraten. Knoten sind nie rund, Kanten nie weich.
Eine Statusleiste hat genau eine Zeile — sie darf nicht umbrechen. Wird es eng, fällt das jeweils entbehrlichste Segment weg. Ort, Branch und Exit-Code stehen am längsten; Akku, Load und Netz gehen zuerst.
Status ohne Farbe
Drei Stufen, drei Gewichte. Die Leiste wird nicht bunter, sondern schwerer.
Die ganze Palette
Sechs Werte, gebunden an die Token von mzone-ui. Im hellen Theme dreht sich die Rampe um — die Bar bleibt dieselbe Zeichnung.
Einbauen
Als Bild, ohne alles Weitere
Die drei Dateien liegen als Assets im Publisher. Sie sind inert: kein Script, keine Ereignis-Attribute, keine externen Verweise — sie lassen sich ungelesen kopieren.
Fensterzeichen, Shell, Pfad, Benutzer · Branch, Ahead/Behind, Diff, Dirty.
Asset öffnenModus, CPU, Speicher, Load, Akku · Netz, Meldungen, Exit-Code, Uhr.
Asset öffnen
termbar, statusbar,
brutalist, glyphs —
über fullTextSearch auffindbar.
Zwei Wege, ein Ergebnis
<!-- Als Bild: greift auf die Dark-Fallbacks zurueck --> <img src="/published/asset-termbar-mono-header/asset.svg" alt="Terminal-Kopfleiste"> <!-- Inline: erbt die Token der Seite und wechselt mit dem Theme mit --> <svg viewBox="0 0 1200 36" ...> <rect fill="var(--mz-surface, #10161d)" ... /> </svg>
Jede Farbe steht als var(--mz-token, dark-wert). Inline
in einer mzone-Seite themt die Bar mit; per <img>
geladen greift der Fallback, und das Bild sieht aus wie das Artefakt, aus dem es stammt.
Was geprüft ist
Messwerte stehen mit #e9edf2 auf #10161d — Verhältnis rund 15:1. Marken erreichen mit #7f8a99 rund 5:1 und liegen damit über der Schwelle für Fliesstext, obwohl sie nur Beschriftung sind.
Kein Zustand hängt an einem Farbton. Die Leiste ist unter jeder Form von Farbfehlsichtigkeit und in Graustufendruck identisch interpretierbar.
Alle Textbreiten sind über textLength gesperrt.
Fehlt die Wunschschrift, verschiebt sich nichts — es wird nur anders gezeichnet.
Die SVG-Assets tragen role="img" mit
<title> und <desc>.
Die Demo oben meldet jeden Zustandswechsel zusätzlich über eine
aria-live-Zeile.