diff --git a/selfdrive/assets/fonts/NotoSansJP-Regular.ttf b/selfdrive/assets/fonts/NotoSansJP-Regular.ttf new file mode 100644 index 00000000000000..6df2f0a66e9abe --- /dev/null +++ b/selfdrive/assets/fonts/NotoSansJP-Regular.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f32915916d2d6f35bb0d3d7ef0784504914bf0235afb02eec552bd14d06d3552 +size 5450308 diff --git a/selfdrive/assets/fonts/OpenpilotSans-Regular.ttf b/selfdrive/assets/fonts/OpenpilotSans-Regular.ttf new file mode 100644 index 00000000000000..ed20cbebd3aef7 --- /dev/null +++ b/selfdrive/assets/fonts/OpenpilotSans-Regular.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4d321abf51e964e3dc5fb903655b7ba062311b399985db2c83a900246862244 +size 5872156 diff --git a/selfdrive/ui/SConscript b/selfdrive/ui/SConscript index 7ede8c394a83be..d4a70077d9f6b5 100644 --- a/selfdrive/ui/SConscript +++ b/selfdrive/ui/SConscript @@ -96,3 +96,15 @@ if GetOption('extras'): f = raylib_env.Program(f"installer/installers/installer_{name}", [obj, cont, inter], LIBS=raylib_libs) # keep installers small assert f[0].get_size() < 1900*1e3, f[0].get_size() + +# Compile gettext .po -> .mo alongside Qt translations +po_sources = [f"#selfdrive/ui/translations/app_{l}.po" for l in languages.values()] +mo_targets = [src.replace(".po", ".mo") for src in po_sources] +msgfmt_bin = 'msgfmt' + +# Build each .mo individually to ensure one-to-one mapping +mo_build = [] +for src, tgt in zip(po_sources, mo_targets): + mo_build.append(env.Command(tgt, src, f"{msgfmt_bin} -o $TARGET $SOURCE")) + +qt_env.Depends(assets, mo_build) diff --git a/selfdrive/ui/layouts/settings/developer.py b/selfdrive/ui/layouts/settings/developer.py index 91268960cb45da..7370b608c265aa 100644 --- a/selfdrive/ui/layouts/settings/developer.py +++ b/selfdrive/ui/layouts/settings/developer.py @@ -22,7 +22,8 @@ 'alpha_longitudinal': tr( "WARNING: openpilot longitudinal control is in alpha for this car and will disable Automatic Emergency Braking (AEB).

" + "On this car, openpilot defaults to the car's built-in ACC instead of openpilot's longitudinal control. " + - "Enable this to switch to openpilot longitudinal control. Enabling Experimental mode is recommended when enabling openpilot longitudinal control alpha." + "Enable this to switch to openpilot longitudinal control. Enabling Experimental mode is recommended when enabling openpilot longitudinal control alpha. " + + "Changing this setting will restart openpilot if the car is powered on." ), } @@ -35,8 +36,8 @@ def __init__(self): # Build items and keep references for callbacks/state updates self._adb_toggle = toggle_item( - tr("Enable ADB"), - description=DESCRIPTIONS["enable_adb"], + lambda: tr("Enable ADB"), + description=lambda: DESCRIPTIONS["enable_adb"], initial_state=self._params.get_bool("AdbEnabled"), callback=self._on_enable_adb, enabled=ui_state.is_offroad, @@ -44,15 +45,15 @@ def __init__(self): # SSH enable toggle + SSH key management self._ssh_toggle = toggle_item( - tr("Enable SSH"), + lambda: tr("Enable SSH"), description="", initial_state=self._params.get_bool("SshEnabled"), callback=self._on_enable_ssh, ) - self._ssh_keys = ssh_key_item("SSH Keys", description=DESCRIPTIONS["ssh_key"]) + self._ssh_keys = ssh_key_item(lambda: tr("SSH Keys"), description=lambda: DESCRIPTIONS["ssh_key"]) self._joystick_toggle = toggle_item( - tr("Joystick Debug Mode"), + lambda: tr("Joystick Debug Mode"), description="", initial_state=self._params.get_bool("JoystickDebugMode"), callback=self._on_joystick_debug_mode, @@ -60,22 +61,20 @@ def __init__(self): ) self._long_maneuver_toggle = toggle_item( - tr("Longitudinal Maneuver Mode"), + lambda: tr("Longitudinal Maneuver Mode"), description="", initial_state=self._params.get_bool("LongitudinalManeuverMode"), callback=self._on_long_maneuver_mode, ) self._alpha_long_toggle = toggle_item( - tr("openpilot Longitudinal Control (Alpha)"), - description=DESCRIPTIONS["alpha_longitudinal"], + lambda: tr("openpilot Longitudinal Control (Alpha)"), + description=lambda: DESCRIPTIONS["alpha_longitudinal"], initial_state=self._params.get_bool("AlphaLongitudinalEnabled"), callback=self._on_alpha_long_enabled, enabled=lambda: not ui_state.engaged, ) - self._alpha_long_toggle.set_description(self._alpha_long_toggle.description + " Changing this setting will restart openpilot if the car is powered on.") - items = [ self._adb_toggle, self._ssh_toggle, diff --git a/selfdrive/ui/layouts/settings/device.py b/selfdrive/ui/layouts/settings/device.py index e9bdf59e26d910..583d750d2bc9b4 100644 --- a/selfdrive/ui/layouts/settings/device.py +++ b/selfdrive/ui/layouts/settings/device.py @@ -1,5 +1,5 @@ import os -import json +#import time import math from cereal import messaging, log @@ -12,7 +12,7 @@ from openpilot.selfdrive.ui.widgets.pairing_dialog import PairingDialog from openpilot.system.hardware import TICI from openpilot.system.ui.lib.application import gui_app -from openpilot.system.ui.lib.multilang import tr +from openpilot.system.ui.lib.multilang import multilang, tr from openpilot.system.ui.widgets import Widget, DialogResult from openpilot.system.ui.widgets.confirm_dialog import ConfirmDialog, alert_dialog from openpilot.system.ui.widgets.html_render import HtmlModal @@ -49,24 +49,24 @@ def _initialize_items(self): dongle_id = self._params.get("DongleId") or tr("N/A") serial = self._params.get("HardwareSerial") or tr("N/A") - self._pair_device_btn = button_item(tr("Pair Device"), tr("PAIR"), DESCRIPTIONS['pair_device'], callback=self._pair_device) + self._pair_device_btn = button_item(lambda: tr("Pair Device"), lambda: tr("PAIR"), lambda: tr(DESCRIPTIONS['pair_device']), callback=self._pair_device) self._pair_device_btn.set_visible(lambda: not ui_state.prime_state.is_paired()) - self._reset_calib_btn = button_item(tr("Reset Calibration"), tr("RESET"), DESCRIPTIONS['reset_calibration'], callback=self._reset_calibration_prompt) + self._reset_calib_btn = button_item(lambda: tr("Reset Calibration"), lambda: tr("RESET"), lambda: tr(DESCRIPTIONS['reset_calibration']), + callback=self._reset_calibration_prompt) self._reset_calib_btn.set_description_opened_callback(self._update_calib_description) self._power_off_btn = dual_button_item(tr("Reboot"), tr("Power Off"), left_callback=self._reboot_prompt, right_callback=self._power_off_prompt) items = [ - text_item(tr("Dongle ID"), dongle_id), - text_item(tr("Serial"), serial), + text_item(lambda: tr("Dongle ID"), dongle_id), + text_item(lambda: tr("Serial"), serial), self._pair_device_btn, - button_item(tr("Driver Camera"), tr("PREVIEW"), DESCRIPTIONS['driver_camera'], callback=self._show_driver_camera, enabled=ui_state.is_offroad), + button_item(lambda: tr("Driver Camera"), lambda: tr("PREVIEW"), lambda: tr(DESCRIPTIONS['driver_camera']), callback=self._show_driver_camera, enabled=ui_state.is_offroad), self._reset_calib_btn, - button_item(tr("Review Training Guide"), tr("REVIEW"), DESCRIPTIONS['review_guide'], self._on_review_training_guide, enabled=ui_state.is_offroad), - regulatory_btn := button_item(tr("Regulatory"), tr("VIEW"), callback=self._on_regulatory, enabled=ui_state.is_offroad), - # TODO: implement multilang - # button_item(tr("Change Language"), tr("CHANGE"), callback=self._show_language_selection, enabled=ui_state.is_offroad), + button_item(lambda: tr("Review Training Guide"), lambda: tr("REVIEW"), lambda: tr(DESCRIPTIONS['review_guide']), self._on_review_training_guide, enabled=ui_state.is_offroad), + regulatory_btn := button_item(lambda: tr("Regulatory"), lambda: tr("VIEW"), callback=self._on_regulatory, enabled=ui_state.is_offroad), + button_item(lambda: tr("Change Language"), lambda: tr("CHANGE"), callback=self._show_language_dialog, enabled=ui_state.is_offroad), self._power_off_btn, ] regulatory_btn.set_visible(TICI) @@ -79,26 +79,29 @@ def show_event(self): self._scroller.show_event() def _render(self, rect): + + # t = time.monotonic() + # tr("Hello test string! {}".format(1)) + # print("Translation took {} ms".format((time.monotonic() - t) * 1000)) + self._scroller.render(rect) - def _show_language_selection(self): - try: - languages_file = os.path.join(BASEDIR, "selfdrive/ui/translations/languages.json") - with open(languages_file, encoding='utf-8') as f: - languages = json.load(f) + def _show_language_dialog(self): + def handle_language_selection(result: int): + if result == 1 and self._select_language_dialog: + selected_language = multilang.languages[self._select_language_dialog.selection] + multilang.change_language(selected_language) + print("Selected language:", selected_language) + self._update_calib_description() + + self._select_language_dialog = None - self._select_language_dialog = MultiOptionDialog("Select a language", languages) - gui_app.set_modal_overlay(self._select_language_dialog, callback=self._handle_language_selection) + try: + self._select_language_dialog = MultiOptionDialog(tr("Select a language"), multilang.languages, multilang.codes[multilang.language]) + gui_app.set_modal_overlay(self._select_language_dialog, callback=handle_language_selection) except FileNotFoundError: pass - def _handle_language_selection(self, result: int): - if result == 1 and self._select_language_dialog: - selected_language = self._select_language_dialog.selection - self._params.put("LanguageSetting", selected_language) - - self._select_language_dialog = None - def _show_driver_camera(self): if not self._driver_camera: self._driver_camera = DriverCameraDialog() diff --git a/selfdrive/ui/layouts/settings/firehose.py b/selfdrive/ui/layouts/settings/firehose.py index f4d70eaa47732e..dff714f0ff0f17 100644 --- a/selfdrive/ui/layouts/settings/firehose.py +++ b/selfdrive/ui/layouts/settings/firehose.py @@ -86,14 +86,15 @@ def _render_content(self, rect: rl.Rectangle, scroll_offset: float) -> int: w = int(rect.width - 80) # Title (centered) + title_text = tr(TITLE) # live translate title_font = gui_app.font(FontWeight.MEDIUM) - text_width = measure_text_cached(title_font, TITLE, 100).x + text_width = measure_text_cached(title_font, title_text, 100).x title_x = rect.x + (rect.width - text_width) / 2 - rl.draw_text_ex(title_font, TITLE, rl.Vector2(title_x, y), 100, 0, rl.WHITE) + rl.draw_text_ex(title_font, title_text, rl.Vector2(title_x, y), 100, 0, rl.WHITE) y += 200 # Description - y = self._draw_wrapped_text(x, y, w, DESCRIPTION, gui_app.font(FontWeight.NORMAL), 45, rl.WHITE) + y = self._draw_wrapped_text(x, y, w, tr(DESCRIPTION), gui_app.font(FontWeight.NORMAL), 45, rl.WHITE) y += 40 + 20 # Separator @@ -117,7 +118,7 @@ def _render_content(self, rect: rl.Rectangle, scroll_offset: float) -> int: y += 30 + 20 # Instructions - y = self._draw_wrapped_text(x, y, w, INSTRUCTIONS, gui_app.font(FontWeight.NORMAL), 40, self.LIGHT_GRAY) + y = self._draw_wrapped_text(x, y, w, tr(INSTRUCTIONS), gui_app.font(FontWeight.NORMAL), 40, self.LIGHT_GRAY) # bottom margin + remove effect of scroll offset return int(round(y - self.scroll_panel.offset + 40)) diff --git a/selfdrive/ui/layouts/settings/settings.py b/selfdrive/ui/layouts/settings/settings.py index 7f431d3a777a24..d710cf9bd58140 100644 --- a/selfdrive/ui/layouts/settings/settings.py +++ b/selfdrive/ui/layouts/settings/settings.py @@ -116,11 +116,12 @@ def _draw_sidebar(self, rect: rl.Rectangle): is_selected = panel_type == self._current_panel text_color = TEXT_SELECTED if is_selected else TEXT_NORMAL # Draw button text (right-aligned) - text_size = measure_text_cached(self._font_medium, panel_info.name, 65) + panel_name = tr(panel_info.name) + text_size = measure_text_cached(self._font_medium, panel_name, 65) text_pos = rl.Vector2( button_rect.x + button_rect.width - text_size.x, button_rect.y + (button_rect.height - text_size.y) / 2 ) - rl.draw_text_ex(self._font_medium, panel_info.name, text_pos, 65, 0, text_color) + rl.draw_text_ex(self._font_medium, panel_name, text_pos, 65, 0, text_color) # Store button rect for click detection panel_info.button_rect = button_rect diff --git a/selfdrive/ui/layouts/settings/software.py b/selfdrive/ui/layouts/settings/software.py index 8e0cfdbc3c0b28..734699018f63b4 100644 --- a/selfdrive/ui/layouts/settings/software.py +++ b/selfdrive/ui/layouts/settings/software.py @@ -44,12 +44,12 @@ class SoftwareLayout(Widget): def __init__(self): super().__init__() - self._onroad_label = ListItem(title=tr("Updates are only downloaded while the car is off.")) - self._version_item = text_item(tr("Current Version"), ui_state.params.get("UpdaterCurrentDescription") or "") - self._download_btn = button_item(tr("Download"), tr("CHECK"), callback=self._on_download_update) + self._onroad_label = ListItem(lambda: tr("Updates are only downloaded while the car is off.")) + self._version_item = text_item(lambda: tr("Current Version"), ui_state.params.get("UpdaterCurrentDescription") or "") + self._download_btn = button_item(lambda: tr("Download"), lambda: tr("CHECK"), callback=self._on_download_update) # Install button is initially hidden - self._install_btn = button_item(tr("Install Update"), tr("INSTALL"), callback=self._on_install_update) + self._install_btn = button_item(lambda: tr("Install Update"), lambda: tr("INSTALL"), callback=self._on_install_update) self._install_btn.set_visible(False) # Track waiting-for-updater transition to avoid brief re-enable while still idle @@ -67,7 +67,7 @@ def _init_items(self): self._install_btn, # TODO: implement branch switching # button_item("Target Branch", "SELECT", callback=self._on_select_branch), - button_item("Uninstall", tr("UNINSTALL"), callback=self._on_uninstall), + button_item("Uninstall", lambda: tr("UNINSTALL"), callback=self._on_uninstall), ] return items diff --git a/selfdrive/ui/layouts/settings/toggles.py b/selfdrive/ui/layouts/settings/toggles.py index 1e4d5c6c857395..da09c7ad874f0b 100644 --- a/selfdrive/ui/layouts/settings/toggles.py +++ b/selfdrive/ui/layouts/settings/toggles.py @@ -43,49 +43,49 @@ def __init__(self): # param, title, desc, icon, needs_restart self._toggle_defs = { "OpenpilotEnabledToggle": ( - tr("Enable openpilot"), + lambda: tr("Enable openpilot"), DESCRIPTIONS["OpenpilotEnabledToggle"], "chffr_wheel.png", True, ), "ExperimentalMode": ( - tr("Experimental Mode"), + lambda: tr("Experimental Mode"), "", "experimental_white.png", False, ), "DisengageOnAccelerator": ( - tr("Disengage on Accelerator Pedal"), + lambda: tr("Disengage on Accelerator Pedal"), DESCRIPTIONS["DisengageOnAccelerator"], "disengage_on_accelerator.png", False, ), "IsLdwEnabled": ( - tr("Enable Lane Departure Warnings"), + lambda: tr("Enable Lane Departure Warnings"), DESCRIPTIONS["IsLdwEnabled"], "warning.png", False, ), "AlwaysOnDM": ( - tr("Always-On Driver Monitoring"), + lambda: tr("Always-On Driver Monitoring"), DESCRIPTIONS["AlwaysOnDM"], "monitoring.png", False, ), "RecordFront": ( - tr("Record and Upload Driver Camera"), + lambda: tr("Record and Upload Driver Camera"), DESCRIPTIONS["RecordFront"], "monitoring.png", True, ), "RecordAudio": ( - tr("Record and Upload Microphone Audio"), + lambda: tr("Record and Upload Microphone Audio"), DESCRIPTIONS["RecordAudio"], "microphone.png", True, ), "IsMetric": ( - tr("Use Metric System"), + lambda: tr("Use Metric System"), DESCRIPTIONS["IsMetric"], "metric.png", False, @@ -93,9 +93,9 @@ def __init__(self): } self._long_personality_setting = multiple_button_item( - tr("Driving Personality"), + lambda: tr("Driving Personality"), DESCRIPTIONS["LongitudinalPersonality"], - buttons=[tr("Aggressive"), tr("Standard"), tr("Relaxed")], + buttons=[lambda: tr("Aggressive"), lambda: tr("Standard"), lambda: tr("Relaxed")], button_width=255, callback=self._set_longitudinal_personality, selected_index=self._params.get("LongitudinalPersonality", return_default=True), @@ -119,8 +119,11 @@ def __init__(self): locked = False toggle.action_item.set_enabled(not locked) + # Make description callable for live translation + additional_desc = "" if needs_restart and not locked: - toggle.set_description(toggle.description + tr(" Changing this setting will restart openpilot if the car is powered on.")) + additional_desc = tr("Changing this setting will restart openpilot if the car is powered on.") + toggle.set_description(lambda original_desc=toggle.description: tr(original_desc) + "" + tr(additional_desc)) # track for engaged state updates if locked: diff --git a/selfdrive/ui/translations/app.pot b/selfdrive/ui/translations/app.pot new file mode 100644 index 00000000000000..5f32521db68b61 --- /dev/null +++ b/selfdrive/ui/translations/app.pot @@ -0,0 +1,1176 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-10-20 22:32-0700\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" + +#: /home/batman/openpilot/system/ui/widgets/html_render.py:247 +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:93 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#, python-format +msgid "OK" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:23 +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:34 +#: /home/batman/openpilot/system/ui/widgets/keyboard.py:81 +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#, python-format +msgid "Cancel" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:35 +#, python-format +msgid "Select" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:74 +#: /home/batman/openpilot/system/ui/widgets/network.py:95 +#, python-format +msgid "Advanced" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:99 +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147 +#, python-format +msgid "Back" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:120 +#, python-format +msgid "Enable Tethering" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:123 +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "EDIT" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:124 +#, python-format +msgid "Tethering Password" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:129 +#, python-format +msgid "Enable Roaming" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:134 +#, python-format +msgid "Cellular Metered" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:135 +#, python-format +msgid "Prevent large data uploads when on a metered cellular connection" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "APN Setting" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "default" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "metered" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "unmetered" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Wi-Fi Network Metered" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Prevent large data uploads when on a metered Wi-Fi connection" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:150 +#, python-format +msgid "IP Address" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#, python-format +msgid "Hidden Network" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "CONNECT" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "Enter APN" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "leave blank for automatic configuration" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Enter password" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "for \"{}\"" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:241 +#, python-format +msgid "Enter SSID" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:254 +#, python-format +msgid "Enter new tethering password" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:310 +#, python-format +msgid "Scanning Wi-Fi networks..." +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Wrong password" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#: /home/batman/openpilot/system/ui/widgets/network.py:451 +#, python-format +msgid "Forget" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:319 +#, python-format +msgid "Forget Wi-Fi Network \"{}\"?" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:369 +#, python-format +msgid "CONNECTING..." +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:373 +#, python-format +msgid "FORGETTING..." +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/list_view.py:115 +#: /home/batman/openpilot/system/ui/widgets/list_view.py:153 +#, python-format +msgid "Error" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103 +#, python-format +msgid "Pair your device to your comma account" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128 +#, python-format +msgid "Go to https://connect.comma.ai on your phone" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129 +#, python-format +msgid "Click \"add new device\" and scan the QR code on the right" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130 +#, python-format +msgid "Bookmark connect.comma.ai to your home screen to use it like an app" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161 +#, python-format +msgid "QR Code Error" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29 +#, python-format +msgid "LOADING" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30 +#, python-format +msgid "ADD" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31 +#, python-format +msgid "REMOVE" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89 +#, python-format +msgid "Enter your GitHub username" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114 +#, python-format +msgid "No SSH keys found" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123 +#, python-format +msgid "Request timed out" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126 +#, python-format +msgid "No SSH keys found for user '{}'" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33 +#, python-format +msgid "Upgrade Now" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38 +#, python-format +msgid "Become a comma prime member at connect.comma.ai" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44 +#, python-format +msgid "PRIME FEATURES:" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote access" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "24/7 LTE connectivity" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "1 year of drive storage" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote snapshots" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62 +#, python-format +msgid "✓ SUBSCRIBED" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63 +#, python-format +msgid "comma prime" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "EXPERIMENTAL MODE ON" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "CHILL MODE ON" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18 +#, python-format +msgid "No release notes available." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105 +#, python-format +msgid "Close" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107 +#, python-format +msgid "Snooze Update" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110 +#, python-format +msgid "Acknowledge Excessive Actuation" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113 +#, python-format +msgid "Reboot and Update" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19 +#, python-format +msgid "Pair device" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20 +#, python-format +msgid "Open" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22 +#, python-format +msgid "🔥 Firehose Mode 🔥" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44 +#, python-format +msgid "Finish Setup" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25 +#, python-format +msgid "" +"Pair your device with comma connect (connect.comma.ai) and claim your comma " +"prime offer." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75 +#, python-format +msgid "" +"Maximize your training data uploads to improve openpilot's driving models." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91 +#, python-format +msgid "Please connect to Wi-Fi to complete initial pairing" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155 +#, python-format +msgid "UPDATE" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169 +#, python-format +msgid "{} ALERT" +msgid_plural "{} ALERTS" +msgstr[0] "" +msgstr[1] "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43 +#, python-format +msgid "--" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44 +#, python-format +msgid "Wi-Fi" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45 +#, python-format +msgid "ETH" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46 +#, python-format +msgid "2G" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47 +#, python-format +msgid "3G" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48 +#, python-format +msgid "LTE" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49 +#, python-format +msgid "5G" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "TEMP" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#, python-format +msgid "GOOD" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "VEHICLE" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "ONLINE" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#, python-format +msgid "OFFLINE" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117 +#, python-format +msgid "Unknown" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "HIGH" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "ERROR" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "NO" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "PANDA" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111 +#, python-format +msgid "Welcome to openpilot" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112 +#, python-format +msgid "" +"You must accept the Terms and Conditions to use openpilot. Read the latest " +"terms at https://comma.ai/terms before continuing." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115 +#, python-format +msgid "Decline" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116 +#, python-format +msgid "Agree" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145 +#, python-format +msgid "You must accept the Terms and Conditions in order to use openpilot." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148 +#, python-format +msgid "Decline, uninstall openpilot" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18 +#, python-format +msgid "Firehose Mode" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20 +#, python-format +msgid "" +"openpilot learns to drive by watching humans, like you, drive.\n" +"\n" +"Firehose Mode allows you to maximize your training data uploads to improve " +"openpilot's driving models. More data means bigger models, which means " +"better Experimental Mode." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25 +#, python-format +msgid "" +"For maximum effectiveness, bring your device inside and connect to a good " +"USB-C adapter and Wi-Fi weekly.\n" +"\n" +"Firehose Mode can also work while you're driving if connected to a hotspot " +"or unlimited SIM card.\n" +"\n" +"\n" +"Frequently Asked Questions\n" +"\n" +"Does it matter how or where I drive? Nope, just drive as you normally " +"would.\n" +"\n" +"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a " +"subset of your segments.\n" +"\n" +"What's a good USB-C adapter? Any fast phone or laptop charger should be " +"fine.\n" +"\n" +"Does it matter which software I run? Yes, only upstream openpilot (and " +"particular forks) are able to be used for training." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:111 +#, python-format +msgid "{} segment of your driving is in the training dataset so far." +msgid_plural "{} segments of your driving is in the training dataset so far." +msgstr[0] "" +msgstr[1] "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:138 +#, python-format +msgid "ACTIVE" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:140 +#, python-format +msgid "INACTIVE: connect to an unmetered network" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15 +#, python-format +msgid "" +"ADB (Android Debug Bridge) allows connecting to your device over USB or over " +"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19 +#, python-format +msgid "" +"Warning: This grants SSH access to all public keys in your GitHub settings. " +"Never enter a GitHub username other than your own. A comma employee will " +"NEVER ask you to add their GitHub username." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23 +#, python-format +msgid "" +"WARNING: openpilot longitudinal control is in alpha for this car and will " +"disable Automatic Emergency Braking (AEB).

On this car, openpilot " +"defaults to the car's built-in ACC instead of openpilot's longitudinal " +"control. Enable this to switch to openpilot longitudinal control. Enabling " +"Experimental mode is recommended when enabling openpilot longitudinal " +"control alpha. Changing this setting will restart openpilot if the car is " +"powered on." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:39 +#, python-format +msgid "Enable ADB" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:48 +#, python-format +msgid "Enable SSH" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:53 +#, python-format +msgid "SSH Keys" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:56 +#, python-format +msgid "Joystick Debug Mode" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:64 +#, python-format +msgid "Longitudinal Maneuver Mode" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:71 +#, python-format +msgid "openpilot Longitudinal Control (Alpha)" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:166 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:228 +#, python-format +msgid "Enable" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19 +#, python-format +msgid "never" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30 +#, python-format +msgid "now" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33 +#, python-format +msgid "{} minute ago" +msgid_plural "{} minutes ago" +msgstr[0] "" +msgstr[1] "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36 +#, python-format +msgid "{} hour ago" +msgid_plural "{} hours ago" +msgstr[0] "" +msgstr[1] "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39 +#, python-format +msgid "{} day ago" +msgid_plural "{} days ago" +msgstr[0] "" +msgstr[1] "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47 +#, python-format +msgid "Updates are only downloaded while the car is off." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48 +#, python-format +msgid "Current Version" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#, python-format +msgid "Download" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142 +#, python-format +msgid "CHECK" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#, python-format +msgid "Install Update" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131 +#, python-format +msgid "INSTALL" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70 +#, python-format +msgid "UNINSTALL" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105 +#, python-format +msgid "failed to check for update" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108 +#, python-format +msgid "update available" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109 +#, python-format +msgid "DOWNLOAD" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114 +#, python-format +msgid "up to date, last checked {}" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116 +#, python-format +msgid "up to date, last checked never" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Are you sure you want to uninstall?" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Uninstall" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26 +#, python-format +msgid "" +"Preview the driver facing camera to ensure that driver monitoring has good " +"visibility. (vehicle must be off)" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27 +#, python-format +msgid "" +"openpilot requires the device to be mounted within 4° left or right and " +"within 5° up or 9° down." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28 +#, python-format +msgid "Review the rules, features, and limitations of openpilot" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:50 +#, python-format +msgid "N/A" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "Pair Device" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "PAIR" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "Reset Calibration" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "RESET" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Reboot" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Power Off" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62 +#, python-format +msgid "Dongle ID" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:63 +#, python-format +msgid "Serial" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "Driver Camera" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "PREVIEW" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "Review Training Guide" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "REVIEW" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "Regulatory" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "VIEW" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "Change Language" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "CHANGE" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:100 +#, python-format +msgid "Select a language" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:113 +#, python-format +msgid "Disengage to Reset Calibration" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Are you sure you want to reset calibration?" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Reset" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid " Your device is pointed {:.1f}° {} and {:.1f}° {}." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "down" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "up" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "left" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "right" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:156 +#, python-format +msgid "

