meshcore-open/lib/l10n/app_localizations_de.dart

3497 lines
89 KiB
Dart
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// ignore: unused_import
import 'package:intl/intl.dart' as intl;
import 'app_localizations.dart';
// ignore_for_file: type=lint
/// The translations for German (`de`).
class AppLocalizationsDe extends AppLocalizations {
AppLocalizationsDe([String locale = 'de']) : super(locale);
@override
String get appTitle => 'MeshCore Open';
@override
String get nav_contacts => 'Kontakte';
@override
String get nav_channels => 'Kanäle';
@override
String get nav_map => 'Karte';
@override
String get common_cancel => 'Abbrechen';
@override
String get common_ok => 'OK';
@override
String get common_connect => 'Verbinden';
@override
String get common_unknownDevice => 'Unbekanntes Gerät';
@override
String get common_save => 'Speichern';
@override
String get common_delete => 'Löschen';
@override
String get common_deleteAll => 'Alles löschen';
@override
String get common_close => 'Schließen';
@override
String get common_edit => 'Bearbeiten';
@override
String get common_add => 'Hinzufügen';
@override
String get common_settings => 'Einstellungen';
@override
String get common_disconnect => 'Trennen';
@override
String get common_connected => 'Verbunden';
@override
String get common_disconnected => 'Getrennt';
@override
String get common_create => 'Erstellen';
@override
String get common_continue => 'Fortfahren';
@override
String get common_share => 'Teilen';
@override
String get common_copy => 'Kopieren';
@override
String get common_retry => 'Versuchen';
@override
String get common_hide => 'Ausblenden';
@override
String get common_remove => 'Löschen';
@override
String get common_enable => 'Aktivieren';
@override
String get common_disable => 'Deaktivieren';
@override
String get common_reboot => 'Neustart';
@override
String get common_loading => 'Laden...';
@override
String get common_notAvailable => '';
@override
String common_voltageValue(String volts) {
return '$volts V';
}
@override
String common_percentValue(int percent) {
return '$percent%';
}
@override
String get scanner_title => 'MeshCore Open';
@override
String get connectionChoiceUsbLabel => 'USB';
@override
String get connectionChoiceBluetoothLabel => 'Bluetooth';
@override
String get connectionChoiceTcpLabel => 'TCP';
@override
String get tcpScreenTitle => 'Verbinden über TCP';
@override
String get tcpHostLabel => 'IP-Adresse';
@override
String get tcpHostHint => '192.168.40.10';
@override
String get tcpPortLabel => 'Port';
@override
String get tcpPortHint => '5000';
@override
String get tcpStatus_notConnected =>
'Geben Sie den Endpunkt ein und verbinden Sie sich.';
@override
String tcpStatus_connectingTo(String endpoint) {
return 'Verbindung zu $endpoint...';
}
@override
String get tcpErrorHostRequired => 'Eine IP-Adresse ist erforderlich.';
@override
String get tcpErrorPortInvalid =>
'Die Portnummer muss zwischen 1 und 65535 liegen.';
@override
String get tcpErrorUnsupported =>
'Die TCP-Übertragung wird auf dieser Plattform nicht unterstützt.';
@override
String get tcpErrorTimedOut => 'Die TCP-Verbindung ist abgelaufen.';
@override
String tcpConnectionFailed(String error) {
return 'Fehler beim TCP-Verbindungsaufbau: $error';
}
@override
String get usbScreenTitle => 'Verbinden über USB';
@override
String get usbScreenSubtitle =>
'Wählen Sie ein erkannten serielles Gerät aus und verbinden Sie es direkt mit Ihrem MeshCore-Knoten.';
@override
String get usbScreenStatus => 'Wählen Sie ein USB-Gerät aus';
@override
String get usbScreenNote =>
'Die USB-Serielle Schnittstelle ist auf unterstützten Android-Geräten und Desktop-Plattformen aktiv.';
@override
String get usbScreenEmptyState =>
'Keine USB-Geräte gefunden. Schließen Sie eines an und aktualisieren Sie.';
@override
String get usbErrorPermissionDenied =>
'Die USB-Berechtigung wurde abgelehnt.';
@override
String get usbErrorDeviceMissing =>
'Das ausgewählte USB-Gerät ist nicht mehr verfügbar.';
@override
String get usbErrorInvalidPort => 'Wählen Sie ein gültiges USB-Gerät aus.';
@override
String get usbErrorBusy =>
'Eine weitere Anfrage für eine USB-Verbindung ist bereits in Bearbeitung.';
@override
String get usbErrorNotConnected => 'Es ist kein USB-Gerät angeschlossen.';
@override
String get usbErrorOpenFailed =>
'Fehlgeschlagen beim Öffnen des ausgewählten USB-Geräts.';
@override
String get usbErrorConnectFailed =>
'Keine Verbindung zum ausgewählten USB-Gerät hergestellt.';
@override
String get usbErrorUnsupported =>
'Die USB-Serielle Schnittstelle wird auf dieser Plattform nicht unterstützt.';
@override
String get usbErrorAlreadyActive =>
'Eine USB-Verbindung ist bereits hergestellt.';
@override
String get usbErrorNoDeviceSelected => 'Kein USB-Gerät wurde ausgewählt.';
@override
String get usbErrorPortClosed => 'Die USB-Verbindung ist nicht aktiv.';
@override
String get usbErrorConnectTimedOut =>
'Verbindung konnte nicht hergestellt werden. Stellen Sie sicher, dass das Gerät die entsprechende USB-Firmware enthält.';
@override
String get usbFallbackDeviceName => 'Web-Serielle Geräte';
@override
String get usbStatus_notConnected => 'Wählen Sie ein USB-Gerät aus';
@override
String get usbStatus_connecting => 'Verbindung zum USB-Gerät...';
@override
String get usbStatus_searching => 'Suche nach USB-Geräten...';
@override
String usbConnectionFailed(String error) {
return 'Fehler beim USB-Verbindungsaufbau: $error';
}
@override
String get scanner_scanning => 'Scannen nach Geräten...';
@override
String get scanner_connecting => 'Verbunden...';
@override
String get scanner_disconnecting => 'Trenne...';
@override
String get scanner_notConnected => 'Nicht verbunden';
@override
String scanner_connectedTo(String deviceName) {
return 'Verbunden mit $deviceName';
}
@override
String get scanner_searchingDevices => 'Suche nach MeshCore-Geräten...';
@override
String get scanner_tapToScan =>
'Tippen Sie auf Scan, um MeshCore-Geräte zu finden.';
@override
String scanner_connectionFailed(String error) {
return 'Verbindungsfehler: $error';
}
@override
String get scanner_stop => 'Stopp';
@override
String get scanner_scan => 'Scannen';
@override
String get scanner_bluetoothOff => 'Bluetooth ist deaktiviert.';
@override
String get scanner_bluetoothOffMessage =>
'Bitte aktivieren Sie Bluetooth, um nach Geräten zu suchen.';
@override
String get scanner_chromeRequired => 'Chrome Browser erforderlich';
@override
String get scanner_chromeRequiredMessage =>
'Diese Webanwendung erfordert Google Chrome oder einen Chromium-basierten Browser für die Bluetooth-Unterstützung.';
@override
String get scanner_enableBluetooth => 'Bluetooth aktivieren';
@override
String get device_quickSwitch => 'Schnelles Umschalten';
@override
String get device_meshcore => 'MeshCore';
@override
String get settings_title => 'Einstellungen';
@override
String get settings_deviceInfo => 'Geräteinformationen';
@override
String get settings_appSettings => 'App-Einstellungen';
@override
String get settings_appSettingsSubtitle =>
'Benachrichtigungen, Messaging und Kartenwahrnehmung';
@override
String get settings_nodeSettings => 'Knoten-Einstellungen';
@override
String get settings_nodeName => 'Knotenname';
@override
String get settings_nodeNameNotSet => 'Nicht festgelegt';
@override
String get settings_nodeNameHint => 'Gebe den Knotenamen ein';
@override
String get settings_nodeNameUpdated => 'Name aktualisiert';
@override
String get settings_radioSettings => 'Funk Einstellungen';
@override
String get settings_radioSettingsSubtitle =>
'Frequenz, Leistung, Verbreitungsfaktor';
@override
String get settings_radioSettingsUpdated => 'Funkparameter aktualisiert';
@override
String get settings_location => 'Ort';
@override
String get settings_locationSubtitle => 'GPS-Koordinaten';
@override
String get settings_locationUpdated => 'Ort aktualisiert';
@override
String get settings_locationBothRequired =>
'Bitte geben Sie sowohl Breite als auch Längengrad ein.';
@override
String get settings_locationInvalid => 'Ungültige Breiten- oder Längengrade.';
@override
String get settings_locationGPSEnable => 'GPS aktivieren';
@override
String get settings_locationGPSEnableSubtitle =>
'Aktiviert GPS zur automatischen Aktualisierung des Standorts.';
@override
String get settings_locationIntervalSec => 'Intervall für GPS (Sekunden)';
@override
String get settings_locationIntervalInvalid =>
'Das Intervall muss mindestens 60 Sekunden und weniger als 86400 Sekunden betragen.';
@override
String get settings_latitude => 'Breitengrad';
@override
String get settings_longitude => 'Längengrad';
@override
String get settings_contactSettings => 'Kontakteinstellungen';
@override
String get settings_contactSettingsSubtitle =>
'Einstellungen für das Hinzufügen von Kontakten';
@override
String get settings_privacyMode => 'Privatsphäreeinstellung';
@override
String get settings_privacyModeSubtitle =>
'Verstecken Sie Name/Ort in Ankündigungen';
@override
String get settings_privacyModeToggle =>
'Aktivieren Sie die Privatsphäreeinstellung, um Ihren Namen und Ihre Standortdaten in Ankündigungen zu verbergen.';
@override
String get settings_privacyModeEnabled => 'Datenschutzmodus aktiviert';
@override
String get settings_privacyModeDisabled => 'Datenschutzmodus deaktiviert';
@override
String get settings_privacy => 'Datenschutzeinstellungen';
@override
String get settings_privacySubtitle =>
'Steuern Sie die Informationen, die freigegeben werden.';
@override
String get settings_privacySettingsDescription =>
'Wählen Sie die Informationen, die Ihr Gerät mit anderen teilt.';
@override
String get settings_denyAll => 'Alle ablehnen';
@override
String get settings_allowByContact => 'Zulassen durch Kontaktflaggen';
@override
String get settings_allowAll => 'Alles zulassen';
@override
String get settings_telemetryBaseMode => 'Telemetrie-Basismodus';
@override
String get settings_telemetryLocationMode => 'Telemetrie-Ortsmodus';
@override
String get settings_telemetryEnvironmentMode => 'Telemetrie-Umgebungsmodus';
@override
String get settings_advertLocation => 'Anzeigenort';
@override
String get settings_advertLocationSubtitle =>
'Ort in der Anzeige einbeziehen';
@override
String settings_multiAck(String value) {
return 'Mehrfach-Bestätigungen: $value';
}
@override
String get settings_telemetryModeUpdated => 'Telemetriemodus aktualisiert';
@override
String get settings_actions => 'Aktionen';
@override
String get settings_sendAdvertisement => 'Sende Ankündigung';
@override
String get settings_sendAdvertisementSubtitle => 'Sende eine Ankündigung';
@override
String get settings_advertisementSent => 'Ankündigung gesendet';
@override
String get settings_syncTime => 'Zeitsynchronisierung';
@override
String get settings_syncTimeSubtitle =>
'Stelle die Gerätezeit auf die Uhrzeit des Telefons ein';
@override
String get settings_timeSynchronized => 'Zeit synchronisiert';
@override
String get settings_refreshContacts => 'Kontakte aktualisieren';
@override
String get settings_refreshContactsSubtitle =>
'Kontakt-Liste vom Gerät neu laden';
@override
String get settings_rebootDevice => 'Gerät neu starten';
@override
String get settings_rebootDeviceSubtitle => 'MeshCore-Gerät neu starten';
@override
String get settings_rebootDeviceConfirm =>
'Sind Sie sicher, dass Sie das Gerät neu starten möchten? Sie werden getrennt.';
@override
String get settings_debug => 'Fehlerbehebung';
@override
String get settings_bleDebugLog => 'BLE-Debug-Protokoll';
@override
String get settings_bleDebugLogSubtitle =>
'BLE-Befehle, Antworten und Rohdaten';
@override
String get settings_appDebugLog => 'App-Debug-Protokoll';
@override
String get settings_appDebugLogSubtitle => 'Anwendung Debug-Nachrichten';
@override
String get settings_about => 'Über';
@override
String settings_aboutVersion(String version) {
return 'MeshCore Open v$version';
}
@override
String get settings_aboutLegalese => 'MeshCore Open Source Projekt 2026';
@override
String get settings_aboutDescription =>
'Ein Open-Source-Flutter-Client für MeshCore LoRa-Meshnetzwerkgeräte.';
@override
String get settings_aboutOpenMeteoAttribution =>
'LOS-Höhendaten: Open-Meteo (CC BY 4.0)';
@override
String get settings_infoName => 'Name';
@override
String get settings_infoId => 'ID';
@override
String get settings_infoStatus => 'Status';
@override
String get settings_infoBattery => 'Akku';
@override
String get settings_infoPublicKey => 'Öffentlicher Schlüssel';
@override
String get settings_infoContactsCount => 'Anzahl Kontakte';
@override
String get settings_infoChannelCount => 'Anzahl Kanäle';
@override
String get settings_presets => 'Voreinstellungen';
@override
String get settings_frequency => 'Frequenz (MHz)';
@override
String get settings_frequencyHelper => '300,00 - 2.500,00';
@override
String get settings_frequencyInvalid => 'Ungültige Frequenz (300-2500 MHz)';
@override
String get settings_bandwidth => 'Bandbreite';
@override
String get settings_spreadingFactor => 'Verteilungsfaktor';
@override
String get settings_codingRate => 'Kodierungsrate';
@override
String get settings_txPower => 'TX-Leistung (dBm)';
@override
String get settings_txPowerHelper => '0 - 22';
@override
String get settings_txPowerInvalid => 'Ungültige TX-Leistung (0-22 dBm)';
@override
String get settings_clientRepeat => 'Wiederholung, ohne Stromanschluss';
@override
String get settings_clientRepeatSubtitle =>
'Ermöglichen Sie diesem Gerät, Mesh-Pakete für andere zu wiederholen.';
@override
String get settings_clientRepeatFreqWarning =>
'Die Kommunikation ohne Stromversorgung erfordert Frequenzen von 433, 869 oder 918 MHz.';
@override
String settings_error(String message) {
return 'Fehler: $message';
}
@override
String get appSettings_title => 'App-Einstellungen';
@override
String get appSettings_appearance => 'Aussehen';
@override
String get appSettings_theme => 'Theme';
@override
String get appSettings_themeSystem => 'Systemstandard';
@override
String get appSettings_themeLight => 'Hell';
@override
String get appSettings_themeDark => 'Dunkel';
@override
String get appSettings_language => 'Sprache';
@override
String get appSettings_languageSystem => 'Systemstandard';
@override
String get appSettings_languageEn => 'English';
@override
String get appSettings_languageFr => 'Français';
@override
String get appSettings_languageEs => 'Español';
@override
String get appSettings_languageDe => 'Deutsch';
@override
String get appSettings_languagePl => 'Polski';
@override
String get appSettings_languageSl => 'Slovenščina';
@override
String get appSettings_languagePt => 'Português';
@override
String get appSettings_languageIt => 'Italiano';
@override
String get appSettings_languageZh => '中文';
@override
String get appSettings_languageSv => 'Svenska';
@override
String get appSettings_languageNl => 'Nederlands';
@override
String get appSettings_languageSk => 'Slovenčina';
@override
String get appSettings_languageBg => 'Български';
@override
String get appSettings_languageRu => 'Russisch';
@override
String get appSettings_languageUk => 'Ukrainisch';
@override
String get appSettings_enableMessageTracing =>
'Nachrichtenverfolgung aktivieren';
@override
String get appSettings_enableMessageTracingSubtitle =>
'Detaillierte Routing- und Timing-Metadaten für Nachrichten anzeigen';
@override
String get appSettings_notifications => 'Benachrichtigungen';
@override
String get appSettings_enableNotifications => 'Benachrichtigungen aktivieren';
@override
String get appSettings_enableNotificationsSubtitle =>
'Erhalte Benachrichtigungen für Nachrichten und Ankündigungen';
@override
String get appSettings_notificationPermissionDenied =>
'Erlaubnis zur Benachrichtigung verweigert';
@override
String get appSettings_notificationsEnabled => 'Benachrichtigungen aktiviert';
@override
String get appSettings_notificationsDisabled =>
'Benachrichtigungen deaktiviert';
@override
String get appSettings_messageNotifications =>
'Direktnachrichten Benachrichtigungen';
@override
String get appSettings_messageNotificationsSubtitle =>
'Zeige Benachrichtigung beim Empfang neuer Direktnachrichten';
@override
String get appSettings_channelMessageNotifications =>
'Kanalnachrichten Benachrichtigungen';
@override
String get appSettings_channelMessageNotificationsSubtitle =>
'Zeige Benachrichtigung beim Empfangen von Kanalnachrichten';
@override
String get appSettings_advertisementNotifications =>
'Ankündigungsbenachrichtigungen';
@override
String get appSettings_advertisementNotificationsSubtitle =>
'Zeige Benachrichtigung, wenn neue Knoten entdeckt werden.';
@override
String get appSettings_messaging => 'Nachrichten';
@override
String get appSettings_clearPathOnMaxRetry =>
'Lösche Pfade bei Max Wiederholungsversuchen';
@override
String get appSettings_clearPathOnMaxRetrySubtitle =>
'Zurücksetzen der Kontaktpfade nach 5 fehlgeschlagenen Sendeabbrüchen';
@override
String get appSettings_pathsWillBeCleared =>
'Die Pfade werden nach 5 fehlgeschlagenen Versuchen gelöscht.';
@override
String get appSettings_pathsWillNotBeCleared =>
'Die Pfade werden nicht automatisch gelöscht.';
@override
String get appSettings_autoRouteRotation => 'Automatische Routenrotation';
@override
String get appSettings_autoRouteRotationSubtitle =>
'Wechseln zwischen den besten Pfaden und dem Fluten';
@override
String get appSettings_autoRouteRotationEnabled =>
'Automatische Routenrotation aktiviert';
@override
String get appSettings_autoRouteRotationDisabled =>
'Automatische Routenrotation deaktiviert';
@override
String get appSettings_maxRouteWeight => 'Maximale Gesamtstreckenlänge';
@override
String get appSettings_maxRouteWeightSubtitle =>
'Maximales Gewicht, das ein Weg durch erfolgreiche Lieferungen erreichen kann.';
@override
String get appSettings_initialRouteWeight => 'Anfangs-Streckengewicht';
@override
String get appSettings_initialRouteWeightSubtitle =>
'Ausgangsgewicht für neu entdeckte Pfade';
@override
String get appSettings_routeWeightSuccessIncrement =>
'Erhöhung des Erfolgsgewichts';
@override
String get appSettings_routeWeightSuccessIncrementSubtitle =>
'Gewicht, das einem Pfad nach erfolgreicher Lieferung hinzugefügt wird.';
@override
String get appSettings_routeWeightFailureDecrement =>
'Reduzierung des Gewichts bei Fehlern';
@override
String get appSettings_routeWeightFailureDecrementSubtitle =>
'Gewicht, das nach einem fehlgeschlagenen Versand von einem Weg entfernt wurde';
@override
String get appSettings_maxMessageRetries =>
'Maximale Anzahl an Wiederholungsversuchen';
@override
String get appSettings_maxMessageRetriesSubtitle =>
'Anzahl der Versuche, eine Nachricht erneut zu senden, bevor sie als fehlgeschlagen markiert wird.';
@override
String path_routeWeight(String weight, String max) {
return '$weight/$max';
}
@override
String get appSettings_battery => 'Akku';
@override
String get appSettings_batteryChemistry => 'Batteriechemie';
@override
String appSettings_batteryChemistryPerDevice(String deviceName) {
return 'Konfiguriert pro Gerät ($deviceName)';
}
@override
String get appSettings_batteryChemistryConnectFirst =>
'Verbinde ein Gerät, um zu wählen';
@override
String get appSettings_batteryNmc => '18650 NMC (3,04,2 V)';
@override
String get appSettings_batteryLifepo4 => 'LiFePO4 (2,63,65 V)';
@override
String get appSettings_batteryLipo => 'LiPo (3,04,2V)';
@override
String get appSettings_mapDisplay => 'Kartendarstellung';
@override
String get appSettings_showRepeaters => 'Zeige Repeater';
@override
String get appSettings_showRepeatersSubtitle =>
'Zeige Repeater-Knoten auf der Karte an';
@override
String get appSettings_showChatNodes => 'Zeige Chat-Knoten';
@override
String get appSettings_showChatNodesSubtitle =>
'Chat-Knoten auf der Karte anzeigen';
@override
String get appSettings_showOtherNodes => 'Zeige andere Knoten';
@override
String get appSettings_showOtherNodesSubtitle =>
'Andere Knotentypen auf der Karte anzeigen';
@override
String get appSettings_timeFilter => 'Zeitfilter';
@override
String get appSettings_timeFilterShowAll => 'Alle Knoten anzeigen';
@override
String appSettings_timeFilterShowLast(int hours) {
return 'Zeige Knoten der letzten $hours Stunden an';
}
@override
String get appSettings_mapTimeFilter => 'Karten Zeitfilter';
@override
String get appSettings_showNodesDiscoveredWithin =>
'Zeige Knoten, die innerhalb von:';
@override
String get appSettings_allTime => 'Ganzer Zeitverlauf';
@override
String get appSettings_lastHour => 'Letzte Stunde';
@override
String get appSettings_last6Hours => 'Letzte 6 Stunden';
@override
String get appSettings_last24Hours => 'Letzte 24 Stunden';
@override
String get appSettings_lastWeek => 'Letzte Woche';
@override
String get appSettings_offlineMapCache => 'Offline-Karten-Cache';
@override
String get appSettings_unitsTitle => 'Einheiten';
@override
String get appSettings_unitsMetric => 'Metrisch (m/km)';
@override
String get appSettings_unitsImperial => 'Imperial (ft/mi)';
@override
String get appSettings_noAreaSelected => 'Kein Bereich ausgewählt';
@override
String appSettings_areaSelectedZoom(int minZoom, int maxZoom) {
return 'Ausgewählte Fläche (Zoom $minZoom-$maxZoom)';
}
@override
String get appSettings_debugCard => 'Fehlerbehebung';
@override
String get appSettings_appDebugLogging => 'App-Debug-Protokollierung';
@override
String get appSettings_appDebugLoggingSubtitle =>
'Protokolliere App-Debug-Nachrichten zur Fehlerbehebung';
@override
String get appSettings_appDebugLoggingEnabled =>
'App-Debug-Protokollierung aktiviert';
@override
String get appSettings_appDebugLoggingDisabled =>
'App-Debug-Protokollierung deaktiviert';
@override
String get contacts_title => 'Kontakte';
@override
String get contacts_noContacts => 'Noch keine Kontakte vorhanden.';
@override
String get contacts_contactsWillAppear =>
'Kontakte werden angezeigt, wenn Geräte eine Ankündigung machen.';
@override
String get contacts_unread => 'Ungelesen';
@override
String get contacts_searchContactsNoNumber => 'Kontakte suchen...';
@override
String contacts_searchContacts(int number, String str) {
return 'Suche Kontakte...';
}
@override
String contacts_searchFavorites(int number, String str) {
return 'Suche $number$str Favoriten...';
}
@override
String contacts_searchUsers(int number, String str) {
return 'Suche $number$str Benutzer...';
}
@override
String contacts_searchRepeaters(int number, String str) {
return 'Suche $number$str Repeater...';
}
@override
String contacts_searchRoomServers(int number, String str) {
return 'Suche $number$str Raumserver...';
}
@override
String get contacts_noUnreadContacts => 'Keine ungesehene Kontakte';
@override
String get contacts_noContactsFound =>
'Keine Kontakte oder Gruppen gefunden.';
@override
String get contacts_deleteContact => 'Lösche den Kontakt';
@override
String contacts_removeConfirm(String contactName) {
return '$contactName aus den Kontakten entfernen?';
}
@override
String get contacts_manageRepeater => 'Repeater verwalten';
@override
String get contacts_manageRoom => 'Raum-Server verwalten';
@override
String get contacts_roomLogin => 'Raum-Login';
@override
String get contacts_openChat => 'Öffne Chat';
@override
String get contacts_editGroup => 'Gruppe bearbeiten';
@override
String get contacts_deleteGroup => 'Löschen Gruppe';
@override
String contacts_deleteGroupConfirm(String groupName) {
return 'Löschen von \"$groupName\"?';
}
@override
String get contacts_newGroup => 'Neue Gruppe';
@override
String get contacts_groupName => 'Gruppenname';
@override
String get contacts_groupNameRequired => 'Der Gruppennamen ist erforderlich.';
@override
String get contacts_groupNameReserved => 'Dieser Gruppenname ist reserviert';
@override
String contacts_groupAlreadyExists(String name) {
return 'Die Gruppe \"$name\" existiert bereits.';
}
@override
String get contacts_filterContacts => 'Filtert Kontakte...';
@override
String get contacts_noContactsMatchFilter =>
'Keine Kontakte passen zu Ihrem Filter';
@override
String get contacts_noMembers => 'Keine Mitglieder';
@override
String get contacts_lastSeenNow => 'kürzlich';
@override
String contacts_lastSeenMinsAgo(int minutes) {
return '~ $minutes Min.';
}
@override
String get contacts_lastSeenHourAgo => '~ 1 Std.';
@override
String contacts_lastSeenHoursAgo(int hours) {
return '~ $hours Std.';
}
@override
String get contacts_lastSeenDayAgo => '~ 1 Tag';
@override
String contacts_lastSeenDaysAgo(int days) {
return '~ $days Tage';
}
@override
String get contact_info => 'Kontaktinformationen';
@override
String get contact_settings => 'Kontakteinstellungen';
@override
String get contact_telemetry => 'Telemetrie';
@override
String get contact_lastSeen => 'Zuletzt gesehen';
@override
String get contact_clearChat => 'Chat löschen';
@override
String get contact_teleBase => 'Telemetriebasis';
@override
String get contact_teleBaseSubtitle =>
'Erlauben des Freigebens des Batteriestands und der grundlegenden Telemetrie';
@override
String get contact_teleLoc => 'Telemetrieort';
@override
String get contact_teleLocSubtitle => 'Teilen von Standortdaten zulassen';
@override
String get contact_teleEnv => 'Telemetrieumgebung';
@override
String get contact_teleEnvSubtitle =>
'Teilen von Umgebungsensordaten zulassen';
@override
String get channels_title => 'Kanäle';
@override
String get channels_noChannelsConfigured => 'Keine Kanäle konfiguriert';
@override
String get channels_addPublicChannel => 'Öffentlichen Kanal hinzufügen';
@override
String get channels_searchChannels => 'Suche Kanäle...';
@override
String get channels_noChannelsFound => 'Keine Kanäle gefunden';
@override
String channels_channelIndex(int index) {
return 'Kanal $index';
}
@override
String get channels_hashtagChannel => 'Hashtag-Kanal';
@override
String get channels_public => 'Öffentlich';
@override
String get channels_private => 'Privat';
@override
String get channels_publicChannel => 'Öffentlicher Kanal';
@override
String get channels_privateChannel => 'Privater Kanal';
@override
String get channels_editChannel => 'Kanal bearbeiten';
@override
String get channels_muteChannel => 'Kanal stummschalten';
@override
String get channels_unmuteChannel => 'Kanal Stummschaltung aufheben';
@override
String get channels_deleteChannel => 'Lösche den Kanal';
@override
String channels_deleteChannelConfirm(String name) {
return 'Löschen von \"$name\"? Dies kann nicht rückgängig gemacht werden.';
}
@override
String channels_channelDeleteFailed(String name) {
return 'Kanal $name konnte nicht gelöscht werden';
}
@override
String channels_channelDeleted(String name) {
return 'Kanal \"$name\" gelöscht';
}
@override
String get channels_addChannel => 'Kanal hinzufügen';
@override
String get channels_channelIndexLabel => 'Kanalindex';
@override
String get channels_channelName => 'Kanalname';
@override
String get channels_usePublicChannel => 'Verwende öffentlichen Kanal';
@override
String get channels_standardPublicPsk => 'Öffentliche Standard PSK';
@override
String get channels_pskHex => 'PSK (Hex)';
@override
String get channels_generateRandomPsk => 'Zufällige PSK generieren';
@override
String get channels_enterChannelName =>
'Bitte geben Sie einen Kanalnamen ein.';
@override
String get channels_pskMustBe32Hex =>
'Die PSK muss 32 hexadezimale Zeichen haben.';
@override
String channels_channelAdded(String name) {
return 'Kanal \"$name\" hinzugefügt';
}
@override
String channels_editChannelTitle(int index) {
return 'Bearbeiteter Kanal $index';
}
@override
String get channels_smazCompression => 'SMAZ-Komprimierung';
@override
String channels_channelUpdated(String name) {
return 'Kanal \"$name\" aktualisiert';
}
@override
String get channels_publicChannelAdded => 'Öffentlicher Kanal hinzugefügt';
@override
String get channels_sortBy => 'Sortiere nach';
@override
String get channels_sortManual => 'Manuell';
@override
String get channels_sortAZ => 'A bis Z';
@override
String get channels_sortLatestMessages => 'Letzte Nachrichten';
@override
String get channels_sortUnread => 'Ungelesen';
@override
String get channels_createPrivateChannel => 'Erstelle einen privaten Kanal';
@override
String get channels_createPrivateChannelDesc =>
'Verschlüsselt mit einem geheimen Schlüssel.';
@override
String get channels_joinPrivateChannel =>
'Treten Sie einem privaten Kanal bei';
@override
String get channels_joinPrivateChannelDesc =>
'Manuelle Eingabe eines geheimen Schlüssels.';
@override
String get channels_joinPublicChannel => 'Tritt dem öffentlichen Kanal bei';
@override
String get channels_joinPublicChannelDesc =>
'Jeder kann diesem Kanal beitreten.';
@override
String get channels_joinHashtagChannel =>
'Treten Sie einem Hashtag-Kanal bei';
@override
String get channels_joinHashtagChannelDesc =>
'Jeder kann sich bei Hashtag-Kanälen beteiligen.';
@override
String get channels_scanQrCode => 'Scannen Sie einen QR-Code';
@override
String get channels_scanQrCodeComingSoon => 'Bald verfügbar';
@override
String get channels_enterHashtag => 'Gib Hashtag ein';
@override
String get channels_hashtagHint => 'z.B. #team';
@override
String get chat_noMessages => 'Noch keine Nachrichten.';
@override
String get chat_sendMessageToStart => 'Eine Nachricht senden, um anzufangen.';
@override
String get chat_originalMessageNotFound => 'Originalmeldung nicht gefunden';
@override
String chat_replyingTo(String name) {
return 'Antworten an $name';
}
@override
String chat_replyTo(String name) {
return 'Antwort an $name';
}
@override
String get chat_location => 'Ort';
@override
String chat_sendMessageTo(String contactName) {
return 'Sende eine Nachricht an $contactName';
}
@override
String get chat_typeMessage => 'Eine Nachricht eingeben...';
@override
String chat_messageTooLong(int maxBytes) {
return 'Nachricht ist zu lang (max $maxBytes Bytes).';
}
@override
String get chat_messageCopied => 'Nachricht kopiert';
@override
String get chat_messageDeleted => 'Nachricht gelöscht';
@override
String get chat_retryingMessage => 'Versuche es erneut.';
@override
String chat_retryCount(int current, int max) {
return 'Versuche $current/$max';
}
@override
String get chat_sendGif => 'GIF senden';
@override
String get chat_reply => 'Beantworten';
@override
String get chat_addReaction => 'Reaktion hinzufügen';
@override
String get chat_me => 'Ich';
@override
String get emojiCategorySmileys => 'Emoticons';
@override
String get emojiCategoryGestures => 'Gesten';
@override
String get emojiCategoryHearts => 'Herz';
@override
String get emojiCategoryObjects => 'Objekte';
@override
String get gifPicker_title => 'Wähle ein GIF';
@override
String get gifPicker_searchHint => 'Suche nach GIFs...';
@override
String get gifPicker_poweredBy => 'Bereitgestellt von GIPHY';
@override
String get gifPicker_noGifsFound => 'Keine GIFs gefunden';
@override
String get gifPicker_failedLoad => 'GIF-Datei konnten nicht geladen werden.';
@override
String get gifPicker_failedSearch => 'Suche nach GIFs fehlgeschlagen';
@override
String get gifPicker_noInternet => 'Keine Internetverbindung';
@override
String get debugLog_appTitle => 'App-Debug-Protokoll';
@override
String get debugLog_bleTitle => 'BLE-Debug-Protokoll';
@override
String get debugLog_copyLog => 'Kopieren des Protokolls';
@override
String get debugLog_clearLog => 'Protokoll löschen';
@override
String get debugLog_copied => 'Debug-Protokoll kopiert';
@override
String get debugLog_bleCopied => 'BLE-Protokoll kopiert';
@override
String get debugLog_noEntries => 'No Debug-Protokolle noch verfügbar';
@override
String get debugLog_enableInSettings =>
'Aktivieren Sie das App-Debug-Logging in den Einstellungen';
@override
String get debugLog_frames => 'Rahmen';
@override
String get debugLog_rawLogRx => 'Roh-Log-RX';
@override
String get debugLog_noBleActivity => 'Bisher keine BLE-Aktivität';
@override
String debugFrame_length(int count) {
return 'Rahmenlänge: $count Bytes';
}
@override
String debugFrame_command(String value) {
return 'Befehl: 0x$value';
}
@override
String get debugFrame_textMessageHeader => 'Textnachrichten Frame:';
@override
String debugFrame_destinationPubKey(String pubKey) {
return '- Ziel-Public-Schlüssel: $pubKey';
}
@override
String debugFrame_timestamp(int timestamp) {
return '- Zeitstempel: $timestamp';
}
@override
String debugFrame_flags(String value) {
return '- Flags: 0x$value';
}
@override
String debugFrame_textType(int type, String label) {
return '- Textart: $type ($label)';
}
@override
String get debugFrame_textTypeCli => 'CLI';
@override
String get debugFrame_textTypePlain => 'Einfach';
@override
String debugFrame_text(String text) {
return '- Text: \"$text\"';
}
@override
String get debugFrame_hexDump => 'Hex-Dump:';
@override
String get chat_pathManagement => 'Pfadverwaltung';
@override
String get chat_ShowAllPaths => 'Alle Pfade anzeigen';
@override
String get chat_routingMode => 'Routenmodus';
@override
String get chat_autoUseSavedPath =>
'Automatisch (gespeicherten Pfad verwenden)';
@override
String get chat_forceFloodMode => 'Flut-Modus erzwingen';
@override
String get chat_recentAckPaths =>
'Aktuelle ACK-Pfade (antippen, um zu verwenden):';
@override
String get chat_pathHistoryFull =>
'Die Pfadhistorie ist voll. Entferne Einträge, um neue hinzuzufügen.';
@override
String get chat_hopSingular => 'Sprung';
@override
String get chat_hopPlural => 'Sprünge';
@override
String chat_hopsCount(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: 'Sprünge',
one: 'Sprung',
);
return '$count $_temp0';
}
@override
String get chat_successes => 'Erfolgreich';
@override
String get chat_removePath => 'Pfad entfernen';
@override
String get chat_noPathHistoryYet =>
'Keine Pfadhistorie vorhanden.\nSende eine Nachricht, um Pfade zu entdecken.';
@override
String get chat_pathActions => 'Pfadaktionen:';
@override
String get chat_setCustomPath => 'Lege benutzerdefinierten Pfad fest';
@override
String get chat_setCustomPathSubtitle => 'Manuellen Routenpfad festlegen';
@override
String get chat_clearPath => 'Pfad zurücksetzen';
@override
String get chat_clearPathSubtitle =>
'Setze Pfad zurück, erkenne neuen Pfad bei nächster Sendung.';
@override
String get chat_pathCleared =>
'Pfad zurückgesetzt. Nächste Nachricht wird Route neu entdecken.';
@override
String get chat_floodModeSubtitle =>
'Verwende den Routingschalter in der App-Leiste';
@override
String get chat_floodModeEnabled => 'Flutmodus aktiviert.';
@override
String get chat_fullPath => 'Vollständiger Pfad';
@override
String get chat_pathDetailsNotAvailable =>
'Die Pfaddetails sind noch nicht verfügbar. Versuchen Sie, eine Nachricht zu senden, um zu aktualisieren.';
@override
String chat_pathSetHops(int hopCount, String status) {
String _temp0 = intl.Intl.pluralLogic(
hopCount,
locale: localeName,
other: 'hops',
one: 'hop',
);
return 'Pfad gesetzt: $hopCount $_temp0 - $status';
}
@override
String get chat_pathSavedLocally =>
'Lokal Gespeichert. Bitte Verbinden zum Synchronisieren.';
@override
String get chat_pathDeviceConfirmed => 'Gerät bestätigt.';
@override
String get chat_pathDeviceNotConfirmed => 'Gerät noch nicht bestätigt.';
@override
String get chat_type => 'Gebe ein';
@override
String get chat_path => 'Pfad';
@override
String get chat_publicKey => 'Öffentlicher Schlüssel';
@override
String get chat_compressOutgoingMessages =>
'Komprimieren ausgehender Nachrichten';
@override
String get chat_floodForced => 'Geflutet (erzwungen)';
@override
String get chat_directForced => 'Direkt (erzwungen)';
@override
String chat_hopsForced(int count) {
return '$count Sprünge (erzwungen)';
}
@override
String get chat_floodAuto => 'Geflutet (automatisch)';
@override
String get chat_direct => 'Direkt';
@override
String get chat_poiShared => 'Geteilter POI';
@override
String chat_unread(int count) {
return 'Ungelesen: $count';
}
@override
String get chat_openLink => 'Link öffnen?';
@override
String get chat_openLinkConfirmation =>
'Möchten Sie diesen Link in Ihrem Browser öffnen?';
@override
String get chat_open => 'Öffnen';
@override
String chat_couldNotOpenLink(String url) {
return 'Link konnte nicht geöffnet werden: $url';
}
@override
String get chat_invalidLink => 'Ungültiges Link-Format';
@override
String get map_title => 'Karte';
@override
String get map_lineOfSight => 'Sichtlinie';
@override
String get map_losScreenTitle => 'Sichtlinie';
@override
String get map_noNodesWithLocation => 'Keine Knoten mit Standortdaten';
@override
String get map_nodesNeedGps =>
'Knoten müssen ihre GPS-Koordinaten teilen,\num auf der Karte zu erscheinen.';
@override
String map_nodesCount(int count) {
return 'Knoten: $count';
}
@override
String map_pinsCount(int count) {
return 'Pins: $count';
}
@override
String get map_chat => 'Benutzer';
@override
String get map_repeater => 'Repeater';
@override
String get map_room => 'Raum';
@override
String get map_sensor => 'Sensor';
@override
String get map_pinDm => 'Pin (Kontakt)';
@override
String get map_pinPrivate => 'Pin (Channel)';
@override
String get map_pinPublic => 'Pin (Public)';
@override
String get map_lastSeen => 'Letzte Sichtung';
@override
String get map_disconnectConfirm =>
'Sind Sie sicher, dass Sie sich von diesem Gerät trennen möchten?';
@override
String get map_from => 'Von';
@override
String get map_source => 'Quelle';
@override
String get map_flags => 'Flags';
@override
String get map_shareMarkerHere => 'Teilen Sie den Marker hier.';
@override
String get map_setAsMyLocation => 'Als meine aktuelle Position festlegen';
@override
String get map_pinLabel => 'Pin Name';
@override
String get map_label => 'Label';
@override
String get map_pointOfInterest => 'Punkt von Interesse';
@override
String get map_sendToContact => 'Senden an Kontakt';
@override
String get map_sendToChannel => 'Senden an Kanal';
@override
String get map_noChannelsAvailable => 'Keine Kanäle verfügbar';
@override
String get map_publicLocationShare => 'Öffentliche Standortfreigabe';
@override
String map_publicLocationShareConfirm(String channelLabel) {
return 'Sie werden kurz darauf einen Ort in $channelLabel teilen. Dieser Kanal ist öffentlich und jeder mit dem PSK kann ihn sehen.';
}
@override
String get map_connectToShareMarkers =>
'Verbinde ein Gerät, um Marker zu teilen';
@override
String get map_filterNodes => 'Knotenfilter';
@override
String get map_nodeTypes => 'Knotentypen';
@override
String get map_chatNodes => 'Chat-Knoten';
@override
String get map_repeaters => 'Repeater';
@override
String get map_otherNodes => 'Andere Knoten';
@override
String get map_showOverlaps => 'Überlappungen der Repeater-Taste';
@override
String get map_keyPrefix => 'Schlüsselpräfix';
@override
String get map_filterByKeyPrefix => 'Filter nach Schlüsselpräfix';
@override
String get map_publicKeyPrefix => 'Schlüsselpräfix';
@override
String get map_markers => 'Marker';
@override
String get map_showSharedMarkers => 'Zeige gemeinsam genutzte Marker';
@override
String get map_showGuessedLocations =>
'Zeige die vermuteten Knotenpositionen';
@override
String get map_showDiscoveryContacts => 'Entdeckungs-Kontakte anzeigen';
@override
String get map_guessedLocation => 'Geschätzter Ort';
@override
String get map_lastSeenTime => 'Letzte Sichtung';
@override
String get map_sharedPin => 'Gemeinsames Passwort';
@override
String get map_joinRoom => 'Beitreten Sie dem Raum';
@override
String get map_manageRepeater => 'Repeater verwalten';
@override
String get map_tapToAdd =>
'Tippen Sie auf Knoten, um sie zum Pfad hinzuzufügen.';
@override
String get map_runTrace => 'Pfadverlauf ausführen';
@override
String get map_runTraceWithReturnPath =>
'Auf dem gleichen Pfad zurückkehren.';
@override
String get map_removeLast => 'Letztes Entfernen';
@override
String get map_pathTraceCancelled => 'Pfadverfolgung abgebrochen.';
@override
String get mapCache_title => 'Offline-Karten-Cache';
@override
String get mapCache_selectAreaFirst =>
'Wählen Sie zuerst einen Bereich zum Zwischenspeichern aus.';
@override
String get mapCache_noTilesToDownload =>
'Keine Kacheln für diese Region zum Herunterladen verfügbar.';
@override
String get mapCache_downloadTilesTitle => 'Herunterladen von Kacheln';
@override
String mapCache_downloadTilesPrompt(int count) {
return 'Laden $count Kacheln für den Offline-Bereich herunter?';
}
@override
String get mapCache_downloadAction => 'Herunterladen';
@override
String mapCache_cachedTiles(int count) {
return 'Zwischengespeicherte $count Kacheln';
}
@override
String mapCache_cachedTilesWithFailed(int downloaded, int failed) {
return 'Zwischengespeicherte $downloaded Kacheln ($failed fehlgeschlagen)';
}
@override
String get mapCache_clearOfflineCacheTitle => 'Leere Offline-Cache';
@override
String get mapCache_clearOfflineCachePrompt =>
'Alle zwischengespeicherten Kartenraster entfernen?';
@override
String get mapCache_offlineCacheCleared => 'Offline-Cache gelöscht';
@override
String get mapCache_noAreaSelected => 'Kein Bereich ausgewählt';
@override
String get mapCache_cacheArea => 'Zwischenspeicherbereich';
@override
String get mapCache_useCurrentView => 'Aktuelle Ansicht verwenden';
@override
String get mapCache_zoomRange => 'Zoom Bereich';
@override
String mapCache_estimatedTiles(int count) {
return 'Geschätzte Kacheln: $count';
}
@override
String mapCache_downloadedTiles(int completed, int total) {
return 'Heruntergeladen $completed / $total';
}
@override
String get mapCache_downloadTilesButton => 'Herunterladen von Kacheln';
@override
String get mapCache_clearCacheButton => 'Cache leeren';
@override
String mapCache_failedDownloads(int count) {
return 'Fehlgeschlagene Downloads: $count';
}
@override
String mapCache_boundsLabel(
String north,
String south,
String east,
String west,
) {
return 'N $north, S $south, E $east, W $west';
}
@override
String get time_justNow => 'Gerade eben';
@override
String time_minutesAgo(int minutes) {
return '$minutes Minuten her';
}
@override
String time_hoursAgo(int hours) {
return '$hours Stunden her';
}
@override
String time_daysAgo(int days) {
return '$days Tage/Tage zuvor';
}
@override
String get time_hour => 'Stunde';
@override
String get time_hours => 'Stunden';
@override
String get time_day => 'Tag';
@override
String get time_days => 'Tage';
@override
String get time_week => 'Woche';
@override
String get time_weeks => 'Wochen';
@override
String get time_month => 'Monat';
@override
String get time_months => 'Monate';
@override
String get time_minutes => 'Minuten';
@override
String get time_allTime => 'Ganzer Zeitraum';
@override
String get dialog_disconnect => 'Trennen';
@override
String get dialog_disconnectConfirm =>
'Sind Sie sicher, dass Sie sich von diesem Gerät trennen möchten?';
@override
String get login_repeaterLogin => 'Beim Repeater anmelden';
@override
String get login_roomLogin => 'Raum-Login';
@override
String get login_password => 'Passwort';
@override
String get login_enterPassword => 'Passwort eingeben';
@override
String get login_savePassword => 'Passwort speichern';
@override
String get login_savePasswordSubtitle =>
'Das Passwort wird auf diesem Gerät sicher gespeichert.';
@override
String get login_repeaterDescription =>
'Geben Sie das Repeater-Passwort ein, um auf Einstellungen und Status zuzugreifen.';
@override
String get login_roomDescription =>
'Geben Sie das Raumkennwort ein, um auf die Einstellungen und den Status zuzugreifen.';
@override
String get login_routing => 'Routen';
@override
String get login_routingMode => 'Routenmodus';
@override
String get login_autoUseSavedPath =>
'Automatisch (gespeicherten Pfad verwenden)';
@override
String get login_forceFloodMode => 'Flut-Modus erzwingen';
@override
String get login_managePaths => 'Pfadverwaltung';
@override
String get login_login => 'Anmelden';
@override
String login_attempt(int current, int max) {
return 'Versuche $current/$max';
}
@override
String login_failed(String error) {
return 'Anmeldung fehlgeschlagen: $error';
}
@override
String get login_failedMessage =>
'Anmeldung fehlgeschlagen. Entweder ist das Passwort falsch oder der Repeater ist nicht erreichbar.';
@override
String get common_reload => 'Neu laden';
@override
String get common_clear => 'Löschen';
@override
String path_currentPath(String path) {
return 'Aktiver Pfad: $path';
}
@override
String path_usingHopsPath(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: 'Hops',
one: 'Hop',
);
return 'Verwenden Sie $count $_temp0 Pfad';
}
@override
String get path_enterCustomPath => 'Gebe Pfad ein';
@override
String get path_currentPathLabel => 'Aktueller Pfad';
@override
String get path_hexPrefixInstructions =>
'Gebe für jeden Zwischen-Hop das 2-stellige Hex-Präfix ein, getrennt durch Kommas.';
@override
String get path_hexPrefixExample =>
'Beispiel: A1,F2,3C (jeder Knoten verwendet den ersten Byte seines öffentlichen Schlüssels)';
@override
String get path_labelHexPrefixes => 'Pfad (Hex-Präfixe)';
@override
String get path_helperMaxHops =>
'Max 64 Sprünge. Jede Präfixe ist 2 Hexadezimalzeichen (1 Byte)';
@override
String get path_selectFromContacts => 'Oder wähle aus Kontakten aus:';
@override
String get path_noRepeatersFound =>
'Keine Repeater oder Raumserver gefunden.';
@override
String get path_customPathsRequire =>
'Benutzerdefinierte Pfade erfordern Zwischen-Hops, die Nachrichten weiterleiten können.';
@override
String path_invalidHexPrefixes(String prefixes) {
return 'Ungültige Hexadezimal-Präfixe: $prefixes';
}
@override
String get path_tooLong => 'Pfad zu lang. Maximal 64 Hops erlaubt.';
@override
String get path_setPath => 'Pfad festlegen';
@override
String get repeater_management => 'Repeater-Verwaltung';
@override
String get room_management => 'Raum-Server-Verwaltung';
@override
String get repeater_managementTools => 'Verwaltungs-Tools';
@override
String get repeater_status => 'Status';
@override
String get repeater_statusSubtitle =>
'Status, Statistiken und Nachbarn anzeigen';
@override
String get repeater_telemetry => 'Telemetrie';
@override
String get repeater_telemetrySubtitle =>
'Sensordaten und Systemwerte anzeigen';
@override
String get repeater_cli => 'CLI';
@override
String get repeater_cliSubtitle => 'Sende Befehle an den Repeater';
@override
String get repeater_neighbors => 'Nachbarn';
@override
String get repeater_neighborsSubtitle => 'Anzahl der Hop-Nachbarn anzeigen.';
@override
String get repeater_settings => 'Einstellungen';
@override
String get repeater_settingsSubtitle => 'Repeater-parameter konfigurieren';
@override
String get repeater_statusTitle => 'Repeaterstatus';
@override
String get repeater_routingMode => 'Routenmodus';
@override
String get repeater_autoUseSavedPath =>
'Automatisch (gespeicherten Pfad verwenden)';
@override
String get repeater_forceFloodMode => 'Flut-Modus erzwingen';
@override
String get repeater_pathManagement => 'Pfadverwaltung';
@override
String get repeater_refresh => 'Aktualisieren';
@override
String get repeater_statusRequestTimeout =>
'Statusanfrage durch Timeout fehlgeschlagen.';
@override
String repeater_errorLoadingStatus(String error) {
return 'Fehler beim Laden des Status: $error';
}
@override
String get repeater_systemInformation => 'Systeminformation';
@override
String get repeater_battery => 'Akku';
@override
String get repeater_clockAtLogin => 'Uhr (bei Anmeldung)';
@override
String get repeater_uptime => 'Verfügbarkeit';
@override
String get repeater_queueLength => 'Warteschlangenlänge';
@override
String get repeater_debugFlags => 'Fehlerbehebungsoptionen';
@override
String get repeater_radioStatistics => 'Funk-Statistik';
@override
String get repeater_lastRssi => 'Letzter RSSI';
@override
String get repeater_lastSnr => 'Letzter SNR';
@override
String get repeater_noiseFloor => 'Rauschpegel';
@override
String get repeater_txAirtime => 'TX Airtime';
@override
String get repeater_rxAirtime => 'RX Airtime';
@override
String get repeater_packetStatistics => 'Paketstatistiken';
@override
String get repeater_sent => 'Gesendet';
@override
String get repeater_received => 'Empfangen';
@override
String get repeater_duplicates => 'Duplikate';
@override
String repeater_daysHoursMinsSecs(
int days,
int hours,
int minutes,
int seconds,
) {
return '$days Tage ${hours}h ${minutes}m ${seconds}s';
}
@override
String repeater_packetTxTotal(int total, String flood, String direct) {
return 'Gesamt: $total, Flut: $flood, Direkt: $direct';
}
@override
String repeater_packetRxTotal(int total, String flood, String direct) {
return 'Gesamt: $total, Flut: $flood, Direkt: $direct';
}
@override
String repeater_duplicatesFloodDirect(String flood, String direct) {
return 'Flut: $flood, Direkt: $direct';
}
@override
String repeater_duplicatesTotal(int total) {
return 'Gesamt: $total';
}
@override
String get repeater_settingsTitle => 'Repeater Einstellungen';
@override
String get repeater_basicSettings => 'Grundlegende Einstellungen';
@override
String get repeater_repeaterName => 'Repeater Name';
@override
String get repeater_repeaterNameHelper => 'Anzeigename für diesen Repeater';
@override
String get repeater_adminPassword => 'Admin-Passwort';
@override
String get repeater_adminPasswordHelper => 'Vollzugriffspasswort';
@override
String get repeater_guestPassword => 'Gast-Passwort';
@override
String get repeater_guestPasswordHelper =>
'Schreibgeschütztes Zugriffspasswort';
@override
String get repeater_radioSettings => 'Funk Einstellungen';
@override
String get repeater_frequencyMhz => 'Frequenz (MHz)';
@override
String get repeater_frequencyHelper => '300-2500 MHz';
@override
String get repeater_txPower => 'TX Power';
@override
String get repeater_txPowerHelper => '1-30 dBm';
@override
String get repeater_bandwidth => 'Bandbreite';
@override
String get repeater_spreadingFactor => 'Verteilungsfaktor';
@override
String get repeater_codingRate => 'Kodierungsrate';
@override
String get repeater_locationSettings => 'Standort Einstellungen';
@override
String get repeater_latitude => 'Breitengrad';
@override
String get repeater_latitudeHelper => 'Dezimalgrad (z.B. 37,7749)';
@override
String get repeater_longitude => 'Längengrad';
@override
String get repeater_longitudeHelper => 'Dezimalgrad (z.B. -122,4194)';
@override
String get repeater_features => 'Funktionen';
@override
String get repeater_packetForwarding => 'Paketweiterleitung';
@override
String get repeater_packetForwardingSubtitle =>
'Aktivieren Sie den Repeater, um Pakete weiterzuleiten.';
@override
String get repeater_guestAccess => 'Gastzugriff';
@override
String get repeater_guestAccessSubtitle =>
'Gast-Zugriff mit beschränkten Rechten zulassen';
@override
String get repeater_privacyMode => 'Privatsphäreeinstellung';
@override
String get repeater_privacyModeSubtitle =>
'Verstecken Sie Name/Ort in Ankündigungen';
@override
String get repeater_advertisementSettings => 'Ankündigungseinstellungen';
@override
String get repeater_localAdvertInterval =>
'Intervall der lokalen Ankündigungen';
@override
String repeater_localAdvertIntervalMinutes(int minutes) {
return '$minutes Minuten';
}
@override
String get repeater_floodAdvertInterval =>
'Intervall der gefluteten Ankündigungen';
@override
String repeater_floodAdvertIntervalHours(int hours) {
return '$hours Stunden';
}
@override
String get repeater_encryptedAdvertInterval =>
'Intervall der verschlüsselten Ankündigung';
@override
String get repeater_dangerZone => 'Gefahrenzone';
@override
String get repeater_rebootRepeater => 'Neustart Repeater';
@override
String get repeater_rebootRepeaterSubtitle => 'Repeater-Gerät neu starten.';
@override
String get repeater_rebootRepeaterConfirm =>
'Sind Sie sicher, dass Sie diesen Repeater neu starten möchten?';
@override
String get repeater_regenerateIdentityKey =>
'Schlüssel für die Identitätswiederherstellung';
@override
String get repeater_regenerateIdentityKeySubtitle =>
'Neuen öffentlichen/privaten Schlüsselpaar generieren';
@override
String get repeater_regenerateIdentityKeyConfirm =>
'Dies generiert eine neue Identität für den Repeater. Fortfahren?';
@override
String get repeater_eraseFileSystem => 'Dateisystem löschen';
@override
String get repeater_eraseFileSystemSubtitle =>
'Formatiere die Repeater-Dateisystemdatei';
@override
String get repeater_eraseFileSystemConfirm =>
'WARNUNG: Dies löscht alle Daten auf dem Repeater. Dies kann nicht rückgängig gemacht werden!';
@override
String get repeater_eraseSerialOnly =>
'Löschen ist nur über die serielle Konsole möglich.';
@override
String repeater_commandSent(String command) {
return 'Befehl gesendet: $command';
}
@override
String repeater_errorSendingCommand(String error) {
return 'Fehler beim Senden des Befehls: $error';
}
@override
String get repeater_confirm => 'Bestätigen';
@override
String get repeater_settingsSaved => 'Einstellungen erfolgreich gespeichert';
@override
String repeater_errorSavingSettings(String error) {
return 'Fehler beim Speichern der Einstellungen: $error';
}
@override
String get repeater_refreshBasicSettings =>
'Grundlegende Einstellungen aktualisieren';
@override
String get repeater_refreshRadioSettings =>
'Radio-Einstellungen aktualisieren';
@override
String get repeater_refreshTxPower => 'Sendeleistung aktualisieren';
@override
String get repeater_refreshLocationSettings =>
'Aktualisieren Sie die Standort Einstellungen';
@override
String get repeater_refreshPacketForwarding =>
'Aktualisieren Paketweiterleitung';
@override
String get repeater_refreshGuestAccess => 'Aktualisieren Sie den Gastzugriff';
@override
String get repeater_refreshPrivacyMode =>
'Wiederherstellen des Datenschutzzustands';
@override
String get repeater_refreshAdvertisementSettings =>
'Aktualisieren Sie die Ankündigungseinstellungen';
@override
String repeater_refreshed(String label) {
return '$label wurde aktualisiert';
}
@override
String repeater_errorRefreshing(String label) {
return 'Fehler beim Aktualisieren von $label';
}
@override
String get repeater_cliTitle => 'Repeater CLI';
@override
String get repeater_debugNextCommand => 'Fehlersuche des nächsten Befehls';
@override
String get repeater_commandHelp => 'Hilfe';
@override
String get repeater_clearHistory => 'Löschen der Historie';
@override
String get repeater_noCommandsSent => 'Noch keine Befehle gesendet.';
@override
String get repeater_typeCommandOrUseQuick =>
'Geben Sie unten einen Befehl ein oder verwenden Sie die Schnellbefehle';
@override
String get repeater_enterCommandHint => 'Geben Sie den Befehl ein...';
@override
String get repeater_previousCommand => 'Vorhergehende Aktion';
@override
String get repeater_nextCommand => 'Nächste Aktion';
@override
String get repeater_enterCommandFirst => 'Geben Sie zuerst einen Befehl ein';
@override
String get repeater_cliCommandFrameTitle => 'CLI-Befehlsfenster';
@override
String repeater_cliCommandError(String error) {
return 'Fehler: $error';
}
@override
String get repeater_cliQuickGetName => 'Name erhalten';
@override
String get repeater_cliQuickGetRadio => 'Radio empfangen';
@override
String get repeater_cliQuickGetTx => 'Erhalte TX';
@override
String get repeater_cliQuickNeighbors => 'Nachbarn';
@override
String get repeater_cliQuickVersion => 'Version';
@override
String get repeater_cliQuickAdvertise => 'Ankündigungen';
@override
String get repeater_cliQuickClock => 'Uhr';
@override
String get repeater_cliHelpAdvert => 'Sendet eine Ankündigung';
@override
String get repeater_cliHelpReboot =>
'Startet das Gerät neu. (Beachten Sie, dass es möglicherweise zu einer \'Timeout\'-Situation kommt, was normal ist.)';
@override
String get repeater_cliHelpClock =>
'Zeigt die aktuelle Uhrzeit pro Gerät an.';
@override
String get repeater_cliHelpPassword =>
'Legt ein neues Administrator-Passwort für das Gerät fest.';
@override
String get repeater_cliHelpVersion =>
'Zeigt die Geräteversion und das Datum des Firmware-Builds an.';
@override
String get repeater_cliHelpClearStats =>
'Setzt verschiedene Statistikberechnungen auf Null zurück.';
@override
String get repeater_cliHelpSetAf => 'Legt den Luftzeitfaktor fest.';
@override
String get repeater_cliHelpSetTx =>
'Legt die LoRa-Übertragungspower in dBm (bezogen auf 1 Watt) fest. (Neustart erforderlich, um die Änderungen anzuwenden)';
@override
String get repeater_cliHelpSetRepeat =>
'Aktiviert oder deaktiviert die Repeater-Rolle für diesen Knoten.';
@override
String get repeater_cliHelpSetAllowReadOnly =>
'(Raumspeicher) Wenn \'an\', dann wird die Anmeldung mit einem leeren Passwort erlaubt sein, aber es kann nicht in den Raum gesendet werden. (nur lesen möglich).';
@override
String get repeater_cliHelpSetFloodMax =>
'Legt die maximale Anzahl an Hops für Pakete der eingehenden Flut (wenn >= max, wird das Paket nicht weitergeleitet)';
@override
String get repeater_cliHelpSetIntThresh =>
'Legt den Interferenzeniveau (in dB) fest. Der Standardwert ist 14. Auf 0 setzen, um die Erkennung von Kanalinterferenzen zu deaktivieren.';
@override
String get repeater_cliHelpSetAgcResetInterval =>
'Legt das Intervall für das Zurücksetzen des Auto Gain Controllers fest. Auf 0 setzen, um die Funktion zu deaktivieren.';
@override
String get repeater_cliHelpSetMultiAcks =>
'Aktiviert oder deaktiviert die Funktion \'Doppel-ACKs\'.';
@override
String get repeater_cliHelpSetAdvertInterval =>
'Legt das Timer-Intervall in Minuten fest, um ein lokales (ohne-Weiterleitung) Ankündigungspaket zu senden. Auf 0 setzen, um die Funktion zu deaktivieren.';
@override
String get repeater_cliHelpSetFloodAdvertInterval =>
'Legt das Timer-Intervall in Stunden für den Versand eines Flut-Ankündigungspacket fest. Auf 0 setzen, um es zu deaktivieren.';
@override
String get repeater_cliHelpSetGuestPassword =>
'Legt/aktualisiert das Gastpasswort fest. (für Repeater können Gast-Logins die \"Get Stats\"-Anfrage senden)';
@override
String get repeater_cliHelpSetName => 'Legt den Anzeigenamen fest.';
@override
String get repeater_cliHelpSetLat =>
'Legt die Breitengrad der Ankündigung fest. (dezimale Grad)';
@override
String get repeater_cliHelpSetLon =>
'Legt die Längengrade der Ankündigung fest. (dezimale Grad)';
@override
String get repeater_cliHelpSetRadio =>
'Legt komplett neue Radio-Parameter fest und speichert diese als Präferenzen. Benötigt einen \"Reboot\"-Befehl, um sie anzuwenden.';
@override
String get repeater_cliHelpSetRxDelay =>
'Fügt eine leichte Verzögerung bei empfangenen Paketen hinzu, basierend auf Signalstärke/Punktzahl. Auf 0 setzen, um die Funktion zu deaktivieren.';
@override
String get repeater_cliHelpSetTxDelay =>
'Legt einen Faktor fest, der mit der Zeit bei voller Zuluft für ein Flood-Mode-Paket und mit einem zufälligen Slot-System multipliziert wird, um dessen Weiterleitung zu verzögern (um Kollisionen zu vermeiden).';
@override
String get repeater_cliHelpSetDirectTxDelay =>
'Ähnlich wie txdelay, aber zum Anwenden einer zufälligen Verzögerung bei der Weiterleitung von Direktmodus-Paketen.';
@override
String get repeater_cliHelpSetBridgeEnabled =>
'Brücke aktivieren/deaktivieren.';
@override
String get repeater_cliHelpSetBridgeDelay =>
'Setze Verzögerung vor erneuter Übertragung von Paketen.';
@override
String get repeater_cliHelpSetBridgeSource =>
'Wählen Sie, ob über die Brücke empfangene oder gesendete Pakete erneut übertragen soll.';
@override
String get repeater_cliHelpSetBridgeBaud =>
'Setze die serielle Link-Baudrate für RS232-Brücken.';
@override
String get repeater_cliHelpSetBridgeSecret =>
'Richte das Brückenpassword ein.';
@override
String get repeater_cliHelpSetAdcMultiplier =>
'Legt einen benutzerdefinierten Faktor zur Anpassung der gemeldeten Batteriewirkspannung fest (nur auf ausgewählten Boards unterstützt).';
@override
String get repeater_cliHelpTempRadio =>
'Legt vorübergehende Funkparameter für die angegebene Anzahl von Minuten fest und kehrt anschließend zu den ursprünglichen Funkparametern zurück (wird nicht in den Einstellungen gespeichert).';
@override
String get repeater_cliHelpSetPerm =>
'Ändert die ACL. Entfernt das passende Eintragen (durch Pubkey-Präfix), wenn \"permissions\" auf 0 steht. Fügt ein neues Eintragen hinzu, wenn die Pubkey-Hex-Länge vollständig ist und nicht bereits in der ACL vorhanden ist. Aktualisiert das Eintragen anhand des übereinstimmenden Pubkey-Präfix. Berechtigungsbits variieren je nach Firmware-Rolle, aber die unteren 2 Bits sind: 0 (Gast), 1 (Nur Lesen), 2 (Lesen/Schreiben), 3 (Admin)';
@override
String get repeater_cliHelpGetBridgeType =>
'Ruft Brückentyp: none, rs232, espnow ab.';
@override
String get repeater_cliHelpLogStart =>
'Beginnt die Paketprotokollierung in das Dateisystem.';
@override
String get repeater_cliHelpLogStop =>
'Stoppt das Paketprotokollieren in das Dateisystem.';
@override
String get repeater_cliHelpLogErase =>
'Löscht die Paketprotokolle aus dem Dateisystem.';
@override
String get repeater_cliHelpNeighbors =>
'Zeigt eine Liste anderer Repeater-Knoten an, die über Zero-Hop-Ankündigung gehört wurden. Jede Zeile ist id-prefix-hex:timestamp:snr-times-4';
@override
String get repeater_cliHelpNeighborRemove =>
'Entfernt das erste übereinstimmende Element (über Pubkey-Präfix (hex)) aus der Liste der Nachbarn.';
@override
String get repeater_cliHelpRegion => 'Listet alle definierten Regionen auf.';
@override
String get repeater_cliHelpRegionLoad =>
'Hinweis: Dies ist ein spezieller Mehrbefehl-Aufruf. Jeder nachfolgende Befehl ist ein Regionsname (eingerückt mit Leerzeichen zur Angabe der übergeordneten Hierarchie, mit mindestens einem Leerzeichen). Beendet durch das Senden einer Leerzeile.';
@override
String get repeater_cliHelpRegionGet =>
'Sucht die Region mit dem gegebenen Namenspräfix (oder \"\\\" für den globalen Scope) und antwortet mit \"-> region-name (parent-name) \'F\'\".';
@override
String get repeater_cliHelpRegionPut =>
'Fügt eine Region-Definition mit dem angegebenen Namen hinzu oder aktualisiert diese.';
@override
String get repeater_cliHelpRegionRemove =>
'Löscht eine Regiondefinition mit dem angegebenen Namen. (muss genau übereinstimmen und keine Kindregionen haben)';
@override
String get repeater_cliHelpRegionAllowf =>
'Legt die \'Flut\'-Berechtigung für die angegebene Region fest. (\'\' für den globalen/legacy-Bereich)';
@override
String get repeater_cliHelpRegionDenyf =>
'Entfernt die \"F\"lood-Berechtigung für die angegebene Region. (ANMERKUNG: in dieser Phase wird nicht empfohlen, dies auf dem globalen/legacy-Bereich zu verwenden!!)';
@override
String get repeater_cliHelpRegionHome =>
'Antwortet mit der aktuellen \'Home\'-Region. (Hinweis wurde bisher nirgendwo angewendet, für zukünftige Zwecke reserviert)';
@override
String get repeater_cliHelpRegionHomeSet => 'Legt die \'Home\'-Region fest.';
@override
String get repeater_cliHelpRegionSave =>
'Speichert die Regionenliste/Karte in den Speicher.';
@override
String get repeater_cliHelpGps =>
'Zeigt GPS-Status an. Wenn GPS deaktiviert ist, antwortet es nur mit \"aus\", wenn es eingeschaltet ist, antwortet es mit \"an\", \"Status\", \"Fix\" und Satellitenanzahl.';
@override
String get repeater_cliHelpGpsOnOff => 'Schaltet die GPS-Leistung ein/aus.';
@override
String get repeater_cliHelpGpsSync =>
'Synchronisiert die Knotenzeit mit der GPS-Uhr.';
@override
String get repeater_cliHelpGpsSetLoc =>
'Setze die Position des Knotens auf GPS-Koordinaten und speichere die Präferenzen.';
@override
String get repeater_cliHelpGpsAdvert =>
'Gibt Konfiguration für die Standortanzeige des Knotens:\n- none: Standort nicht in Anzeigen einbeziehen\n- share: GPS-Standort teilen (von SensorManager)\n- prefs: Standort aus Einstellungen anzeigen';
@override
String get repeater_cliHelpGpsAdvertSet =>
'Legt die Standort-Anzeigekonfiguration fest.';
@override
String get repeater_commandsListTitle => 'Befehlsliste';
@override
String get repeater_commandsListNote =>
'ACHTUNG: Für die verschiedenen „set ...“-Befehle gibt es auch einen „get ...“-Befehl.';
@override
String get repeater_general => 'Allgemein';
@override
String get repeater_settingsCategory => 'Einstellungen';
@override
String get repeater_bridge => 'Brücke';
@override
String get repeater_logging => 'Protokollierung';
@override
String get repeater_neighborsRepeaterOnly => 'Nachbarn (nur Repeater)';
@override
String get repeater_regionManagementRepeaterOnly =>
'Regionenverwaltung (nur Repeater)';
@override
String get repeater_regionNote =>
'Region-Befehle wurden eingeführt, um Region-Definitionen und Berechtigungen zu verwalten.';
@override
String get repeater_gpsManagement => 'GPS-Verwaltung';
@override
String get repeater_gpsNote =>
'Der GPS-Befehl wurde eingeführt, um Standortbezogene Themen zu verwalten.';
@override
String get telemetry_receivedData => 'Empfangene Telemetriedaten';
@override
String get telemetry_requestTimeout =>
'Telemetry-Anfrage hat zu lange gedauert.';
@override
String telemetry_errorLoading(String error) {
return 'Fehler beim Laden der Telemetrie: $error';
}
@override
String get telemetry_noData => 'Keine Telemetriedaten verfügbar.';
@override
String telemetry_channelTitle(int channel) {
return 'Kanal $channel';
}
@override
String get telemetry_batteryLabel => 'Akku';
@override
String get telemetry_voltageLabel => 'Spannung';
@override
String get telemetry_mcuTemperatureLabel => 'MCU Temperatur';
@override
String get telemetry_temperatureLabel => 'Temperatur';
@override
String get telemetry_currentLabel => 'Aktuell';
@override
String telemetry_batteryValue(int percent, String volts) {
return '$percent% / ${volts}V';
}
@override
String telemetry_voltageValue(String volts) {
return '$volts Volt';
}
@override
String telemetry_currentValue(String amps) {
return '${amps}A';
}
@override
String telemetry_temperatureValue(String celsius, String fahrenheit) {
return '$celsius°C / $fahrenheit°F';
}
@override
String get neighbors_receivedData => 'Empfangene Nachbarsdaten';
@override
String get neighbors_requestTimedOut =>
'Anfrage durch Timeout fehlgeschlagen.';
@override
String neighbors_errorLoading(String error) {
return 'Fehler beim Laden der Nachbarn: $error';
}
@override
String get neighbors_repeatersNeighbors => 'Nachbarn';
@override
String get neighbors_noData => 'Keine Nachbarsdaten verfügbar.';
@override
String neighbors_unknownContact(String pubkey) {
return 'Unbekannt $pubkey';
}
@override
String neighbors_heardAgo(String time) {
return 'Gehört vor: $time';
}
@override
String get channelPath_title => 'Paketpfad';
@override
String get channelPath_viewMap => 'Karte anzeigen';
@override
String get channelPath_otherObservedPaths => 'Sonstige beobachtete Pfade';
@override
String get channelPath_repeaterHops => 'Repeater-Sprünge';
@override
String get channelPath_noHopDetails =>
'Die Detailangaben für dieses Paket sind nicht verfügbar.';
@override
String get channelPath_messageDetails => 'Nachrichtendetails';
@override
String get channelPath_senderLabel => 'Sender';
@override
String get channelPath_timeLabel => 'Zeit';
@override
String get channelPath_repeatsLabel => 'Wiederholungen';
@override
String channelPath_pathLabel(int index) {
return 'Pfad $index';
}
@override
String get channelPath_observedLabel => 'Beobachtet';
@override
String channelPath_observedPathTitle(int index, String hops) {
return 'Beobachteter Pfad $index$hops';
}
@override
String get channelPath_noLocationData => 'Keine Standortdaten';
@override
String channelPath_timeWithDate(int day, int month, String time) {
return '$day/$month $time';
}
@override
String channelPath_timeOnly(String time) {
return '$time';
}
@override
String get channelPath_unknownPath => 'Unbekannt';
@override
String get channelPath_floodPath => 'Geflutet';
@override
String get channelPath_directPath => 'Direkt';
@override
String channelPath_observedZeroOf(int total) {
return '0 von $total Sprüngen';
}
@override
String channelPath_observedSomeOf(int observed, int total) {
return '$observed von $total Sprüngen';
}
@override
String get channelPath_mapTitle => 'Pfadkarte';
@override
String get channelPath_noRepeaterLocations =>
'Für diesen Pfad stehen keine Repeater-Positionen zur Verfügung.';
@override
String channelPath_primaryPath(int index) {
return 'Pfad $index (Primär)';
}
@override
String get channelPath_pathLabelTitle => 'Pfad';
@override
String get channelPath_observedPathHeader => 'Beobachteter Pfad';
@override
String channelPath_selectedPathLabel(String label, String prefixes) {
return '$label$prefixes';
}
@override
String get channelPath_noHopDetailsAvailable =>
'Keine Informationen zu dieser Paketroute verfügbar.';
@override
String get channelPath_unknownRepeater => 'Unbekannter Repeater';
@override
String get community_title => 'Community';
@override
String get community_create => 'Erstelle Community';
@override
String get community_createDesc =>
'Erstelle eine neue Community und teile sie über den QR-Code.';
@override
String get community_join => 'Beitreten';
@override
String get community_joinTitle => 'Tritt der Community bei';
@override
String community_joinConfirmation(String name) {
return 'Möchten Sie sich der Community \"$name\" anschließen?';
}
@override
String get community_scanQr => 'Scannen Sie die Community QR-Code';
@override
String get community_scanInstructions =>
'Richten Sie die Kamera auf einen Community-QR-Code.';
@override
String get community_showQr => 'Zeige QR-Code';
@override
String get community_publicChannel => 'Community Öffentlich';
@override
String get community_hashtagChannel => 'Community Hashtag';
@override
String get community_name => 'Community Name';
@override
String get community_enterName => 'Bitte Community-Name eingeben';
@override
String community_created(String name) {
return 'Community \"$name\" wurde erstellt';
}
@override
String community_joined(String name) {
return 'Community \"$name\" beigetreten';
}
@override
String get community_qrTitle => 'Teile Community';
@override
String community_qrInstructions(String name) {
return 'Scannen Sie diesen QR-Code, um sich \"$name\" anzuschließen.';
}
@override
String get community_hashtagPrivacyHint =>
'Community-Hashtag-Kanäle können nur von Mitgliedern der Community betreten werden';
@override
String get community_invalidQrCode => 'Ungültiger Community-QR-Code';
@override
String get community_alreadyMember => 'Bereits registriert';
@override
String community_alreadyMemberMessage(String name) {
return 'Sie sind bereits Mitglied von \"$name\".';
}
@override
String get community_addPublicChannel =>
'Füge einen öffentlichen Community-Kanal hinzu';
@override
String get community_addPublicChannelHint =>
'Automatisch den öffentlichen Kanal für diese Community hinzufügen';
@override
String get community_noCommunities => 'Noch keiner Community beigetreten';
@override
String get community_scanOrCreate =>
'Scannen Sie einen QR-Code oder eine Community erstellen, um loszulegen.';
@override
String get community_manageCommunities => 'Verwalten von Communities';
@override
String get community_delete => 'Verlasse Community';
@override
String community_deleteConfirm(String name) {
return '\"$name\" verlassen?';
}
@override
String community_deleteChannelsWarning(int count) {
return 'Dies löscht auch $count Kanal/Kanäle und deren Nachrichten.';
}
@override
String community_deleted(String name) {
return 'Community \"$name\" verlassen';
}
@override
String get community_regenerateSecret => 'Neugenerierung des Schlüssels';
@override
String community_regenerateSecretConfirm(String name) {
return 'Nehmen Sie den geheimen Schlüssel für \"$name\" neu auf? Alle Mitglieder müssen den neuen QR-Code scannen, um die Kommunikation fortzusetzen.';
}
@override
String get community_regenerate => 'Neu generieren';
@override
String community_secretRegenerated(String name) {
return 'Wiederherstellung des Schlüssels für \"$name\" erfolgreich';
}
@override
String get community_updateSecret => 'Aktualisieren Sie den Schlüssel';
@override
String community_secretUpdated(String name) {
return 'Schlüssel für \"$name\" aktualisiert';
}
@override
String community_scanToUpdateSecret(String name) {
return 'Scannen Sie den neuen QR-Code, um das Geheimnis für \"$name\" zu aktualisieren.';
}
@override
String get community_addHashtagChannel =>
'Füge einen Community-Hashtag hinzu';
@override
String get community_addHashtagChannelDesc =>
'Füge einen Hashtag-Kanal für diese Community hinzu';
@override
String get community_selectCommunity => 'Wählen Sie eine Community';
@override
String get community_regularHashtag => 'Regulärer Hashtag';
@override
String get community_regularHashtagDesc =>
'Öffentlicher Hashtag (jeder kann teilnehmen)';
@override
String get community_communityHashtag => 'Community Hashtag';
@override
String get community_communityHashtagDesc =>
'Nur für Mitglieder der Community';
@override
String community_forCommunity(String name) {
return 'Für $name';
}
@override
String get listFilter_tooltip => 'Filteren und sortieren';
@override
String get listFilter_sortBy => 'Sortiere nach';
@override
String get listFilter_latestMessages => 'Letzte Nachrichten';
@override
String get listFilter_heardRecently => 'Kürzlich gehört';
@override
String get listFilter_az => 'A-Z';
@override
String get listFilter_filters => 'Filtere';
@override
String get listFilter_all => 'Alle';
@override
String get listFilter_favorites => 'Favoriten';
@override
String get listFilter_addToFavorites => 'Zu Favoriten hinzufügen';
@override
String get listFilter_removeFromFavorites => 'Aus Favoriten entfernen';
@override
String get listFilter_users => 'Benutzer';
@override
String get listFilter_repeaters => 'Repeater';
@override
String get listFilter_roomServers => 'Raumserver';
@override
String get listFilter_unreadOnly => 'Nicht gelesen';
@override
String get listFilter_newGroup => 'Neue Gruppe';
@override
String get pathTrace_you => 'Du';
@override
String get pathTrace_failed => 'Pfadverfolgung fehlgeschlagen.';
@override
String get pathTrace_notAvailable => 'Pfadverfolgung nicht verfügbar.';
@override
String get pathTrace_refreshTooltip => 'Path Trace aktualisieren.';
@override
String get pathTrace_someHopsNoLocation =>
'Bei einer oder mehreren Knoten fehlt der Standort!';
@override
String get pathTrace_clearTooltip => 'Pfad löschen';
@override
String get losSelectStartEnd =>
'Wählen Sie Start- und Endknoten für LOS aus.';
@override
String losRunFailed(String error) {
return 'Sichtlinienprüfung fehlgeschlagen: $error';
}
@override
String get losClearAllPoints => 'Löschen Sie alle Punkte';
@override
String get losRunToViewElevationProfile =>
'Führen Sie LOS aus, um das Höhenprofil anzuzeigen';
@override
String get losMenuTitle => 'LOS-Menü';
@override
String get losMenuSubtitle =>
'Tippen Sie auf Knoten oder drücken Sie lange auf die Karte, um benutzerdefinierte Punkte anzuzeigen';
@override
String get losShowDisplayNodes => 'Anzeigeknoten anzeigen';
@override
String get losCustomPoints => 'Benutzerdefinierte Punkte';
@override
String losCustomPointLabel(int index) {
return 'Benutzerdefiniert $index';
}
@override
String get losPointA => 'Punkt A';
@override
String get losPointB => 'Punkt B';
@override
String losAntennaA(String value, String unit) {
return 'Antenne A: $value $unit';
}
@override
String losAntennaB(String value, String unit) {
return 'Antenne B: $value $unit';
}
@override
String get losRun => 'Führen Sie LOS aus';
@override
String get losNoElevationData => 'Keine Höhendaten';
@override
String losProfileClear(
String distance,
String distanceUnit,
String clearance,
String heightUnit,
) {
return '$distance $distanceUnit, freie Sichtlinie, Mindestabstand $clearance $heightUnit';
}
@override
String losProfileBlocked(
String distance,
String distanceUnit,
String obstruction,
String heightUnit,
) {
return '$distance $distanceUnit, blockiert durch $obstruction $heightUnit';
}
@override
String get losStatusChecking => 'LOS: Überprüfen...';
@override
String get losStatusNoData => 'LOS: keine Daten';
@override
String losStatusSummary(int clear, int total, int blocked, int unknown) {
return 'Sichtlinie: $clear/$total frei, $blocked blockiert, $unknown unbekannt';
}
@override
String get losErrorElevationUnavailable =>
'Für eine oder mehrere Proben sind keine Höhendaten verfügbar.';
@override
String get losErrorInvalidInput =>
'Ungültige Punkte/Höhendaten für die LOS-Berechnung.';
@override
String get losRenameCustomPoint =>
'Benennen Sie den benutzerdefinierten Punkt um';
@override
String get losPointName => 'Punktname';
@override
String get losShowPanelTooltip => 'LOS-Panel anzeigen';
@override
String get losHidePanelTooltip => 'LOS-Panel ausblenden';
@override
String get losElevationAttribution => 'Höhendaten: Open-Meteo (CC BY 4.0)';
@override
String get losLegendRadioHorizon => 'Funkhorizont';
@override
String get losLegendLosBeam => 'Sichtlinie';
@override
String get losLegendTerrain => 'Gelände';
@override
String get losFrequencyLabel => 'Frequenz';
@override
String get losFrequencyInfoTooltip => 'Details zur Berechnung anzeigen';
@override
String get losFrequencyDialogTitle => 'Berechnung des Funkhorizonts';
@override
String losFrequencyDialogDescription(
double baselineK,
double baselineFreq,
double frequencyMHz,
double kFactor,
) {
return 'Ausgehend von k=$baselineK bei $baselineFreq MHz passt die Berechnung den k-Faktor für das aktuelle $frequencyMHz MHz-Band an, das die gekrümmte Funkhorizontobergrenze definiert.';
}
@override
String get contacts_pathTrace => 'Pfadverfolgung';
@override
String get contacts_ping => 'Pingen';
@override
String get contacts_repeaterPathTrace => 'Pfadverfolgung zum Repeater';
@override
String get contacts_repeaterPing => 'Repeater pingen';
@override
String get contacts_roomPathTrace => 'Pfadverfolgung zum Raumserver';
@override
String get contacts_roomPing => 'Raumserver anpingen';
@override
String get contacts_chatTraceRoute => 'Pfadverfolgungsroute';
@override
String contacts_pathTraceTo(String name) {
return 'Route nach $name verfolgen';
}
@override
String get contacts_clipboardEmpty => 'Die Zwischenablage ist leer.';
@override
String get contacts_invalidAdvertFormat => 'Ungültige Kontaktdaten';
@override
String get contacts_contactImported => 'Kontakt wurde importiert.';
@override
String get contacts_contactImportFailed =>
'Kontakt konnte nicht importiert werden';
@override
String get contacts_zeroHopAdvert => 'Zero-Hop-Ankündigung';
@override
String get contacts_floodAdvert => 'Flut-Ankündigung';
@override
String get contacts_copyAdvertToClipboard =>
'Ankündigung in die Zwischenablage kopieren';
@override
String get contacts_addContactFromClipboard =>
'Kontakt aus Zwischenablage hinzufügen';
@override
String get contacts_ShareContact => 'Kontakt in die Zwischenablage kopieren';
@override
String get contacts_ShareContactZeroHop => 'Kontakt über Anzeige teilen';
@override
String get contacts_zeroHopContactAdvertSent =>
'Kontakt über Anzeige gesendet';
@override
String get contacts_zeroHopContactAdvertFailed =>
'Kontakt konnte nicht gesendet werden.';
@override
String get contacts_contactAdvertCopied =>
'Anzeige in die Zwischenablage kopiert.';
@override
String get contacts_contactAdvertCopyFailed =>
'Kopieren der Ankündigung in die Zwischenablage fehlgeschlagen.';
@override
String get notification_activityTitle => 'MeshCore Aktivität';
@override
String notification_messagesCount(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: 'Nachrichten',
one: 'Nachricht',
);
return '$count $_temp0';
}
@override
String notification_channelMessagesCount(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: 'Kanalnachrichten',
one: 'Kanalnachricht',
);
return '$count $_temp0';
}
@override
String notification_newNodesCount(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: 'neue Knoten',
one: 'neuer Knoten',
);
return '$count $_temp0';
}
@override
String notification_newTypeDiscovered(String contactType) {
return 'Neuer $contactType entdeckt';
}
@override
String get notification_receivedNewMessage => 'Neue Nachricht empfangen';
@override
String get settings_gpxExportRepeaters =>
'Repeater und Raumserver als GPX exportieren';
@override
String get settings_gpxExportRepeatersSubtitle =>
'Exportiert Repeater und Raumserver mit einem Standort in eine GPX-Datei.';
@override
String get settings_gpxExportContacts => 'Kontakte als GPX exportieren';
@override
String get settings_gpxExportContactsSubtitle =>
'Exportiert Kontakte mit einem Ort in eine GPX-Datei.';
@override
String get settings_gpxExportAll => 'Alle Knoten als GPX exportieren';
@override
String get settings_gpxExportAllSubtitle =>
'Exportiert alle Knoten mit einem Standort in eine GPX-Datei.';
@override
String get settings_gpxExportSuccess => 'GPX-Datei erfolgreich exportiert.';
@override
String get settings_gpxExportNoContacts => 'Keine Kontakte zum Exportieren.';
@override
String get settings_gpxExportNotAvailable =>
'Nicht auf Ihrem Gerät/Betriebssystem unterstützt';
@override
String get settings_gpxExportError =>
'Beim Export ist ein Fehler aufgetreten.';
@override
String get settings_gpxExportRepeatersRoom =>
'Repeater- und Raumserver-Standorte';
@override
String get settings_gpxExportChat => 'Kontaktstandorte';
@override
String get settings_gpxExportAllContacts => 'Alle Kontaktstandorte';
@override
String get settings_gpxExportShareText =>
'GPX-Kartendaten aus meshcore-open exportiert';
@override
String get settings_gpxExportShareSubject =>
'GPX-Kartendaten aus meshcore-open exportieren';
@override
String get snrIndicator_nearByRepeaters => 'In der Nähe befindliche Repeater';
@override
String get snrIndicator_lastSeen => 'Zuletzt gesehen';
@override
String get contactsSettings_title => 'Kontakteinstellungen';
@override
String get contactsSettings_autoAddTitle => 'Automatische Erkennung';
@override
String get contactsSettings_otherTitle =>
'Weitere Einstellungen zu Kontakten';
@override
String get contactsSettings_autoAddUsersTitle =>
'Automatische Hinzufügung von Benutzern';
@override
String get contactsSettings_autoAddUsersSubtitle =>
'Ermöglichen Sie dem Begleiter, automatisch entdeckte Benutzer hinzuzufügen';
@override
String get contactsSettings_autoAddRepeatersTitle =>
'Automatisch Repeater hinzufügen';
@override
String get contactsSettings_autoAddRepeatersSubtitle =>
'Ermöglichen Sie dem Begleiter, automatisch entdeckte Repeater hinzuzufügen.';
@override
String get contactsSettings_autoAddRoomServersTitle =>
'Automatisch Raumservers hinzufügen';
@override
String get contactsSettings_autoAddRoomServersSubtitle =>
'Ermöglichen Sie dem Begleiter, entdeckte Raumserver automatisch hinzuzufügen';
@override
String get contactsSettings_autoAddSensorsTitle =>
'Automatisch Sensoren hinzufügen';
@override
String get contactsSettings_autoAddSensorsSubtitle =>
'Ermöglichen Sie dem Begleiter, automatisch entdeckte Sensoren hinzuzufügen';
@override
String get contactsSettings_overwriteOldestTitle =>
'Überschreiben des Ältesten';
@override
String get contactsSettings_overwriteOldestSubtitle =>
'Wenn die Kontaktliste voll ist, wird der älteste nicht favorisierte Kontakt ersetzt.';
@override
String get discoveredContacts_Title => 'Entdeckte Kontakte';
@override
String get discoveredContacts_noMatching => 'Keine passenden Kontakte';
@override
String get discoveredContacts_searchHint => 'Entdeckte Kontakte suchen';
@override
String get discoveredContacts_contactAdded => 'Kontakt hinzugefügt';
@override
String get discoveredContacts_addContact => 'Kontakt hinzufügen';
@override
String get discoveredContacts_copyContact =>
'Kontakt in die Zwischenablage kopieren';
@override
String get discoveredContacts_deleteContact => 'Kontakt löschen';
@override
String get discoveredContacts_deleteContactAll =>
'Alle entdeckten Kontakte löschen';
@override
String get discoveredContacts_deleteContactAllContent =>
'Sind Sie sicher, dass Sie alle gefundenen Kontakte löschen möchten?';
}