mirror of
https://github.com/ajouatom/openpilot.git
synced 2026-06-08 11:04:57 +08:00
436 lines
21 KiB
JavaScript
436 lines
21 KiB
JavaScript
"use strict";
|
|
|
|
window.CarrotTranslations.register("en", {
|
|
name: "English",
|
|
nativeName: "English",
|
|
shortName: "EN",
|
|
strings: {
|
|
home: "Drive",
|
|
setting: "Setting",
|
|
setting_tab_device: "Device",
|
|
setting_tab_carrot: "CarrotPilot",
|
|
tools: "Tools",
|
|
logs: "Logs",
|
|
terminal: "Terminal",
|
|
carrot: "Carrot",
|
|
lang: "Lang",
|
|
language: "Language",
|
|
current_language: "Current language",
|
|
branch_select: "Branch Select",
|
|
branch_current: "Current",
|
|
server_state: "Server Status",
|
|
working: "Working",
|
|
quick_link: "Link",
|
|
car_select: "Car Select",
|
|
makers: "Makers",
|
|
models: "Models",
|
|
groups: "Groups",
|
|
items: "Items",
|
|
back: "Back",
|
|
change: "Change",
|
|
git_commands: "Git Commands",
|
|
user_system: "User / System",
|
|
reboot: "Reboot",
|
|
backup: "Backup Settings",
|
|
restore: "Restore Settings",
|
|
copy: "Copy",
|
|
view: "View",
|
|
device_info: "Device Info",
|
|
device_tab_error: "Failed to load device info.",
|
|
carrot_info: "Carrot Info",
|
|
network: "Network",
|
|
toggles: "Toggles",
|
|
software: "Software",
|
|
device_group_info: "Device Info",
|
|
device_group_network: "Network",
|
|
device_group_toggles: "Toggles",
|
|
device_group_software: "Software",
|
|
device_group_developer: "Developer",
|
|
language_setting: "System",
|
|
branch: "Branch",
|
|
commit: "Commit",
|
|
device_type: "Device",
|
|
dongle_id: "Dongle ID",
|
|
serial: "Serial",
|
|
calibration: "Calibration",
|
|
uncalibrated: "Uncalibrated",
|
|
recent_update: "Recent update",
|
|
position: "Position",
|
|
device_lang: "Device Lang",
|
|
reset_calib: "Reset Calib",
|
|
reset: "Reset",
|
|
reset_calibration: "Reset Calibration",
|
|
recalibration: "ReCalibration",
|
|
reboot_device_desc: "Reboot device",
|
|
power_off: "Power Off",
|
|
power_off_desc: "Power off device",
|
|
power_off_confirm: "Power off device?",
|
|
reset_calibration_confirm: "Reset calibration and reboot?",
|
|
review: "Review",
|
|
review_training_guide: "Review Training Guide",
|
|
review_training_desc: "Review the rules, features, and limitations of openpilot",
|
|
review_training_confirm: "Are you sure you want to review the training guide?",
|
|
calibration_status: "Calibration Status",
|
|
calibration_status_desc: "openpilot requires the device to be mounted within 4° left or right and within 5° up or 9° down. openpilot is continuously calibrating, resetting is rarely required.",
|
|
calibration_position_desc: "Current position: pitch {pitch}°, yaw {yaw}°",
|
|
change_language: "Change Language",
|
|
pair_device: "Pair Device",
|
|
pair_device_desc: "Pair your device with comma connect (connect.comma.ai) and claim your comma prime offer.",
|
|
pair: "PAIR",
|
|
driver_camera: "Driver Camera",
|
|
driver_camera_desc: "Preview the driver facing camera to ensure that driver monitoring has good visibility. (vehicle must be off)",
|
|
preview: "PREVIEW",
|
|
regulatory: "Regulatory",
|
|
view_upper: "VIEW",
|
|
show_upper: "SHOW",
|
|
advanced: "Advanced",
|
|
enable_tethering: "Enable Tethering",
|
|
tethering_password: "Tethering Password",
|
|
ip_address: "IP Address",
|
|
enable_roaming: "Enable Roaming",
|
|
apn_setting: "APN Setting",
|
|
automatic: "automatic",
|
|
edit_upper: "EDIT",
|
|
cellular_metered: "Cellular Metered",
|
|
cellular_metered_desc: "Prevent large data uploads when on a metered connection",
|
|
hidden_network: "Hidden Network",
|
|
connect_upper: "CONNECT",
|
|
updates_offroad_only: "Updates are only downloaded while the car is off.",
|
|
download: "Download",
|
|
check_upper: "CHECK",
|
|
install_update: "Install Update",
|
|
install_upper: "INSTALL",
|
|
select_upper: "SELECT",
|
|
uninstall_openpilot: "Uninstall openpilot",
|
|
uninstall_upper: "UNINSTALL",
|
|
driving_personality: "Driving Personality",
|
|
current_version: "Current Version",
|
|
target_branch: "Target Branch",
|
|
update_state: "Update State",
|
|
update_available: "Update Available",
|
|
language_note: "Requires reboot",
|
|
restore_defaults: "Restore Defaults",
|
|
restore_defaults_desc: "Restore stock settings",
|
|
restore_defaults_confirm: "Restore defaults and reboot?",
|
|
yes: "Yes",
|
|
no: "No",
|
|
enable_openpilot: "Enable openpilot",
|
|
experimental_mode: "Experimental Mode",
|
|
experimental_mode_confirm: "Experimental Mode enables alpha-level features that are not ready for chill mode. Enable Experimental Mode?",
|
|
disengage_on_accelerator: "Disengage on Accelerator",
|
|
enable_ldw: "Enable Lane Departure Warnings",
|
|
always_on_dm: "Always-on DM",
|
|
record_front: "Record and Upload Driver Camera",
|
|
record_audio: "Record and Upload Microphone Audio",
|
|
record_front_lock: "Record audio",
|
|
is_metric: "Use Metric System",
|
|
enable_adb: "Enable ADB",
|
|
enable_ssh: "Enable SSH",
|
|
ssh_keys: "SSH Keys",
|
|
ssh_keys_desc: "Warning: This grants SSH access to all public keys in your GitHub settings. Never enter a GitHub username other than your own.",
|
|
ssh_github_username_prompt: "Enter your GitHub username",
|
|
ssh_keys_added: "SSH keys added",
|
|
ssh_keys_removed: "SSH keys removed",
|
|
add_upper: "ADD",
|
|
remove_upper: "REMOVE",
|
|
not_configured: "Not configured",
|
|
web_settings: "Web Settings",
|
|
web_settings_general: "General",
|
|
web_settings_display: "Display",
|
|
web_settings_empty: "No general web settings yet.",
|
|
web_auto_update: "Auto update",
|
|
web_auto_update_desc: "Automatically run git pull when updates are available. This will not reboot.",
|
|
web_auto_update_running: "Auto update: running git pull.",
|
|
web_auto_update_done: "Auto update complete. Reboot was not requested.",
|
|
web_auto_update_failed: "Auto update failed",
|
|
web_start_page: "Start menu",
|
|
web_start_page_desc: "Choose which menu opens first when Carrot Web loads.",
|
|
web_start_page_last: "Last tab",
|
|
tools_notifications: "Notifications",
|
|
tools_notifications_other: "Other",
|
|
tools_notifications_empty: "No notifications",
|
|
tools_notifications_clear: "Clear",
|
|
tools_notifications_no_output: "(no output)",
|
|
tools_notification_detail: "Detail log",
|
|
enable: "Enable",
|
|
adb_enable_confirm: "ADB allows connecting to your device over USB or over the network. Enable ADB?",
|
|
alpha_longitudinal_confirm: "WARNING: openpilot longitudinal control is in alpha for this car and will disable Automatic Emergency Braking (AEB).\n\nEnable this to switch from the car's built-in ACC to openpilot longitudinal control. Enabling Experimental mode is recommended.",
|
|
joystick_debug_mode: "Joystick Debug Mode",
|
|
longitudinal_maneuver_mode: "Longitudinal Maneuver Mode",
|
|
alpha_longitudinal_control: "openpilot Longitudinal Control (Alpha)",
|
|
relaxed: "Relaxed",
|
|
standard: "Standard",
|
|
aggressive: "Aggressive",
|
|
more_relaxed: "MoreRelaxed",
|
|
driving_personality_desc: "Aggressive, Standard, Relaxed, MoreRelaxed",
|
|
scanning_networks: "Scanning for networks...",
|
|
wifi_viewer_only: "Viewer only",
|
|
connected: "Connected",
|
|
not_connected: "Not connected",
|
|
secured: "Secured",
|
|
open_network: "Open",
|
|
next: "Next",
|
|
close: "Close",
|
|
action_triggered: "Action triggered",
|
|
device_only_control: "This can only be controlled on the device.",
|
|
regulatory_load_failed: "Failed to load regulatory information.",
|
|
capture_tmux: "capture tmux",
|
|
send_tmux: "send tmux",
|
|
install_required: "install flask",
|
|
delete_all_videos: "delete all videos",
|
|
delete_all_logs: "delete all logs",
|
|
rebuild_all: "Rebuild All",
|
|
change_repository: "change repository",
|
|
change_branch: "change branch",
|
|
add_remote: "add remote",
|
|
reset_repo: "reset repo",
|
|
apply: "Apply",
|
|
confirm_car: "Select this car?",
|
|
confirm_reboot: "Reboot now?",
|
|
confirm_reboot_after_install: "Installation is complete.\nA reboot is required to apply the changes.\nReboot now?",
|
|
reboot_later: "Selected. Reboot later to apply.",
|
|
rebooting: "Rebooting...",
|
|
git_sync_confirm: "This will sync branches.\nLocal branches will be cleaned up. Continue?",
|
|
git_reset_confirm: "This will revert code changes.\nYour modifications may be lost. Continue?",
|
|
git_reset_mode_prompt: "Select reset mode\n\n• hard: discard all changes\n• soft: undo commit only\n• mixed: unstage only",
|
|
git_reset_target_prompt: "Enter reset target\ne.g. HEAD (current), origin/master (remote)",
|
|
delete_videos_confirm: "Delete ALL driving videos?\nThis cannot be undone. Continue?",
|
|
delete_logs_confirm: "Delete ALL log files?\nThis cannot be undone. Continue?",
|
|
rebuild_confirm: "Run full rebuild?\nBuild files will be deleted and the device will reboot.\nThis may take several minutes. Continue?",
|
|
select_backup_file: "Select a backup json file first.",
|
|
restore_confirm: "Restore settings from file?\n\nThis will overwrite many Params values.",
|
|
restore_done_reboot: "Restore done.\nReboot now?",
|
|
checkout_confirm: "Switch to this branch?",
|
|
branch_changed: "Branch changed.",
|
|
quick_link_hint: "Long press to save link",
|
|
failed_set_car: "Failed to set car: ",
|
|
open_car_select: "Open car select",
|
|
open_car_select_named: "Open car select for {name}",
|
|
missing_car_select: "No car is selected.\nPlease select a car in settings first.",
|
|
reboot_failed: "Reboot failed: ",
|
|
set_failed: "Set failed: ",
|
|
setting_value_edit: "Edit value",
|
|
setting_value_title: "Edit value",
|
|
setting_value_prompt: "Enter value for {name}\nRange: {min} - {max}",
|
|
setting_value_invalid: "Enter a valid number.",
|
|
setting_favorites: "Favorites",
|
|
setting_favorites_empty_title: "No favorites",
|
|
setting_favorites_empty_desc: "Long press a setting to add it. Long press again to remove it.",
|
|
setting_favorite_added: "Added to favorites",
|
|
setting_favorite_removed: "Removed from favorites",
|
|
setting_favorites_save_failed: "Failed to save favorites",
|
|
branch_dom_missing: "Branch DOM elements missing.",
|
|
fullscreen_not_supported: "Fullscreen not supported on this browser.",
|
|
record: "Record",
|
|
record_on: "Recording",
|
|
record_off: "Idle",
|
|
ready: "Ready",
|
|
loading: "Loading...",
|
|
just_now: "just now",
|
|
minutes_ago: "{count} min ago",
|
|
hours_ago: "{count} hr ago",
|
|
days_ago: "{count} days ago",
|
|
open: "Open",
|
|
close: "Close",
|
|
save: "Save",
|
|
copied: "Copied",
|
|
sent: "Sent",
|
|
failed: "Failed",
|
|
not_set: "Not set",
|
|
connecting: "Connecting...",
|
|
connected: "Connected",
|
|
reconnecting: "Reconnecting...",
|
|
error: "Error",
|
|
notice: "Notice",
|
|
confirm_title: "Confirm",
|
|
input_title: "Input",
|
|
ok: "OK",
|
|
cancel: "Cancel",
|
|
quick_link_empty: "GithubUsername not set",
|
|
open_carrotman_confirm: "Open {name}?",
|
|
device_lang_changed: "Device language has been changed.\nPlease reboot the device to apply.",
|
|
section_settings_backup: "Settings",
|
|
section_sys_cmd: "System Command",
|
|
section_output: "Output",
|
|
sys_cmd_help: "Allowed: pull, status, branch, log, git ..., df, free, uptime",
|
|
terminal_session: "tmux carrot-web",
|
|
terminal_placeholder: "git status",
|
|
terminal_send: "Send",
|
|
terminal_reconnect: "Reconnect",
|
|
terminal_ctrl_c: "Ctrl+C",
|
|
terminal_clear: "Clear",
|
|
terminal_ready: "tmux ready",
|
|
terminal_disconnected: "disconnected",
|
|
terminal_unavailable: "terminal unavailable",
|
|
terminal_offline: "terminal offline",
|
|
setting_search: "Search Settings",
|
|
setting_search_placeholder: "Search name, description, group",
|
|
setting_search_empty: "No matching settings found.",
|
|
setting_search_idle: "Type to find detailed settings.",
|
|
setting_search_results: "results",
|
|
logs_dashcam: "Dashcam",
|
|
logs_screenrecord: "Screen Record",
|
|
display_mode: "Display mode",
|
|
display_fit: "Fit",
|
|
display_normal: "Normal",
|
|
display_crop: "Crop",
|
|
e2e_driving: "E2E driving",
|
|
start_vision: "Carrot Vision",
|
|
start_vision_hint: "Tap the center button to enable Carrot Vision.",
|
|
waiting_road_stream: "Waiting road camera stream...",
|
|
waiting_server: "Waiting server...",
|
|
connected_waiting_track: "Connected, waiting track...",
|
|
no_track_retry: "No track, retry...",
|
|
video_track_lost_reconnecting: "Video track lost, reconnecting...",
|
|
video_stalled_reconnecting: "Video stalled, reconnecting...",
|
|
no_initial_frame_reconnecting: "No initial frame, reconnecting...",
|
|
vision_unavailable_title: "Carrot Vision is unavailable",
|
|
vision_unavailable_hint: "Available when DisableDM is 2.",
|
|
vision_step_unavailable: "Enable DisableDM 2 to use Carrot Vision.",
|
|
vision_step_inactive: "Ready to start.",
|
|
vision_step_starting: "Preparing camera and overlay streams.",
|
|
vision_step_rtc_connecting: "Opening road camera WebRTC stream.",
|
|
vision_step_track_waiting: "Stream connected. Waiting for video track.",
|
|
vision_step_first_frame: "Video track received. Waiting for first frame.",
|
|
vision_step_ready: "Camera and overlay are live.",
|
|
vision_step_recovering: "Refreshing the stream connection.",
|
|
vision_step_failed: "Connection check failed. Retrying when available.",
|
|
vision_step_waiting_runtime: "Waiting for car runtime connection.",
|
|
vision_step_waiting_car: "Waiting for car camera services.",
|
|
dashcam_empty: "No driving records.",
|
|
dashcam_empty_title: "No dashcam records",
|
|
dashcam_empty_desc: "Driving routes and video segments will appear here after recording.",
|
|
selected_count: "{count} selected",
|
|
select_all: "Select all",
|
|
deselect_all: "Deselect all",
|
|
upload_selected: "Upload selected",
|
|
segment_count: "{count} segments",
|
|
segment_menu: "Segment menu",
|
|
show_segments: "Show segments",
|
|
collapse: "Collapse",
|
|
log_upload: "Upload Logs",
|
|
log_upload_confirm: "Upload {count} logs to the Carrot server?",
|
|
upload_data_warning: "This upload may use mobile data depending on your network connection.",
|
|
upload_file_count: "{count} files",
|
|
upload_files_unknown: "files unknown",
|
|
upload_size_unknown: "size unknown",
|
|
log_uploading: "Uploading logs",
|
|
log_upload_result: "Upload Result",
|
|
upload_count: "Upload {uploaded}/{total}",
|
|
upload_complete_count: "Upload complete {uploaded}/{total}",
|
|
dashcam_load_failed: "Failed to load dashcam list",
|
|
screenrecord_empty: "No screen recordings found.",
|
|
screenrecord_empty_title: "No screen recordings",
|
|
screenrecord_empty_desc: "Screen recording files will appear here after recording.",
|
|
screenrecord_load_failed: "Failed to load screen recordings",
|
|
toggle_log_panel: "Expand or collapse log panel",
|
|
git_reset_head_prompt: "Select reset mode based on HEAD.",
|
|
disable_dm_inactive: "Available when DisableDM is 2.",
|
|
disable_dm_check_failed: "Could not check DisableDM status.",
|
|
waiting_model: "waiting modelV2...",
|
|
no_selected_segments: "No segments selected.",
|
|
play: "Play",
|
|
download: "Download",
|
|
video_controls: "Video controls",
|
|
rewind_5: "Back 5 seconds",
|
|
forward_5: "Forward 5 seconds",
|
|
pause: "Pause",
|
|
ended: "End",
|
|
muted: "Muted",
|
|
fullscreen: "Fullscreen",
|
|
fullscreen_exit: "Exit fullscreen",
|
|
pip_exit: "Exit PiP",
|
|
git_remote_title: "Change Repository",
|
|
git_remote_prompt: "Current: {url}\n\nEnter new GitHub repository URL.\n(This will overwrite the current connection)",
|
|
git_remote_fetching: "Fetching repository data.\nThis may take a few minutes for new repositories.\nPlease wait...",
|
|
git_remote_success: "Repository changed successfully.\nClick [change branch] to select a branch.",
|
|
git_add_remote_title: "Add/Update Remote",
|
|
git_add_remote_name_prompt: "Enter remote name (e.g. remote)",
|
|
git_add_remote_url_prompt: "Enter URL for '{name}'",
|
|
git_add_remote_done: "Remote '{name}' added/updated",
|
|
git_log_checkout_prompt: "Select commit to checkout",
|
|
git_log_checkout_confirm: "Checkout this commit?",
|
|
git_log_checkout_done: "Checkout complete",
|
|
git_reset_repo_title: "Reset Repository",
|
|
git_reset_repo_confirm: "Warning: This will remove origin and re-add 'ajouatom/openpilot'.\nAll local changes will be lost. Proceed?",
|
|
git_reset_repo_no_branches: "No branches found",
|
|
git_reset_repo_branch_message: "Select branch to reset to",
|
|
git_reset_repo_done: "Reset to '{branch}' complete",
|
|
reset_calib_title: "ReCalibration",
|
|
reset_calib_confirm: "Are you sure you want to reset calibration?\nDevice will reboot automatically.",
|
|
device_lang_select_prompt: "Select language for the device UI",
|
|
setting_changed_reboot: "Setting changed. Reboot now?",
|
|
settings_not_loaded: "Settings not loaded",
|
|
copy_settings_done: "{count} params copied",
|
|
settings_title: "Settings ({count} params)",
|
|
qr_backup: "QR Backup",
|
|
qr_restore: "QR Restore",
|
|
qr_backup_title: "QR Backup",
|
|
qr_restore_title: "QR Restore",
|
|
qr_backup_count: "{count} params",
|
|
qr_backup_size: "{chars} chars",
|
|
qr_configuring: "Configuring QR feature...",
|
|
qr_config_done: "QR feature is ready.",
|
|
qr_config_failed: "QR feature could not be configured.",
|
|
qr_restore_upload: "Image",
|
|
qr_restore_camera: "Camera",
|
|
qr_restore_camera_disabled: "Camera unavailable",
|
|
qr_restore_stop_camera: "Stop Camera",
|
|
qr_restore_paste_placeholder: "Paste QR backup text",
|
|
qr_restore_check: "Check",
|
|
qr_restore_hint: "Scan with the camera or select a QR backup image before restoring.",
|
|
qr_restore_scan_hint: "Point the camera at the QR code.",
|
|
qr_restore_scan_detected: "Move the QR code into the guide box.",
|
|
qr_restore_scan_aligned: "QR code aligned. Hold still...",
|
|
qr_restore_scan_locked: "QR code captured.",
|
|
qr_restore_decode_failed: "QR code was not found.",
|
|
qr_restore_previewing: "Checking backup...",
|
|
qr_restore_ready: "{count} changes ready",
|
|
qr_restore_no_changes: "No changes to apply.",
|
|
qr_restore_apply: "Apply",
|
|
qr_restore_changed: "Changed",
|
|
qr_restore_current_value: "Current",
|
|
qr_restore_backup_value: "Restore",
|
|
qr_restore_same: "Same",
|
|
qr_restore_skipped: "Skipped",
|
|
qr_restore_invalid: "Invalid",
|
|
qr_restore_more: "{count} more changes hidden",
|
|
qr_restore_applied: "{count} params restored",
|
|
qr_restore_https_required: "Open this page with HTTPS to use the camera.",
|
|
qr_restore_camera_unsupported: "Camera stream is not supported by this browser.",
|
|
qr_restore_camera_failed: "Camera could not be opened.",
|
|
qr_restore_preview_failed: "Failed to read backup.",
|
|
empty_value: "(empty)",
|
|
},
|
|
actionLabels: {
|
|
git_pull: { running: "Checking for updates...", done: "Update complete", failed: "Update failed" },
|
|
git_sync: { running: "Syncing branches...", done: "Sync complete", failed: "Sync failed" },
|
|
git_reset: { running: "Resetting...", done: "Reset complete", failed: "Reset failed" },
|
|
git_checkout: { running: "Switching branch...", done: "Branch changed", failed: "Branch switch failed" },
|
|
git_branch_list: { running: "Loading branches...", done: "Branches loaded", failed: "Failed to load" },
|
|
reboot: { running: "Requesting reboot...", done: "Reboot started", failed: "Reboot failed" },
|
|
send_tmux_log: { running: "Downloading log...", done: "Download complete", failed: "Download failed" },
|
|
server_tmux_log: { running: "Sending server log...", done: "Sent", failed: "Send failed" },
|
|
backup_settings: { running: "Backing up settings...", done: "Backup complete", failed: "Backup failed" },
|
|
delete_all_videos:{ running: "Deleting videos...", done: "Deleted", failed: "Delete failed" },
|
|
delete_all_logs: { running: "Deleting logs...", done: "Deleted", failed: "Delete failed" },
|
|
rebuild_all: { running: "Rebuilding all...", done: "Rebuild+reboot started", failed: "Rebuild failed" },
|
|
shell_cmd: { running: "Running command...", done: "Complete", failed: "Command failed" },
|
|
install_required: { running: "Installing packages...", done: "Installed", failed: "Install failed" },
|
|
git_remote_add: { running: "Adding/updating remote...", done: "Remote added/updated", failed: "Add/update remote failed" },
|
|
git_log: { running: "Loading commits...", done: "Loaded", failed: "Load failed" },
|
|
git_reset_repo_fetch: { running: "Fetching repo info...", done: "Fetch complete", failed: "Fetch failed" },
|
|
git_reset_repo_checkout: { running: "Resetting repo...", done: "Reset complete", failed: "Reset failed" },
|
|
reset_calib: { running: "Resetting calibration...", done: "Reset complete", failed: "Reset failed" },
|
|
},
|
|
errorMessages: {
|
|
GIT_CMD_NOT_ALLOWED: (d) => `This git command is not allowed: ${d}`,
|
|
CMD_NOT_ALLOWED: (d) => `This command is not allowed: ${d}`,
|
|
INVALID_RESET_MODE: () => "Invalid reset mode",
|
|
MISSING_BRANCH: () => "Please select a branch",
|
|
CMD_TIMEOUT: () => "Command timed out",
|
|
TMUX_CAPTURE_FAIL: () => "Failed to capture log",
|
|
},
|
|
driveModes: { normal: "Normal", eco: "Eco", safe: "Safe", sport: "Sport" },
|
|
});
|