Steering lag calibration is {}% complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:158 +#, python-format +msgid "

Steering lag calibration is complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:168 +#, python-format +msgid " Steering torque response calibration is {}% complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:170 +#, python-format +msgid " Steering torque response calibration is complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:175 +#, python-format +msgid "" +"openpilot is continuously calibrating, resetting is rarely required. " +"Resetting calibration will restart openpilot if the car is powered on." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:182 +#, python-format +msgid "Disengage to Reboot" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Are you sure you want to reboot?" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:194 +#, python-format +msgid "Disengage to Power Off" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Are you sure you want to power off?" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62 +#, python-format +msgid "Device" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63 +#, python-format +msgid "Network" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64 +#, python-format +msgid "Toggles" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65 +#, python-format +msgid "Software" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66 +#, python-format +msgid "Firehose" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67 +#, python-format +msgid "Developer" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17 +#, python-format +msgid "" +"Use the openpilot system for adaptive cruise control and lane keep driver " +"assistance. Your attention is required at all times to use this feature." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20 +#, python-format +msgid "When enabled, pressing the accelerator pedal will disengage openpilot." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22 +#, python-format +msgid "" +"Standard is recommended. In aggressive mode, openpilot will follow lead cars " +"closer and be more aggressive with the gas and brake. In relaxed mode " +"openpilot will stay further away from lead cars. On supported cars, you can " +"cycle through these personalities with your steering wheel distance button." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27 +#, python-format +msgid "" +"Receive alerts to steer back into the lane when your vehicle drifts over a " +"detected lane line without a turn signal activated while driving over 31 mph " +"(50 km/h)." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30 +#, python-format +msgid "Enable driver monitoring even when openpilot is not engaged." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31 +#, python-format +msgid "" +"Upload data from the driver facing camera and help improve the driver " +"monitoring algorithm." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32 +#, python-format +msgid "Display speed in km/h instead of mph." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33 +#, python-format +msgid "" +"Record and store microphone audio while driving. The audio will be included " +"in the dashcam video in comma connect." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46 +#, python-format +msgid "Enable openpilot" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52 +#, python-format +msgid "Experimental Mode" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58 +#, python-format +msgid "Disengage on Accelerator Pedal" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64 +#, python-format +msgid "Enable Lane Departure Warnings" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70 +#, python-format +msgid "Always-On Driver Monitoring" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76 +#, python-format +msgid "Record and Upload Driver Camera" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82 +#, python-format +msgid "Record and Upload Microphone Audio" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88 +#, python-format +msgid "Use Metric System" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96 +#, python-format +msgid "Driving Personality" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Aggressive" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Standard" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Relaxed" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:125 +#, python-format +msgid "Changing this setting will restart openpilot if the car is powered on." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:158 +#, python-format +msgid "" +"openpilot defaults to driving in chill mode. Experimental mode enables alpha-" +"level features that aren't ready for chill mode. Experimental features are " +"listed below:

End-to-End Longitudinal Control


Let the driving " +"model control the gas and brakes. openpilot will drive as it thinks a human " +"would, including stopping for red lights and stop signs. Since the driving " +"model decides the speed to drive, the set speed will only act as an upper " +"bound. This is an alpha quality feature; mistakes should be expected." +"

New Driving Visualization


The driving visualization will " +"transition to the road-facing wide-angle camera at low speeds to better show " +"some turns. The Experimental mode logo will also be shown in the top right " +"corner." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:181 +#, python-format +msgid "" +"Experimental mode is currently unavailable on this car since the car's stock " +"ACC is used for longitudinal control." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183 +#, python-format +msgid "openpilot longitudinal control may come in a future update." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186 +#, python-format +msgid "" +"An alpha version of openpilot longitudinal control can be tested, along with " +"Experimental mode, on non-release branches." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:189 +#, python-format +msgid "" +"Enable the openpilot longitudinal control (alpha) toggle to allow " +"Experimental mode." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148 +#, python-format +msgid "MAX" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "km/h" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "mph" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34 +#, python-format +msgid "camera starting" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51 +#, python-format +msgid "openpilot Unavailable" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52 +#, python-format +msgid "Waiting to start" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58 +#, python-format +msgid "TAKE CONTROL IMMEDIATELY" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59 +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65 +#, python-format +msgid "System Unresponsive" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66 +#, python-format +msgid "Reboot Device" +msgstr "" diff --git a/selfdrive/ui/translations/app_de.po b/selfdrive/ui/translations/app_de.po new file mode 100644 index 00000000000000..6bc4ddf1b7564e --- /dev/null +++ b/selfdrive/ui/translations/app_de.po @@ -0,0 +1,1271 @@ +# German translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Automatically generated, 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-10-20 22:31-0700\n" +"PO-Revision-Date: 2025-10-20 16:35-0700\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:170 +#, python-format +msgid " Steering torque response calibration is complete." +msgstr " Die Lenkmoment-Reaktionskalibrierung ist abgeschlossen." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:168 +#, python-format +msgid " Steering torque response calibration is {}% complete." +msgstr " Die Lenkmoment-Reaktionskalibrierung ist zu {}% abgeschlossen." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid " Your device is pointed {:.1f}° {} and {:.1f}° {}." +msgstr " Ihr Gerät ist um {:.1f}° {} und {:.1f}° {} ausgerichtet." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43 +#, python-format +msgid "--" +msgstr "--" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "1 year of drive storage" +msgstr "1 Jahr Fahrtdatenspeicherung" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "24/7 LTE connectivity" +msgstr "24/7 LTE‑Verbindung" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46 +#, python-format +msgid "2G" +msgstr "2G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47 +#, python-format +msgid "3G" +msgstr "3G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49 +#, python-format +msgid "5G" +msgstr "5G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23 +#, fuzzy, python-format +msgid "" +"WARNING: openpilot longitudinal control is in alpha for this car and will " +"disable Automatic Emergency Braking (AEB).

On this car, openpilot " +"defaults to the car's built-in ACC instead of openpilot's longitudinal " +"control. Enable this to switch to openpilot longitudinal control. Enabling " +"Experimental mode is recommended when enabling openpilot longitudinal " +"control alpha. Changing this setting will restart openpilot if the car is " +"powered on." +msgstr "" +"WARNUNG: Die Längsregelung von openpilot befindet sich für dieses " +"Fahrzeug in der Alpha-Phase und deaktiviert das automatische Notbremssystem " +"(AEB).

Auf diesem Fahrzeug verwendet openpilot standardmäßig den " +"integrierten ACC statt der openpilot-Längsregelung. Aktivieren Sie dies, um " +"auf die openpilot-Längsregelung umzuschalten. Das Aktivieren des " +"Experimentalmodus wird empfohlen, wenn Sie die openpilot-Längsregelung " +"(Alpha) aktivieren." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:158 +#, python-format +msgid "

Steering lag calibration is complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:156 +#, python-format +msgid "

Steering lag calibration is {}% complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:138 +#, python-format +msgid "ACTIVE" +msgstr "AKTIV" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15 +#, python-format +msgid "" +"ADB (Android Debug Bridge) allows connecting to your device over USB or over " +"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info." +msgstr "" +"ADB (Android Debug Bridge) ermöglicht die Verbindung mit Ihrem Gerät über " +"USB oder über das Netzwerk. Siehe https://docs.comma.ai/how-to/connect-to-" +"comma für weitere Informationen." + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30 +#, python-format +msgid "ADD" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "APN Setting" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110 +#, python-format +msgid "Acknowledge Excessive Actuation" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:74 +#: /home/batman/openpilot/system/ui/widgets/network.py:95 +#, python-format +msgid "Advanced" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Aggressive" +msgstr "Aggressiv" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116 +#, python-format +msgid "Agree" +msgstr "Zustimmen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70 +#, python-format +msgid "Always-On Driver Monitoring" +msgstr "Immer aktive Fahrerüberwachung" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186 +#, python-format +msgid "" +"An alpha version of openpilot longitudinal control can be tested, along with " +"Experimental mode, on non-release branches." +msgstr "" +"Eine Alpha-Version der openpilot-Längsregelung kann zusammen mit dem " +"Experimentalmodus auf Nicht-Release-Zweigen getestet werden." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Are you sure you want to power off?" +msgstr "Sind Sie sicher, dass Sie ausschalten möchten?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Are you sure you want to reboot?" +msgstr "Sind Sie sicher, dass Sie neu starten möchten?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Are you sure you want to reset calibration?" +msgstr "Sind Sie sicher, dass Sie die Kalibrierung zurücksetzen möchten?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Are you sure you want to uninstall?" +msgstr "Sind Sie sicher, dass Sie deinstallieren möchten?" + +#: /home/batman/openpilot/system/ui/widgets/network.py:99 +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147 +#, python-format +msgid "Back" +msgstr "Zurück" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38 +#, python-format +msgid "Become a comma prime member at connect.comma.ai" +msgstr "Werden Sie comma prime Mitglied auf connect.comma.ai" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130 +#, python-format +msgid "Bookmark connect.comma.ai to your home screen to use it like an app" +msgstr "" +"Fügen Sie connect.comma.ai Ihrem Startbildschirm hinzu, um es wie eine App " +"zu verwenden" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "CHANGE" +msgstr "ÄNDERN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142 +#, python-format +msgid "CHECK" +msgstr "PRÜFEN" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "CHILL MODE ON" +msgstr "CHILL‑MODUS AKTIV" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "CONNECT" +msgstr "VERBINDUNG" + +#: /home/batman/openpilot/system/ui/widgets/network.py:369 +#, fuzzy, python-format +msgid "CONNECTING..." +msgstr "VERBINDUNG" + +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:23 +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:34 +#: /home/batman/openpilot/system/ui/widgets/keyboard.py:81 +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#, python-format +msgid "Cancel" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:134 +#, python-format +msgid "Cellular Metered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "Change Language" +msgstr "Sprache ändern" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:125 +#, fuzzy, python-format +msgid "Changing this setting will restart openpilot if the car is powered on." +msgstr "" +" Durch Ändern dieser Einstellung wird openpilot neu gestartet, wenn das Auto " +"eingeschaltet ist." + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129 +#, python-format +msgid "Click \"add new device\" and scan the QR code on the right" +msgstr "Klicken Sie auf \"add new device\" und scannen Sie den QR‑Code rechts" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105 +#, python-format +msgid "Close" +msgstr "Schließen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48 +#, python-format +msgid "Current Version" +msgstr "Aktuelle Version" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109 +#, python-format +msgid "DOWNLOAD" +msgstr "HERUNTERLADEN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115 +#, python-format +msgid "Decline" +msgstr "Ablehnen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148 +#, python-format +msgid "Decline, uninstall openpilot" +msgstr "Ablehnen, openpilot deinstallieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67 +#, python-format +msgid "Developer" +msgstr "Entwickler" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62 +#, python-format +msgid "Device" +msgstr "Gerät" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58 +#, python-format +msgid "Disengage on Accelerator Pedal" +msgstr "Beim Gaspedal deaktivieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:194 +#, python-format +msgid "Disengage to Power Off" +msgstr "Zum Ausschalten deaktivieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:182 +#, python-format +msgid "Disengage to Reboot" +msgstr "Zum Neustart deaktivieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:113 +#, python-format +msgid "Disengage to Reset Calibration" +msgstr "Zum Zurücksetzen der Kalibrierung deaktivieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32 +#, python-format +msgid "Display speed in km/h instead of mph." +msgstr "Geschwindigkeit in km/h statt mph anzeigen." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62 +#, python-format +msgid "Dongle ID" +msgstr "Dongle-ID" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#, python-format +msgid "Download" +msgstr "Herunterladen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "Driver Camera" +msgstr "Fahrerkamera" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96 +#, python-format +msgid "Driving Personality" +msgstr "Fahrstil" + +#: /home/batman/openpilot/system/ui/widgets/network.py:123 +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "EDIT" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "ERROR" +msgstr "FEHLER" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45 +#, python-format +msgid "ETH" +msgstr "ETH" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "EXPERIMENTAL MODE ON" +msgstr "EXPERIMENTALMODUS AKTIV" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:166 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:228 +#, python-format +msgid "Enable" +msgstr "Aktivieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:39 +#, python-format +msgid "Enable ADB" +msgstr "ADB aktivieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64 +#, python-format +msgid "Enable Lane Departure Warnings" +msgstr "Spurverlassenswarnungen aktivieren" + +#: /home/batman/openpilot/system/ui/widgets/network.py:129 +#, fuzzy, python-format +msgid "Enable Roaming" +msgstr "openpilot aktivieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:48 +#, python-format +msgid "Enable SSH" +msgstr "SSH aktivieren" + +#: /home/batman/openpilot/system/ui/widgets/network.py:120 +#, fuzzy, python-format +msgid "Enable Tethering" +msgstr "Spurverlassenswarnungen aktivieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30 +#, python-format +msgid "Enable driver monitoring even when openpilot is not engaged." +msgstr "Fahrerüberwachung auch aktivieren, wenn openpilot nicht aktiv ist." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46 +#, python-format +msgid "Enable openpilot" +msgstr "openpilot aktivieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:189 +#, python-format +msgid "" +"Enable the openpilot longitudinal control (alpha) toggle to allow " +"Experimental mode." +msgstr "" +"Den Schalter für die openpilot-Längsregelung (Alpha) aktivieren, um den " +"Experimentalmodus zu erlauben." + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "Enter APN" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:241 +#, python-format +msgid "Enter SSID" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:254 +#, python-format +msgid "Enter new tethering password" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Enter password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89 +#, python-format +msgid "Enter your GitHub username" +msgstr "Geben Sie Ihren GitHub‑Benutzernamen ein" + +#: /home/batman/openpilot/system/ui/widgets/list_view.py:115 +#: /home/batman/openpilot/system/ui/widgets/list_view.py:153 +#, python-format +msgid "Error" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52 +#, python-format +msgid "Experimental Mode" +msgstr "Experimentalmodus" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:181 +#, python-format +msgid "" +"Experimental mode is currently unavailable on this car since the car's stock " +"ACC is used for longitudinal control." +msgstr "" +"Der Experimentalmodus ist derzeit auf diesem Fahrzeug nicht verfügbar, da " +"der serienmäßige ACC für die Längsregelung verwendet wird." + +#: /home/batman/openpilot/system/ui/widgets/network.py:373 +#, python-format +msgid "FORGETTING..." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44 +#, python-format +msgid "Finish Setup" +msgstr "Einrichtung abschließen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66 +#, python-format +msgid "Firehose" +msgstr "Firehose" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18 +#, python-format +msgid "Firehose Mode" +msgstr "Firehose‑Modus" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25 +#, python-format +msgid "" +"For maximum effectiveness, bring your device inside and connect to a good " +"USB-C adapter and Wi-Fi weekly.\n" +"\n" +"Firehose Mode can also work while you're driving if connected to a hotspot " +"or unlimited SIM card.\n" +"\n" +"\n" +"Frequently Asked Questions\n" +"\n" +"Does it matter how or where I drive? Nope, just drive as you normally " +"would.\n" +"\n" +"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a " +"subset of your segments.\n" +"\n" +"What's a good USB-C adapter? Any fast phone or laptop charger should be " +"fine.\n" +"\n" +"Does it matter which software I run? Yes, only upstream openpilot (and " +"particular forks) are able to be used for training." +msgstr "" +"Für maximale Wirksamkeit bringen Sie Ihr Gerät regelmäßig ins Haus und " +"verbinden es wöchentlich mit einem guten USB‑C‑Adapter und WLAN.\n" +"\n" +"Der Firehose‑Modus kann auch während der Fahrt funktionieren, wenn eine " +"Verbindung zu einem Hotspot oder einer unbegrenzten SIM besteht.\n" +"\n" +"\n" +"Häufig gestellte Fragen\n" +"\n" +"Spielt es eine Rolle, wie oder wo ich fahre? Nein, fahren Sie einfach wie " +"gewöhnlich.\n" +"\n" +"Werden alle meine Segmente im Firehose‑Modus abgeholt? Nein, wir ziehen " +"selektiv eine Teilmenge Ihrer Segmente.\n" +"\n" +"Was ist ein guter USB‑C‑Adapter? Jeder schnelle Telefon‑ oder Laptoplader " +"sollte ausreichen.\n" +"\n" +"Spielt es eine Rolle, welche Software ich verwende? Ja, nur " +"Upstream‑openpilot (und bestimmte Forks) können für das Training verwendet " +"werden." + +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#: /home/batman/openpilot/system/ui/widgets/network.py:451 +#, python-format +msgid "Forget" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:319 +#, python-format +msgid "Forget Wi-Fi Network \"{}\"?" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#, python-format +msgid "GOOD" +msgstr "GUT" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128 +#, python-format +msgid "Go to https://connect.comma.ai on your phone" +msgstr "Gehen Sie auf Ihrem Telefon zu https://connect.comma.ai" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "HIGH" +msgstr "HOCH" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#, fuzzy, python-format +msgid "Hidden Network" +msgstr "Netzwerk" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:140 +#, python-format +msgid "INACTIVE: connect to an unmetered network" +msgstr "INAKTIV: Mit einem unlimitierten Netzwerk verbinden" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131 +#, python-format +msgid "INSTALL" +msgstr "INSTALLIEREN" + +#: /home/batman/openpilot/system/ui/widgets/network.py:150 +#, python-format +msgid "IP Address" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#, python-format +msgid "Install Update" +msgstr "Update installieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:56 +#, python-format +msgid "Joystick Debug Mode" +msgstr "Joystick‑Debugmodus" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29 +#, python-format +msgid "LOADING" +msgstr "LADEN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48 +#, python-format +msgid "LTE" +msgstr "LTE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:64 +#, python-format +msgid "Longitudinal Maneuver Mode" +msgstr "Längsmanövermodus" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148 +#, python-format +msgid "MAX" +msgstr "MAX" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75 +#, python-format +msgid "" +"Maximize your training data uploads to improve openpilot's driving models." +msgstr "" +"Maximieren Sie Ihre Trainingsdaten‑Uploads, um die Fahrmodelle von openpilot " +"zu verbessern." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:50 +#, python-format +msgid "N/A" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "NO" +msgstr "KEIN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63 +#, python-format +msgid "Network" +msgstr "Netzwerk" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114 +#, python-format +msgid "No SSH keys found" +msgstr "Keine SSH‑Schlüssel gefunden" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126 +#, fuzzy, python-format +msgid "No SSH keys found for user '{}'" +msgstr "Keine SSH‑Schlüssel für Benutzer '{username}' gefunden" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18 +#, fuzzy, python-format +msgid "No release notes available." +msgstr "Keine Versionshinweise verfügbar." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#, python-format +msgid "OFFLINE" +msgstr "OFFLINE" + +#: /home/batman/openpilot/system/ui/widgets/html_render.py:247 +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:93 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#, python-format +msgid "OK" +msgstr "OK" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "ONLINE" +msgstr "ONLINE" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20 +#, python-format +msgid "Open" +msgstr "Öffnen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "PAIR" +msgstr "KOPPELN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "PANDA" +msgstr "PANDA" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "PREVIEW" +msgstr "VORSCHAU" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44 +#, python-format +msgid "PRIME FEATURES:" +msgstr "PRIME‑FUNKTIONEN:" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "Pair Device" +msgstr "Gerät koppeln" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19 +#, fuzzy, python-format +msgid "Pair device" +msgstr "Gerät koppeln" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103 +#, python-format +msgid "Pair your device to your comma account" +msgstr "Koppeln Sie Ihr Gerät mit Ihrem comma‑Konto" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25 +#, python-format +msgid "" +"Pair your device with comma connect (connect.comma.ai) and claim your comma " +"prime offer." +msgstr "" +"Koppeln Sie Ihr Gerät mit comma connect (connect.comma.ai) und lösen Sie Ihr " +"comma‑prime‑Angebot ein." + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91 +#, fuzzy, python-format +msgid "Please connect to Wi-Fi to complete initial pairing" +msgstr "Bitte mit WLAN verbinden, um das erste Koppeln abzuschließen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Power Off" +msgstr "Ausschalten" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Prevent large data uploads when on a metered Wi-Fi connection" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:135 +#, python-format +msgid "Prevent large data uploads when on a metered cellular connection" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26 +#, python-format +msgid "" +"Preview the driver facing camera to ensure that driver monitoring has good " +"visibility. (vehicle must be off)" +msgstr "" +"Vorschau der Fahrer‑Kamera, um sicherzustellen, dass die Fahrerüberwachung " +"gute Sicht hat. (Fahrzeug muss ausgeschaltet sein)" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161 +#, python-format +msgid "QR Code Error" +msgstr "QR‑Code‑Fehler" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31 +#, python-format +msgid "REMOVE" +msgstr "ENTFERNEN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "RESET" +msgstr "ZURÜCKSETZEN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "REVIEW" +msgstr "ANSEHEN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Reboot" +msgstr "Neustart" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66 +#, fuzzy, python-format +msgid "Reboot Device" +msgstr "Gerät neu starten" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113 +#, python-format +msgid "Reboot and Update" +msgstr "Neustarten und aktualisieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27 +#, python-format +msgid "" +"Receive alerts to steer back into the lane when your vehicle drifts over a " +"detected lane line without a turn signal activated while driving over 31 mph " +"(50 km/h)." +msgstr "" +"Erhalten Sie Warnungen, um zurück in die Spur zu lenken, wenn Ihr Fahrzeug " +"ohne Blinker über eine erkannte Spurlinie driftet und über 31 mph (50 km/h) " +"fährt." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76 +#, python-format +msgid "Record and Upload Driver Camera" +msgstr "Fahrerkamera aufzeichnen und hochladen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82 +#, python-format +msgid "Record and Upload Microphone Audio" +msgstr "Mikrofonton aufzeichnen und hochladen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33 +#, python-format +msgid "" +"Record and store microphone audio while driving. The audio will be included " +"in the dashcam video in comma connect." +msgstr "" +"Mikrofonton während der Fahrt aufzeichnen und speichern. Die Audiospur wird " +"im Dashcam‑Video in comma connect enthalten sein." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "Regulatory" +msgstr "Vorschriften" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Relaxed" +msgstr "Entspannt" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote access" +msgstr "Fernzugriff" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote snapshots" +msgstr "Remote‑Schnappschüsse" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123 +#, python-format +msgid "Request timed out" +msgstr "Zeitüberschreitung bei der Anfrage" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Reset" +msgstr "Zurücksetzen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "Reset Calibration" +msgstr "Kalibrierung zurücksetzen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "Review Training Guide" +msgstr "Trainingsanleitung ansehen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28 +#, python-format +msgid "Review the rules, features, and limitations of openpilot" +msgstr "" +"Überprüfen Sie die Regeln, Funktionen und Einschränkungen von openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:53 +#, python-format +msgid "SSH Keys" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:310 +#, python-format +msgid "Scanning Wi-Fi networks..." +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:35 +#, python-format +msgid "Select" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:100 +#, python-format +msgid "Select a language" +msgstr "Sprache auswählen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:63 +#, python-format +msgid "Serial" +msgstr "Seriennummer" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107 +#, python-format +msgid "Snooze Update" +msgstr "Update verschieben" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65 +#, python-format +msgid "Software" +msgstr "Software" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Standard" +msgstr "Standard" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22 +#, python-format +msgid "" +"Standard is recommended. In aggressive mode, openpilot will follow lead cars " +"closer and be more aggressive with the gas and brake. In relaxed mode " +"openpilot will stay further away from lead cars. On supported cars, you can " +"cycle through these personalities with your steering wheel distance button." +msgstr "" +"Standard wird empfohlen. Im aggressiven Modus folgt openpilot " +"vorausfahrenden Fahrzeugen näher und ist beim Gasgeben und Bremsen " +"aggressiver. Im entspannten Modus bleibt openpilot weiter entfernt. Bei " +"unterstützten Fahrzeugen können Sie mit der Abstandstaste am Lenkrad " +"zwischen diesen Profilen wechseln." + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59 +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65 +#, python-format +msgid "System Unresponsive" +msgstr "System reagiert nicht" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58 +#, python-format +msgid "TAKE CONTROL IMMEDIATELY" +msgstr "SOFORT DIE KONTROLLE ÜBERNEHMEN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "TEMP" +msgstr "TEMP" + +#: /home/batman/openpilot/system/ui/widgets/network.py:124 +#, python-format +msgid "Tethering Password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64 +#, python-format +msgid "Toggles" +msgstr "Schalter" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70 +#, python-format +msgid "UNINSTALL" +msgstr "DEINSTALLIEREN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155 +#, python-format +msgid "UPDATE" +msgstr "UPDATE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Uninstall" +msgstr "Deinstallieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117 +#, python-format +msgid "Unknown" +msgstr "Unbekannt" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47 +#, python-format +msgid "Updates are only downloaded while the car is off." +msgstr "Updates werden nur heruntergeladen, wenn das Auto aus ist." + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33 +#, python-format +msgid "Upgrade Now" +msgstr "Jetzt abonnieren" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31 +#, python-format +msgid "" +"Upload data from the driver facing camera and help improve the driver " +"monitoring algorithm." +msgstr "" +"Daten von der Fahrer‑Kamera hochladen und den Fahrerüberwachungs‑Algorithmus " +"verbessern." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88 +#, python-format +msgid "Use Metric System" +msgstr "Metersystem verwenden" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17 +#, python-format +msgid "" +"Use the openpilot system for adaptive cruise control and lane keep driver " +"assistance. Your attention is required at all times to use this feature." +msgstr "" +"Verwenden Sie openpilot für adaptive Geschwindigkeitsregelung und " +"Spurhalteassistenz. Ihre Aufmerksamkeit ist jederzeit erforderlich, um diese " +"Funktion zu nutzen." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "VEHICLE" +msgstr "FAHRZEUG" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "VIEW" +msgstr "ANSEHEN" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52 +#, python-format +msgid "Waiting to start" +msgstr "Warten auf Start" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19 +#, python-format +msgid "" +"Warning: This grants SSH access to all public keys in your GitHub settings. " +"Never enter a GitHub username other than your own. A comma employee will " +"NEVER ask you to add their GitHub username." +msgstr "" +"Warnung: Dies gewährt SSH‑Zugriff auf alle öffentlichen Schlüssel in Ihren " +"GitHub‑Einstellungen. Geben Sie niemals einen anderen GitHub‑Benutzernamen " +"als Ihren eigenen ein. Ein comma‑Mitarbeiter wird Sie NIEMALS bitten, seinen " +"GitHub‑Benutzernamen hinzuzufügen." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111 +#, python-format +msgid "Welcome to openpilot" +msgstr "Willkommen bei openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20 +#, python-format +msgid "When enabled, pressing the accelerator pedal will disengage openpilot." +msgstr "Wenn aktiviert, deaktiviert das Drücken des Gaspedals openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44 +#, python-format +msgid "Wi-Fi" +msgstr "WLAN" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Wi-Fi Network Metered" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Wrong password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145 +#, python-format +msgid "You must accept the Terms and Conditions in order to use openpilot." +msgstr "" +"Sie müssen die Nutzungsbedingungen akzeptieren, um openpilot zu verwenden." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112 +#, python-format +msgid "" +"You must accept the Terms and Conditions to use openpilot. Read the latest " +"terms at https://comma.ai/terms before continuing." +msgstr "" +"Sie müssen die Nutzungsbedingungen akzeptieren, um openpilot zu verwenden. " +"Lesen Sie die aktuellen Bedingungen unter https://comma.ai/terms, bevor Sie " +"fortfahren." + +#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34 +#, python-format +msgid "camera starting" +msgstr "Kamera startet" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63 +#, python-format +msgid "comma prime" +msgstr "comma prime" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "default" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "down" +msgstr "unten" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105 +#, python-format +msgid "failed to check for update" +msgstr "Überprüfung auf Updates fehlgeschlagen" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "for \"{}\"" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "km/h" +msgstr "km/h" + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "leave blank for automatic configuration" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "left" +msgstr "links" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "metered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "mph" +msgstr "mph" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19 +#, python-format +msgid "never" +msgstr "nie" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30 +#, python-format +msgid "now" +msgstr "jetzt" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:71 +#, python-format +msgid "openpilot Longitudinal Control (Alpha)" +msgstr "openpilot Längsregelung (Alpha)" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51 +#, fuzzy, python-format +msgid "openpilot Unavailable" +msgstr "openpilot nicht verfügbar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:158 +#, python-format +msgid "" +"openpilot defaults to driving in chill mode. Experimental mode enables alpha-" +"level features that aren't ready for chill mode. Experimental features are " +"listed below:

