Files
onyx/Packages/OnyxKit/Sources/NetworkProvider/Localizable.xcstrings
Scarriffle 2aa60eedf9 Farben einstellbar — und erst mal überhaupt eine Farbe
Das Grün, das überall auftauchte, war die System-Akzentfarbe: `.tint` und
`.accentColor` werden ohne eigene Angabe dorthin durchgereicht, und das
betraf alle Popovers und das ganze Einstellungsfenster. Die Notch-Widgets
dagegen benutzten Onyx' eigenes Blau. Zwei Farben, ungewollt.

Jetzt eine, und die ist einstellbar. Ein neuer Reiter „Farben": Akzentfarbe
mit sechs Vorschlägen und einem Knopf, der die Systemfarbe übernimmt, dazu
das Paar für Herunter- und Hochladen samt Tauschknopf.

Die Signalfarben bleiben fest und stehen nur zur Ansicht dort. Gelb heißt
Warnung, Rot heißt kritisch, Grün heißt in Ordnung — bei Temperatur, Akku,
Lüfter und Fehlern. Wer sie umstellen kann, kann ihre Bedeutung zerstören;
ein rotes „alles gut" liest niemand richtig. Sichtbar sind sie trotzdem,
sonst sucht man die Warnfarbe im Reiter und findet sie nirgends.

Umgesetzt über die Tokens statt über vierzig Fundstellen: `Onyx.Color.accent`
ist keine Konstante mehr, sondern liest bei jedem Zugriff aus `OnyxTheme`.
Damit merkt SwiftUI die Abhängigkeit und zeichnet neu, sobald die Farbe sich
ändert. Dazu ein `.tint` an den vier Wurzeln — Panel, Popovers, Einstellungen,
Einrichtung —, damit auch Haken, Regler und Auswahlfelder mitziehen.

Nebenbei die Beschriftung: „Je Programm" heißt jetzt „Programme". Großgesetzt
las sich das als englisches „J-E".

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-13 23:24:40 +02:00

377 lines
8.1 KiB
Plaintext

{
"sourceLanguage": "en",
"strings": {
"menubar.short.network": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Netz"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Net"
}
}
}
},
"network.addresses": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Adressen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Addresses"
}
}
}
},
"network.download": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Download"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Download"
}
}
}
},
"network.field.interface": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Schnittstelle"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Interface"
}
}
}
},
"network.field.ipv4": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "IP"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "IP"
}
}
}
},
"network.field.ipv6": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "IPv6"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "IPv6"
}
}
}
},
"network.field.router": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Router"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Router"
}
}
}
},
"network.name": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Netzwerk"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Network"
}
}
}
},
"network.offline": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Nicht verbunden"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Not connected"
}
}
}
},
"network.peak.download": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Spitze ↓"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Peak ↓"
}
}
}
},
"network.peak.upload": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Spitze ↑"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Peak ↑"
}
}
}
},
"network.perProcess.unavailable": {
"extractionState": "stale",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Durchsatz je Programm zeigt Onyx nicht: dafür gibt es ohne root keine Schnittstelle."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Onyx doesn't show per-app throughput: there is no interface for it without root."
}
}
}
},
"network.processes": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Programme"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Per app"
}
}
}
},
"network.public": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Öffentliche Adresse"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Public address"
}
}
}
},
"network.public.enable": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Öffentliche IP anzeigen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Show public IP"
}
}
}
},
"network.public.failed": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Nicht abrufbar"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Unavailable"
}
}
}
},
"network.public.hint": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Dafür fragt Onyx einen fremden Dienst — standardmäßig aus, weil ein Systemmonitor nicht ungefragt nach draußen telefonieren sollte."
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "This asks an external service — off by default, because a system monitor shouldn't phone home unasked."
}
}
}
},
"network.total.received": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Empfangen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Received"
}
}
}
},
"network.total.sent": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Gesendet"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Sent"
}
}
}
},
"network.transferred": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Übertragen"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Transferred"
}
}
}
},
"network.upload": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Upload"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Upload"
}
}
}
},
"network.vpn.active": {
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "Verkehr läuft durch einen Tunnel"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Traffic goes through a tunnel"
}
}
}
},
"network.wifi.connected": {
"comment": "Wenn der Netzwerkname mangels Ortungsberechtigung fehlt",
"localizations": {
"de": {
"stringUnit": {
"state": "translated",
"value": "WLAN verbunden"
}
},
"en": {
"stringUnit": {
"state": "translated",
"value": "Wi-Fi connected"
}
}
}
}
},
"version": "1.0"
}