End-to-End Longitudinal Control


Let the driving " +"model control the gas and brakes. openpilot will drive as it thinks a human " +"would, including stopping for red lights and stop signs. Since the driving " +"model decides the speed to drive, the set speed will only act as an upper " +"bound. This is an alpha quality feature; mistakes should be expected." +"

New Driving Visualization


The driving visualization will " +"transition to the road-facing wide-angle camera at low speeds to better show " +"some turns. The Experimental mode logo will also be shown in the top right " +"corner." +msgstr "" +"openpilot fährt standardmäßig im Chill‑Modus. Der Experimentalmodus " +"aktiviert Funktionen im Alpha‑Status, die für den Chill‑Modus noch nicht " +"bereit sind. Die experimentellen Funktionen sind unten aufgeführt:" +"

End-to‑End‑Längsregelung


Das Fahrmodell steuert Gas und " +"Bremse. openpilot fährt so, wie es einen Menschen einschätzt, einschließlich " +"Anhalten an roten Ampeln und Stoppschildern. Da das Modell die " +"Geschwindigkeit bestimmt, dient die eingestellte Geschwindigkeit nur als " +"Obergrenze. Dies ist eine Alpha‑Funktion; Fehler sind zu erwarten." +"

Neue Fahrvisualisierung


Die Visualisierung wechselt bei " +"niedriger Geschwindigkeit auf die nach vorn gerichtete Weitwinkelkamera, um " +"manche Kurven besser zu zeigen. Das Experimentalmodus‑Logo wird außerdem " +"oben rechts angezeigt." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:175 +#, fuzzy, python-format +msgid "" +"openpilot is continuously calibrating, resetting is rarely required. " +"Resetting calibration will restart openpilot if the car is powered on." +msgstr "" +" Durch Ändern dieser Einstellung wird openpilot neu gestartet, wenn das Auto " +"eingeschaltet ist." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20 +#, python-format +msgid "" +"openpilot learns to drive by watching humans, like you, drive.\n" +"\n" +"Firehose Mode allows you to maximize your training data uploads to improve " +"openpilot's driving models. More data means bigger models, which means " +"better Experimental Mode." +msgstr "" +"openpilot lernt das Fahren, indem es Menschen wie Sie beobachtet.\n" +"\n" +"Der Firehose‑Modus ermöglicht es Ihnen, Ihre Trainingsdaten‑Uploads zu " +"maximieren, um die Fahrmodelle von openpilot zu verbessern. Mehr Daten " +"bedeuten größere Modelle – und damit einen besseren Experimentalmodus." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183 +#, python-format +msgid "openpilot longitudinal control may come in a future update." +msgstr "Die openpilot‑Längsregelung könnte in einem zukünftigen Update kommen." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27 +#, fuzzy, python-format +msgid "" +"openpilot requires the device to be mounted within 4° left or right and " +"within 5° up or 9° down." +msgstr "" +"openpilot erfordert, dass das Gerät innerhalb von 4° nach links oder rechts " +"und innerhalb von 5° nach oben oder 9° nach unten montiert ist." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "right" +msgstr "rechts" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "unmetered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "up" +msgstr "oben" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116 +#, python-format +msgid "up to date, last checked never" +msgstr "Aktuell, zuletzt geprüft: nie" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114 +#, python-format +msgid "up to date, last checked {}" +msgstr "Aktuell, zuletzt geprüft: {}" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108 +#, python-format +msgid "update available" +msgstr "Update verfügbar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169 +#, python-format +msgid "{} ALERT" +msgid_plural "{} ALERTS" +msgstr[0] "{} WARNUNG" +msgstr[1] "{} WARNUNGEN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39 +#, python-format +msgid "{} day ago" +msgid_plural "{} days ago" +msgstr[0] "vor {} Tag" +msgstr[1] "vor {} Tagen" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36 +#, python-format +msgid "{} hour ago" +msgid_plural "{} hours ago" +msgstr[0] "vor {} Stunde" +msgstr[1] "vor {} Stunden" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33 +#, python-format +msgid "{} minute ago" +msgid_plural "{} minutes ago" +msgstr[0] "vor {} Minute" +msgstr[1] "vor {} Minuten" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:111 +#, fuzzy, python-format +msgid "{} segment of your driving is in the training dataset so far." +msgid_plural "{} segments of your driving is in the training dataset so far." +msgstr[0] "{} Segment Ihrer Fahrten ist bisher im Trainingsdatensatz." +msgstr[1] "{} Segmente Ihrer Fahrten sind bisher im Trainingsdatensatz." + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62 +#, fuzzy, python-format +msgid "✓ SUBSCRIBED" +msgstr "✓ ABONNIERT" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22 +#, fuzzy, python-format +msgid "🔥 Firehose Mode 🔥" +msgstr "Firehose‑Modus" + +#, fuzzy, python-format +#~ msgid " Firehose Mode " +#~ msgstr "Firehose‑Modus" diff --git a/selfdrive/ui/translations/app_en.po b/selfdrive/ui/translations/app_en.po new file mode 100644 index 00000000000000..2e37a6121dc1e8 --- /dev/null +++ b/selfdrive/ui/translations/app_en.po @@ -0,0 +1,1253 @@ +# English translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Automatically generated, 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-10-20 22:32-0700\n" +"PO-Revision-Date: 2025-10-20 22:32-0700\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: /home/batman/openpilot/system/ui/widgets/html_render.py:247 +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:93 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#, python-format +msgid "OK" +msgstr "OK" + +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:23 +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:34 +#: /home/batman/openpilot/system/ui/widgets/keyboard.py:81 +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#, python-format +msgid "Cancel" +msgstr "Cancel" + +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:35 +#, python-format +msgid "Select" +msgstr "Select" + +#: /home/batman/openpilot/system/ui/widgets/network.py:74 +#: /home/batman/openpilot/system/ui/widgets/network.py:95 +#, python-format +msgid "Advanced" +msgstr "Advanced" + +#: /home/batman/openpilot/system/ui/widgets/network.py:99 +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147 +#, python-format +msgid "Back" +msgstr "Back" + +#: /home/batman/openpilot/system/ui/widgets/network.py:120 +#, python-format +msgid "Enable Tethering" +msgstr "Enable Tethering" + +#: /home/batman/openpilot/system/ui/widgets/network.py:123 +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "EDIT" +msgstr "EDIT" + +#: /home/batman/openpilot/system/ui/widgets/network.py:124 +#, python-format +msgid "Tethering Password" +msgstr "Tethering Password" + +#: /home/batman/openpilot/system/ui/widgets/network.py:129 +#, python-format +msgid "Enable Roaming" +msgstr "Enable Roaming" + +#: /home/batman/openpilot/system/ui/widgets/network.py:134 +#, python-format +msgid "Cellular Metered" +msgstr "Cellular Metered" + +#: /home/batman/openpilot/system/ui/widgets/network.py:135 +#, python-format +msgid "Prevent large data uploads when on a metered cellular connection" +msgstr "Prevent large data uploads when on a metered cellular connection" + +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "APN Setting" +msgstr "APN Setting" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "default" +msgstr "default" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "metered" +msgstr "metered" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "unmetered" +msgstr "unmetered" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Wi-Fi Network Metered" +msgstr "Wi-Fi Network Metered" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Prevent large data uploads when on a metered Wi-Fi connection" +msgstr "Prevent large data uploads when on a metered Wi-Fi connection" + +#: /home/batman/openpilot/system/ui/widgets/network.py:150 +#, python-format +msgid "IP Address" +msgstr "IP Address" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#, python-format +msgid "Hidden Network" +msgstr "Hidden Network" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "CONNECT" +msgstr "CONNECT" + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "Enter APN" +msgstr "Enter APN" + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "leave blank for automatic configuration" +msgstr "leave blank for automatic configuration" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Enter password" +msgstr "Enter password" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "for \"{}\"" +msgstr "for \"{}\"" + +#: /home/batman/openpilot/system/ui/widgets/network.py:241 +#, python-format +msgid "Enter SSID" +msgstr "Enter SSID" + +#: /home/batman/openpilot/system/ui/widgets/network.py:254 +#, python-format +msgid "Enter new tethering password" +msgstr "Enter new tethering password" + +#: /home/batman/openpilot/system/ui/widgets/network.py:310 +#, python-format +msgid "Scanning Wi-Fi networks..." +msgstr "Scanning Wi-Fi networks..." + +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Wrong password" +msgstr "Wrong password" + +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#: /home/batman/openpilot/system/ui/widgets/network.py:451 +#, python-format +msgid "Forget" +msgstr "Forget" + +#: /home/batman/openpilot/system/ui/widgets/network.py:319 +#, python-format +msgid "Forget Wi-Fi Network \"{}\"?" +msgstr "Forget Wi-Fi Network \"{}\"?" + +#: /home/batman/openpilot/system/ui/widgets/network.py:369 +#, python-format +msgid "CONNECTING..." +msgstr "CONNECTING..." + +#: /home/batman/openpilot/system/ui/widgets/network.py:373 +#, python-format +msgid "FORGETTING..." +msgstr "FORGETTING..." + +#: /home/batman/openpilot/system/ui/widgets/list_view.py:115 +#: /home/batman/openpilot/system/ui/widgets/list_view.py:153 +#, python-format +msgid "Error" +msgstr "Error" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103 +#, python-format +msgid "Pair your device to your comma account" +msgstr "Pair your device to your comma account" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128 +#, python-format +msgid "Go to https://connect.comma.ai on your phone" +msgstr "Go to https://connect.comma.ai on your phone" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129 +#, python-format +msgid "Click \"add new device\" and scan the QR code on the right" +msgstr "Click \"add new device\" and scan the QR code on the right" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130 +#, python-format +msgid "Bookmark connect.comma.ai to your home screen to use it like an app" +msgstr "Bookmark connect.comma.ai to your home screen to use it like an app" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161 +#, python-format +msgid "QR Code Error" +msgstr "QR Code Error" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29 +#, python-format +msgid "LOADING" +msgstr "LOADING" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30 +#, python-format +msgid "ADD" +msgstr "ADD" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31 +#, python-format +msgid "REMOVE" +msgstr "REMOVE" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89 +#, python-format +msgid "Enter your GitHub username" +msgstr "Enter your GitHub username" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114 +#, python-format +msgid "No SSH keys found" +msgstr "No SSH keys found" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123 +#, python-format +msgid "Request timed out" +msgstr "Request timed out" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126 +#, python-format +msgid "No SSH keys found for user '{}'" +msgstr "No SSH keys found for user '{}'" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33 +#, python-format +msgid "Upgrade Now" +msgstr "Upgrade Now" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38 +#, python-format +msgid "Become a comma prime member at connect.comma.ai" +msgstr "Become a comma prime member at connect.comma.ai" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44 +#, python-format +msgid "PRIME FEATURES:" +msgstr "PRIME FEATURES:" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote access" +msgstr "Remote access" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "24/7 LTE connectivity" +msgstr "24/7 LTE connectivity" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "1 year of drive storage" +msgstr "1 year of drive storage" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote snapshots" +msgstr "Remote snapshots" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62 +#, python-format +msgid "✓ SUBSCRIBED" +msgstr "✓ SUBSCRIBED" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63 +#, python-format +msgid "comma prime" +msgstr "comma prime" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "EXPERIMENTAL MODE ON" +msgstr "EXPERIMENTAL MODE ON" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "CHILL MODE ON" +msgstr "CHILL MODE ON" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18 +#, python-format +msgid "No release notes available." +msgstr "No release notes available." + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105 +#, python-format +msgid "Close" +msgstr "Close" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107 +#, python-format +msgid "Snooze Update" +msgstr "Snooze Update" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110 +#, python-format +msgid "Acknowledge Excessive Actuation" +msgstr "Acknowledge Excessive Actuation" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113 +#, python-format +msgid "Reboot and Update" +msgstr "Reboot and Update" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19 +#, python-format +msgid "Pair device" +msgstr "Pair device" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20 +#, python-format +msgid "Open" +msgstr "Open" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22 +#, python-format +msgid "🔥 Firehose Mode 🔥" +msgstr "🔥 Firehose Mode 🔥" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44 +#, python-format +msgid "Finish Setup" +msgstr "Finish Setup" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25 +#, python-format +msgid "" +"Pair your device with comma connect (connect.comma.ai) and claim your comma " +"prime offer." +msgstr "" +"Pair your device with comma connect (connect.comma.ai) and claim your comma " +"prime offer." + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75 +#, python-format +msgid "" +"Maximize your training data uploads to improve openpilot's driving models." +msgstr "" +"Maximize your training data uploads to improve openpilot's driving models." + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91 +#, python-format +msgid "Please connect to Wi-Fi to complete initial pairing" +msgstr "Please connect to Wi-Fi to complete initial pairing" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155 +#, python-format +msgid "UPDATE" +msgstr "UPDATE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169 +#, python-format +msgid "{} ALERT" +msgid_plural "{} ALERTS" +msgstr[0] "{} ALERT" +msgstr[1] "{} ALERTS" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43 +#, python-format +msgid "--" +msgstr "--" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44 +#, python-format +msgid "Wi-Fi" +msgstr "Wi-Fi" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45 +#, python-format +msgid "ETH" +msgstr "ETH" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46 +#, python-format +msgid "2G" +msgstr "2G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47 +#, python-format +msgid "3G" +msgstr "3G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48 +#, python-format +msgid "LTE" +msgstr "LTE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49 +#, python-format +msgid "5G" +msgstr "5G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "TEMP" +msgstr "TEMP" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#, python-format +msgid "GOOD" +msgstr "GOOD" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "VEHICLE" +msgstr "VEHICLE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "ONLINE" +msgstr "ONLINE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#, python-format +msgid "OFFLINE" +msgstr "OFFLINE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117 +#, python-format +msgid "Unknown" +msgstr "Unknown" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "HIGH" +msgstr "HIGH" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "ERROR" +msgstr "ERROR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "NO" +msgstr "NO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "PANDA" +msgstr "PANDA" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111 +#, python-format +msgid "Welcome to openpilot" +msgstr "Welcome to openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112 +#, python-format +msgid "" +"You must accept the Terms and Conditions to use openpilot. Read the latest " +"terms at https://comma.ai/terms before continuing." +msgstr "" +"You must accept the Terms and Conditions to use openpilot. Read the latest " +"terms at https://comma.ai/terms before continuing." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115 +#, python-format +msgid "Decline" +msgstr "Decline" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116 +#, python-format +msgid "Agree" +msgstr "Agree" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145 +#, python-format +msgid "You must accept the Terms and Conditions in order to use openpilot." +msgstr "You must accept the Terms and Conditions in order to use openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148 +#, python-format +msgid "Decline, uninstall openpilot" +msgstr "Decline, uninstall openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18 +#, python-format +msgid "Firehose Mode" +msgstr "Firehose Mode" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20 +#, python-format +msgid "" +"openpilot learns to drive by watching humans, like you, drive.\n" +"\n" +"Firehose Mode allows you to maximize your training data uploads to improve " +"openpilot's driving models. More data means bigger models, which means " +"better Experimental Mode." +msgstr "" +"openpilot learns to drive by watching humans, like you, drive.\n" +"\n" +"Firehose Mode allows you to maximize your training data uploads to improve " +"openpilot's driving models. More data means bigger models, which means " +"better Experimental Mode." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25 +#, python-format +msgid "" +"For maximum effectiveness, bring your device inside and connect to a good " +"USB-C adapter and Wi-Fi weekly.\n" +"\n" +"Firehose Mode can also work while you're driving if connected to a hotspot " +"or unlimited SIM card.\n" +"\n" +"\n" +"Frequently Asked Questions\n" +"\n" +"Does it matter how or where I drive? Nope, just drive as you normally " +"would.\n" +"\n" +"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a " +"subset of your segments.\n" +"\n" +"What's a good USB-C adapter? Any fast phone or laptop charger should be " +"fine.\n" +"\n" +"Does it matter which software I run? Yes, only upstream openpilot (and " +"particular forks) are able to be used for training." +msgstr "" +"For maximum effectiveness, bring your device inside and connect to a good " +"USB-C adapter and Wi-Fi weekly.\n" +"\n" +"Firehose Mode can also work while you're driving if connected to a hotspot " +"or unlimited SIM card.\n" +"\n" +"\n" +"Frequently Asked Questions\n" +"\n" +"Does it matter how or where I drive? Nope, just drive as you normally " +"would.\n" +"\n" +"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a " +"subset of your segments.\n" +"\n" +"What's a good USB-C adapter? Any fast phone or laptop charger should be " +"fine.\n" +"\n" +"Does it matter which software I run? Yes, only upstream openpilot (and " +"particular forks) are able to be used for training." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:111 +#, python-format +msgid "{} segment of your driving is in the training dataset so far." +msgid_plural "{} segments of your driving is in the training dataset so far." +msgstr[0] "{} segment of your driving is in the training dataset so far." +msgstr[1] "{} segments of your driving is in the training dataset so far." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:138 +#, python-format +msgid "ACTIVE" +msgstr "ACTIVE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:140 +#, python-format +msgid "INACTIVE: connect to an unmetered network" +msgstr "INACTIVE: connect to an unmetered network" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15 +#, python-format +msgid "" +"ADB (Android Debug Bridge) allows connecting to your device over USB or over " +"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info." +msgstr "" +"ADB (Android Debug Bridge) allows connecting to your device over USB or over " +"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19 +#, python-format +msgid "" +"Warning: This grants SSH access to all public keys in your GitHub settings. " +"Never enter a GitHub username other than your own. A comma employee will " +"NEVER ask you to add their GitHub username." +msgstr "" +"Warning: This grants SSH access to all public keys in your GitHub settings. " +"Never enter a GitHub username other than your own. A comma employee will " +"NEVER ask you to add their GitHub username." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23 +#, python-format +msgid "" +"WARNING: openpilot longitudinal control is in alpha for this car and will " +"disable Automatic Emergency Braking (AEB).

On this car, openpilot " +"defaults to the car's built-in ACC instead of openpilot's longitudinal " +"control. Enable this to switch to openpilot longitudinal control. Enabling " +"Experimental mode is recommended when enabling openpilot longitudinal " +"control alpha. Changing this setting will restart openpilot if the car is " +"powered on." +msgstr "" +"WARNING: openpilot longitudinal control is in alpha for this car and will " +"disable Automatic Emergency Braking (AEB).

On this car, openpilot " +"defaults to the car's built-in ACC instead of openpilot's longitudinal " +"control. Enable this to switch to openpilot longitudinal control. Enabling " +"Experimental mode is recommended when enabling openpilot longitudinal " +"control alpha. Changing this setting will restart openpilot if the car is " +"powered on." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:39 +#, python-format +msgid "Enable ADB" +msgstr "Enable ADB" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:48 +#, python-format +msgid "Enable SSH" +msgstr "Enable SSH" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:53 +#, python-format +msgid "SSH Keys" +msgstr "SSH Keys" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:56 +#, python-format +msgid "Joystick Debug Mode" +msgstr "Joystick Debug Mode" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:64 +#, python-format +msgid "Longitudinal Maneuver Mode" +msgstr "Longitudinal Maneuver Mode" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:71 +#, python-format +msgid "openpilot Longitudinal Control (Alpha)" +msgstr "openpilot Longitudinal Control (Alpha)" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:166 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:228 +#, python-format +msgid "Enable" +msgstr "Enable" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19 +#, python-format +msgid "never" +msgstr "never" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30 +#, python-format +msgid "now" +msgstr "now" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33 +#, python-format +msgid "{} minute ago" +msgid_plural "{} minutes ago" +msgstr[0] "{} minute ago" +msgstr[1] "{} minutes ago" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36 +#, python-format +msgid "{} hour ago" +msgid_plural "{} hours ago" +msgstr[0] "{} hour ago" +msgstr[1] "{} hours ago" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39 +#, python-format +msgid "{} day ago" +msgid_plural "{} days ago" +msgstr[0] "{} day ago" +msgstr[1] "{} days ago" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47 +#, python-format +msgid "Updates are only downloaded while the car is off." +msgstr "Updates are only downloaded while the car is off." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48 +#, python-format +msgid "Current Version" +msgstr "Current Version" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#, python-format +msgid "Download" +msgstr "Download" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142 +#, python-format +msgid "CHECK" +msgstr "CHECK" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#, python-format +msgid "Install Update" +msgstr "Install Update" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131 +#, python-format +msgid "INSTALL" +msgstr "INSTALL" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70 +#, python-format +msgid "UNINSTALL" +msgstr "UNINSTALL" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105 +#, python-format +msgid "failed to check for update" +msgstr "failed to check for update" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108 +#, python-format +msgid "update available" +msgstr "update available" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109 +#, python-format +msgid "DOWNLOAD" +msgstr "DOWNLOAD" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114 +#, python-format +msgid "up to date, last checked {}" +msgstr "up to date, last checked {}" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116 +#, python-format +msgid "up to date, last checked never" +msgstr "up to date, last checked never" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Are you sure you want to uninstall?" +msgstr "Are you sure you want to uninstall?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Uninstall" +msgstr "Uninstall" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26 +#, python-format +msgid "" +"Preview the driver facing camera to ensure that driver monitoring has good " +"visibility. (vehicle must be off)" +msgstr "" +"Preview the driver facing camera to ensure that driver monitoring has good " +"visibility. (vehicle must be off)" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27 +#, python-format +msgid "" +"openpilot requires the device to be mounted within 4° left or right and " +"within 5° up or 9° down." +msgstr "" +"openpilot requires the device to be mounted within 4° left or right and " +"within 5° up or 9° down." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28 +#, python-format +msgid "Review the rules, features, and limitations of openpilot" +msgstr "Review the rules, features, and limitations of openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:50 +#, python-format +msgid "N/A" +msgstr "N/A" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "Pair Device" +msgstr "Pair Device" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "PAIR" +msgstr "PAIR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "Reset Calibration" +msgstr "Reset Calibration" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "RESET" +msgstr "RESET" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Reboot" +msgstr "Reboot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Power Off" +msgstr "Power Off" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62 +#, python-format +msgid "Dongle ID" +msgstr "Dongle ID" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:63 +#, python-format +msgid "Serial" +msgstr "Serial" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "Driver Camera" +msgstr "Driver Camera" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "PREVIEW" +msgstr "PREVIEW" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "Review Training Guide" +msgstr "Review Training Guide" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "REVIEW" +msgstr "REVIEW" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "Regulatory" +msgstr "Regulatory" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "VIEW" +msgstr "VIEW" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "Change Language" +msgstr "Change Language" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "CHANGE" +msgstr "CHANGE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:100 +#, python-format +msgid "Select a language" +msgstr "Select a language" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:113 +#, python-format +msgid "Disengage to Reset Calibration" +msgstr "Disengage to Reset Calibration" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Are you sure you want to reset calibration?" +msgstr "Are you sure you want to reset calibration?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Reset" +msgstr "Reset" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid " Your device is pointed {:.1f}° {} and {:.1f}° {}." +msgstr " Your device is pointed {:.1f}° {} and {:.1f}° {}." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "down" +msgstr "down" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "up" +msgstr "up" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "left" +msgstr "left" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "right" +msgstr "right" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:156 +#, python-format +msgid "

Steering lag calibration is {}% complete." +msgstr "

Steering lag calibration is {}% complete." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:158 +#, python-format +msgid "

Steering lag calibration is complete." +msgstr "

Steering lag calibration is complete." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:168 +#, python-format +msgid " Steering torque response calibration is {}% complete." +msgstr " Steering torque response calibration is {}% complete." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:170 +#, python-format +msgid " Steering torque response calibration is complete." +msgstr " Steering torque response calibration is complete." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:175 +#, python-format +msgid "" +"openpilot is continuously calibrating, resetting is rarely required. " +"Resetting calibration will restart openpilot if the car is powered on." +msgstr "" +"openpilot is continuously calibrating, resetting is rarely required. " +"Resetting calibration will restart openpilot if the car is powered on." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:182 +#, python-format +msgid "Disengage to Reboot" +msgstr "Disengage to Reboot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Are you sure you want to reboot?" +msgstr "Are you sure you want to reboot?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:194 +#, python-format +msgid "Disengage to Power Off" +msgstr "Disengage to Power Off" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Are you sure you want to power off?" +msgstr "Are you sure you want to power off?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62 +#, python-format +msgid "Device" +msgstr "Device" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63 +#, python-format +msgid "Network" +msgstr "Network" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64 +#, python-format +msgid "Toggles" +msgstr "Toggles" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65 +#, python-format +msgid "Software" +msgstr "Software" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66 +#, python-format +msgid "Firehose" +msgstr "Firehose" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67 +#, python-format +msgid "Developer" +msgstr "Developer" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17 +#, python-format +msgid "" +"Use the openpilot system for adaptive cruise control and lane keep driver " +"assistance. Your attention is required at all times to use this feature." +msgstr "" +"Use the openpilot system for adaptive cruise control and lane keep driver " +"assistance. Your attention is required at all times to use this feature." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20 +#, python-format +msgid "When enabled, pressing the accelerator pedal will disengage openpilot." +msgstr "When enabled, pressing the accelerator pedal will disengage openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22 +#, python-format +msgid "" +"Standard is recommended. In aggressive mode, openpilot will follow lead cars " +"closer and be more aggressive with the gas and brake. In relaxed mode " +"openpilot will stay further away from lead cars. On supported cars, you can " +"cycle through these personalities with your steering wheel distance button." +msgstr "" +"Standard is recommended. In aggressive mode, openpilot will follow lead cars " +"closer and be more aggressive with the gas and brake. In relaxed mode " +"openpilot will stay further away from lead cars. On supported cars, you can " +"cycle through these personalities with your steering wheel distance button." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27 +#, python-format +msgid "" +"Receive alerts to steer back into the lane when your vehicle drifts over a " +"detected lane line without a turn signal activated while driving over 31 mph " +"(50 km/h)." +msgstr "" +"Receive alerts to steer back into the lane when your vehicle drifts over a " +"detected lane line without a turn signal activated while driving over 31 mph " +"(50 km/h)." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30 +#, python-format +msgid "Enable driver monitoring even when openpilot is not engaged." +msgstr "Enable driver monitoring even when openpilot is not engaged." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31 +#, python-format +msgid "" +"Upload data from the driver facing camera and help improve the driver " +"monitoring algorithm." +msgstr "" +"Upload data from the driver facing camera and help improve the driver " +"monitoring algorithm." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32 +#, python-format +msgid "Display speed in km/h instead of mph." +msgstr "Display speed in km/h instead of mph." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33 +#, python-format +msgid "" +"Record and store microphone audio while driving. The audio will be included " +"in the dashcam video in comma connect." +msgstr "" +"Record and store microphone audio while driving. The audio will be included " +"in the dashcam video in comma connect." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46 +#, python-format +msgid "Enable openpilot" +msgstr "Enable openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52 +#, python-format +msgid "Experimental Mode" +msgstr "Experimental Mode" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58 +#, python-format +msgid "Disengage on Accelerator Pedal" +msgstr "Disengage on Accelerator Pedal" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64 +#, python-format +msgid "Enable Lane Departure Warnings" +msgstr "Enable Lane Departure Warnings" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70 +#, python-format +msgid "Always-On Driver Monitoring" +msgstr "Always-On Driver Monitoring" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76 +#, python-format +msgid "Record and Upload Driver Camera" +msgstr "Record and Upload Driver Camera" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82 +#, python-format +msgid "Record and Upload Microphone Audio" +msgstr "Record and Upload Microphone Audio" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88 +#, python-format +msgid "Use Metric System" +msgstr "Use Metric System" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96 +#, python-format +msgid "Driving Personality" +msgstr "Driving Personality" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Aggressive" +msgstr "Aggressive" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Standard" +msgstr "Standard" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Relaxed" +msgstr "Relaxed" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:125 +#, python-format +msgid "Changing this setting will restart openpilot if the car is powered on." +msgstr "Changing this setting will restart openpilot if the car is powered on." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:158 +#, python-format +msgid "" +"openpilot defaults to driving in chill mode. Experimental mode enables alpha-" +"level features that aren't ready for chill mode. Experimental features are " +"listed below:

End-to-End Longitudinal Control


Let the driving " +"model control the gas and brakes. openpilot will drive as it thinks a human " +"would, including stopping for red lights and stop signs. Since the driving " +"model decides the speed to drive, the set speed will only act as an upper " +"bound. This is an alpha quality feature; mistakes should be expected." +"

New Driving Visualization


The driving visualization will " +"transition to the road-facing wide-angle camera at low speeds to better show " +"some turns. The Experimental mode logo will also be shown in the top right " +"corner." +msgstr "" +"openpilot defaults to driving in chill mode. Experimental mode enables alpha-" +"level features that aren't ready for chill mode. Experimental features are " +"listed below:

End-to-End Longitudinal Control


Let the driving " +"model control the gas and brakes. openpilot will drive as it thinks a human " +"would, including stopping for red lights and stop signs. Since the driving " +"model decides the speed to drive, the set speed will only act as an upper " +"bound. This is an alpha quality feature; mistakes should be expected." +"

New Driving Visualization


The driving visualization will " +"transition to the road-facing wide-angle camera at low speeds to better show " +"some turns. The Experimental mode logo will also be shown in the top right " +"corner." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:181 +#, python-format +msgid "" +"Experimental mode is currently unavailable on this car since the car's stock " +"ACC is used for longitudinal control." +msgstr "" +"Experimental mode is currently unavailable on this car since the car's stock " +"ACC is used for longitudinal control." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183 +#, python-format +msgid "openpilot longitudinal control may come in a future update." +msgstr "openpilot longitudinal control may come in a future update." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186 +#, python-format +msgid "" +"An alpha version of openpilot longitudinal control can be tested, along with " +"Experimental mode, on non-release branches." +msgstr "" +"An alpha version of openpilot longitudinal control can be tested, along with " +"Experimental mode, on non-release branches." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:189 +#, python-format +msgid "" +"Enable the openpilot longitudinal control (alpha) toggle to allow " +"Experimental mode." +msgstr "" +"Enable the openpilot longitudinal control (alpha) toggle to allow " +"Experimental mode." + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148 +#, python-format +msgid "MAX" +msgstr "MAX" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "km/h" +msgstr "km/h" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "mph" +msgstr "mph" + +#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34 +#, python-format +msgid "camera starting" +msgstr "camera starting" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51 +#, python-format +msgid "openpilot Unavailable" +msgstr "openpilot Unavailable" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52 +#, python-format +msgid "Waiting to start" +msgstr "Waiting to start" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58 +#, python-format +msgid "TAKE CONTROL IMMEDIATELY" +msgstr "TAKE CONTROL IMMEDIATELY" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59 +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65 +#, python-format +msgid "System Unresponsive" +msgstr "System Unresponsive" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66 +#, python-format +msgid "Reboot Device" +msgstr "Reboot Device" diff --git a/selfdrive/ui/translations/app_es.po b/selfdrive/ui/translations/app_es.po new file mode 100644 index 00000000000000..8617f4d4531edf --- /dev/null +++ b/selfdrive/ui/translations/app_es.po @@ -0,0 +1,1275 @@ +# Spanish translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Automatically generated, 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-10-20 22:31-0700\n" +"PO-Revision-Date: 2025-10-20 16:35-0700\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:170 +#, python-format +msgid " Steering torque response calibration is complete." +msgstr " La calibración de respuesta de par de dirección está completa." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:168 +#, python-format +msgid " Steering torque response calibration is {}% complete." +msgstr " La calibración de respuesta de par de dirección está {}% completa." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid " Your device is pointed {:.1f}° {} and {:.1f}° {}." +msgstr " Tu dispositivo está orientado {:.1f}° {} y {:.1f}° {}." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43 +#, python-format +msgid "--" +msgstr "--" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "1 year of drive storage" +msgstr "1 año de almacenamiento de conducción" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "24/7 LTE connectivity" +msgstr "Conectividad LTE 24/7" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46 +#, python-format +msgid "2G" +msgstr "2G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47 +#, python-format +msgid "3G" +msgstr "3G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49 +#, python-format +msgid "5G" +msgstr "5G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23 +#, fuzzy, python-format +msgid "" +"WARNING: openpilot longitudinal control is in alpha for this car and will " +"disable Automatic Emergency Braking (AEB).

On this car, openpilot " +"defaults to the car's built-in ACC instead of openpilot's longitudinal " +"control. Enable this to switch to openpilot longitudinal control. Enabling " +"Experimental mode is recommended when enabling openpilot longitudinal " +"control alpha. Changing this setting will restart openpilot if the car is " +"powered on." +msgstr "" +"ADVERTENCIA: el control longitudinal de openpilot está en alpha para este " +"coche y deshabilitará el Frenado Automático de Emergencia (AEB).

En este coche, openpilot usa por defecto el ACC integrado del " +"coche en lugar del control longitudinal de openpilot. Activa esto para " +"cambiar al control longitudinal de openpilot. Se recomienda activar el modo " +"Experimental al habilitar el control longitudinal de openpilot (alpha)." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:158 +#, python-format +msgid "

Steering lag calibration is complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:156 +#, python-format +msgid "

Steering lag calibration is {}% complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:138 +#, python-format +msgid "ACTIVE" +msgstr "ACTIVO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15 +#, python-format +msgid "" +"ADB (Android Debug Bridge) allows connecting to your device over USB or over " +"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info." +msgstr "" +"ADB (Android Debug Bridge) permite conectar tu dispositivo por USB o por la " +"red. Consulta https://docs.comma.ai/how-to/connect-to-comma para más " +"información." + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30 +#, python-format +msgid "ADD" +msgstr "AÑADIR" + +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "APN Setting" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110 +#, python-format +msgid "Acknowledge Excessive Actuation" +msgstr "Reconocer actuación excesiva" + +#: /home/batman/openpilot/system/ui/widgets/network.py:74 +#: /home/batman/openpilot/system/ui/widgets/network.py:95 +#, python-format +msgid "Advanced" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Aggressive" +msgstr "Agresivo" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116 +#, python-format +msgid "Agree" +msgstr "Aceptar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70 +#, python-format +msgid "Always-On Driver Monitoring" +msgstr "Supervisión del conductor siempre activa" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186 +#, python-format +msgid "" +"An alpha version of openpilot longitudinal control can be tested, along with " +"Experimental mode, on non-release branches." +msgstr "" +"Se puede probar una versión alpha del control longitudinal de openpilot, " +"junto con el modo Experimental, en ramas que no son de lanzamiento." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Are you sure you want to power off?" +msgstr "¿Seguro que quieres apagar?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Are you sure you want to reboot?" +msgstr "¿Seguro que quieres reiniciar?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Are you sure you want to reset calibration?" +msgstr "¿Seguro que quieres restablecer la calibración?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Are you sure you want to uninstall?" +msgstr "¿Seguro que quieres desinstalar?" + +#: /home/batman/openpilot/system/ui/widgets/network.py:99 +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147 +#, python-format +msgid "Back" +msgstr "Atrás" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38 +#, python-format +msgid "Become a comma prime member at connect.comma.ai" +msgstr "Hazte miembro de comma prime en connect.comma.ai" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130 +#, python-format +msgid "Bookmark connect.comma.ai to your home screen to use it like an app" +msgstr "" +"Añade connect.comma.ai a tu pantalla de inicio para usarlo como una app" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "CHANGE" +msgstr "CAMBIAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142 +#, python-format +msgid "CHECK" +msgstr "COMPROBAR" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "CHILL MODE ON" +msgstr "MODO CHILL ACTIVADO" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "CONNECT" +msgstr "CONECTAR" + +#: /home/batman/openpilot/system/ui/widgets/network.py:369 +#, fuzzy, python-format +msgid "CONNECTING..." +msgstr "CONECTAR" + +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:23 +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:34 +#: /home/batman/openpilot/system/ui/widgets/keyboard.py:81 +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#, python-format +msgid "Cancel" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:134 +#, python-format +msgid "Cellular Metered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "Change Language" +msgstr "Cambiar idioma" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:125 +#, fuzzy, python-format +msgid "Changing this setting will restart openpilot if the car is powered on." +msgstr "" +" Cambiar esta configuración reiniciará openpilot si el coche está encendido." + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129 +#, python-format +msgid "Click \"add new device\" and scan the QR code on the right" +msgstr "" +"Haz clic en \"añadir nuevo dispositivo\" y escanea el código QR de la derecha" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105 +#, python-format +msgid "Close" +msgstr "Cerrar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48 +#, python-format +msgid "Current Version" +msgstr "Versión actual" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109 +#, python-format +msgid "DOWNLOAD" +msgstr "DESCARGAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115 +#, python-format +msgid "Decline" +msgstr "Rechazar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148 +#, python-format +msgid "Decline, uninstall openpilot" +msgstr "Rechazar, desinstalar openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67 +#, python-format +msgid "Developer" +msgstr "Desarrollador" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62 +#, python-format +msgid "Device" +msgstr "Dispositivo" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58 +#, python-format +msgid "Disengage on Accelerator Pedal" +msgstr "Desactivar con el pedal del acelerador" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:194 +#, python-format +msgid "Disengage to Power Off" +msgstr "Desactivar para apagar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:182 +#, python-format +msgid "Disengage to Reboot" +msgstr "Desactivar para reiniciar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:113 +#, python-format +msgid "Disengage to Reset Calibration" +msgstr "Desactivar para restablecer la calibración" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32 +#, python-format +msgid "Display speed in km/h instead of mph." +msgstr "Mostrar la velocidad en km/h en lugar de mph." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62 +#, python-format +msgid "Dongle ID" +msgstr "ID del dongle" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#, python-format +msgid "Download" +msgstr "Descargar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "Driver Camera" +msgstr "Cámara del conductor" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96 +#, python-format +msgid "Driving Personality" +msgstr "Estilo de conducción" + +#: /home/batman/openpilot/system/ui/widgets/network.py:123 +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "EDIT" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "ERROR" +msgstr "ERROR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45 +#, python-format +msgid "ETH" +msgstr "ETH" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "EXPERIMENTAL MODE ON" +msgstr "MODO EXPERIMENTAL ACTIVADO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:166 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:228 +#, python-format +msgid "Enable" +msgstr "Activar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:39 +#, python-format +msgid "Enable ADB" +msgstr "Activar ADB" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64 +#, python-format +msgid "Enable Lane Departure Warnings" +msgstr "Activar advertencias de salida de carril" + +#: /home/batman/openpilot/system/ui/widgets/network.py:129 +#, fuzzy, python-format +msgid "Enable Roaming" +msgstr "Activar openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:48 +#, python-format +msgid "Enable SSH" +msgstr "Activar SSH" + +#: /home/batman/openpilot/system/ui/widgets/network.py:120 +#, fuzzy, python-format +msgid "Enable Tethering" +msgstr "Activar advertencias de salida de carril" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30 +#, python-format +msgid "Enable driver monitoring even when openpilot is not engaged." +msgstr "" +"Activar la supervisión del conductor incluso cuando openpilot no esté " +"activado." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46 +#, python-format +msgid "Enable openpilot" +msgstr "Activar openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:189 +#, python-format +msgid "" +"Enable the openpilot longitudinal control (alpha) toggle to allow " +"Experimental mode." +msgstr "" +"Activa el interruptor de control longitudinal de openpilot (alpha) para " +"permitir el modo Experimental." + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "Enter APN" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:241 +#, python-format +msgid "Enter SSID" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:254 +#, python-format +msgid "Enter new tethering password" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Enter password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89 +#, python-format +msgid "Enter your GitHub username" +msgstr "Introduce tu nombre de usuario de GitHub" + +#: /home/batman/openpilot/system/ui/widgets/list_view.py:115 +#: /home/batman/openpilot/system/ui/widgets/list_view.py:153 +#, python-format +msgid "Error" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52 +#, python-format +msgid "Experimental Mode" +msgstr "Modo experimental" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:181 +#, python-format +msgid "" +"Experimental mode is currently unavailable on this car since the car's stock " +"ACC is used for longitudinal control." +msgstr "" +"El modo experimental no está disponible actualmente en este coche, ya que se " +"usa el ACC de fábrica para el control longitudinal." + +#: /home/batman/openpilot/system/ui/widgets/network.py:373 +#, python-format +msgid "FORGETTING..." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44 +#, python-format +msgid "Finish Setup" +msgstr "Finalizar configuración" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66 +#, python-format +msgid "Firehose" +msgstr "Firehose" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18 +#, python-format +msgid "Firehose Mode" +msgstr "Modo Firehose" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25 +#, python-format +msgid "" +"For maximum effectiveness, bring your device inside and connect to a good " +"USB-C adapter and Wi-Fi weekly.\n" +"\n" +"Firehose Mode can also work while you're driving if connected to a hotspot " +"or unlimited SIM card.\n" +"\n" +"\n" +"Frequently Asked Questions\n" +"\n" +"Does it matter how or where I drive? Nope, just drive as you normally " +"would.\n" +"\n" +"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a " +"subset of your segments.\n" +"\n" +"What's a good USB-C adapter? Any fast phone or laptop charger should be " +"fine.\n" +"\n" +"Does it matter which software I run? Yes, only upstream openpilot (and " +"particular forks) are able to be used for training." +msgstr "" +"Para la máxima efectividad, lleva tu dispositivo al interior y conéctalo " +"semanalmente a un buen adaptador USB‑C y Wi‑Fi.\n" +"\n" +"El Modo Firehose también puede funcionar mientras conduces si está conectado " +"a un hotspot o a una SIM ilimitada.\n" +"\n" +"\n" +"Preguntas frecuentes\n" +"\n" +"¿Importa cómo o dónde conduzco? No, conduce como normalmente lo harías.\n" +"\n" +"¿Se suben todos mis segmentos en el Modo Firehose? No, seleccionamos un " +"subconjunto de tus segmentos.\n" +"\n" +"¿Qué es un buen adaptador USB‑C? Cualquier cargador rápido de teléfono o " +"laptop sirve.\n" +"\n" +"¿Importa qué software ejecuto? Sí, solo openpilot upstream (y forks " +"particulares) pueden usarse para entrenamiento." + +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#: /home/batman/openpilot/system/ui/widgets/network.py:451 +#, python-format +msgid "Forget" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:319 +#, python-format +msgid "Forget Wi-Fi Network \"{}\"?" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#, python-format +msgid "GOOD" +msgstr "BUENO" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128 +#, python-format +msgid "Go to https://connect.comma.ai on your phone" +msgstr "Ve a https://connect.comma.ai en tu teléfono" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "HIGH" +msgstr "ALTO" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#, fuzzy, python-format +msgid "Hidden Network" +msgstr "Red" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:140 +#, python-format +msgid "INACTIVE: connect to an unmetered network" +msgstr "INACTIVO: conéctate a una red sin límites" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131 +#, python-format +msgid "INSTALL" +msgstr "INSTALAR" + +#: /home/batman/openpilot/system/ui/widgets/network.py:150 +#, python-format +msgid "IP Address" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#, python-format +msgid "Install Update" +msgstr "Instalar actualización" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:56 +#, python-format +msgid "Joystick Debug Mode" +msgstr "Modo de depuración de joystick" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29 +#, python-format +msgid "LOADING" +msgstr "CARGANDO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48 +#, python-format +msgid "LTE" +msgstr "LTE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:64 +#, python-format +msgid "Longitudinal Maneuver Mode" +msgstr "Modo de maniobra longitudinal" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148 +#, python-format +msgid "MAX" +msgstr "MÁX" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75 +#, python-format +msgid "" +"Maximize your training data uploads to improve openpilot's driving models." +msgstr "" +"Maximiza tus cargas de datos de entrenamiento para mejorar los modelos de " +"conducción de openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:50 +#, python-format +msgid "N/A" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "NO" +msgstr "NO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63 +#, python-format +msgid "Network" +msgstr "Red" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114 +#, python-format +msgid "No SSH keys found" +msgstr "No se encontraron claves SSH" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126 +#, fuzzy, python-format +msgid "No SSH keys found for user '{}'" +msgstr "No se encontraron claves SSH para el usuario '{username}'" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18 +#, fuzzy, python-format +msgid "No release notes available." +msgstr "No hay notas de versión disponibles." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#, python-format +msgid "OFFLINE" +msgstr "SIN CONEXIÓN" + +#: /home/batman/openpilot/system/ui/widgets/html_render.py:247 +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:93 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#, python-format +msgid "OK" +msgstr "OK" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "ONLINE" +msgstr "EN LÍNEA" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20 +#, python-format +msgid "Open" +msgstr "Abrir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "PAIR" +msgstr "EMPAREJAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "PANDA" +msgstr "PANDA" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "PREVIEW" +msgstr "VISTA PREVIA" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44 +#, python-format +msgid "PRIME FEATURES:" +msgstr "FUNCIONES PRIME:" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "Pair Device" +msgstr "Emparejar dispositivo" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19 +#, python-format +msgid "Pair device" +msgstr "Emparejar dispositivo" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103 +#, python-format +msgid "Pair your device to your comma account" +msgstr "Empareja tu dispositivo con tu cuenta de comma" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25 +#, python-format +msgid "" +"Pair your device with comma connect (connect.comma.ai) and claim your comma " +"prime offer." +msgstr "" +"Empareja tu dispositivo con comma connect (connect.comma.ai) y reclama tu " +"oferta de comma prime." + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91 +#, python-format +msgid "Please connect to Wi-Fi to complete initial pairing" +msgstr "Conéctate a Wi‑Fi para completar el emparejamiento inicial" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Power Off" +msgstr "Apagar" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Prevent large data uploads when on a metered Wi-Fi connection" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:135 +#, python-format +msgid "Prevent large data uploads when on a metered cellular connection" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26 +#, python-format +msgid "" +"Preview the driver facing camera to ensure that driver monitoring has good " +"visibility. (vehicle must be off)" +msgstr "" +"Previsualiza la cámara hacia el conductor para asegurarte de que la " +"supervisión del conductor tenga buena visibilidad. (el vehículo debe estar " +"apagado)" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161 +#, python-format +msgid "QR Code Error" +msgstr "Error de código QR" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31 +#, python-format +msgid "REMOVE" +msgstr "ELIMINAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "RESET" +msgstr "RESTABLECER" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "REVIEW" +msgstr "REVISAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Reboot" +msgstr "Reiniciar" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66 +#, python-format +msgid "Reboot Device" +msgstr "Reiniciar dispositivo" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113 +#, python-format +msgid "Reboot and Update" +msgstr "Reiniciar y actualizar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27 +#, python-format +msgid "" +"Receive alerts to steer back into the lane when your vehicle drifts over a " +"detected lane line without a turn signal activated while driving over 31 mph " +"(50 km/h)." +msgstr "" +"Recibe alertas para volver al carril cuando tu vehículo se desvíe sobre una " +"línea de carril detectada sin la direccional activada mientras conduces a " +"más de 31 mph (50 km/h)." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76 +#, python-format +msgid "Record and Upload Driver Camera" +msgstr "Grabar y subir cámara del conductor" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82 +#, python-format +msgid "Record and Upload Microphone Audio" +msgstr "Grabar y subir audio del micrófono" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33 +#, python-format +msgid "" +"Record and store microphone audio while driving. The audio will be included " +"in the dashcam video in comma connect." +msgstr "" +"Grabar y almacenar audio del micrófono mientras conduces. El audio se " +"incluirá en el video de la dashcam en comma connect." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "Regulatory" +msgstr "Reglamentario" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Relaxed" +msgstr "Relajado" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote access" +msgstr "Acceso remoto" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote snapshots" +msgstr "Capturas remotas" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123 +#, python-format +msgid "Request timed out" +msgstr "Se agotó el tiempo de espera de la solicitud" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Reset" +msgstr "Restablecer" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "Reset Calibration" +msgstr "Restablecer calibración" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "Review Training Guide" +msgstr "Revisar guía de entrenamiento" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28 +#, python-format +msgid "Review the rules, features, and limitations of openpilot" +msgstr "Revisa las reglas, funciones y limitaciones de openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:53 +#, python-format +msgid "SSH Keys" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:310 +#, python-format +msgid "Scanning Wi-Fi networks..." +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:35 +#, python-format +msgid "Select" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:100 +#, python-format +msgid "Select a language" +msgstr "Selecciona un idioma" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:63 +#, python-format +msgid "Serial" +msgstr "Número de serie" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107 +#, python-format +msgid "Snooze Update" +msgstr "Posponer actualización" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65 +#, python-format +msgid "Software" +msgstr "Software" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Standard" +msgstr "Estándar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22 +#, python-format +msgid "" +"Standard is recommended. In aggressive mode, openpilot will follow lead cars " +"closer and be more aggressive with the gas and brake. In relaxed mode " +"openpilot will stay further away from lead cars. On supported cars, you can " +"cycle through these personalities with your steering wheel distance button." +msgstr "" +"Se recomienda Estándar. En modo agresivo, openpilot seguirá más de cerca a " +"los coches delanteros y será más agresivo con el acelerador y el freno. En " +"modo relajado, openpilot se mantendrá más lejos de los coches delanteros. En " +"coches compatibles, puedes cambiar entre estas personalidades con el botón " +"de distancia del volante." + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59 +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65 +#, python-format +msgid "System Unresponsive" +msgstr "Sistema sin respuesta" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58 +#, python-format +msgid "TAKE CONTROL IMMEDIATELY" +msgstr "TOME EL CONTROL INMEDIATAMENTE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "TEMP" +msgstr "TEMP" + +#: /home/batman/openpilot/system/ui/widgets/network.py:124 +#, python-format +msgid "Tethering Password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64 +#, python-format +msgid "Toggles" +msgstr "Interruptores" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70 +#, python-format +msgid "UNINSTALL" +msgstr "DESINSTALAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155 +#, python-format +msgid "UPDATE" +msgstr "ACTUALIZAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Uninstall" +msgstr "Desinstalar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117 +#, python-format +msgid "Unknown" +msgstr "Desconocido" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47 +#, python-format +msgid "Updates are only downloaded while the car is off." +msgstr "Las actualizaciones solo se descargan cuando el coche está apagado." + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33 +#, python-format +msgid "Upgrade Now" +msgstr "Mejorar ahora" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31 +#, python-format +msgid "" +"Upload data from the driver facing camera and help improve the driver " +"monitoring algorithm." +msgstr "" +"Sube datos de la cámara orientada al conductor y ayuda a mejorar el " +"algoritmo de supervisión del conductor." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88 +#, python-format +msgid "Use Metric System" +msgstr "Usar sistema métrico" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17 +#, python-format +msgid "" +"Use the openpilot system for adaptive cruise control and lane keep driver " +"assistance. Your attention is required at all times to use this feature." +msgstr "" +"Usa el sistema openpilot para control de crucero adaptativo y asistencia de " +"mantenimiento de carril. Tu atención se requiere en todo momento para usar " +"esta función." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "VEHICLE" +msgstr "VEHÍCULO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "VIEW" +msgstr "VER" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52 +#, python-format +msgid "Waiting to start" +msgstr "Esperando para iniciar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19 +#, python-format +msgid "" +"Warning: This grants SSH access to all public keys in your GitHub settings. " +"Never enter a GitHub username other than your own. A comma employee will " +"NEVER ask you to add their GitHub username." +msgstr "" +"Advertencia: Esto otorga acceso SSH a todas las claves públicas en tu " +"configuración de GitHub. Nunca introduzcas un nombre de usuario de GitHub " +"que no sea el tuyo. Un empleado de comma NUNCA te pedirá que agregues su " +"nombre de usuario de GitHub." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111 +#, python-format +msgid "Welcome to openpilot" +msgstr "Bienvenido a openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20 +#, python-format +msgid "When enabled, pressing the accelerator pedal will disengage openpilot." +msgstr "" +"Cuando está activado, al presionar el pedal del acelerador se desactivará " +"openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44 +#, python-format +msgid "Wi-Fi" +msgstr "Wi‑Fi" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Wi-Fi Network Metered" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Wrong password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145 +#, python-format +msgid "You must accept the Terms and Conditions in order to use openpilot." +msgstr "Debes aceptar los Términos y Condiciones para poder usar openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112 +#, python-format +msgid "" +"You must accept the Terms and Conditions to use openpilot. Read the latest " +"terms at https://comma.ai/terms before continuing." +msgstr "" +"Debes aceptar los Términos y Condiciones para usar openpilot. Lee los " +"términos más recientes en https://comma.ai/terms antes de continuar." + +#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34 +#, python-format +msgid "camera starting" +msgstr "iniciando cámara" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63 +#, python-format +msgid "comma prime" +msgstr "comma prime" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "default" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "down" +msgstr "abajo" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105 +#, python-format +msgid "failed to check for update" +msgstr "Error al buscar actualizaciones" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "for \"{}\"" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "km/h" +msgstr "km/h" + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "leave blank for automatic configuration" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "left" +msgstr "izquierda" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "metered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "mph" +msgstr "mph" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19 +#, python-format +msgid "never" +msgstr "nunca" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30 +#, python-format +msgid "now" +msgstr "ahora" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:71 +#, python-format +msgid "openpilot Longitudinal Control (Alpha)" +msgstr "Control longitudinal de openpilot (Alpha)" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51 +#, python-format +msgid "openpilot Unavailable" +msgstr "openpilot no disponible" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:158 +#, python-format +msgid "" +"openpilot defaults to driving in chill mode. Experimental mode enables alpha-" +"level features that aren't ready for chill mode. Experimental features are " +"listed below:

End-to-End Longitudinal Control


Let the driving " +"model control the gas and brakes. openpilot will drive as it thinks a human " +"would, including stopping for red lights and stop signs. Since the driving " +"model decides the speed to drive, the set speed will only act as an upper " +"bound. This is an alpha quality feature; mistakes should be expected." +"

New Driving Visualization


The driving visualization will " +"transition to the road-facing wide-angle camera at low speeds to better show " +"some turns. The Experimental mode logo will also be shown in the top right " +"corner." +msgstr "" +"openpilot conduce por defecto en modo chill. El modo Experimental habilita " +"funciones de nivel alpha que no están listas para el modo chill. Las " +"funciones experimentales se enumeran a continuación:

Control " +"longitudinal de extremo a extremo


Deja que el modelo de conducción " +"controle el acelerador y los frenos. openpilot conducirá como piensa que lo " +"haría un humano, incluyendo detenerse en luces rojas y señales de alto. Dado " +"que el modelo decide la velocidad a la que conducir, la velocidad " +"establecida solo actuará como límite superior. Esta es una función de " +"calidad alpha; se deben esperar errores.

Nueva visualización de " +"conducción


La visualización de conducción hará la transición a la " +"cámara gran angular orientada a la carretera a bajas velocidades para " +"mostrar mejor algunos giros. El logotipo del modo Experimental también se " +"mostrará en la esquina superior derecha." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:175 +#, fuzzy, python-format +msgid "" +"openpilot is continuously calibrating, resetting is rarely required. " +"Resetting calibration will restart openpilot if the car is powered on." +msgstr "" +" Cambiar esta configuración reiniciará openpilot si el coche está encendido." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20 +#, python-format +msgid "" +"openpilot learns to drive by watching humans, like you, drive.\n" +"\n" +"Firehose Mode allows you to maximize your training data uploads to improve " +"openpilot's driving models. More data means bigger models, which means " +"better Experimental Mode." +msgstr "" +"openpilot aprende a conducir observando a humanos, como tú, conducir.\n" +"\n" +"El Modo Firehose te permite maximizar tus cargas de datos de entrenamiento " +"para mejorar los modelos de conducción de openpilot. Más datos significan " +"modelos más grandes, lo que significa un mejor Modo Experimental." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183 +#, python-format +msgid "openpilot longitudinal control may come in a future update." +msgstr "" +"El control longitudinal de openpilot podría llegar en una actualización " +"futura." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27 +#, fuzzy, python-format +msgid "" +"openpilot requires the device to be mounted within 4° left or right and " +"within 5° up or 9° down." +msgstr "" +"openpilot requiere que el dispositivo esté montado dentro de 4° a izquierda " +"o derecha y dentro de 5° hacia arriba o 9° hacia abajo." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "right" +msgstr "derecha" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "unmetered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "up" +msgstr "arriba" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116 +#, python-format +msgid "up to date, last checked never" +msgstr "actualizado, última comprobación: nunca" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114 +#, python-format +msgid "up to date, last checked {}" +msgstr "actualizado, última comprobación: {}" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108 +#, python-format +msgid "update available" +msgstr "actualización disponible" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169 +#, python-format +msgid "{} ALERT" +msgid_plural "{} ALERTS" +msgstr[0] "{} ALERTA" +msgstr[1] "{} ALERTAS" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39 +#, python-format +msgid "{} day ago" +msgid_plural "{} days ago" +msgstr[0] "hace {} día" +msgstr[1] "hace {} días" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36 +#, python-format +msgid "{} hour ago" +msgid_plural "{} hours ago" +msgstr[0] "hace {} hora" +msgstr[1] "hace {} horas" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33 +#, python-format +msgid "{} minute ago" +msgid_plural "{} minutes ago" +msgstr[0] "hace {} minuto" +msgstr[1] "hace {} minutos" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:111 +#, fuzzy, python-format +msgid "{} segment of your driving is in the training dataset so far." +msgid_plural "{} segments of your driving is in the training dataset so far." +msgstr[0] "" +"{} segmento de tu conducción está en el conjunto de entrenamiento hasta " +"ahora." +msgstr[1] "" +"{} segmentos de tu conducción están en el conjunto de entrenamiento hasta " +"ahora." + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62 +#, fuzzy, python-format +msgid "✓ SUBSCRIBED" +msgstr "✓ SUSCRITO" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22 +#, python-format +msgid "🔥 Firehose Mode 🔥" +msgstr "🔥 Modo Firehose 🔥" + +#, fuzzy, python-format +#~ msgid " Firehose Mode " +#~ msgstr "Modo Firehose" diff --git a/selfdrive/ui/translations/app_fr.po b/selfdrive/ui/translations/app_fr.po new file mode 100644 index 00000000000000..5567a6494eb17f --- /dev/null +++ b/selfdrive/ui/translations/app_fr.po @@ -0,0 +1,1276 @@ +# French translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Automatically generated, 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-10-20 22:31-0700\n" +"PO-Revision-Date: 2025-10-20 18:19-0700\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:170 +#, python-format +msgid " Steering torque response calibration is complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:168 +#, python-format +msgid " Steering torque response calibration is {}% complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid " Your device is pointed {:.1f}° {} and {:.1f}° {}." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43 +#, python-format +msgid "--" +msgstr "--" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "1 year of drive storage" +msgstr "1 an de stockage de trajets" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "24/7 LTE connectivity" +msgstr "Connexion LTE 24/7" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46 +#, python-format +msgid "2G" +msgstr "2G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47 +#, python-format +msgid "3G" +msgstr "3G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49 +#, python-format +msgid "5G" +msgstr "5G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23 +#, fuzzy, python-format +msgid "" +"WARNING: openpilot longitudinal control is in alpha for this car and will " +"disable Automatic Emergency Braking (AEB).

On this car, openpilot " +"defaults to the car's built-in ACC instead of openpilot's longitudinal " +"control. Enable this to switch to openpilot longitudinal control. Enabling " +"Experimental mode is recommended when enabling openpilot longitudinal " +"control alpha. Changing this setting will restart openpilot if the car is " +"powered on." +msgstr "" +"ATTENTION : le contrôle longitudinal openpilot est en alpha pour cette " +"voiture et désactivera le freinage d'urgence automatique (AEB).

Sur cette voiture, openpilot utilise par défaut le régulateur de " +"vitesse adaptatif intégré au véhicule plutôt que le contrôle longitudinal " +"d'openpilot. Activez ceci pour passer au contrôle longitudinal openpilot. Il " +"est recommandé d'activer le mode expérimental lors de l'activation du " +"contrôle longitudinal openpilot alpha." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:158 +#, python-format +msgid "

Steering lag calibration is complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:156 +#, python-format +msgid "

Steering lag calibration is {}% complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:138 +#, python-format +msgid "ACTIVE" +msgstr "ACTIF" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15 +#, python-format +msgid "" +"ADB (Android Debug Bridge) allows connecting to your device over USB or over " +"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info." +msgstr "" +"ADB (Android Debug Bridge) permet de connecter votre appareil via USB ou via " +"le réseau. Voir https://docs.comma.ai/how-to/connect-to-comma pour plus " +"d'informations." + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30 +#, python-format +msgid "ADD" +msgstr "AJOUTER" + +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "APN Setting" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110 +#, python-format +msgid "Acknowledge Excessive Actuation" +msgstr "Accuser réception d'actionnement excessif" + +#: /home/batman/openpilot/system/ui/widgets/network.py:74 +#: /home/batman/openpilot/system/ui/widgets/network.py:95 +#, python-format +msgid "Advanced" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Aggressive" +msgstr "Agressif" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116 +#, python-format +msgid "Agree" +msgstr "Accepter" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70 +#, python-format +msgid "Always-On Driver Monitoring" +msgstr "Surveillance continue du conducteur" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186 +#, python-format +msgid "" +"An alpha version of openpilot longitudinal control can be tested, along with " +"Experimental mode, on non-release branches." +msgstr "" +"Une version alpha du contrôle longitudinal openpilot peut être testée, avec " +"le mode expérimental, sur des branches non publiées." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Are you sure you want to power off?" +msgstr "Êtes-vous sûr de vouloir éteindre ?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Are you sure you want to reboot?" +msgstr "Êtes-vous sûr de vouloir redémarrer ?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Are you sure you want to reset calibration?" +msgstr "Êtes-vous sûr de vouloir réinitialiser la calibration ?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Are you sure you want to uninstall?" +msgstr "Êtes-vous sûr de vouloir désinstaller ?" + +#: /home/batman/openpilot/system/ui/widgets/network.py:99 +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147 +#, python-format +msgid "Back" +msgstr "Retour" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38 +#, python-format +msgid "Become a comma prime member at connect.comma.ai" +msgstr "Devenez membre comma prime sur connect.comma.ai" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130 +#, python-format +msgid "Bookmark connect.comma.ai to your home screen to use it like an app" +msgstr "" +"Ajoutez connect.comma.ai à votre écran d'accueil pour l'utiliser comme une " +"application" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "CHANGE" +msgstr "CHANGER" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142 +#, python-format +msgid "CHECK" +msgstr "VÉRIFIER" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "CHILL MODE ON" +msgstr "MODE CHILL ACTIVÉ" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "CONNECT" +msgstr "CONNECTER" + +#: /home/batman/openpilot/system/ui/widgets/network.py:369 +#, fuzzy, python-format +msgid "CONNECTING..." +msgstr "CONNECTER" + +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:23 +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:34 +#: /home/batman/openpilot/system/ui/widgets/keyboard.py:81 +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#, python-format +msgid "Cancel" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:134 +#, python-format +msgid "Cellular Metered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "Change Language" +msgstr "Changer la langue" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:125 +#, fuzzy, python-format +msgid "Changing this setting will restart openpilot if the car is powered on." +msgstr "" +" La modification de ce réglage redémarrera openpilot si la voiture est sous " +"tension." + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129 +#, python-format +msgid "Click \"add new device\" and scan the QR code on the right" +msgstr "Cliquez sur \"add new device\" et scannez le code QR à droite" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105 +#, python-format +msgid "Close" +msgstr "Fermer" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48 +#, python-format +msgid "Current Version" +msgstr "Version actuelle" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109 +#, python-format +msgid "DOWNLOAD" +msgstr "TÉLÉCHARGER" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115 +#, python-format +msgid "Decline" +msgstr "Refuser" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148 +#, python-format +msgid "Decline, uninstall openpilot" +msgstr "Refuser, désinstaller openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67 +#, python-format +msgid "Developer" +msgstr "Développeur" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62 +#, python-format +msgid "Device" +msgstr "Appareil" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58 +#, python-format +msgid "Disengage on Accelerator Pedal" +msgstr "Désengager à l'appui sur l'accélérateur" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:194 +#, python-format +msgid "Disengage to Power Off" +msgstr "Désengager pour éteindre" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:182 +#, python-format +msgid "Disengage to Reboot" +msgstr "Désengager pour redémarrer" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:113 +#, python-format +msgid "Disengage to Reset Calibration" +msgstr "Désengager pour réinitialiser la calibration" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32 +#, python-format +msgid "Display speed in km/h instead of mph." +msgstr "Afficher la vitesse en km/h au lieu de mph." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62 +#, python-format +msgid "Dongle ID" +msgstr "ID du dongle" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#, python-format +msgid "Download" +msgstr "Télécharger" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "Driver Camera" +msgstr "Caméra conducteur" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96 +#, python-format +msgid "Driving Personality" +msgstr "Personnalité de conduite" + +#: /home/batman/openpilot/system/ui/widgets/network.py:123 +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "EDIT" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "ERROR" +msgstr "ERREUR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45 +#, python-format +msgid "ETH" +msgstr "ETH" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "EXPERIMENTAL MODE ON" +msgstr "MODE EXPÉRIMENTAL ACTIVÉ" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:166 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:228 +#, python-format +msgid "Enable" +msgstr "Activer" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:39 +#, python-format +msgid "Enable ADB" +msgstr "Activer ADB" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64 +#, python-format +msgid "Enable Lane Departure Warnings" +msgstr "Activer les alertes de sortie de voie" + +#: /home/batman/openpilot/system/ui/widgets/network.py:129 +#, fuzzy, python-format +msgid "Enable Roaming" +msgstr "Activer openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:48 +#, python-format +msgid "Enable SSH" +msgstr "Activer SSH" + +#: /home/batman/openpilot/system/ui/widgets/network.py:120 +#, fuzzy, python-format +msgid "Enable Tethering" +msgstr "Activer les alertes de sortie de voie" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30 +#, python-format +msgid "Enable driver monitoring even when openpilot is not engaged." +msgstr "" +"Activer la surveillance du conducteur même lorsque openpilot n'est pas " +"engagé." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46 +#, python-format +msgid "Enable openpilot" +msgstr "Activer openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:189 +#, python-format +msgid "" +"Enable the openpilot longitudinal control (alpha) toggle to allow " +"Experimental mode." +msgstr "" +"Activez l'option de contrôle longitudinal openpilot (alpha) pour autoriser " +"le mode expérimental." + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "Enter APN" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:241 +#, python-format +msgid "Enter SSID" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:254 +#, python-format +msgid "Enter new tethering password" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Enter password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89 +#, python-format +msgid "Enter your GitHub username" +msgstr "Entrez votre nom d'utilisateur GitHub" + +#: /home/batman/openpilot/system/ui/widgets/list_view.py:115 +#: /home/batman/openpilot/system/ui/widgets/list_view.py:153 +#, python-format +msgid "Error" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52 +#, python-format +msgid "Experimental Mode" +msgstr "Mode expérimental" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:181 +#, python-format +msgid "" +"Experimental mode is currently unavailable on this car since the car's stock " +"ACC is used for longitudinal control." +msgstr "" +"Le mode expérimental est actuellement indisponible sur cette voiture car " +"l'ACC d'origine est utilisé pour le contrôle longitudinal." + +#: /home/batman/openpilot/system/ui/widgets/network.py:373 +#, python-format +msgid "FORGETTING..." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44 +#, python-format +msgid "Finish Setup" +msgstr "Terminer la configuration" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66 +#, python-format +msgid "Firehose" +msgstr "Firehose" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18 +#, python-format +msgid "Firehose Mode" +msgstr "Mode Firehose" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25 +#, python-format +msgid "" +"For maximum effectiveness, bring your device inside and connect to a good " +"USB-C adapter and Wi-Fi weekly.\n" +"\n" +"Firehose Mode can also work while you're driving if connected to a hotspot " +"or unlimited SIM card.\n" +"\n" +"\n" +"Frequently Asked Questions\n" +"\n" +"Does it matter how or where I drive? Nope, just drive as you normally " +"would.\n" +"\n" +"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a " +"subset of your segments.\n" +"\n" +"What's a good USB-C adapter? Any fast phone or laptop charger should be " +"fine.\n" +"\n" +"Does it matter which software I run? Yes, only upstream openpilot (and " +"particular forks) are able to be used for training." +msgstr "" +"Pour une efficacité maximale, rentrez votre appareil et connectez-le chaque " +"semaine à un bon adaptateur USB-C et au Wi‑Fi.\n" +"\n" +"Le Mode Firehose peut aussi fonctionner pendant que vous conduisez si vous " +"êtes connecté à un hotspot ou à une carte SIM illimitée.\n" +"\n" +"\n" +"Foire aux questions\n" +"\n" +"Est-ce que la manière ou l'endroit où je conduis compte ? Non, conduisez " +"normalement.\n" +"\n" +"Tous mes segments sont-ils récupérés en Mode Firehose ? Non, nous récupérons " +"de façon sélective un sous-ensemble de vos segments.\n" +"\n" +"Quel est un bon adaptateur USB-C ? Tout chargeur rapide de téléphone ou " +"d'ordinateur portable convient.\n" +"\n" +"Le logiciel utilisé importe-t-il ? Oui, seul openpilot amont (et certains " +"forks) peut être utilisé pour l'entraînement." + +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#: /home/batman/openpilot/system/ui/widgets/network.py:451 +#, python-format +msgid "Forget" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:319 +#, python-format +msgid "Forget Wi-Fi Network \"{}\"?" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#, python-format +msgid "GOOD" +msgstr "BON" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128 +#, python-format +msgid "Go to https://connect.comma.ai on your phone" +msgstr "Allez sur https://connect.comma.ai sur votre téléphone" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "HIGH" +msgstr "ÉLEVÉ" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#, fuzzy, python-format +msgid "Hidden Network" +msgstr "Réseau" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:140 +#, python-format +msgid "INACTIVE: connect to an unmetered network" +msgstr "INACTIF : connectez-vous à un réseau non limité" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131 +#, python-format +msgid "INSTALL" +msgstr "INSTALLER" + +#: /home/batman/openpilot/system/ui/widgets/network.py:150 +#, python-format +msgid "IP Address" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#, python-format +msgid "Install Update" +msgstr "Installer la mise à jour" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:56 +#, python-format +msgid "Joystick Debug Mode" +msgstr "Mode débogage joystick" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29 +#, python-format +msgid "LOADING" +msgstr "CHARGEMENT" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48 +#, python-format +msgid "LTE" +msgstr "LTE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:64 +#, python-format +msgid "Longitudinal Maneuver Mode" +msgstr "Mode de manœuvre longitudinale" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148 +#, python-format +msgid "MAX" +msgstr "MAX" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75 +#, python-format +msgid "" +"Maximize your training data uploads to improve openpilot's driving models." +msgstr "" +"Maximisez vos envois de données d'entraînement pour améliorer les modèles de " +"conduite d'openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:50 +#, python-format +msgid "N/A" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "NO" +msgstr "NON" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63 +#, python-format +msgid "Network" +msgstr "Réseau" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114 +#, python-format +msgid "No SSH keys found" +msgstr "Aucune clé SSH trouvée" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126 +#, fuzzy, python-format +msgid "No SSH keys found for user '{}'" +msgstr "Aucune clé SSH trouvée pour l'utilisateur '{username}'" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18 +#, fuzzy, python-format +msgid "No release notes available." +msgstr "Aucune note de version disponible." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#, python-format +msgid "OFFLINE" +msgstr "HORS LIGNE" + +#: /home/batman/openpilot/system/ui/widgets/html_render.py:247 +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:93 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#, python-format +msgid "OK" +msgstr "OK" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "ONLINE" +msgstr "EN LIGNE" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20 +#, python-format +msgid "Open" +msgstr "Ouvrir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "PAIR" +msgstr "ASSOCIER" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "PANDA" +msgstr "PANDA" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "PREVIEW" +msgstr "APERÇU" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44 +#, python-format +msgid "PRIME FEATURES:" +msgstr "FONCTIONNALITÉS PRIME :" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "Pair Device" +msgstr "Associer l'appareil" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19 +#, python-format +msgid "Pair device" +msgstr "Associer l'appareil" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103 +#, python-format +msgid "Pair your device to your comma account" +msgstr "Associez votre appareil à votre compte comma" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25 +#, python-format +msgid "" +"Pair your device with comma connect (connect.comma.ai) and claim your comma " +"prime offer." +msgstr "" +"Associez votre appareil à comma connect (connect.comma.ai) et réclamez votre " +"offre comma prime." + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91 +#, python-format +msgid "Please connect to Wi-Fi to complete initial pairing" +msgstr "Veuillez vous connecter au Wi‑Fi pour terminer l'association initiale" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Power Off" +msgstr "Éteindre" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Prevent large data uploads when on a metered Wi-Fi connection" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:135 +#, python-format +msgid "Prevent large data uploads when on a metered cellular connection" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26 +#, python-format +msgid "" +"Preview the driver facing camera to ensure that driver monitoring has good " +"visibility. (vehicle must be off)" +msgstr "" +"Prévisualisez la caméra orientée conducteur pour vous assurer que la " +"surveillance du conducteur a une bonne visibilité. (le véhicule doit être " +"éteint)" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161 +#, python-format +msgid "QR Code Error" +msgstr "Erreur de code QR" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31 +#, python-format +msgid "REMOVE" +msgstr "SUPPRIMER" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "RESET" +msgstr "RÉINITIALISER" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "REVIEW" +msgstr "CONSULTER" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Reboot" +msgstr "Redémarrer" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66 +#, python-format +msgid "Reboot Device" +msgstr "Redémarrer l'appareil" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113 +#, python-format +msgid "Reboot and Update" +msgstr "Redémarrer et mettre à jour" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27 +#, python-format +msgid "" +"Receive alerts to steer back into the lane when your vehicle drifts over a " +"detected lane line without a turn signal activated while driving over 31 mph " +"(50 km/h)." +msgstr "" +"Recevez des alertes pour revenir dans la voie lorsque votre véhicule dépasse " +"une ligne de voie détectée sans clignotant activé en roulant au-delà de 31 " +"mph (50 km/h)." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76 +#, python-format +msgid "Record and Upload Driver Camera" +msgstr "Enregistrer et téléverser la caméra conducteur" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82 +#, python-format +msgid "Record and Upload Microphone Audio" +msgstr "Enregistrer et téléverser l'audio du microphone" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33 +#, python-format +msgid "" +"Record and store microphone audio while driving. The audio will be included " +"in the dashcam video in comma connect." +msgstr "" +"Enregistrer et stocker l'audio du microphone pendant la conduite. L'audio " +"sera inclus dans la vidéo dashcam dans comma connect." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "Regulatory" +msgstr "Réglementaire" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Relaxed" +msgstr "Détendu" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote access" +msgstr "Accès à distance" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote snapshots" +msgstr "Captures à distance" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123 +#, python-format +msgid "Request timed out" +msgstr "Délai de la requête dépassé" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Reset" +msgstr "Réinitialiser" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "Reset Calibration" +msgstr "Réinitialiser la calibration" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "Review Training Guide" +msgstr "Consulter le guide d'entraînement" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28 +#, python-format +msgid "Review the rules, features, and limitations of openpilot" +msgstr "Consultez les règles, fonctionnalités et limitations d'openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:53 +#, python-format +msgid "SSH Keys" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:310 +#, python-format +msgid "Scanning Wi-Fi networks..." +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:35 +#, python-format +msgid "Select" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:100 +#, python-format +msgid "Select a language" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:63 +#, python-format +msgid "Serial" +msgstr "Numéro de série" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107 +#, python-format +msgid "Snooze Update" +msgstr "Reporter la mise à jour" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65 +#, python-format +msgid "Software" +msgstr "Logiciel" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Standard" +msgstr "Standard" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22 +#, python-format +msgid "" +"Standard is recommended. In aggressive mode, openpilot will follow lead cars " +"closer and be more aggressive with the gas and brake. In relaxed mode " +"openpilot will stay further away from lead cars. On supported cars, you can " +"cycle through these personalities with your steering wheel distance button." +msgstr "" +"Le mode standard est recommandé. En mode agressif, openpilot suivra les " +"véhicules de tête de plus près et sera plus agressif avec l'accélérateur et " +"le frein. En mode détendu, openpilot restera plus éloigné des véhicules de " +"tête. Sur les voitures compatibles, vous pouvez parcourir ces personnalités " +"avec le bouton de distance du volant." + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59 +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65 +#, python-format +msgid "System Unresponsive" +msgstr "Système non réactif" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58 +#, python-format +msgid "TAKE CONTROL IMMEDIATELY" +msgstr "REPRENEZ IMMÉDIATEMENT LE CONTRÔLE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "TEMP" +msgstr "TEMPÉRATURE" + +#: /home/batman/openpilot/system/ui/widgets/network.py:124 +#, python-format +msgid "Tethering Password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64 +#, python-format +msgid "Toggles" +msgstr "Options" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70 +#, python-format +msgid "UNINSTALL" +msgstr "DÉSINSTALLER" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155 +#, python-format +msgid "UPDATE" +msgstr "METTRE À JOUR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Uninstall" +msgstr "Désinstaller" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117 +#, python-format +msgid "Unknown" +msgstr "Inconnu" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47 +#, python-format +msgid "Updates are only downloaded while the car is off." +msgstr "" +"Les mises à jour ne sont téléchargées que lorsque la voiture est éteinte." + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33 +#, python-format +msgid "Upgrade Now" +msgstr "Mettre à niveau maintenant" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31 +#, python-format +msgid "" +"Upload data from the driver facing camera and help improve the driver " +"monitoring algorithm." +msgstr "" +"Téléverser les données de la caméra orientée conducteur et aider à améliorer " +"l'algorithme de surveillance du conducteur." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88 +#, python-format +msgid "Use Metric System" +msgstr "Utiliser le système métrique" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17 +#, python-format +msgid "" +"Use the openpilot system for adaptive cruise control and lane keep driver " +"assistance. Your attention is required at all times to use this feature." +msgstr "" +"Utilisez le système openpilot pour l'ACC et l'assistance au maintien de " +"voie. Votre attention est requise en permanence pour utiliser cette " +"fonctionnalité." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "VEHICLE" +msgstr "VÉHICULE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "VIEW" +msgstr "VOIR" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52 +#, python-format +msgid "Waiting to start" +msgstr "En attente de démarrage" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19 +#, python-format +msgid "" +"Warning: This grants SSH access to all public keys in your GitHub settings. " +"Never enter a GitHub username other than your own. A comma employee will " +"NEVER ask you to add their GitHub username." +msgstr "" +"Avertissement : Ceci accorde un accès SSH à toutes les clés publiques dans " +"vos paramètres GitHub. N'entrez jamais un nom d'utilisateur GitHub autre que " +"le vôtre. Un employé comma ne vous demandera JAMAIS d'ajouter son nom " +"d'utilisateur GitHub." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111 +#, python-format +msgid "Welcome to openpilot" +msgstr "Bienvenue sur openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20 +#, python-format +msgid "When enabled, pressing the accelerator pedal will disengage openpilot." +msgstr "" +"Lorsque activé, appuyer sur la pédale d'accélérateur désengagera openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44 +#, python-format +msgid "Wi-Fi" +msgstr "Wi‑Fi" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Wi-Fi Network Metered" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Wrong password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145 +#, python-format +msgid "You must accept the Terms and Conditions in order to use openpilot." +msgstr "Vous devez accepter les conditions générales pour utiliser openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112 +#, python-format +msgid "" +"You must accept the Terms and Conditions to use openpilot. Read the latest " +"terms at https://comma.ai/terms before continuing." +msgstr "" +"Vous devez accepter les conditions générales pour utiliser openpilot. Lisez " +"les dernières conditions sur https://comma.ai/terms avant de continuer." + +#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34 +#, python-format +msgid "camera starting" +msgstr "démarrage de la caméra" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63 +#, python-format +msgid "comma prime" +msgstr "comma prime" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "default" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "down" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105 +#, python-format +msgid "failed to check for update" +msgstr "échec de la vérification de mise à jour" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "for \"{}\"" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "km/h" +msgstr "km/h" + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "leave blank for automatic configuration" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "left" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "metered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "mph" +msgstr "mph" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19 +#, python-format +msgid "never" +msgstr "jamais" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30 +#, python-format +msgid "now" +msgstr "maintenant" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:71 +#, python-format +msgid "openpilot Longitudinal Control (Alpha)" +msgstr "Contrôle longitudinal openpilot (Alpha)" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51 +#, python-format +msgid "openpilot Unavailable" +msgstr "openpilot indisponible" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:158 +#, python-format +msgid "" +"openpilot defaults to driving in chill mode. Experimental mode enables alpha-" +"level features that aren't ready for chill mode. Experimental features are " +"listed below:

End-to-End Longitudinal Control


Let the driving " +"model control the gas and brakes. openpilot will drive as it thinks a human " +"would, including stopping for red lights and stop signs. Since the driving " +"model decides the speed to drive, the set speed will only act as an upper " +"bound. This is an alpha quality feature; mistakes should be expected." +"

New Driving Visualization


The driving visualization will " +"transition to the road-facing wide-angle camera at low speeds to better show " +"some turns. The Experimental mode logo will also be shown in the top right " +"corner." +msgstr "" +"openpilot roule par défaut en mode chill. Le mode expérimental active des " +"fonctionnalités de niveau alpha qui ne sont pas prêtes pour le mode chill. " +"Les fonctionnalités expérimentales sont listées ci‑dessous:

Contrôle " +"longitudinal de bout en bout


Laissez le modèle de conduite contrôler " +"l'accélérateur et les freins. openpilot conduira comme il pense qu'un humain " +"le ferait, y compris s'arrêter aux feux rouges et aux panneaux stop. Comme " +"le modèle décide de la vitesse à adopter, la vitesse réglée n'agira que " +"comme une limite supérieure. C'est une fonctionnalité de qualité alpha ; des " +"erreurs sont à prévoir.

Nouvelle visualisation de conduite


La " +"visualisation passera à la caméra grand angle orientée route à basse vitesse " +"pour mieux montrer certains virages. Le logo du mode expérimental sera " +"également affiché en haut à droite." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:175 +#, fuzzy, python-format +msgid "" +"openpilot is continuously calibrating, resetting is rarely required. " +"Resetting calibration will restart openpilot if the car is powered on." +msgstr "" +" La modification de ce réglage redémarrera openpilot si la voiture est sous " +"tension." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20 +#, python-format +msgid "" +"openpilot learns to drive by watching humans, like you, drive.\n" +"\n" +"Firehose Mode allows you to maximize your training data uploads to improve " +"openpilot's driving models. More data means bigger models, which means " +"better Experimental Mode." +msgstr "" +"openpilot apprend à conduire en regardant des humains, comme vous, " +"conduire.\n" +"\n" +"Le Mode Firehose vous permet de maximiser vos envois de données " +"d'entraînement pour améliorer les modèles de conduite d'openpilot. Plus de " +"données signifie des modèles plus grands, ce qui signifie un meilleur Mode " +"expérimental." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183 +#, python-format +msgid "openpilot longitudinal control may come in a future update." +msgstr "" +"Le contrôle longitudinal openpilot pourra arriver dans une future mise à " +"jour." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27 +#, python-format +msgid "" +"openpilot requires the device to be mounted within 4° left or right and " +"within 5° up or 9° down." +msgstr "" +"openpilot exige que l'appareil soit monté à moins de 4° à gauche ou à droite " +"et à moins de 5° vers le haut ou 9° vers le bas." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "right" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "unmetered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "up" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116 +#, python-format +msgid "up to date, last checked never" +msgstr "à jour, dernière vérification jamais" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114 +#, python-format +msgid "up to date, last checked {}" +msgstr "à jour, dernière vérification {}" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108 +#, python-format +msgid "update available" +msgstr "mise à jour disponible" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169 +#, python-format +msgid "{} ALERT" +msgid_plural "{} ALERTS" +msgstr[0] "{} ALERTE" +msgstr[1] "{} ALERTES" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39 +#, python-format +msgid "{} day ago" +msgid_plural "{} days ago" +msgstr[0] "il y a {} jour" +msgstr[1] "il y a {} jours" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36 +#, python-format +msgid "{} hour ago" +msgid_plural "{} hours ago" +msgstr[0] "il y a {} heure" +msgstr[1] "il y a {} heures" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33 +#, python-format +msgid "{} minute ago" +msgid_plural "{} minutes ago" +msgstr[0] "il y a {} minute" +msgstr[1] "il y a {} minutes" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:111 +#, fuzzy, python-format +msgid "{} segment of your driving is in the training dataset so far." +msgid_plural "{} segments of your driving is in the training dataset so far." +msgstr[0] "" +"{} segment de votre conduite est dans l'ensemble d'entraînement jusqu'à " +"présent." +msgstr[1] "" +"{} segments de votre conduite sont dans l'ensemble d'entraînement jusqu'à " +"présent." + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62 +#, python-format +msgid "✓ SUBSCRIBED" +msgstr "✓ ABONNÉ" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22 +#, python-format +msgid "🔥 Firehose Mode 🔥" +msgstr "🔥 Mode Firehose 🔥" diff --git a/selfdrive/ui/translations/app_pt-BR.po b/selfdrive/ui/translations/app_pt-BR.po new file mode 100644 index 00000000000000..e7352c17ebb29f --- /dev/null +++ b/selfdrive/ui/translations/app_pt-BR.po @@ -0,0 +1,1262 @@ +# Language pt-BR translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Automatically generated, 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-10-20 22:31-0700\n" +"PO-Revision-Date: 2025-10-21 00:00-0700\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: pt-BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:170 +#, python-format +msgid " Steering torque response calibration is complete." +msgstr " A calibração da resposta de torque da direção foi concluída." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:168 +#, python-format +msgid " Steering torque response calibration is {}% complete." +msgstr " A calibração da resposta de torque da direção está {}% concluída." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid " Your device is pointed {:.1f}° {} and {:.1f}° {}." +msgstr " Seu dispositivo está apontado {:.1f}° {} e {:.1f}° {}." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43 +#, python-format +msgid "--" +msgstr "--" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "1 year of drive storage" +msgstr "1 ano de armazenamento de condução" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "24/7 LTE connectivity" +msgstr "Conectividade LTE 24/7" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46 +#, python-format +msgid "2G" +msgstr "2G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47 +#, python-format +msgid "3G" +msgstr "3G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49 +#, python-format +msgid "5G" +msgstr "5G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23 +#, fuzzy, python-format +msgid "" +"WARNING: openpilot longitudinal control is in alpha for this car and will " +"disable Automatic Emergency Braking (AEB).

On this car, openpilot " +"defaults to the car's built-in ACC instead of openpilot's longitudinal " +"control. Enable this to switch to openpilot longitudinal control. Enabling " +"Experimental mode is recommended when enabling openpilot longitudinal " +"control alpha. Changing this setting will restart openpilot if the car is " +"powered on." +msgstr "" +"AVISO: o controle longitudinal do openpilot está em alpha para este carro " +"e desativará a Frenagem Automática de Emergência (AEB).

Neste " +"carro, o openpilot usa por padrão o ACC integrado do carro em vez do " +"controle longitudinal do openpilot. Ative isto para alternar para o controle " +"longitudinal do openpilot. Recomenda-se ativar o Modo Experimental ao ativar " +"o controle longitudinal do openpilot em alpha." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:158 +#, python-format +msgid "

Steering lag calibration is complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:156 +#, python-format +msgid "

Steering lag calibration is {}% complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:138 +#, python-format +msgid "ACTIVE" +msgstr "ATIVO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15 +#, python-format +msgid "" +"ADB (Android Debug Bridge) allows connecting to your device over USB or over " +"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info." +msgstr "" +"ADB (Android Debug Bridge) permite conectar ao seu dispositivo via USB ou " +"pela rede. Veja https://docs.comma.ai/how-to/connect-to-comma para mais " +"informações." + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30 +#, python-format +msgid "ADD" +msgstr "ADICIONAR" + +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "APN Setting" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110 +#, python-format +msgid "Acknowledge Excessive Actuation" +msgstr "Reconhecer Atuação Excessiva" + +#: /home/batman/openpilot/system/ui/widgets/network.py:74 +#: /home/batman/openpilot/system/ui/widgets/network.py:95 +#, python-format +msgid "Advanced" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Aggressive" +msgstr "Agressivo" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116 +#, python-format +msgid "Agree" +msgstr "Concordo" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70 +#, python-format +msgid "Always-On Driver Monitoring" +msgstr "Monitoramento de Motorista Sempre Ativo" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186 +#, python-format +msgid "" +"An alpha version of openpilot longitudinal control can be tested, along with " +"Experimental mode, on non-release branches." +msgstr "" +"Uma versão alpha do controle longitudinal do openpilot pode ser testada, " +"junto com o Modo Experimental, em ramificações fora de release." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Are you sure you want to power off?" +msgstr "Tem certeza de que deseja desligar?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Are you sure you want to reboot?" +msgstr "Tem certeza de que deseja reiniciar?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Are you sure you want to reset calibration?" +msgstr "Tem certeza de que deseja redefinir a calibração?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Are you sure you want to uninstall?" +msgstr "Tem certeza de que deseja desinstalar?" + +#: /home/batman/openpilot/system/ui/widgets/network.py:99 +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147 +#, python-format +msgid "Back" +msgstr "Voltar" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38 +#, python-format +msgid "Become a comma prime member at connect.comma.ai" +msgstr "Torne-se membro comma prime em connect.comma.ai" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130 +#, python-format +msgid "Bookmark connect.comma.ai to your home screen to use it like an app" +msgstr "Adicione connect.comma.ai à tela inicial para usá-lo como um app" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "CHANGE" +msgstr "ALTERAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142 +#, python-format +msgid "CHECK" +msgstr "VERIFICAR" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "CHILL MODE ON" +msgstr "MODO CHILL ATIVO" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "CONNECT" +msgstr "CONECTAR" + +#: /home/batman/openpilot/system/ui/widgets/network.py:369 +#, fuzzy, python-format +msgid "CONNECTING..." +msgstr "CONECTAR" + +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:23 +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:34 +#: /home/batman/openpilot/system/ui/widgets/keyboard.py:81 +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#, python-format +msgid "Cancel" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:134 +#, python-format +msgid "Cellular Metered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "Change Language" +msgstr "Alterar Idioma" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:125 +#, fuzzy, python-format +msgid "Changing this setting will restart openpilot if the car is powered on." +msgstr "" +" Alterar esta configuração reiniciará o openpilot se o carro estiver ligado." + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129 +#, python-format +msgid "Click \"add new device\" and scan the QR code on the right" +msgstr "Toque em \"adicionar novo dispositivo\" e escaneie o QR code à direita" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105 +#, python-format +msgid "Close" +msgstr "Fechar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48 +#, python-format +msgid "Current Version" +msgstr "Versão Atual" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109 +#, python-format +msgid "DOWNLOAD" +msgstr "BAIXAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115 +#, python-format +msgid "Decline" +msgstr "Recusar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148 +#, python-format +msgid "Decline, uninstall openpilot" +msgstr "Recusar, desinstalar o openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67 +#, python-format +msgid "Developer" +msgstr "Desenvolvedor" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62 +#, python-format +msgid "Device" +msgstr "Dispositivo" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58 +#, python-format +msgid "Disengage on Accelerator Pedal" +msgstr "Desativar ao pressionar o acelerador" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:194 +#, python-format +msgid "Disengage to Power Off" +msgstr "Desativar para Desligar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:182 +#, python-format +msgid "Disengage to Reboot" +msgstr "Desativar para Reiniciar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:113 +#, python-format +msgid "Disengage to Reset Calibration" +msgstr "Desativar para Redefinir Calibração" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32 +#, python-format +msgid "Display speed in km/h instead of mph." +msgstr "Exibir velocidade em km/h em vez de mph." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62 +#, python-format +msgid "Dongle ID" +msgstr "ID do Dongle" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#, python-format +msgid "Download" +msgstr "Baixar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "Driver Camera" +msgstr "Câmera do Motorista" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96 +#, python-format +msgid "Driving Personality" +msgstr "Personalidade de Condução" + +#: /home/batman/openpilot/system/ui/widgets/network.py:123 +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "EDIT" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "ERROR" +msgstr "ERRO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45 +#, python-format +msgid "ETH" +msgstr "ETH" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "EXPERIMENTAL MODE ON" +msgstr "MODO EXPERIMENTAL ATIVO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:166 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:228 +#, python-format +msgid "Enable" +msgstr "Ativar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:39 +#, python-format +msgid "Enable ADB" +msgstr "Ativar ADB" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64 +#, python-format +msgid "Enable Lane Departure Warnings" +msgstr "Ativar alertas de saída de faixa" + +#: /home/batman/openpilot/system/ui/widgets/network.py:129 +#, fuzzy, python-format +msgid "Enable Roaming" +msgstr "Ativar openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:48 +#, python-format +msgid "Enable SSH" +msgstr "Ativar SSH" + +#: /home/batman/openpilot/system/ui/widgets/network.py:120 +#, fuzzy, python-format +msgid "Enable Tethering" +msgstr "Ativar alertas de saída de faixa" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30 +#, python-format +msgid "Enable driver monitoring even when openpilot is not engaged." +msgstr "" +"Ativar monitoramento do motorista mesmo quando o openpilot não está engajado." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46 +#, python-format +msgid "Enable openpilot" +msgstr "Ativar openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:189 +#, python-format +msgid "" +"Enable the openpilot longitudinal control (alpha) toggle to allow " +"Experimental mode." +msgstr "" +"Ative a opção de controle longitudinal do openpilot (alpha) para permitir o " +"Modo Experimental." + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "Enter APN" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:241 +#, python-format +msgid "Enter SSID" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:254 +#, python-format +msgid "Enter new tethering password" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Enter password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89 +#, python-format +msgid "Enter your GitHub username" +msgstr "Digite seu nome de usuário do GitHub" + +#: /home/batman/openpilot/system/ui/widgets/list_view.py:115 +#: /home/batman/openpilot/system/ui/widgets/list_view.py:153 +#, python-format +msgid "Error" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52 +#, python-format +msgid "Experimental Mode" +msgstr "Modo Experimental" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:181 +#, python-format +msgid "" +"Experimental mode is currently unavailable on this car since the car's stock " +"ACC is used for longitudinal control." +msgstr "" +"O Modo Experimental está indisponível neste carro pois o ACC original do " +"carro é usado para controle longitudinal." + +#: /home/batman/openpilot/system/ui/widgets/network.py:373 +#, python-format +msgid "FORGETTING..." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44 +#, python-format +msgid "Finish Setup" +msgstr "Concluir Configuração" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66 +#, python-format +msgid "Firehose" +msgstr "Firehose" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18 +#, python-format +msgid "Firehose Mode" +msgstr "Modo Firehose" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25 +#, python-format +msgid "" +"For maximum effectiveness, bring your device inside and connect to a good " +"USB-C adapter and Wi-Fi weekly.\n" +"\n" +"Firehose Mode can also work while you're driving if connected to a hotspot " +"or unlimited SIM card.\n" +"\n" +"\n" +"Frequently Asked Questions\n" +"\n" +"Does it matter how or where I drive? Nope, just drive as you normally " +"would.\n" +"\n" +"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a " +"subset of your segments.\n" +"\n" +"What's a good USB-C adapter? Any fast phone or laptop charger should be " +"fine.\n" +"\n" +"Does it matter which software I run? Yes, only upstream openpilot (and " +"particular forks) are able to be used for training." +msgstr "" +"Para máxima efetividade, leve seu dispositivo para dentro e conecte a um bom " +"adaptador USB-C e Wi‑Fi semanalmente.\n" +"\n" +"O Modo Firehose também pode funcionar enquanto você dirige se estiver " +"conectado a um hotspot ou a um SIM ilimitado.\n" +"\n" +"\n" +"Perguntas Frequentes\n" +"\n" +"Importa como ou onde eu dirijo? Não, apenas dirija como normalmente.\n" +"\n" +"Todos os meus segmentos são puxados no Modo Firehose? Não, puxamos " +"seletivamente um subconjunto dos seus segmentos.\n" +"\n" +"Qual é um bom adaptador USB‑C? Qualquer carregador rápido de telefone ou " +"laptop serve.\n" +"\n" +"Importa qual software eu executo? Sim, apenas o openpilot upstream (e forks " +"específicos) podem ser usados para treinamento." + +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#: /home/batman/openpilot/system/ui/widgets/network.py:451 +#, python-format +msgid "Forget" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:319 +#, python-format +msgid "Forget Wi-Fi Network \"{}\"?" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#, python-format +msgid "GOOD" +msgstr "BOM" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128 +#, python-format +msgid "Go to https://connect.comma.ai on your phone" +msgstr "Acesse https://connect.comma.ai no seu telefone" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "HIGH" +msgstr "ALTO" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#, fuzzy, python-format +msgid "Hidden Network" +msgstr "Rede" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:140 +#, python-format +msgid "INACTIVE: connect to an unmetered network" +msgstr "INATIVO: conecte a uma rede sem franquia" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131 +#, python-format +msgid "INSTALL" +msgstr "INSTALAR" + +#: /home/batman/openpilot/system/ui/widgets/network.py:150 +#, python-format +msgid "IP Address" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#, python-format +msgid "Install Update" +msgstr "Instalar Atualização" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:56 +#, python-format +msgid "Joystick Debug Mode" +msgstr "Modo de Depuração do Joystick" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29 +#, python-format +msgid "LOADING" +msgstr "CARREGANDO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48 +#, python-format +msgid "LTE" +msgstr "LTE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:64 +#, python-format +msgid "Longitudinal Maneuver Mode" +msgstr "Modo de Manobra Longitudinal" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148 +#, python-format +msgid "MAX" +msgstr "MÁX" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75 +#, python-format +msgid "" +"Maximize your training data uploads to improve openpilot's driving models." +msgstr "" +"Maximize seus envios de dados de treinamento para melhorar os modelos de " +"condução do openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:50 +#, python-format +msgid "N/A" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "NO" +msgstr "NÃO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63 +#, python-format +msgid "Network" +msgstr "Rede" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114 +#, python-format +msgid "No SSH keys found" +msgstr "Nenhuma chave SSH encontrada" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126 +#, fuzzy, python-format +msgid "No SSH keys found for user '{}'" +msgstr "Nenhuma chave SSH encontrada para o usuário '{username}'" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18 +#, fuzzy, python-format +msgid "No release notes available." +msgstr "Sem notas de versão disponíveis." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#, python-format +msgid "OFFLINE" +msgstr "OFFLINE" + +#: /home/batman/openpilot/system/ui/widgets/html_render.py:247 +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:93 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#, python-format +msgid "OK" +msgstr "OK" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "ONLINE" +msgstr "ONLINE" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20 +#, python-format +msgid "Open" +msgstr "Abrir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "PAIR" +msgstr "EMPARELHAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "PANDA" +msgstr "PANDA" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "PREVIEW" +msgstr "PRÉVIA" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44 +#, python-format +msgid "PRIME FEATURES:" +msgstr "RECURSOS PRIME:" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "Pair Device" +msgstr "Emparelhar Dispositivo" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19 +#, python-format +msgid "Pair device" +msgstr "Emparelhar dispositivo" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103 +#, python-format +msgid "Pair your device to your comma account" +msgstr "Emparelhe seu dispositivo à sua conta comma" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25 +#, python-format +msgid "" +"Pair your device with comma connect (connect.comma.ai) and claim your comma " +"prime offer." +msgstr "" +"Emparelhe seu dispositivo com o comma connect (connect.comma.ai) e resgate " +"sua oferta comma prime." + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91 +#, python-format +msgid "Please connect to Wi-Fi to complete initial pairing" +msgstr "Conecte-se ao Wi‑Fi para concluir o emparelhamento inicial" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Power Off" +msgstr "Desligar" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Prevent large data uploads when on a metered Wi-Fi connection" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:135 +#, python-format +msgid "Prevent large data uploads when on a metered cellular connection" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26 +#, python-format +msgid "" +"Preview the driver facing camera to ensure that driver monitoring has good " +"visibility. (vehicle must be off)" +msgstr "" +"Pré-visualize a câmera voltada para o motorista para garantir que o " +"monitoramento do motorista tenha boa visibilidade. (veículo deve estar " +"desligado)" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161 +#, python-format +msgid "QR Code Error" +msgstr "Erro no QR Code" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31 +#, python-format +msgid "REMOVE" +msgstr "REMOVER" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "RESET" +msgstr "REDEFINIR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "REVIEW" +msgstr "REVISAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Reboot" +msgstr "Reiniciar" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66 +#, python-format +msgid "Reboot Device" +msgstr "Reiniciar Dispositivo" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113 +#, python-format +msgid "Reboot and Update" +msgstr "Reiniciar e Atualizar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27 +#, python-format +msgid "" +"Receive alerts to steer back into the lane when your vehicle drifts over a " +"detected lane line without a turn signal activated while driving over 31 mph " +"(50 km/h)." +msgstr "" +"Receba alertas para voltar à faixa quando seu veículo cruzar uma linha de " +"faixa detectada sem seta ativada ao dirigir acima de 31 mph (50 km/h)." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76 +#, python-format +msgid "Record and Upload Driver Camera" +msgstr "Gravar e Enviar Câmera do Motorista" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82 +#, python-format +msgid "Record and Upload Microphone Audio" +msgstr "Gravar e Enviar Áudio do Microfone" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33 +#, python-format +msgid "" +"Record and store microphone audio while driving. The audio will be included " +"in the dashcam video in comma connect." +msgstr "" +"Grave e armazene o áudio do microfone enquanto dirige. O áudio será incluído " +"no vídeo da dashcam no comma connect." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "Regulatory" +msgstr "Regulatório" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Relaxed" +msgstr "Relaxado" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote access" +msgstr "Acesso remoto" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote snapshots" +msgstr "Capturas remotas" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123 +#, python-format +msgid "Request timed out" +msgstr "Tempo da solicitação esgotado" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Reset" +msgstr "Redefinir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "Reset Calibration" +msgstr "Redefinir Calibração" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "Review Training Guide" +msgstr "Revisar Guia de Treinamento" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28 +#, python-format +msgid "Review the rules, features, and limitations of openpilot" +msgstr "Revise as regras, recursos e limitações do openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:53 +#, python-format +msgid "SSH Keys" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:310 +#, python-format +msgid "Scanning Wi-Fi networks..." +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:35 +#, python-format +msgid "Select" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:100 +#, python-format +msgid "Select a language" +msgstr "Selecione um idioma" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:63 +#, python-format +msgid "Serial" +msgstr "Serial" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107 +#, python-format +msgid "Snooze Update" +msgstr "Adiar Atualização" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65 +#, python-format +msgid "Software" +msgstr "Software" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Standard" +msgstr "Padrão" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22 +#, python-format +msgid "" +"Standard is recommended. In aggressive mode, openpilot will follow lead cars " +"closer and be more aggressive with the gas and brake. In relaxed mode " +"openpilot will stay further away from lead cars. On supported cars, you can " +"cycle through these personalities with your steering wheel distance button." +msgstr "" +"Padrão é recomendado. No modo agressivo, o openpilot seguirá veículos à " +"frente mais de perto e será mais agressivo com acelerador e freio. No modo " +"relaxado, o openpilot ficará mais longe dos veículos à frente. Em carros " +"compatíveis, você pode alternar essas personalidades com o botão de " +"distância do volante." + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59 +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65 +#, python-format +msgid "System Unresponsive" +msgstr "Sistema sem resposta" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58 +#, python-format +msgid "TAKE CONTROL IMMEDIATELY" +msgstr "ASSUMA O CONTROLE IMEDIATAMENTE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "TEMP" +msgstr "TEMP" + +#: /home/batman/openpilot/system/ui/widgets/network.py:124 +#, python-format +msgid "Tethering Password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64 +#, python-format +msgid "Toggles" +msgstr "Alternâncias" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70 +#, python-format +msgid "UNINSTALL" +msgstr "DESINSTALAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155 +#, python-format +msgid "UPDATE" +msgstr "ATUALIZAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Uninstall" +msgstr "Desinstalar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117 +#, python-format +msgid "Unknown" +msgstr "Desconhecido" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47 +#, python-format +msgid "Updates are only downloaded while the car is off." +msgstr "Atualizações são baixadas apenas com o carro desligado." + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33 +#, python-format +msgid "Upgrade Now" +msgstr "Atualizar Agora" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31 +#, python-format +msgid "" +"Upload data from the driver facing camera and help improve the driver " +"monitoring algorithm." +msgstr "" +"Envie dados da câmera voltada para o motorista e ajude a melhorar o " +"algoritmo de monitoramento do motorista." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88 +#, python-format +msgid "Use Metric System" +msgstr "Usar Sistema Métrico" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17 +#, python-format +msgid "" +"Use the openpilot system for adaptive cruise control and lane keep driver " +"assistance. Your attention is required at all times to use this feature." +msgstr "" +"Use o sistema openpilot para controle de cruzeiro adaptativo e assistência " +"de permanência em faixa. Sua atenção é necessária o tempo todo para usar " +"este recurso." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "VEHICLE" +msgstr "VEÍCULO" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "VIEW" +msgstr "VER" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52 +#, python-format +msgid "Waiting to start" +msgstr "Aguardando para iniciar" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19 +#, python-format +msgid "" +"Warning: This grants SSH access to all public keys in your GitHub settings. " +"Never enter a GitHub username other than your own. A comma employee will " +"NEVER ask you to add their GitHub username." +msgstr "" +"Aviso: Isso concede acesso SSH a todas as chaves públicas nas suas " +"configurações do GitHub. Nunca informe um nome de usuário do GitHub que não " +"seja o seu. Um funcionário da comma NUNCA pedirá para você adicionar o nome " +"de usuário do GitHub dele." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111 +#, python-format +msgid "Welcome to openpilot" +msgstr "Bem-vindo ao openpilot" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20 +#, python-format +msgid "When enabled, pressing the accelerator pedal will disengage openpilot." +msgstr "" +"Quando ativado, pressionar o pedal do acelerador desengajará o openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44 +#, python-format +msgid "Wi-Fi" +msgstr "Wi‑Fi" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Wi-Fi Network Metered" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Wrong password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145 +#, python-format +msgid "You must accept the Terms and Conditions in order to use openpilot." +msgstr "Você deve aceitar os Termos e Condições para usar o openpilot." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112 +#, python-format +msgid "" +"You must accept the Terms and Conditions to use openpilot. Read the latest " +"terms at https://comma.ai/terms before continuing." +msgstr "" +"Você deve aceitar os Termos e Condições para usar o openpilot. Leia os " +"termos mais recentes em https://comma.ai/terms antes de continuar." + +#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34 +#, python-format +msgid "camera starting" +msgstr "câmera iniciando" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63 +#, python-format +msgid "comma prime" +msgstr "comma prime" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "default" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "down" +msgstr "para baixo" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105 +#, python-format +msgid "failed to check for update" +msgstr "falha ao verificar atualização" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "for \"{}\"" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "km/h" +msgstr "km/h" + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "leave blank for automatic configuration" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "left" +msgstr "à esquerda" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "metered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "mph" +msgstr "mph" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19 +#, python-format +msgid "never" +msgstr "nunca" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30 +#, python-format +msgid "now" +msgstr "agora" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:71 +#, python-format +msgid "openpilot Longitudinal Control (Alpha)" +msgstr "Controle Longitudinal do openpilot (Alpha)" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51 +#, python-format +msgid "openpilot Unavailable" +msgstr "openpilot Indisponível" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:158 +#, python-format +msgid "" +"openpilot defaults to driving in chill mode. Experimental mode enables alpha-" +"level features that aren't ready for chill mode. Experimental features are " +"listed below:

End-to-End Longitudinal Control


Let the driving " +"model control the gas and brakes. openpilot will drive as it thinks a human " +"would, including stopping for red lights and stop signs. Since the driving " +"model decides the speed to drive, the set speed will only act as an upper " +"bound. This is an alpha quality feature; mistakes should be expected." +"

New Driving Visualization


The driving visualization will " +"transition to the road-facing wide-angle camera at low speeds to better show " +"some turns. The Experimental mode logo will also be shown in the top right " +"corner." +msgstr "" +"o openpilot dirige por padrão no modo chill. O Modo Experimental habilita " +"recursos em nível alpha que não estão prontos para o modo chill. Os recursos " +"experimentais são listados abaixo:

Controle Longitudinal End-to-End
Permita que o modelo de condução controle o acelerador e os freios. O " +"openpilot dirigirá como acha que um humano faria, incluindo parar em sinais " +"e semáforos vermelhos. Como o modelo decide a velocidade, a velocidade " +"definida atuará apenas como limite superior. Este é um recurso de qualidade " +"alpha; erros devem ser esperados.

Nova Visualização de Condução
A visualização de condução mudará para a câmera grande-angular " +"voltada para a estrada em baixas velocidades para mostrar melhor algumas " +"curvas. O logotipo do Modo Experimental também será exibido no canto " +"superior direito." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:175 +#, fuzzy, python-format +msgid "" +"openpilot is continuously calibrating, resetting is rarely required. " +"Resetting calibration will restart openpilot if the car is powered on." +msgstr "" +" Alterar esta configuração reiniciará o openpilot se o carro estiver ligado." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20 +#, python-format +msgid "" +"openpilot learns to drive by watching humans, like you, drive.\n" +"\n" +"Firehose Mode allows you to maximize your training data uploads to improve " +"openpilot's driving models. More data means bigger models, which means " +"better Experimental Mode." +msgstr "" +"o openpilot aprende a dirigir observando humanos, como você, dirigirem.\n" +"\n" +"O Modo Firehose permite maximizar seus envios de dados de treinamento para " +"melhorar os modelos de condução do openpilot. Mais dados significam modelos " +"maiores, o que significa um Modo Experimental melhor." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183 +#, python-format +msgid "openpilot longitudinal control may come in a future update." +msgstr "" +"o controle longitudinal do openpilot pode vir em uma atualização futura." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27 +#, python-format +msgid "" +"openpilot requires the device to be mounted within 4° left or right and " +"within 5° up or 9° down." +msgstr "" +"o openpilot requer que o dispositivo seja montado dentro de 4° para a " +"esquerda ou direita e dentro de 5° para cima ou 9° para baixo." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "right" +msgstr "à direita" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "unmetered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "up" +msgstr "para cima" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116 +#, python-format +msgid "up to date, last checked never" +msgstr "atualizado, última verificação: nunca" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114 +#, python-format +msgid "up to date, last checked {}" +msgstr "atualizado, última verificação: {}" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108 +#, python-format +msgid "update available" +msgstr "atualização disponível" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169 +#, python-format +msgid "{} ALERT" +msgid_plural "{} ALERTS" +msgstr[0] "{} ALERTA" +msgstr[1] "{} ALERTAS" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39 +#, python-format +msgid "{} day ago" +msgid_plural "{} days ago" +msgstr[0] "{} dia atrás" +msgstr[1] "{} dias atrás" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36 +#, python-format +msgid "{} hour ago" +msgid_plural "{} hours ago" +msgstr[0] "{} hora atrás" +msgstr[1] "{} horas atrás" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33 +#, python-format +msgid "{} minute ago" +msgid_plural "{} minutes ago" +msgstr[0] "{} minuto atrás" +msgstr[1] "{} minutos atrás" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:111 +#, fuzzy, python-format +msgid "{} segment of your driving is in the training dataset so far." +msgid_plural "{} segments of your driving is in the training dataset so far." +msgstr[0] "" +"{} segmento da sua condução está no conjunto de treinamento até agora." +msgstr[1] "" +"{} segmentos da sua condução estão no conjunto de treinamento até agora." + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62 +#, python-format +msgid "✓ SUBSCRIBED" +msgstr "✓ ASSINADO" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22 +#, python-format +msgid "🔥 Firehose Mode 🔥" +msgstr "🔥 Modo Firehose 🔥" diff --git a/selfdrive/ui/translations/app_tr.po b/selfdrive/ui/translations/app_tr.po new file mode 100644 index 00000000000000..3e622a20a4fb80 --- /dev/null +++ b/selfdrive/ui/translations/app_tr.po @@ -0,0 +1,1256 @@ +# Turkish translations for PACKAGE package. +# Copyright (C) 2025 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Automatically generated, 2025. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-10-20 22:31-0700\n" +"PO-Revision-Date: 2025-10-20 18:19-0700\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: tr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:170 +#, python-format +msgid " Steering torque response calibration is complete." +msgstr " Direksiyon tork tepkisi kalibrasyonu tamamlandı." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:168 +#, python-format +msgid " Steering torque response calibration is {}% complete." +msgstr " Direksiyon tork tepkisi kalibrasyonu {}% tamamlandı." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid " Your device is pointed {:.1f}° {} and {:.1f}° {}." +msgstr " Cihazınız {:.1f}° {} ve {:.1f}° {} yönünde konumlandırılmış." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:43 +#, python-format +msgid "--" +msgstr "--" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "1 year of drive storage" +msgstr "1 yıl sürüş depolaması" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "24/7 LTE connectivity" +msgstr "7/24 LTE bağlantısı" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:46 +#, python-format +msgid "2G" +msgstr "2G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:47 +#, python-format +msgid "3G" +msgstr "3G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:49 +#, python-format +msgid "5G" +msgstr "5G" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:23 +#, fuzzy, python-format +msgid "" +"WARNING: openpilot longitudinal control is in alpha for this car and will " +"disable Automatic Emergency Braking (AEB).

On this car, openpilot " +"defaults to the car's built-in ACC instead of openpilot's longitudinal " +"control. Enable this to switch to openpilot longitudinal control. Enabling " +"Experimental mode is recommended when enabling openpilot longitudinal " +"control alpha. Changing this setting will restart openpilot if the car is " +"powered on." +msgstr "" +"UYARI: Bu araç için openpilot boylamsal kontrolü alfa aşamasındadır ve " +"Otomatik Acil Frenlemeyi (AEB) devre dışı bırakacaktır.

Bu araçta " +"openpilot, openpilot'un boylamsal kontrolü yerine aracın yerleşik ACC'sini " +"varsayılan olarak kullanır. openpilot boylamsal kontrolüne geçmek için bunu " +"etkinleştirin. openpilot boylamsal kontrol alfayı etkinleştirirken Deneysel " +"modu etkinleştirmeniz önerilir." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:158 +#, python-format +msgid "

Steering lag calibration is complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:156 +#, python-format +msgid "

Steering lag calibration is {}% complete." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:138 +#, python-format +msgid "ACTIVE" +msgstr "AKTİF" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:15 +#, python-format +msgid "" +"ADB (Android Debug Bridge) allows connecting to your device over USB or over " +"the network. See https://docs.comma.ai/how-to/connect-to-comma for more info." +msgstr "" +"ADB (Android Debug Bridge), cihazınıza USB veya ağ üzerinden bağlanmayı " +"sağlar. Daha fazla bilgi için https://docs.comma.ai/how-to/connect-to-comma " +"adresine bakın." + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:30 +#, python-format +msgid "ADD" +msgstr "EKLE" + +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "APN Setting" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:110 +#, python-format +msgid "Acknowledge Excessive Actuation" +msgstr "Aşırı Müdahaleyi Onayla" + +#: /home/batman/openpilot/system/ui/widgets/network.py:74 +#: /home/batman/openpilot/system/ui/widgets/network.py:95 +#, python-format +msgid "Advanced" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Aggressive" +msgstr "Agresif" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:116 +#, python-format +msgid "Agree" +msgstr "Kabul et" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:70 +#, python-format +msgid "Always-On Driver Monitoring" +msgstr "Sürekli Sürücü İzleme" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:186 +#, python-format +msgid "" +"An alpha version of openpilot longitudinal control can be tested, along with " +"Experimental mode, on non-release branches." +msgstr "" +"openpilot boylamsal kontrolünün alfa sürümü, Deneysel mod ile birlikte, " +"yayın dışı dallarda test edilebilir." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Are you sure you want to power off?" +msgstr "Kapatmak istediğinizden emin misiniz?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Are you sure you want to reboot?" +msgstr "Yeniden başlatmak istediğinizden emin misiniz?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Are you sure you want to reset calibration?" +msgstr "Kalibrasyonu sıfırlamak istediğinizden emin misiniz?" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Are you sure you want to uninstall?" +msgstr "Kaldırmak istediğinizden emin misiniz?" + +#: /home/batman/openpilot/system/ui/widgets/network.py:99 +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:147 +#, python-format +msgid "Back" +msgstr "Geri" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:38 +#, python-format +msgid "Become a comma prime member at connect.comma.ai" +msgstr "connect.comma.ai adresinde comma prime üyesi olun" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:130 +#, python-format +msgid "Bookmark connect.comma.ai to your home screen to use it like an app" +msgstr "" +"connect.comma.ai'yi ana ekranınıza ekleyerek bir uygulama gibi kullanın" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "CHANGE" +msgstr "DEĞİŞTİR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:106 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:117 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:142 +#, python-format +msgid "CHECK" +msgstr "KONTROL ET" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "CHILL MODE ON" +msgstr "CHILL MODU AÇIK" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "CONNECT" +msgstr "BAĞLAN" + +#: /home/batman/openpilot/system/ui/widgets/network.py:369 +#, fuzzy, python-format +msgid "CONNECTING..." +msgstr "BAĞLAN" + +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:23 +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:34 +#: /home/batman/openpilot/system/ui/widgets/keyboard.py:81 +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#, python-format +msgid "Cancel" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:134 +#, python-format +msgid "Cellular Metered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:69 +#, python-format +msgid "Change Language" +msgstr "Dili Değiştir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:125 +#, fuzzy, python-format +msgid "Changing this setting will restart openpilot if the car is powered on." +msgstr "" +" Bu ayarı değiştirmek, araç çalışıyorsa openpilot'u yeniden başlatacaktır." + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:129 +#, python-format +msgid "Click \"add new device\" and scan the QR code on the right" +msgstr "\"yeni cihaz ekle\"ye tıklayın ve sağdaki QR kodunu tarayın" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:105 +#, python-format +msgid "Close" +msgstr "Kapat" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:48 +#, python-format +msgid "Current Version" +msgstr "Geçerli Sürüm" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:109 +#, python-format +msgid "DOWNLOAD" +msgstr "İNDİR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:115 +#, python-format +msgid "Decline" +msgstr "Reddet" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:148 +#, python-format +msgid "Decline, uninstall openpilot" +msgstr "Reddet, openpilot'u kaldır" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:67 +#, python-format +msgid "Developer" +msgstr "Geliştirici" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:62 +#, python-format +msgid "Device" +msgstr "Cihaz" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:58 +#, python-format +msgid "Disengage on Accelerator Pedal" +msgstr "Gaz Pedalında Devreden Çık" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:194 +#, python-format +msgid "Disengage to Power Off" +msgstr "Kapatmak için Devreden Çıkın" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:182 +#, python-format +msgid "Disengage to Reboot" +msgstr "Yeniden Başlatmak için Devreden Çıkın" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:113 +#, python-format +msgid "Disengage to Reset Calibration" +msgstr "Kalibrasyonu Sıfırlamak için Devreden Çıkın" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:32 +#, python-format +msgid "Display speed in km/h instead of mph." +msgstr "Hızı mph yerine km/h olarak göster." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:62 +#, python-format +msgid "Dongle ID" +msgstr "Dongle ID" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:49 +#, python-format +msgid "Download" +msgstr "İndir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "Driver Camera" +msgstr "Sürücü Kamerası" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:96 +#, python-format +msgid "Driving Personality" +msgstr "Sürüş Kişiliği" + +#: /home/batman/openpilot/system/ui/widgets/network.py:123 +#: /home/batman/openpilot/system/ui/widgets/network.py:139 +#, python-format +msgid "EDIT" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:138 +#, python-format +msgid "ERROR" +msgstr "HATA" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:45 +#, python-format +msgid "ETH" +msgstr "ETH" + +#: /home/batman/openpilot/selfdrive/ui/widgets/exp_mode_button.py:50 +#, python-format +msgid "EXPERIMENTAL MODE ON" +msgstr "DENEYSEL MOD AÇIK" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:166 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:228 +#, python-format +msgid "Enable" +msgstr "Etkinleştir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:39 +#, python-format +msgid "Enable ADB" +msgstr "ADB'yi Etkinleştir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:64 +#, python-format +msgid "Enable Lane Departure Warnings" +msgstr "Şerit Terk Uyarılarını Etkinleştir" + +#: /home/batman/openpilot/system/ui/widgets/network.py:129 +#, fuzzy, python-format +msgid "Enable Roaming" +msgstr "openpilot'u etkinleştir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:48 +#, python-format +msgid "Enable SSH" +msgstr "SSH'yi Etkinleştir" + +#: /home/batman/openpilot/system/ui/widgets/network.py:120 +#, fuzzy, python-format +msgid "Enable Tethering" +msgstr "Şerit Terk Uyarılarını Etkinleştir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:30 +#, python-format +msgid "Enable driver monitoring even when openpilot is not engaged." +msgstr "openpilot devrede değilken bile sürücü izlemesini etkinleştir." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:46 +#, python-format +msgid "Enable openpilot" +msgstr "openpilot'u etkinleştir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:189 +#, python-format +msgid "" +"Enable the openpilot longitudinal control (alpha) toggle to allow " +"Experimental mode." +msgstr "" +"Deneysel modu etkinleştirmek için openpilot boylamsal kontrolünü (alfa) açın." + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "Enter APN" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:241 +#, python-format +msgid "Enter SSID" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:254 +#, python-format +msgid "Enter new tethering password" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Enter password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:89 +#, python-format +msgid "Enter your GitHub username" +msgstr "GitHub kullanıcı adınızı girin" + +#: /home/batman/openpilot/system/ui/widgets/list_view.py:115 +#: /home/batman/openpilot/system/ui/widgets/list_view.py:153 +#, python-format +msgid "Error" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:52 +#, python-format +msgid "Experimental Mode" +msgstr "Deneysel Mod" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:181 +#, python-format +msgid "" +"Experimental mode is currently unavailable on this car since the car's stock " +"ACC is used for longitudinal control." +msgstr "" +"Bu araçta boylamsal kontrol için stok ACC kullanıldığından şu anda Deneysel " +"mod kullanılamıyor." + +#: /home/batman/openpilot/system/ui/widgets/network.py:373 +#, python-format +msgid "FORGETTING..." +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:44 +#, python-format +msgid "Finish Setup" +msgstr "Kurulumu Bitir" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:66 +#, python-format +msgid "Firehose" +msgstr "Firehose" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:18 +#, python-format +msgid "Firehose Mode" +msgstr "Firehose Modu" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:25 +#, python-format +msgid "" +"For maximum effectiveness, bring your device inside and connect to a good " +"USB-C adapter and Wi-Fi weekly.\n" +"\n" +"Firehose Mode can also work while you're driving if connected to a hotspot " +"or unlimited SIM card.\n" +"\n" +"\n" +"Frequently Asked Questions\n" +"\n" +"Does it matter how or where I drive? Nope, just drive as you normally " +"would.\n" +"\n" +"Do all of my segments get pulled in Firehose Mode? No, we selectively pull a " +"subset of your segments.\n" +"\n" +"What's a good USB-C adapter? Any fast phone or laptop charger should be " +"fine.\n" +"\n" +"Does it matter which software I run? Yes, only upstream openpilot (and " +"particular forks) are able to be used for training." +msgstr "" +"Maksimum verim için cihazınızı içeri alın ve haftalık olarak iyi bir USB-C " +"adaptörüne ve Wi‑Fi'a bağlayın.\n" +"\n" +"Firehose Modu, bir hotspot'a veya sınırsız SIM karta bağlıyken sürüş " +"sırasında da çalışabilir.\n" +"\n" +"\n" +"Sıkça Sorulan Sorular\n" +"\n" +"Nasıl veya nerede sürdüğüm önemli mi? Hayır, normalde nasıl sürüyorsanız " +"öyle sürün.\n" +"\n" +"Firehose Modu'nda tüm segmentlerim çekiliyor mu? Hayır, segmentlerinizin bir " +"alt kümesini seçerek çekiyoruz.\n" +"\n" +"İyi bir USB‑C adaptörü nedir? Hızlı bir telefon veya dizüstü şarj cihazı " +"uygundur.\n" +"\n" +"Hangi yazılımı çalıştırdığım önemli mi? Evet, yalnızca upstream openpilot " +"(ve bazı fork'lar) eğitim için kullanılabilir." + +#: /home/batman/openpilot/system/ui/widgets/network.py:318 +#: /home/batman/openpilot/system/ui/widgets/network.py:451 +#, python-format +msgid "Forget" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:319 +#, python-format +msgid "Forget Wi-Fi Network \"{}\"?" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#, python-format +msgid "GOOD" +msgstr "İYİ" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:128 +#, python-format +msgid "Go to https://connect.comma.ai on your phone" +msgstr "Telefonunuzda https://connect.comma.ai adresine gidin" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "HIGH" +msgstr "YÜKSEK" + +#: /home/batman/openpilot/system/ui/widgets/network.py:155 +#, fuzzy, python-format +msgid "Hidden Network" +msgstr "Ağ" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:140 +#, python-format +msgid "INACTIVE: connect to an unmetered network" +msgstr "PASİF: sınırsız bir ağa bağlanın" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:131 +#, python-format +msgid "INSTALL" +msgstr "YÜKLE" + +#: /home/batman/openpilot/system/ui/widgets/network.py:150 +#, python-format +msgid "IP Address" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:52 +#, python-format +msgid "Install Update" +msgstr "Güncellemeyi Yükle" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:56 +#, python-format +msgid "Joystick Debug Mode" +msgstr "Joystick Hata Ayıklama Modu" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:29 +#, python-format +msgid "LOADING" +msgstr "YÜKLENİYOR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:48 +#, python-format +msgid "LTE" +msgstr "LTE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:64 +#, python-format +msgid "Longitudinal Maneuver Mode" +msgstr "Boylamsal Manevra Modu" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:148 +#, python-format +msgid "MAX" +msgstr "MAKS" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:75 +#, python-format +msgid "" +"Maximize your training data uploads to improve openpilot's driving models." +msgstr "" +"openpilot'un sürüş modellerini iyileştirmek için eğitim veri yüklemelerinizi " +"en üst düzeye çıkarın." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:49 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:50 +#, python-format +msgid "N/A" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "NO" +msgstr "HAYIR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:63 +#, python-format +msgid "Network" +msgstr "Ağ" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:114 +#, python-format +msgid "No SSH keys found" +msgstr "SSH anahtarı bulunamadı" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:126 +#, fuzzy, python-format +msgid "No SSH keys found for user '{}'" +msgstr "'{username}' için SSH anahtarı bulunamadı" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:18 +#, fuzzy, python-format +msgid "No release notes available." +msgstr "Sürüm notu mevcut değil." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:73 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:134 +#, python-format +msgid "OFFLINE" +msgstr "ÇEVRİMDIŞI" + +#: /home/batman/openpilot/system/ui/widgets/html_render.py:247 +#: /home/batman/openpilot/system/ui/widgets/confirm_dialog.py:93 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#, python-format +msgid "OK" +msgstr "OK" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:136 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "ONLINE" +msgstr "ÇEVRİMİÇİ" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:20 +#, python-format +msgid "Open" +msgstr "Aç" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "PAIR" +msgstr "EŞLE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:142 +#, python-format +msgid "PANDA" +msgstr "PANDA" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:65 +#, python-format +msgid "PREVIEW" +msgstr "ÖNİZLEME" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:44 +#, python-format +msgid "PRIME FEATURES:" +msgstr "PRIME ÖZELLİKLERİ:" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:52 +#, python-format +msgid "Pair Device" +msgstr "Cihazı Eşle" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:19 +#, python-format +msgid "Pair device" +msgstr "Cihazı eşle" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:103 +#, python-format +msgid "Pair your device to your comma account" +msgstr "Cihazınızı comma hesabınızla eşleştirin" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:48 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:25 +#, python-format +msgid "" +"Pair your device with comma connect (connect.comma.ai) and claim your comma " +"prime offer." +msgstr "" +"Cihazınızı comma connect (connect.comma.ai) ile eşleştirin ve comma prime " +"teklifinizi alın." + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:91 +#, python-format +msgid "Please connect to Wi-Fi to complete initial pairing" +msgstr "İlk eşleştirmeyi tamamlamak için lütfen Wi‑Fi'a bağlanın" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:197 +#, python-format +msgid "Power Off" +msgstr "Kapat" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Prevent large data uploads when on a metered Wi-Fi connection" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:135 +#, python-format +msgid "Prevent large data uploads when on a metered cellular connection" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:26 +#, python-format +msgid "" +"Preview the driver facing camera to ensure that driver monitoring has good " +"visibility. (vehicle must be off)" +msgstr "" +"Sürücü izleme görünürlüğünün iyi olduğundan emin olmak için sürücüye bakan " +"kamerayı önizleyin. (araç kapalı olmalıdır)" + +#: /home/batman/openpilot/selfdrive/ui/widgets/pairing_dialog.py:161 +#, python-format +msgid "QR Code Error" +msgstr "QR Kod Hatası" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:31 +#, python-format +msgid "REMOVE" +msgstr "KALDIR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "RESET" +msgstr "SIFIRLA" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "REVIEW" +msgstr "GÖZDEN GEÇİR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:59 +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:185 +#, python-format +msgid "Reboot" +msgstr "Yeniden Başlat" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:66 +#, python-format +msgid "Reboot Device" +msgstr "Cihazı Yeniden Başlat" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:113 +#, python-format +msgid "Reboot and Update" +msgstr "Yeniden Başlat ve Güncelle" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:27 +#, python-format +msgid "" +"Receive alerts to steer back into the lane when your vehicle drifts over a " +"detected lane line without a turn signal activated while driving over 31 mph " +"(50 km/h)." +msgstr "" +"Araç 31 mph (50 km/h) üzerindeyken sinyal verilmeden algılanan şerit " +"çizgisini aştığınızda şeride geri dönmeniz için uyarılar alın." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:76 +#, python-format +msgid "Record and Upload Driver Camera" +msgstr "Sürücü Kamerasını Kaydet ve Yükle" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:82 +#, python-format +msgid "Record and Upload Microphone Audio" +msgstr "Mikrofon Sesini Kaydet ve Yükle" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:33 +#, python-format +msgid "" +"Record and store microphone audio while driving. The audio will be included " +"in the dashcam video in comma connect." +msgstr "" +"Sürüş sırasında mikrofon sesini kaydedip saklayın. Ses, comma connect'teki " +"ön kamera videosuna dahil edilecektir." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "Regulatory" +msgstr "Mevzuat" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Relaxed" +msgstr "Rahat" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote access" +msgstr "Uzaktan erişim" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:47 +#, python-format +msgid "Remote snapshots" +msgstr "Uzaktan anlık görüntüler" + +#: /home/batman/openpilot/selfdrive/ui/widgets/ssh_key.py:123 +#, python-format +msgid "Request timed out" +msgstr "İstek zaman aşımına uğradı" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:129 +#, python-format +msgid "Reset" +msgstr "Sıfırla" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:55 +#, python-format +msgid "Reset Calibration" +msgstr "Kalibrasyonu Sıfırla" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:67 +#, python-format +msgid "Review Training Guide" +msgstr "Eğitim Kılavuzunu İncele" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:28 +#, python-format +msgid "Review the rules, features, and limitations of openpilot" +msgstr "" +"openpilot'un kurallarını, özelliklerini ve sınırlamalarını gözden geçirin" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:53 +#, python-format +msgid "SSH Keys" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:310 +#, python-format +msgid "Scanning Wi-Fi networks..." +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/option_dialog.py:35 +#, python-format +msgid "Select" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:100 +#, python-format +msgid "Select a language" +msgstr "Bir dil seçin" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:63 +#, python-format +msgid "Serial" +msgstr "Seri" + +#: /home/batman/openpilot/selfdrive/ui/widgets/offroad_alerts.py:107 +#, python-format +msgid "Snooze Update" +msgstr "Güncellemeyi Ertele" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:65 +#, python-format +msgid "Software" +msgstr "Yazılım" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:98 +#, python-format +msgid "Standard" +msgstr "Standart" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:22 +#, python-format +msgid "" +"Standard is recommended. In aggressive mode, openpilot will follow lead cars " +"closer and be more aggressive with the gas and brake. In relaxed mode " +"openpilot will stay further away from lead cars. On supported cars, you can " +"cycle through these personalities with your steering wheel distance button." +msgstr "" +"Standart önerilir. Agresif modda openpilot öndeki aracı daha yakından takip " +"eder ve gaz/fren kullanımında daha ataktır. Rahat modda openpilot öndeki " +"araçlardan daha uzak durur. Desteklenen araçlarda bu kişilikler arasında " +"direksiyon mesafe düğmesiyle geçiş yapabilirsiniz." + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:59 +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:65 +#, python-format +msgid "System Unresponsive" +msgstr "Sistem Yanıt Vermiyor" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:58 +#, python-format +msgid "TAKE CONTROL IMMEDIATELY" +msgstr "HEMEN KONTROLÜ DEVRALIN" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:71 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:125 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:127 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:129 +#, python-format +msgid "TEMP" +msgstr "TEMP" + +#: /home/batman/openpilot/system/ui/widgets/network.py:124 +#, python-format +msgid "Tethering Password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/settings.py:64 +#, python-format +msgid "Toggles" +msgstr "Seçenekler" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:70 +#, python-format +msgid "UNINSTALL" +msgstr "KALDIR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:155 +#, python-format +msgid "UPDATE" +msgstr "GÜNCELLE" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:158 +#, python-format +msgid "Uninstall" +msgstr "Kaldır" + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:117 +#, python-format +msgid "Unknown" +msgstr "Bilinmiyor" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:47 +#, python-format +msgid "Updates are only downloaded while the car is off." +msgstr "Güncellemeler yalnızca araç kapalıyken indirilir." + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:33 +#, python-format +msgid "Upgrade Now" +msgstr "Şimdi Yükselt" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:31 +#, python-format +msgid "" +"Upload data from the driver facing camera and help improve the driver " +"monitoring algorithm." +msgstr "" +"Sürücüye bakan kameradan veri yükleyin ve sürücü izleme algoritmasını " +"geliştirmeye yardımcı olun." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:88 +#, python-format +msgid "Use Metric System" +msgstr "Metrik Sistemi Kullan" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:17 +#, python-format +msgid "" +"Use the openpilot system for adaptive cruise control and lane keep driver " +"assistance. Your attention is required at all times to use this feature." +msgstr "" +"Uyarlanabilir hız sabitleyici ve şerit koruma sürücü yardımında openpilot " +"sistemini kullanın. Bu özelliği kullanırken her zaman dikkatli olmanız " +"gerekir." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:72 +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:144 +#, python-format +msgid "VEHICLE" +msgstr "ARAÇ" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:68 +#, python-format +msgid "VIEW" +msgstr "GÖRÜNTÜLE" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:52 +#, python-format +msgid "Waiting to start" +msgstr "Başlatma bekleniyor" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:19 +#, python-format +msgid "" +"Warning: This grants SSH access to all public keys in your GitHub settings. " +"Never enter a GitHub username other than your own. A comma employee will " +"NEVER ask you to add their GitHub username." +msgstr "" +"Uyarı: Bu, GitHub ayarlarınızdaki tüm açık anahtarlara SSH erişimi verir. " +"Kendi adınız dışında asla bir GitHub kullanıcı adı girmeyin. Bir comma " +"çalışanı sizden asla GitHub kullanıcı adlarını eklemenizi İSTEMEZ." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:111 +#, python-format +msgid "Welcome to openpilot" +msgstr "openpilot'a hoş geldiniz" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:20 +#, python-format +msgid "When enabled, pressing the accelerator pedal will disengage openpilot." +msgstr "" +"Etkinleştirildiğinde, gaz pedalına basmak openpilot'u devreden çıkarır." + +#: /home/batman/openpilot/selfdrive/ui/layouts/sidebar.py:44 +#, python-format +msgid "Wi-Fi" +msgstr "Wi‑Fi" + +#: /home/batman/openpilot/system/ui/widgets/network.py:144 +#, python-format +msgid "Wi-Fi Network Metered" +msgstr "" + +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "Wrong password" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:145 +#, python-format +msgid "You must accept the Terms and Conditions in order to use openpilot." +msgstr "openpilot'u kullanmak için Şartlar ve Koşulları kabul etmelisiniz." + +#: /home/batman/openpilot/selfdrive/ui/layouts/onboarding.py:112 +#, python-format +msgid "" +"You must accept the Terms and Conditions to use openpilot. Read the latest " +"terms at https://comma.ai/terms before continuing." +msgstr "" +"openpilot'u kullanmak için Şartlar ve Koşulları kabul etmelisiniz. Devam " +"etmeden önce en güncel şartları https://comma.ai/terms adresinde okuyun." + +#: /home/batman/openpilot/selfdrive/ui/onroad/driver_camera_dialog.py:34 +#, python-format +msgid "camera starting" +msgstr "kamera başlatılıyor" + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:63 +#, python-format +msgid "comma prime" +msgstr "comma prime" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "default" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "down" +msgstr "aşağı" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:105 +#, python-format +msgid "failed to check for update" +msgstr "güncelleme kontrolü başarısız" + +#: /home/batman/openpilot/system/ui/widgets/network.py:237 +#: /home/batman/openpilot/system/ui/widgets/network.py:314 +#, python-format +msgid "for \"{}\"" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "km/h" +msgstr "km/h" + +#: /home/batman/openpilot/system/ui/widgets/network.py:204 +#, python-format +msgid "leave blank for automatic configuration" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "left" +msgstr "sol" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "metered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/onroad/hud_renderer.py:177 +#, python-format +msgid "mph" +msgstr "mph" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:19 +#, python-format +msgid "never" +msgstr "asla" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:30 +#, python-format +msgid "now" +msgstr "şimdi" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/developer.py:71 +#, python-format +msgid "openpilot Longitudinal Control (Alpha)" +msgstr "openpilot Boylamsal Kontrol (Alfa)" + +#: /home/batman/openpilot/selfdrive/ui/onroad/alert_renderer.py:51 +#, python-format +msgid "openpilot Unavailable" +msgstr "openpilot Kullanılamıyor" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:158 +#, python-format +msgid "" +"openpilot defaults to driving in chill mode. Experimental mode enables alpha-" +"level features that aren't ready for chill mode. Experimental features are " +"listed below:

End-to-End Longitudinal Control


Let the driving " +"model control the gas and brakes. openpilot will drive as it thinks a human " +"would, including stopping for red lights and stop signs. Since the driving " +"model decides the speed to drive, the set speed will only act as an upper " +"bound. This is an alpha quality feature; mistakes should be expected." +"

New Driving Visualization


The driving visualization will " +"transition to the road-facing wide-angle camera at low speeds to better show " +"some turns. The Experimental mode logo will also be shown in the top right " +"corner." +msgstr "" +"openpilot varsayılan olarak chill modunda sürer. Deneysel mod, chill moduna " +"hazır olmayan alfa seviyesindeki özellikleri etkinleştirir. Deneysel " +"özellikler aşağıda listelenmiştir:

Uçtan Uca Boylamsal Kontrol
Sürüş modelinin gaz ve frenleri kontrol etmesine izin verin. " +"openpilot, kırmızı ışıklarda ve dur işaretlerinde durmak dahil, bir insan " +"nasıl sürer diye düşündüğüne göre sürer. Hızı sürüş modeli belirlediğinden, " +"ayarlanan hız yalnızca üst sınır olarak işlev görür. Bu bir alfa kalitesinde " +"özelliktir; hatalar beklenmelidir.

Yeni Sürüş Görselleştirmesi
Sürüş görselleştirmesi, düşük hızlarda bazı dönüşleri daha iyi " +"göstermek için yola bakan geniş açılı kameraya geçer. Deneysel mod logosu " +"sağ üst köşede de gösterilecektir." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:175 +#, fuzzy, python-format +msgid "" +"openpilot is continuously calibrating, resetting is rarely required. " +"Resetting calibration will restart openpilot if the car is powered on." +msgstr "" +" Bu ayarı değiştirmek, araç çalışıyorsa openpilot'u yeniden başlatacaktır." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:20 +#, python-format +msgid "" +"openpilot learns to drive by watching humans, like you, drive.\n" +"\n" +"Firehose Mode allows you to maximize your training data uploads to improve " +"openpilot's driving models. More data means bigger models, which means " +"better Experimental Mode." +msgstr "" +"openpilot, sizin gibi insanların nasıl sürdüğünü izleyerek sürmeyi öğrenir.\n" +"\n" +"Firehose Modu, openpilot'un sürüş modellerini geliştirmek için eğitim veri " +"yüklemelerinizi en üst düzeye çıkarmanıza olanak tanır. Daha fazla veri, " +"daha büyük modeller demektir; bu da daha iyi Deneysel Mod anlamına gelir." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/toggles.py:183 +#, python-format +msgid "openpilot longitudinal control may come in a future update." +msgstr "openpilot boylamsal kontrolü gelecekteki bir güncellemede gelebilir." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:27 +#, python-format +msgid "" +"openpilot requires the device to be mounted within 4° left or right and " +"within 5° up or 9° down." +msgstr "" +"openpilot, cihazın sağa/sola 4° ve yukarı 5° veya aşağı 9° içinde monte " +"edilmesini gerektirir." + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:144 +#, python-format +msgid "right" +msgstr "sağ" + +#: /home/batman/openpilot/system/ui/widgets/network.py:142 +#, python-format +msgid "unmetered" +msgstr "" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/device.py:143 +#, python-format +msgid "up" +msgstr "yukarı" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:116 +#, python-format +msgid "up to date, last checked never" +msgstr "güncel, son kontrol asla" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:114 +#, python-format +msgid "up to date, last checked {}" +msgstr "güncel, son kontrol {}" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:108 +#, python-format +msgid "update available" +msgstr "güncelleme mevcut" + +#: /home/batman/openpilot/selfdrive/ui/layouts/home.py:169 +#, python-format +msgid "{} ALERT" +msgid_plural "{} ALERTS" +msgstr[0] "{} UYARI" +msgstr[1] "{} UYARILAR" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:39 +#, python-format +msgid "{} day ago" +msgid_plural "{} days ago" +msgstr[0] "{} gün önce" +msgstr[1] "{} gün önce" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:36 +#, python-format +msgid "{} hour ago" +msgid_plural "{} hours ago" +msgstr[0] "{} saat önce" +msgstr[1] "{} saat önce" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/software.py:33 +#, python-format +msgid "{} minute ago" +msgid_plural "{} minutes ago" +msgstr[0] "{} dakika önce" +msgstr[1] "{} dakika önce" + +#: /home/batman/openpilot/selfdrive/ui/layouts/settings/firehose.py:111 +#, fuzzy, python-format +msgid "{} segment of your driving is in the training dataset so far." +msgid_plural "{} segments of your driving is in the training dataset so far." +msgstr[0] "{} segment sürüşünüz eğitim veri setinde." +msgstr[1] "{} segment sürüşünüz eğitim veri setinde." + +#: /home/batman/openpilot/selfdrive/ui/widgets/prime.py:62 +#, python-format +msgid "✓ SUBSCRIBED" +msgstr "✓ ABONE" + +#: /home/batman/openpilot/selfdrive/ui/widgets/setup.py:22 +#, python-format +msgid "🔥 Firehose Mode 🔥" +msgstr "🔥 Firehose Modu 🔥" diff --git a/selfdrive/ui/translations/languages.json b/selfdrive/ui/translations/languages.json index b0674dee82e44a..c6b9a4b7ca5a4d 100644 --- a/selfdrive/ui/translations/languages.json +++ b/selfdrive/ui/translations/languages.json @@ -4,11 +4,5 @@ "Français": "fr", "Português": "pt-BR", "Español": "es", - "Türkçe": "tr", - "العربية": "ar", - "ไทย": "th", - "中文(繁體)": "zh-CHT", - "中文(简体)": "zh-CHS", - "한국어": "ko", - "日本語": "ja" + "Türkçe": "tr" } diff --git a/selfdrive/ui/update_translations_raylib.py b/selfdrive/ui/update_translations_raylib.py new file mode 100755 index 00000000000000..eee8af7f0c9786 --- /dev/null +++ b/selfdrive/ui/update_translations_raylib.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python3 +from itertools import chain +import json +import os +from openpilot.system.ui.lib.multilang import SYSTEM_UI_DIR, UI_DIR, TRANSLATIONS_DIR, LANGUAGES_FILE + + +def update_translations(): + files = [] + for root, _, filenames in chain(os.walk(SYSTEM_UI_DIR), + os.walk(os.path.join(UI_DIR, "widgets")), + os.walk(os.path.join(UI_DIR, "layouts")), + os.walk(os.path.join(UI_DIR, "onroad"))): + for filename in filenames: + if filename.endswith(".py"): + files.append(os.path.join(root, filename)) + + # Create main translation file + cmd = ("xgettext -L Python --keyword=tr --keyword=trn:1,2 --keyword=pgettext:1c,2 --from-code=UTF-8 " + + "--flag=tr:1:python-brace-format --flag=trn:1:python-brace-format --flag=trn:2:python-brace-format " + + "-o translations/app.pot {}").format(" ".join(files)) + + ret = os.system(cmd) + assert ret == 0 + + # Generate/update translation files for each language + with open(LANGUAGES_FILE) as f: + translation_files = json.load(f).values() + + for name in translation_files: + if os.path.exists(os.path.join(TRANSLATIONS_DIR, f"app_{name}.po")): + cmd = f"msgmerge --update --backup=none --sort-output translations/app_{name}.po translations/app.pot" + ret = os.system(cmd) + assert ret == 0 + else: + cmd = f"msginit -l {name} --no-translator --input translations/app.pot --output-file translations/app_{name}.po" + ret = os.system(cmd) + assert ret == 0 + + +if __name__ == "__main__": + update_translations() diff --git a/selfdrive/ui/update_translations_raylib.sh b/selfdrive/ui/update_translations_raylib.sh new file mode 100755 index 00000000000000..c37c7da879c3f8 --- /dev/null +++ b/selfdrive/ui/update_translations_raylib.sh @@ -0,0 +1,23 @@ +#!/usr/bin/env bash + +BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" +cd "$BASEDIR" +pwd + +PY_FILES=$(git ls-files 'layouts/*.py' 'widgets/*.py') + +xgettext -L Python \ + --keyword=tr \ + --keyword=trn:1,2 \ + --keyword=pgettext:1c,2 \ + --from-code=UTF-8 \ + --flag=tr:1:python-brace-format \ + --flag=trn:1:python-brace-format --flag=trn:2:python-brace-format \ + -o translations/app.pot \ + $PY_FILES + +msginit \ + -l es \ + --no-translator \ + --input translations/app.pot \ + --output-file translations/app.po diff --git a/selfdrive/ui/widgets/offroad_alerts.py b/selfdrive/ui/widgets/offroad_alerts.py index 0bd5b161b98bf1..c504d0c9b2c9e8 100644 --- a/selfdrive/ui/widgets/offroad_alerts.py +++ b/selfdrive/ui/widgets/offroad_alerts.py @@ -15,7 +15,7 @@ from openpilot.selfdrive.selfdrived.alertmanager import OFFROAD_ALERTS -NO_RELEASE_NOTES = tr("

No release notes available.

") +NO_RELEASE_NOTES = "

" + tr("No release notes available.") + "

" class AlertColors: diff --git a/selfdrive/ui/widgets/ssh_key.py b/selfdrive/ui/widgets/ssh_key.py index e44c4aad5d1f05..bcaf3fb49336f3 100644 --- a/selfdrive/ui/widgets/ssh_key.py +++ b/selfdrive/ui/widgets/ssh_key.py @@ -127,5 +127,5 @@ def _fetch_ssh_key(self, username: str): self._state = SshKeyActionState.ADD -def ssh_key_item(title: str, description: str): +def ssh_key_item(title: str | Callable[[], str], description: str | Callable[[], str]) -> ListItem: return ListItem(title=title, description=description, action_item=SshKeyAction()) diff --git a/system/ui/lib/application.py b/system/ui/lib/application.py index ff7163793dd284..5c49872bef3579 100644 --- a/system/ui/lib/application.py +++ b/system/ui/lib/application.py @@ -4,6 +4,7 @@ import time import signal import sys +import json import pyray as rl import threading from collections.abc import Callable @@ -13,6 +14,7 @@ from typing import NamedTuple from importlib.resources import as_file, files from openpilot.common.swaglog import cloudlog +from openpilot.system.ui.lib.multilang import LANGUAGES_FILE, TRANSLATIONS_DIR from openpilot.system.hardware import HARDWARE, PC, TICI from openpilot.common.realtime import Ratekeeper @@ -41,15 +43,15 @@ class FontWeight(StrEnum): - THIN = "Inter-Thin.ttf" - EXTRA_LIGHT = "Inter-ExtraLight.ttf" - LIGHT = "Inter-Light.ttf" - NORMAL = "Inter-Regular.ttf" - MEDIUM = "Inter-Medium.ttf" - SEMI_BOLD = "Inter-SemiBold.ttf" - BOLD = "Inter-Bold.ttf" - EXTRA_BOLD = "Inter-ExtraBold.ttf" - BLACK = "Inter-Black.ttf" + THIN = "OpenpilotSans-Regular.ttf" + EXTRA_LIGHT = "OpenpilotSans-Regular.ttf" + LIGHT = "OpenpilotSans-Regular.ttf" + NORMAL = "OpenpilotSans-Regular.ttf" + MEDIUM = "OpenpilotSans-Regular.ttf" + SEMI_BOLD = "OpenpilotSans-Regular.ttf" + BOLD = "OpenpilotSans-Regular.ttf" + EXTRA_BOLD = "OpenpilotSans-Regular.ttf" + BLACK = "OpenpilotSans-Regular.ttf" @dataclass @@ -345,6 +347,7 @@ def width(self): def height(self): return self._height + def _load_fonts(self): # Create a character set from our keyboard layouts from openpilot.system.ui.widgets.keyboard import KEYBOARD_LAYOUTS @@ -352,8 +355,25 @@ def _load_fonts(self): all_chars = set() for layout in KEYBOARD_LAYOUTS.values(): all_chars.update(key for row in layout for key in row) + + # Ensure Latin-1 Supplement and Latin Extended-A are covered (for de/fr/es/etc.) + for cp in range(0x00A0, 0x0180): + all_chars.add(chr(cp)) + all_chars |= set("–✓×°§•") + + with open(LANGUAGES_FILE, "r") as f: + l = f.read() + languages = json.loads(l) + all_chars |= set(l) + + # read each translation file now + for lang in languages: + lang_file = os.path.join(TRANSLATIONS_DIR, f"app_{lang}.po") + with open(lang_file, "r", encoding="utf-8") as f: + all_chars |= set(f.read()) + all_chars = "".join(all_chars) - all_chars += "–✓×°§•" + print(all_chars) codepoint_count = rl.ffi.new("int *", 1) codepoints = rl.load_codepoints(all_chars, codepoint_count) diff --git a/system/ui/lib/multilang.py b/system/ui/lib/multilang.py index c020b33d5e0f80..8312f964bd18d8 100644 --- a/system/ui/lib/multilang.py +++ b/system/ui/lib/multilang.py @@ -1,10 +1,71 @@ import os +import json import gettext +from openpilot.common.params import Params from openpilot.common.basedir import BASEDIR +SYSTEM_UI_DIR = os.path.join(BASEDIR, "system", "ui") UI_DIR = os.path.join(BASEDIR, "selfdrive", "ui") TRANSLATIONS_DIR = os.path.join(UI_DIR, "translations") LANGUAGES_FILE = os.path.join(TRANSLATIONS_DIR, "languages.json") -tr = gettext.gettext -trn = gettext.ngettext + +class Multilang: + def __init__(self): + self._params = Params() + self.languages = {} + self.codes = {} + self._translation: gettext.NullTranslations | gettext.GNUTranslations | None = None + self._load_languages() + + @property + def language(self) -> str: + # TODO: we need to default to english first time for live translate to fully work :hmm: + return self._params.get("LanguageSetting") or "en" + + def setup(self): + language = self.language + try: + with open(os.path.join(TRANSLATIONS_DIR, f'app_{language}.mo'), 'rb') as fh: + translation = gettext.GNUTranslations(fh) + translation.install() + self._translation = translation + print(f"Loaded translations for language: {language}") + except FileNotFoundError: + print(f"No translation file found for language: {language}, using default.") + gettext.install('app') + self._translation = gettext.NullTranslations() + return None + + def change_language(self, language_code: str) -> None: + # Persist selection + if self._params.get("LanguageSetting") != language_code: + self._params.put("LanguageSetting", language_code) + + # Reinstall gettext with the selected language + self.setup() + + def tr(self, text: str) -> str: + if self._translation is None: + self.setup() + return self._translation.gettext(text) + + def trn(self, singular: str, plural: str, n: int) -> str: + if self._translation is None: + self.setup() + return self._translation.ngettext(singular, plural, n) + + def _load_languages(self): + with open(LANGUAGES_FILE, encoding='utf-8') as f: + self.languages = json.load(f) + self.codes = {v: k for k, v in self.languages.items()} + + +multilang = Multilang() +multilang.setup() + +def tr(text: str) -> str: + return multilang.tr(text) + +def trn(singular: str, plural: str, n: int) -> str: + return multilang.trn(singular, plural, n) diff --git a/system/ui/widgets/button.py b/system/ui/widgets/button.py index 15d48b4e138bb0..f2fa8743cee4a8 100644 --- a/system/ui/widgets/button.py +++ b/system/ui/widgets/button.py @@ -79,7 +79,7 @@ class ButtonStyle(IntEnum): class Button(Widget): def __init__(self, - text: str, + text: str | Callable[[], str], click_callback: Callable[[], None] | None = None, font_size: int = DEFAULT_BUTTON_FONT_SIZE, font_weight: FontWeight = FontWeight.MEDIUM, diff --git a/system/ui/widgets/label.py b/system/ui/widgets/label.py index 99aed529a74aa9..756495436b82cb 100644 --- a/system/ui/widgets/label.py +++ b/system/ui/widgets/label.py @@ -1,3 +1,4 @@ +from collections.abc import Callable from itertools import zip_longest from typing import Union import pyray as rl @@ -12,6 +13,13 @@ ICON_PADDING = 15 +# TODO: make this common +def _resolve_value(value, default=""): + if callable(value): + return value() + return value if value is not None else default + + # TODO: This should be a Widget class def gui_label( rect: rl.Rectangle, @@ -90,7 +98,7 @@ def gui_text_box( # Non-interactive text area. Can render emojis and an optional specified icon. class Label(Widget): def __init__(self, - text: str, + text: str | Callable[[], str], font_size: int = DEFAULT_TEXT_SIZE, font_weight: FontWeight = FontWeight.NORMAL, text_alignment: int = rl.GuiTextAlignment.TEXT_ALIGN_CENTER, @@ -130,7 +138,7 @@ def _update_layout_rects(self): def _update_text(self, text): self._emojis = [] self._text_size = [] - self._text_wrapped = wrap_text(self._font, text, self._font_size, round(self._rect.width - (self._text_padding * 2))) + self._text_wrapped = wrap_text(self._font, _resolve_value(text), self._font_size, round(self._rect.width - (self._text_padding * 2))) for t in self._text_wrapped: self._emojis.append(find_emoji(t)) self._text_size.append(measure_text_cached(self._font, t, self._font_size)) diff --git a/system/ui/widgets/list_view.py b/system/ui/widgets/list_view.py index 55abe02fe1d877..9fbb3f5604e53c 100644 --- a/system/ui/widgets/list_view.py +++ b/system/ui/widgets/list_view.py @@ -171,11 +171,9 @@ def get_width(self) -> int: class DualButtonAction(ItemAction): - def __init__(self, left_text: str, right_text: str, left_callback: Callable = None, + def __init__(self, left_text: str | Callable[[], str], right_text: str | Callable[[], str], left_callback: Callable = None, right_callback: Callable = None, enabled: bool | Callable[[], bool] = True): super().__init__(width=0, enabled=enabled) # Width 0 means use full width - self.left_text, self.right_text = left_text, right_text - self.left_button = Button(left_text, click_callback=left_callback, button_style=ButtonStyle.LIST_ACTION, text_padding=0) self.right_button = Button(right_text, click_callback=right_callback, button_style=ButtonStyle.DANGER, text_padding=0) @@ -206,7 +204,7 @@ def _render(self, rect: rl.Rectangle): class MultipleButtonAction(ItemAction): - def __init__(self, buttons: list[str], button_width: int, selected_index: int = 0, callback: Callable = None): + def __init__(self, buttons: list[str | Callable[[], str]], button_width: int, selected_index: int = 0, callback: Callable = None): super().__init__(width=len(buttons) * button_width + (len(buttons) - 1) * RIGHT_ITEM_PADDING, enabled=True) self.buttons = buttons self.button_width = button_width @@ -225,7 +223,7 @@ def _render(self, rect: rl.Rectangle): spacing = RIGHT_ITEM_PADDING button_y = rect.y + (rect.height - BUTTON_HEIGHT) / 2 - for i, text in enumerate(self.buttons): + for i, _text in enumerate(self.buttons): button_x = rect.x + i * (self.button_width + spacing) button_rect = rl.Rectangle(button_x, button_y, self.button_width, BUTTON_HEIGHT) @@ -249,6 +247,7 @@ def _render(self, rect: rl.Rectangle): rl.draw_rectangle_rounded(button_rect, 1.0, 20, bg_color) # Draw text + text = _resolve_value(_text, "") text_size = measure_text_cached(self._font, text, 40) text_x = button_x + (self.button_width - text_size.x) / 2 text_y = button_y + (BUTTON_HEIGHT - text_size.y) / 2 @@ -258,7 +257,7 @@ def _render(self, rect: rl.Rectangle): def _handle_mouse_release(self, mouse_pos: MousePos): spacing = RIGHT_ITEM_PADDING button_y = self._rect.y + (self._rect.height - BUTTON_HEIGHT) / 2 - for i, _text in enumerate(self.buttons): + for i, _ in enumerate(self.buttons): button_x = self._rect.x + i * (self.button_width + spacing) button_rect = rl.Rectangle(button_x, button_y, self.button_width, BUTTON_HEIGHT) if rl.check_collision_point_rec(mouse_pos, button_rect): @@ -268,11 +267,11 @@ def _handle_mouse_release(self, mouse_pos: MousePos): class ListItem(Widget): - def __init__(self, title: str = "", icon: str | None = None, description: str | Callable[[], str] | None = None, + def __init__(self, title: str | Callable[[], str] = "", icon: str | None = None, description: str | Callable[[], str] | None = None, description_visible: bool = False, callback: Callable | None = None, action_item: ItemAction | None = None): super().__init__() - self.title = title + self._title = title self.set_icon(icon) self._description = description self.description_visible = description_visible @@ -285,7 +284,7 @@ def __init__(self, title: str = "", icon: str | None = None, description: str | self._html_renderer = HtmlRenderer(text="", text_size={ElementType.P: ITEM_DESC_FONT_SIZE}, text_color=ITEM_DESC_TEXT_COLOR) - self.set_description(self.description) + self._parse_description(self.description) # Cached properties for performance self._prev_description: str | None = self.description @@ -332,7 +331,7 @@ def _update_state(self): # Detect changes if description is callback new_description = self.description if new_description != self._prev_description: - self.set_description(new_description) + self._parse_description(new_description) def _render(self, _): if not self.is_visible: @@ -385,10 +384,15 @@ def set_icon(self, icon: str | None): def set_description(self, description: str | Callable[[], str] | None): self._description = description - new_desc = self.description + + def _parse_description(self, new_desc): self._html_renderer.parse_html_content(new_desc) self._prev_description = new_desc + @property + def title(self): + return _resolve_value(self._title, "") + @property def description(self): return _resolve_value(self._description, "") @@ -423,35 +427,35 @@ def get_right_item_rect(self, item_rect: rl.Rectangle) -> rl.Rectangle: # Factory functions -def simple_item(title: str, callback: Callable | None = None) -> ListItem: +def simple_item(title: str | Callable[[], str], callback: Callable | None = None) -> ListItem: return ListItem(title=title, callback=callback) -def toggle_item(title: str, description: str | Callable[[], str] | None = None, initial_state: bool = False, +def toggle_item(title: str | Callable[[], str], description: str | Callable[[], str] | None = None, initial_state: bool = False, callback: Callable | None = None, icon: str = "", enabled: bool | Callable[[], bool] = True) -> ListItem: action = ToggleAction(initial_state=initial_state, enabled=enabled, callback=callback) return ListItem(title=title, description=description, action_item=action, icon=icon) -def button_item(title: str, button_text: str | Callable[[], str], description: str | Callable[[], str] | None = None, +def button_item(title: str | Callable[[], str], button_text: str | Callable[[], str], description: str | Callable[[], str] | None = None, callback: Callable | None = None, enabled: bool | Callable[[], bool] = True) -> ListItem: action = ButtonAction(text=button_text, enabled=enabled) return ListItem(title=title, description=description, action_item=action, callback=callback) -def text_item(title: str, value: str | Callable[[], str], description: str | Callable[[], str] | None = None, +def text_item(title: str | Callable[[], str], value: str | Callable[[], str], description: str | Callable[[], str] | None = None, callback: Callable | None = None, enabled: bool | Callable[[], bool] = True) -> ListItem: action = TextAction(text=value, color=ITEM_TEXT_VALUE_COLOR, enabled=enabled) return ListItem(title=title, description=description, action_item=action, callback=callback) -def dual_button_item(left_text: str, right_text: str, left_callback: Callable = None, right_callback: Callable = None, +def dual_button_item(left_text: str | Callable[[], str], right_text: str | Callable[[], str], left_callback: Callable = None, right_callback: Callable = None, description: str | Callable[[], str] | None = None, enabled: bool | Callable[[], bool] = True) -> ListItem: action = DualButtonAction(left_text, right_text, left_callback, right_callback, enabled) return ListItem(title="", description=description, action_item=action) -def multiple_button_item(title: str, description: str, buttons: list[str], selected_index: int, +def multiple_button_item(title: str | Callable[[], str], description: str | Callable[[], str], buttons: list[str | Callable[[], str]], selected_index: int, button_width: int = BUTTON_WIDTH, callback: Callable = None, icon: str = ""): action = MultipleButtonAction(buttons, button_width, selected_index, callback=callback) return ListItem(title=title, description=description, icon=icon, action_item=action) diff --git a/system/ui/widgets/network.py b/system/ui/widgets/network.py index a59030363bb69d..e705c55f7c278c 100644 --- a/system/ui/widgets/network.py +++ b/system/ui/widgets/network.py @@ -117,40 +117,42 @@ def __init__(self, wifi_manager: WifiManager): # Tethering self._tethering_action = ToggleAction(initial_state=False) - tethering_btn = ListItem(title=tr("Enable Tethering"), action_item=self._tethering_action, callback=self._toggle_tethering) + tethering_btn = ListItem(lambda: tr("Enable Tethering"), action_item=self._tethering_action, callback=self._toggle_tethering) # Edit tethering password - self._tethering_password_action = ButtonAction(text=tr("EDIT")) - tethering_password_btn = ListItem(title=tr("Tethering Password"), action_item=self._tethering_password_action, callback=self._edit_tethering_password) + self._tethering_password_action = ButtonAction(lambda: tr("EDIT")) + tethering_password_btn = ListItem(lambda: tr("Tethering Password"), action_item=self._tethering_password_action, callback=self._edit_tethering_password) # Roaming toggle roaming_enabled = self._params.get_bool("GsmRoaming") self._roaming_action = ToggleAction(initial_state=roaming_enabled) - self._roaming_btn = ListItem(title=tr("Enable Roaming"), action_item=self._roaming_action, callback=self._toggle_roaming) + self._roaming_btn = ListItem(lambda: tr("Enable Roaming"), action_item=self._roaming_action, callback=self._toggle_roaming) # Cellular metered toggle cellular_metered = self._params.get_bool("GsmMetered") self._cellular_metered_action = ToggleAction(initial_state=cellular_metered) - self._cellular_metered_btn = ListItem(title=tr("Cellular Metered"), description=tr("Prevent large data uploads when on a metered cellular connection"), + self._cellular_metered_btn = ListItem(lambda: tr("Cellular Metered"), + description=lambda: tr("Prevent large data uploads when on a metered cellular connection"), action_item=self._cellular_metered_action, callback=self._toggle_cellular_metered) # APN setting - self._apn_btn = button_item(tr("APN Setting"), tr("EDIT"), callback=self._edit_apn) + self._apn_btn = button_item(lambda: tr("APN Setting"), lambda: tr("EDIT"), callback=self._edit_apn) # Wi-Fi metered toggle - self._wifi_metered_action = MultipleButtonAction([tr("default"), tr("metered"), tr("unmetered")], 255, 0, callback=self._toggle_wifi_metered) - wifi_metered_btn = ListItem(title=tr("Wi-Fi Network Metered"), description=tr("Prevent large data uploads when on a metered Wi-Fi connection"), + self._wifi_metered_action = MultipleButtonAction([lambda: tr("default"), lambda: tr("metered"), lambda: tr("unmetered")], 255, 0, + callback=self._toggle_wifi_metered) + wifi_metered_btn = ListItem(lambda: tr("Wi-Fi Network Metered"), description=lambda: tr("Prevent large data uploads when on a metered Wi-Fi connection"), action_item=self._wifi_metered_action) items: list[Widget] = [ tethering_btn, tethering_password_btn, - text_item(tr("IP Address"), lambda: self._wifi_manager.ipv4_address), + text_item(lambda: tr("IP Address"), lambda: self._wifi_manager.ipv4_address), self._roaming_btn, self._apn_btn, self._cellular_metered_btn, wifi_metered_btn, - button_item(tr("Hidden Network"), tr("CONNECT"), callback=self._connect_to_hidden_network), + button_item(lambda: tr("Hidden Network"), lambda: tr("CONNECT"), callback=self._connect_to_hidden_network), ] self._scroller = Scroller(items, line_separator=True, spacing=0) @@ -282,7 +284,6 @@ def __init__(self, wifi_manager: WifiManager): self._networks: list[Network] = [] self._networks_buttons: dict[str, Button] = {} self._forget_networks_buttons: dict[str, Button] = {} - self._confirm_dialog = ConfirmDialog("", tr("Forget"), tr("Cancel")) self._wifi_manager.set_callbacks(need_auth=self._on_need_auth, activated=self._on_activated, @@ -314,9 +315,10 @@ def _render(self, rect: rl.Rectangle): self.keyboard.reset(min_text_size=MIN_PASSWORD_LENGTH) gui_app.set_modal_overlay(self.keyboard, lambda result: self._on_password_entered(cast(Network, self._state_network), result)) elif self.state == UIState.SHOW_FORGET_CONFIRM and self._state_network: - self._confirm_dialog.set_text(tr("Forget Wi-Fi Network \"{}\"?").format(self._state_network.ssid)) - self._confirm_dialog.reset() - gui_app.set_modal_overlay(self._confirm_dialog, callback=lambda result: self.on_forgot_confirm_finished(self._state_network, result)) + confirm_dialog = ConfirmDialog("", tr("Forget"), tr("Cancel")) + confirm_dialog.set_text(tr("Forget Wi-Fi Network \"{}\"?").format(self._state_network.ssid)) + confirm_dialog.reset() + gui_app.set_modal_overlay(confirm_dialog, callback=lambda result: self.on_forgot_confirm_finished(self._state_network, result)) else: self._draw_network_list(rect)