mirror of
https://github.com/dragonpilot/dragonpilot.git
synced 2026-08-08 01:35:40 +08:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 8eec2bcbc7 | |||
| 5d4729de5d | |||
| a8272966b5 |
-86
@@ -1,86 +0,0 @@
|
||||
```mermaid
|
||||
flowchart TD
|
||||
B000["devel-staging"] ---> CORE["core"]
|
||||
CORE ---> CORE_001["core-feat/params"]
|
||||
CORE_001 ---> CORE_002["core-feat/panel"]
|
||||
CORE_002 ---> CORE_003["core-feat/safety-ext"]
|
||||
CORE_003 ---> MIN["min"]
|
||||
MIN ---> MIN_001["min-feat/ui/display-mode"]
|
||||
MIN ---> MIN_002["min-feat/dev/model-selector"]
|
||||
MIN ---> MIN_003["min-feat/lat/lca"]
|
||||
MIN ---> MIN_004["min-feat/dev/on-off-road"]
|
||||
MIN ---> MIN_005["min-feat/ui/hide-hud"]
|
||||
MIN ---> MIN_006["min-feat/lon/ext-radar"]
|
||||
MIN ---> MIN_007["min-feat/lat/road-edge-detection"]
|
||||
MIN ---> MIN_008["min-feat/ui/rainbow-path"]
|
||||
MIN ---> MIN_009["min-feat/lon/acm"]
|
||||
MIN ---> MIN_010["min-feat/lon/aem"]
|
||||
MIN ---> MIN_012["min-feat/lon/apm"]
|
||||
MIN ---> MIN_014["min-feat/dev/alert-mode"]
|
||||
MIN ---> MIN_015["min-feat/dev/auto-shutdown"]
|
||||
MIN ---> MIN_016["min-feat/ui/lead-stats"]
|
||||
MIN ---> MIN_017["min-feat/ui/border-indicator"]
|
||||
MIN ---> MIN_018["min-feat/dev/delay-loggerd"]
|
||||
MIN ---> MIN_019["min-feat/dev/disable-connect"]
|
||||
MIN ---> MIN_020["min-feat/dev/tether-on-boot"]
|
||||
MIN ---> MIN_021["min-feat/ui/torque-bar"]
|
||||
MIN ---> MIN_023["min-feat/lat/lat-offset"]
|
||||
MIN_001 ---> FULL["full"]
|
||||
MIN_002 ---> FULL
|
||||
MIN_003 ---> FULL
|
||||
MIN_004 ---> FULL
|
||||
MIN_005 ---> FULL
|
||||
MIN_006 ---> FULL
|
||||
MIN_007 ---> FULL
|
||||
MIN_008 ---> FULL
|
||||
MIN_009 ---> FULL
|
||||
MIN_010 ---> FULL
|
||||
MIN_012 ---> FULL
|
||||
MIN_014 ---> FULL
|
||||
MIN_015 ---> FULL
|
||||
MIN_016 ---> FULL
|
||||
MIN_017 ---> FULL
|
||||
MIN_018 ---> FULL
|
||||
MIN_019 ---> FULL
|
||||
MIN_020 ---> FULL
|
||||
MIN_021 ---> FULL
|
||||
MIN_023 ---> FULL
|
||||
FULL ---> TOYOTA_001[brand/toyota/safety-common]
|
||||
FULL ---> TOYOTA_002[brand/toyota/door-auto-lock-unlock]
|
||||
FULL ---> TOYOTA_003[brand/toyota/tss1-sng]
|
||||
FULL ---> TOYOTA_004[brand/toyota/radar-filter]
|
||||
FULL ---> TOYOTA_005[brand/toyota/sdsu]
|
||||
FULL ---> TOYOTA_006[brand/toyota/dsu-bypass]
|
||||
FULL ---> TOYOTA_007[brand/toyota/zss]
|
||||
FULL ---> TOYOTA_008[brand/toyota/stock-lon]
|
||||
FULL ---> VAG_001[brand/vag/a0-sng]
|
||||
FULL ---> VAG_003[brand/vag/pq-no-dashcam]
|
||||
FULL ---> VAG_004[brand/vag/avoid-eps-lockout]
|
||||
FULL ---> HKG_001[brand/hkg/smdps]
|
||||
FULL ---> HONDA_001[brand/honda/eps-mod]
|
||||
FULL ---> HONDA_002[brand/honda/nidec-stock-long]
|
||||
FULL ---> SUBARU_001[brand/subaru/torque-3071]
|
||||
TOYOTA_001 ---> TOYOTA[pre-toyota]
|
||||
TOYOTA_002 ---> TOYOTA
|
||||
TOYOTA_003 ---> TOYOTA
|
||||
TOYOTA_004 ---> TOYOTA
|
||||
TOYOTA_005 ---> TOYOTA
|
||||
TOYOTA_006 ---> TOYOTA
|
||||
TOYOTA_007 ---> TOYOTA
|
||||
TOYOTA_008 ---> TOYOTA
|
||||
VAG_001 ---> VAG[pre-vag]
|
||||
VAG_003 ---> VAG
|
||||
VAG_004 ---> VAG
|
||||
HKG_001 ---> HKG[pre-hkg]
|
||||
HONDA_001 ---> HONDA[pre-honda]
|
||||
SUBARU_001 ---> SUBARU[pre-subaru]
|
||||
TOYOTA ---> PRE[pre]
|
||||
VAG ---> PRE
|
||||
HKG ---> PRE
|
||||
HONDA ---> PRE
|
||||
SUBARU ---> PRE
|
||||
PRE ---> PRE_PATCH[pre-patch]
|
||||
PRE_PATCH ---> TESTING[testing]
|
||||
TESTING ---> PREBUILD[pre-build]
|
||||
PREBUILD ---> VERSION[x.x.x]
|
||||
```
|
||||
-1979
File diff suppressed because it is too large
Load Diff
-26
@@ -1,26 +0,0 @@
|
||||
# Sponsors 贊助者
|
||||
|
||||
我們誠摯感謝以下贊助者提供的硬體資源,讓專案能夠在多種平台上進行測試與驗證。
|
||||
|
||||
We sincerely thank the following sponsors for providing hardware resources, which enable the project to be tested and validated across multiple platforms.
|
||||
|
||||
---
|
||||
|
||||
## 贊助者列表 Sponsors
|
||||
|
||||
| 贊助者 Sponsor | 設備 Deices | 備註 Notes |
|
||||
| -------------- | ----------- | ---------- |
|
||||
| BlueGood | <ul><li>Radar Filter x 2</li><li>sDSU x1</li></ul> | - |
|
||||
| Chia Chun Lee | <ul><li>C3 Quick Mount x1</li></ul> | - |
|
||||
| CloudJ | <ul><li>C3X x1</li></ul> | - |
|
||||
| FareWay | <ul><li>EON Quick Mount x1</li><li>C2/C3 Quick Mount x1</li></ul> | Special thanks for fixing my good old EON |
|
||||
| Fred Wang | <ul><li>Oneplus 3t x1</li></ul> | - |
|
||||
| Saber Huang | <ul><li>O3L x1</li></ul> | - |
|
||||
| [馬威 Mr. One](https://shop61532546.taobao.com/) | <ul><li>O3 x 1</li><li>O3 (Dev) x1</li><li>O3XL x1</li><li>Red Panda x1</li><li>Panda Jungle v1 x1</li></ul> | - |
|
||||
| 門文梁 | <ul><li>C1.5 x1</li></ul> | - |
|
||||
|
||||
---
|
||||
|
||||
🙏 沒有你們的支持,我們無法讓專案在這麼多硬體平台上持續成長與驗證。
|
||||
|
||||
Without your support, this project could not continue to grow and be validated across so many hardware platforms.
|
||||
@@ -133,34 +133,4 @@ inline static std::unordered_map<std::string, ParamKeyAttributes> keys = {
|
||||
{"dp_dev_last_log", {CLEAR_ON_ONROAD_TRANSITION, STRING}},
|
||||
{"dp_dev_reset_conf", {CLEAR_ON_MANAGER_START, BOOL, "0"}},
|
||||
{"dp_dev_go_off_road", {CLEAR_ON_MANAGER_START, BOOL, "0"}},
|
||||
{"dp_honda_nidec_stock_long", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_toyota_stock_lon", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_toyota_tss1_sng", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_vag_a0_sng", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_vag_avoid_eps_lockout", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_toyota_door_auto_lock_unlock", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_dev_audible_alert_mode", {PERSISTENT, INT, "0"}},
|
||||
{"dp_dev_auto_shutdown_in", {PERSISTENT, INT, "-5"}},
|
||||
{"dp_dev_dashy", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_dev_delay_loggerd", {PERSISTENT, INT, "0"}},
|
||||
{"dp_dev_disable_connect", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_dev_model_selected", {PERSISTENT, STRING}},
|
||||
{"dp_dev_model_list", {PERSISTENT, JSON}},
|
||||
{"dp_dev_is_rhd", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_dev_beep", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_dev_opview", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_dev_tethering", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_lat_alka", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_lat_offset_cm", {PERSISTENT, INT, "0"}},
|
||||
{"dp_lat_lca_speed", {PERSISTENT, INT, "20"}},
|
||||
{"dp_lat_lca_auto_sec", {PERSISTENT, FLOAT, "0.0"}},
|
||||
{"dp_lat_road_edge_detection", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_lon_acm", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_lon_aem", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_lon_apm", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_lon_ext_radar", {PERSISTENT, BOOL, "0"}},
|
||||
{"dp_ui_display_mode", {PERSISTENT, INT, "0"}},
|
||||
{"dp_ui_hide_hud_speed_kph", {PERSISTENT, INT, "0"}},
|
||||
{"dp_ui_lead", {PERSISTENT, INT, "0"}},
|
||||
{"dp_ui_rainbow", {PERSISTENT, BOOL, "0"}},
|
||||
};
|
||||
|
||||
@@ -0,0 +1,254 @@
|
||||
# Acceleration EQ
|
||||
|
||||
User-tunable longitudinal acceleration. The driver edits EQ-style **speed → max
|
||||
acceleration** curves, grouped into named **profiles**, in the dashy web UI; the
|
||||
longitudinal planner reads the active profile and uses its curve as the accel
|
||||
ceiling. A companion **logger** records the driver's own acceleration (when they
|
||||
control the throttle) so the UI can later show "where you actually accelerate".
|
||||
|
||||
The dashy web UI lives in a **separate repo**; this doc covers the
|
||||
dragonpilot/planner side (the contract, the planner reader, the logger) and
|
||||
summarizes the dashy side it integrates with.
|
||||
|
||||
---
|
||||
|
||||
## Architecture
|
||||
|
||||
```
|
||||
┌─ dashy web UI (separate repo) ─┐ GET/POST ┌─ serverd ──────────┐
|
||||
│ EQ editor · profiles · the │ ──────────► │ params REST API + │
|
||||
│ personality→profile links │ /api/... │ /api/accel_eq/config│
|
||||
└────────────────────────────────┘ └─────────┬──────────┘
|
||||
│ Params
|
||||
dp_lon_accel_profiles (JSON param)
|
||||
│
|
||||
┌─ longitudinal_planner.py ────────────────────▼───────────────┐
|
||||
│ AccelEq (accel_eq.py): read+cache JSON (mtime-gated), resolve │
|
||||
│ the active profile by personality/active → max_accel(v) │
|
||||
│ AccelLogger (accel_logger.py): log clean human-accel samples │
|
||||
│ → /data/media/0/realdata/accel_log.csv │
|
||||
└─────────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
Two stores, opposite directions:
|
||||
|
||||
| Store | Holds | Written by | Read by |
|
||||
|---|---|---|---|
|
||||
| `dp_lon_accel_profiles` (JSON param) | the whole EQ doc — profiles + curves, the manual `active` selection, the personality links | dashy | planner |
|
||||
| `/data/media/0/realdata/accel_log.csv` | the driver's natural-acceleration samples (`vEgo,aEgo`) | **planner** (AccelLogger) | dashy overlay (future) |
|
||||
|
||||
The param is declared in `dragonpilot/settings/min-feat.lon.accel-eq.py`
|
||||
(generated into `common/params_keys.h` at build). The CSV is telemetry, not
|
||||
config, so it lives on the drive-log partition, not in the params store.
|
||||
|
||||
---
|
||||
|
||||
## Data contract — `dp_lon_accel_profiles`
|
||||
|
||||
The authoritative shape is what dashy's `serializeDoc` writes and the planner
|
||||
reads. Example:
|
||||
|
||||
```json
|
||||
{
|
||||
"active": "Sport",
|
||||
"use_personality": false,
|
||||
"personality_map": { "0": "Sport", "1": "Stock", "2": "Eco" },
|
||||
"profiles": [
|
||||
{ "name": "Stock", "max": {"bp": [0, 10, 25, 40], "v": [1.6, 1.2, 0.8, 0.6]} },
|
||||
{ "name": "Eco", "source": "Stock", "max": {"bp": [0, 12, 30, 40], "v": [1.0, 0.8, 0.6, 0.5]} }
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
- **`profiles`** — ordered list. Each has a non-empty **unique** `name` and a
|
||||
`max` curve `{bp:[m/s…], v:[m/s²…]}`. Speeds (`bp`) are stored in **m/s**
|
||||
regardless of the UI display unit. A missing/invalid `max` → that profile uses
|
||||
stock.
|
||||
- **`active`** — the manually selected profile name (used when `use_personality`
|
||||
is off). There is **no separate `active` param** — it lives in this doc.
|
||||
- **`use_personality`** + **`personality_map`** — the personality link (below).
|
||||
- **`source`** (optional) — UI lineage only (the duplicate-from profile, drawn
|
||||
as the grey reference line). The planner ignores it and any other unknown key.
|
||||
|
||||
> **"Stock"** is a UI-protected baseline (not renamable/deletable, read-only in
|
||||
> the editor). The planner treats it as a **live mirror of the injected stock
|
||||
> table** — it ignores any stored curve named "Stock", so a planner stock change
|
||||
> always wins.
|
||||
|
||||
There is **no `version` field and no turn-limit curve**: schema changes are
|
||||
handled by versioning the release (or, if ever incompatible, the param key); the
|
||||
turn-accel limit is the planner's stock `_A_TOTAL_MAX_*` and is not tunable.
|
||||
|
||||
---
|
||||
|
||||
## Profile selection
|
||||
|
||||
Resolved on init, whenever the param mtime changes, and whenever the personality
|
||||
changes. The rule:
|
||||
|
||||
```
|
||||
read/cache the JSON doc
|
||||
doc invalid / empty / missing → STOCK (regardless of personality)
|
||||
doc valid:
|
||||
use_personality == true → personality_map[personality]
|
||||
use_personality == false → active
|
||||
→ resolve that name to a profile (exact match) and validate its curve
|
||||
matched + valid → that profile's curve
|
||||
unmapped / unset / no match / Stock / invalid curve → STOCK
|
||||
```
|
||||
|
||||
**Stock is the single universal fallback.** No "first profile" fallback, and
|
||||
when `use_personality` is on an unmapped personality falls to Stock (not to the
|
||||
manual `active`).
|
||||
|
||||
| `use_personality` | situation | result |
|
||||
|---|---|---|
|
||||
| true | personality mapped → real profile, valid curve | that profile |
|
||||
| true | personality unmapped | **Stock** |
|
||||
| false | `active` → real profile, valid curve | that profile |
|
||||
| false | `active` unset/empty | **Stock** |
|
||||
| either | name points at a missing profile / is "Stock" / curve invalid | **Stock** |
|
||||
| either | doc missing / empty / unparseable / not a usable dict | **Stock** |
|
||||
|
||||
### Personality link
|
||||
|
||||
For each openpilot personality the driver links a profile, stored in
|
||||
`personality_map` keyed by the `LongitudinalPersonality` enum int — **`"0"`
|
||||
aggressive, `"1"` standard, `"2"` relaxed**. With `use_personality` on, the
|
||||
existing **personality button** selects the profile (no new onroad control).
|
||||
|
||||
The planner reads the live personality from `selfdriveState.personality.raw`
|
||||
(the int) — the same source the MPC uses — not from the param.
|
||||
|
||||
> **Coupling, by design:** `LongitudinalPersonality` also drives openpilot's
|
||||
> follow distance, so a personality link makes the button a single "aggression"
|
||||
> dial (accel feel + following together). Turn the link off to set them
|
||||
> independently (manual `active`).
|
||||
|
||||
---
|
||||
|
||||
## Planner: `AccelEq` (`dragonpilot/selfdrive/controls/lib/accel_eq.py`)
|
||||
|
||||
Instantiated in `LongitudinalPlanner` and pure-observation safe — any failure
|
||||
falls back to stock and never raises into planning.
|
||||
|
||||
- **Stock is injected**, not hardcoded: the planner owns the canonical
|
||||
`A_CRUISE_MAX_*` table and passes it in (`AccelEq(A_CRUISE_MAX_BP,
|
||||
A_CRUISE_MAX_VALS)`). This keeps a single source of truth and lets `accel_eq`
|
||||
stay a leaf module (it never imports the planner — that would be circular).
|
||||
- **Read is mtime-gated; the parsed doc is cached.** `maybe_refresh(personality)`
|
||||
`stat()`s the param each frame; only an **mtime change** triggers a re-read
|
||||
(`_reload_doc` → `Params.get`). A **personality change** just re-resolves the
|
||||
cached doc (`_resolve`) — zero I/O.
|
||||
- **`max_accel(v_ego)`** = `np.interp` over the active curve, feeding the
|
||||
planner's accel clip. The default personality is a `-1` sentinel so the first
|
||||
real `maybe_refresh` always resolves.
|
||||
|
||||
`limit_accel_in_turns` is unchanged stock (uses `_A_TOTAL_MAX_*`).
|
||||
|
||||
### Validation is a safety boundary — `_validate_curve`
|
||||
|
||||
The param is externally writable (hand-edit, script, an older/buggy dashy), so
|
||||
the planner never trusts it. `_validate_curve` re-sorts and bounds every curve
|
||||
before it can shape the accel ceiling:
|
||||
|
||||
- shape: dict with equal-length `bp`/`v` lists, `MIN_PTS(2) ≤ n ≤ MAX_PTS(12)`,
|
||||
all finite numbers;
|
||||
- **sort** pairs by speed (required — `np.interp` needs increasing `bp`);
|
||||
- clamp speed to `[0, SPEED_CEIL(60)]`; reject if any adjacent gap `< MIN_GAP(0.5)`;
|
||||
- **clamp value to `[0, MAX_ACCEL_CEIL]`** (`= ACCEL_MAX`, 2.0 m/s²) — the actual
|
||||
accel cap.
|
||||
|
||||
Anything that fails → that curve is unusable → stock. dashy mirrors these exact
|
||||
rules client-side (UX) so the editor can't author a curve the planner rejects;
|
||||
the planner's copy is the guarantee.
|
||||
|
||||
---
|
||||
|
||||
## Logger: `AccelLogger` (`dragonpilot/selfdrive/controls/lib/accel_logger.py`)
|
||||
|
||||
Logs the driver's **natural** acceleration so the data reflects *their*
|
||||
preference, not openpilot's. Only "clean free human-acceleration" samples are
|
||||
kept — `_should_log` requires **all** of:
|
||||
|
||||
| condition | signal |
|
||||
|---|---|
|
||||
| op long not active (human owns throttle) | `controlsState.longControlState == off` |
|
||||
| accelerating on the gas | `gasPressed and aEgo > 0` |
|
||||
| not braking | `not brakePressed` |
|
||||
| no blinker (not turning/lane-changing) | `not (leftBlinker or rightBlinker)` |
|
||||
| in Drive | `gearShifter == drive` |
|
||||
| moving (not creeping/stopped) | `not standstill and vEgo > 1.0` |
|
||||
| no near lead | no lead, or `dRel / max(vEgo, 0.1) > 2.0 s` |
|
||||
| straight (not in a curve) | lateral accel `< 1.0 m/s²` |
|
||||
|
||||
Behavior: buffer matching `(vEgo, aEgo)` in RAM and **append to the CSV once a
|
||||
minute** (`FLUSH_DT`, frame-counted) — one write/min spares the flash; up to
|
||||
~1 min of samples is lost on a hard shutdown (negligible for an aggregate).
|
||||
Fully exception-isolated; on a write failure it drops the buffered rows and
|
||||
no-ops (e.g. path not writable in dev). The clean-sample gate makes growth slow,
|
||||
so there is no size cap. CSV columns: `vEgo,aEgo` (m/s, m/s²).
|
||||
|
||||
---
|
||||
|
||||
## Constants — single source of truth
|
||||
|
||||
`accel_eq.py` owns the contract constants (`SPEED_CEIL`, `MIN_GAP`, `MIN_PTS`,
|
||||
`MAX_PTS`, `MAX_ACCEL_CEIL`). serverd serves them at `GET /api/accel_eq/config`
|
||||
and the dashy model applies them over its built-in fallback defaults at load, so
|
||||
the editor's limits can't drift from the planner. (`MAX_PTS` especially must
|
||||
match: a curve above the planner cap would be silently rejected → stock.)
|
||||
|
||||
---
|
||||
|
||||
## Persistence round-trip
|
||||
|
||||
dashy serializes the doc to a **JSON string**; the planner reads a parsed
|
||||
**dict**. serverd bridges them:
|
||||
|
||||
1. dashy `POST /api/settings/params/dp_lon_accel_profiles` with the JSON string.
|
||||
2. serverd `_save_param` detects the JSON-typed param and `json.loads`-es the
|
||||
string, then `Params.put(key, dict)` (the `(dict, JSON)` caster stores it).
|
||||
Malformed JSON → **400**, not 500.
|
||||
3. planner `Params.get(...)` → parsed dict → `AccelEq._reload_doc` caches it.
|
||||
|
||||
`dp_lon_accel_profiles` is allowlisted in serverd's `_param_allowed`.
|
||||
|
||||
---
|
||||
|
||||
## Dashy side (separate repo)
|
||||
|
||||
The web UI implements: the canvas **EQ editor** (drag points, add/remove,
|
||||
numeric entry, reset, undo/redo, a live "you are here" speed marker), **profile
|
||||
management** (create/duplicate/rename/delete, quick-switch), the
|
||||
**personality→profile pickers**, and a client-side **mirror of
|
||||
`_validate_curve`** so the editor enforces the planner's limits. It talks to
|
||||
serverd's params REST API and `/api/accel_eq/config`. The display unit follows
|
||||
`IsMetric`; storage is always m/s.
|
||||
|
||||
---
|
||||
|
||||
## Files (this repo)
|
||||
|
||||
| File | Role |
|
||||
|---|---|
|
||||
| `dragonpilot/selfdrive/controls/lib/accel_eq.py` | `AccelEq` — profile reader/resolver |
|
||||
| `dragonpilot/selfdrive/controls/lib/accel_logger.py` | `AccelLogger` — accel CSV logger |
|
||||
| `dragonpilot/selfdrive/controls/lib/tests/test_accel_eq.py` | AccelEq tests |
|
||||
| `dragonpilot/selfdrive/controls/lib/tests/test_accel_logger.py` | AccelLogger tests |
|
||||
| `dragonpilot/settings/min-feat.lon.accel-eq.py` | declares `dp_lon_accel_profiles` |
|
||||
| `selfdrive/controls/lib/longitudinal_planner.py` | owns `A_CRUISE_MAX_*`, wires in `AccelEq` + `AccelLogger` |
|
||||
|
||||
Run tests: `uv run python -m pytest dragonpilot/selfdrive/controls/lib/tests/ -q`
|
||||
|
||||
---
|
||||
|
||||
## Notes / future
|
||||
|
||||
- **Habit overlay** in dashy — read `accel_log.csv` (server-side aggregate to an
|
||||
85th-percentile band) and draw it behind the EQ curve. Needs no new param.
|
||||
- The **turn-limit channel** is intentionally not tunable (dropped from the UI
|
||||
and the planner; turn limit stays stock).
|
||||
- dashy follow-ups to keep in sync with this side: trim serverd's
|
||||
`ACCEL_EQ_CONFIG` to the constants `accel_eq` still exposes, and mirror the
|
||||
Stock-fallback selection rule in the dashy model.
|
||||
+231
-10
@@ -51,6 +51,14 @@ from openpilot.system.hardware import PC, HARDWARE
|
||||
from openpilot.system.ui.lib.multilang import multilang as base_multilang
|
||||
from dragonpilot.settings import SETTINGS
|
||||
|
||||
# dragonpilot's translation catalog (.mo) is where dashy's JS strings are merged
|
||||
# by update_translations.py; used to build the web UI's translation map. Falls
|
||||
# back to base multilang if the dragonpilot wrapper isn't importable.
|
||||
try:
|
||||
from dragonpilot.system.ui.lib.multilang import multilang as dp_multilang
|
||||
except Exception:
|
||||
dp_multilang = base_multilang
|
||||
|
||||
try:
|
||||
from openpilot.system.version import get_build_metadata as _get_build_metadata
|
||||
except Exception:
|
||||
@@ -61,6 +69,26 @@ DEFAULT_DIR = os.path.realpath(os.path.join(os.path.dirname(__file__), '..') if
|
||||
WEB_DIST_PATH = os.path.join(os.path.dirname(__file__), "web", "dist")
|
||||
CAR_PARAMS_CACHE_TTL = 30 # seconds
|
||||
|
||||
# Accel-EQ contract constants — single source of truth is the planner's
|
||||
# accel_eq.py. Served to the web UI so its model can't drift from the
|
||||
# planner (a curve the planner would reject must be un-authorable in the editor).
|
||||
# Guarded: standalone/dev dashy without the dragonpilot tree falls back to the
|
||||
# web model's own built-in defaults (ACCEL_EQ_CONFIG stays None → /api endpoint
|
||||
# 404s → JS keeps defaults).
|
||||
try:
|
||||
from dragonpilot.selfdrive.controls.lib import accel_eq as _AC
|
||||
# Only the scalar contract constants accel_eq still owns. Turn and the
|
||||
# schema version were dropped; stock is no longer an accel_eq constant —
|
||||
# it's injected into AccelEq from the planner's A_CRUISE_MAX table, so it
|
||||
# isn't served here (the dashy model keeps its built-in stock default,
|
||||
# which matches A_CRUISE_MAX).
|
||||
ACCEL_EQ_CONFIG = {
|
||||
"max_pts": _AC.MAX_PTS, "min_pts": _AC.MIN_PTS, "min_gap": _AC.MIN_GAP,
|
||||
"speed_ceil": _AC.SPEED_CEIL, "max_accel_ceil": _AC.MAX_ACCEL_CEIL,
|
||||
}
|
||||
except Exception:
|
||||
ACCEL_EQ_CONFIG = None
|
||||
|
||||
logger = logging.getLogger("dashy")
|
||||
|
||||
|
||||
@@ -147,6 +175,14 @@ class AppCache:
|
||||
except Exception:
|
||||
return False
|
||||
|
||||
def lang_switch_available(self):
|
||||
"""Whether the dashy language switcher should be offered — always.
|
||||
|
||||
Native language selection isn't device-gated, and the switcher is
|
||||
harmless even where a native one exists, so dashy offers it on every
|
||||
device (previously excluded comma 3/3x)."""
|
||||
return True
|
||||
|
||||
def _is_release_channel(self):
|
||||
if _get_build_metadata is None:
|
||||
return False
|
||||
@@ -279,21 +315,70 @@ _CONTROL_PARAMS = {
|
||||
'dp_dev_go_off_road', # Controls tab: force-offroad toggle
|
||||
'DoReboot', # Controls tab: reboot button
|
||||
'ExperimentalMode', # Tesla HUD: tap set-speed circle to toggle
|
||||
'LanguageSetting', # Settings tab: language switch (comma-4; "main_<code>")
|
||||
'dp_lon_accel_profiles', # Accel EQ: profile library (JSON) — includes the active selection
|
||||
}
|
||||
|
||||
# Control params whose value is a string/JSON, not a bool. The generic
|
||||
# control-param GET path reads bools (get_bool); these must be read as
|
||||
# their raw string so the web UI gets the actual value back. POST already
|
||||
# stores them as strings via _save_param's default branch.
|
||||
_RAW_STRING_PARAMS = {
|
||||
'dp_lon_accel_profiles',
|
||||
}
|
||||
|
||||
assert _RAW_STRING_PARAMS <= _CONTROL_PARAMS, "raw-string params must also be allowlisted in _CONTROL_PARAMS"
|
||||
|
||||
|
||||
def _param_allowed(key):
|
||||
return key in _PARAM_SETTINGS or key in _CONTROL_PARAMS
|
||||
|
||||
|
||||
def _sync_language(params):
|
||||
"""Apply the current LanguageSetting param to multilang.
|
||||
|
||||
The language switch only writes the param; this makes the translation
|
||||
catalog reflect it (so served strings / the i18n map use the right language)."""
|
||||
current_lang = params.get("LanguageSetting")
|
||||
if not current_lang:
|
||||
return
|
||||
lang_str = current_lang.decode() if isinstance(current_lang, bytes) else str(current_lang)
|
||||
lang_str = lang_str.removeprefix("main_")
|
||||
if lang_str != base_multilang.language and lang_str in base_multilang.languages.values():
|
||||
base_multilang._language = lang_str
|
||||
base_multilang.setup()
|
||||
|
||||
|
||||
def _build_i18n_map():
|
||||
"""Translation map {english: translated} for the active language, consumed
|
||||
by the web UI's tr(). Sourced from the dragonpilot .mo catalog, where dashy's
|
||||
JS strings are merged by update_translations.py. Empty for English / when no
|
||||
catalog is loaded → the web tr() falls back to the original English text."""
|
||||
try:
|
||||
dp_multilang._ensure_loaded()
|
||||
catalog = getattr(dp_multilang._dragon_translation, '_catalog', None)
|
||||
except Exception:
|
||||
catalog = None
|
||||
if not catalog:
|
||||
return {}
|
||||
# GNUTranslations._catalog keys are msgid strings; skip the "" header entry
|
||||
# and the '\x00'-joined plural keys, and drop empty translations.
|
||||
return {k: v for k, v in catalog.items()
|
||||
if isinstance(k, str) and k and '\x00' not in k and v}
|
||||
|
||||
|
||||
# --- API Endpoints ---
|
||||
@api_handler
|
||||
async def init_api(request):
|
||||
"""Provide initial data to the client."""
|
||||
cache: AppCache = request.app['cache']
|
||||
_sync_language(cache.params)
|
||||
return web.json_response({
|
||||
'dp_dev_dashy': cache.get_bool_safe("dp_dev_dashy", True),
|
||||
'isOffroad': cache.get_bool_safe("IsOffroad", False),
|
||||
# Translation map for the web UI's tr() — shipped at boot so strings are
|
||||
# localized before the settings panel can open.
|
||||
'i18n': _build_i18n_map(),
|
||||
})
|
||||
|
||||
|
||||
@@ -384,14 +469,8 @@ async def get_settings_config_api(request):
|
||||
|
||||
params = cache.params
|
||||
|
||||
# Update language if changed
|
||||
current_lang = params.get("LanguageSetting")
|
||||
if current_lang:
|
||||
lang_str = current_lang.decode() if isinstance(current_lang, bytes) else str(current_lang)
|
||||
lang_str = lang_str.removeprefix("main_")
|
||||
if lang_str != base_multilang.language and lang_str in base_multilang.languages.values():
|
||||
base_multilang._language = lang_str
|
||||
base_multilang.setup()
|
||||
# Apply the current LanguageSetting (the switch only writes the param).
|
||||
_sync_language(params)
|
||||
|
||||
context = cache.get_settings_context()
|
||||
settings_with_values = []
|
||||
@@ -425,7 +504,24 @@ async def get_settings_config_api(request):
|
||||
section_copy['settings'] = settings_list
|
||||
settings_with_values.append(section_copy)
|
||||
|
||||
response_data = {'settings': settings_with_values}
|
||||
# Language switcher metadata rides along with the settings (it's settings-
|
||||
# adjacent and the UI already fetches this). The list comes from the device's
|
||||
# translation catalog, not a param; the switch itself writes the
|
||||
# LanguageSetting param via the generic /api/settings/params endpoint.
|
||||
# Offered only where lang_switch_available() (not comma 3/3x).
|
||||
# Labels mirror openpilot's raylib device UI (tr("Change Language") /
|
||||
# tr("Select a language")) and are translated by the same catalog.
|
||||
languages = ({'available': True,
|
||||
'current': base_multilang.language,
|
||||
'list': base_multilang.languages,
|
||||
'title': base_multilang.tr('Change Language'),
|
||||
'dialog': base_multilang.tr('Select a language')}
|
||||
if cache.lang_switch_available() else {'available': False})
|
||||
|
||||
# Refresh the web UI's translation map too, so switching language updates
|
||||
# dashy's own strings (not just the SETTINGS labels) without a reload.
|
||||
response_data = {'settings': settings_with_values, 'languages': languages,
|
||||
'i18n': _build_i18n_map()}
|
||||
cache._settings_cache = response_data
|
||||
cache._settings_cache_time = now
|
||||
return web.json_response(response_data)
|
||||
@@ -492,7 +588,19 @@ async def save_param_api(request):
|
||||
if 'value' not in data:
|
||||
return web.json_response({'error': 'value is required in body'}, status=400)
|
||||
|
||||
_save_param(params, param_name, data['value'])
|
||||
try:
|
||||
_save_param(params, param_name, data['value'])
|
||||
except ValueError as e:
|
||||
# malformed JSON / un-coercible INT|FLOAT body — a client error, not a 500
|
||||
return web.json_response({'error': f'Invalid value for {param_name}: {e}'}, status=400)
|
||||
|
||||
# Mirror upstream openpilot's TogglesLayout: a needs_restart param also
|
||||
# requests an onroad cycle so the change takes effect (openpilot restarts
|
||||
# when the car is powered on). The web UI blocks these toggles while engaged
|
||||
# so this can't fire mid-drive.
|
||||
if setting is not None and setting.get('needs_restart'):
|
||||
params.put_bool("OnroadCycleRequested", True)
|
||||
|
||||
cache.invalidate()
|
||||
logger.info(f"Param saved: {param_name}={data['value']}")
|
||||
|
||||
@@ -510,6 +618,12 @@ def _save_param(params, key, value):
|
||||
params.put(key, int(value))
|
||||
elif param_type == 3: # FLOAT
|
||||
params.put(key, float(value))
|
||||
elif param_type == 5: # JSON
|
||||
# Parse an incoming JSON string to a dict/list so Params.put's
|
||||
# (dict|list, JSON) caster (json.dumps) stores it; put() has no
|
||||
# (str, JSON) caster and would raise. Malformed JSON raises here and
|
||||
# is surfaced to the client. Already-parsed bodies pass through.
|
||||
params.put(key, json.loads(value) if isinstance(value, str) else value)
|
||||
elif isinstance(value, bool):
|
||||
params.put_bool(key, value)
|
||||
else:
|
||||
@@ -521,12 +635,117 @@ def _save_param(params, key, value):
|
||||
raise
|
||||
|
||||
|
||||
@api_handler
|
||||
async def get_accel_eq_config_api(request):
|
||||
"""Serve the planner's accel-eq contract constants (the single source of
|
||||
truth in accel_eq.py) so the web model can't drift from the planner.
|
||||
404 when unavailable — the web UI uses this to gate the whole Accel tab.
|
||||
|
||||
"Available" means BOTH: the planner lib imported (constants known) AND the
|
||||
dp_lon_accel_profiles param is registered on this build (so saves work).
|
||||
Checking the param registration — not just the import — avoids showing a
|
||||
tab whose saves would fail on a build where the planner side isn't deployed.
|
||||
Standalone/dev dashy → 404 → tab hidden, web model keeps built-in defaults."""
|
||||
if ACCEL_EQ_CONFIG is None:
|
||||
return web.json_response({'error': 'accel-eq config unavailable'}, status=404)
|
||||
params = request.app['cache'].params
|
||||
try:
|
||||
params.check_key('dp_lon_accel_profiles') # raises if not in the params manifest
|
||||
except Exception:
|
||||
return web.json_response({'error': 'accel-eq param unavailable'}, status=404)
|
||||
return web.json_response(ACCEL_EQ_CONFIG)
|
||||
|
||||
|
||||
@api_handler
|
||||
async def get_accel_eq_habit_api(request):
|
||||
"""Serve logged (speed, accel) samples for the Accel-EQ 'habit cloud' overlay.
|
||||
|
||||
Reads accel_log.csv from the data dir (where the planner's AccelLogger writes
|
||||
it) — two columns: speed m/s, accel m/s². Uniform-strided down to ~2000
|
||||
points so the density is preserved without shipping tens of thousands of
|
||||
samples. Missing/empty file → {'points': []} (the overlay just doesn't show)."""
|
||||
import bisect
|
||||
path = os.path.join(DEFAULT_DIR, 'accel_log.csv')
|
||||
samples = []
|
||||
try:
|
||||
with open(path) as f:
|
||||
for line in f:
|
||||
parts = line.split(',')
|
||||
if len(parts) < 2:
|
||||
continue
|
||||
try:
|
||||
samples.append((float(parts[0]), float(parts[1])))
|
||||
except ValueError:
|
||||
continue
|
||||
except FileNotFoundError:
|
||||
pass
|
||||
|
||||
# Reference grid: sliding windows over speed that hold enough samples. Thin
|
||||
# windows are SKIPPED (not bailed on), so a sparse very-low-speed slice (the
|
||||
# log starts at 1 m/s) or a thin high-speed tail doesn't wipe out the whole
|
||||
# reference — it just isn't drawn there.
|
||||
ordered = sorted(samples, key=lambda t: t[0])
|
||||
speeds = [t[0] for t in ordered]
|
||||
accels = [t[1] for t in ordered]
|
||||
STEP, HALF, MIN_W = 0.5, 1.5, 60
|
||||
grid = [] # (speed, sorted accel window)
|
||||
s = 0.0
|
||||
while s <= 40.0:
|
||||
lo = bisect.bisect_left(speeds, s - HALF)
|
||||
hi = bisect.bisect_right(speeds, s + HALF)
|
||||
if hi - lo >= MIN_W:
|
||||
grid.append((s, sorted(accels[lo:hi])))
|
||||
s += STEP
|
||||
|
||||
# Availability probe (?meta=1): sample count + how many reference points we
|
||||
# could draw, so the UI offers the overlay only when it's actually useful —
|
||||
# without shipping the dataset.
|
||||
if request.query.get('meta'):
|
||||
return web.json_response({'count': len(samples), 'bands': len(grid)})
|
||||
|
||||
# Cloud: uniform stride to ~2000 samples (preserves the density distribution).
|
||||
stride = max(1, len(samples) // 2000)
|
||||
points = [[round(sp, 2), round(a, 3)] for sp, a in samples[::stride]]
|
||||
|
||||
# Envelope: three smooth reference lines for setting a max-accel ceiling —
|
||||
# usual (p75), brisk (p90) and hardest (p98) of how hard you accelerate at
|
||||
# each speed. All upper-range: most samples are gentle partial throttle, so
|
||||
# low percentiles just hug zero and don't inform a ceiling. Moving-average
|
||||
# smoothed and forced non-increasing (max-accel eases with speed).
|
||||
def _band(pct):
|
||||
raw = [(gs, win[min(len(win) - 1, int(pct * len(win)))]) for gs, win in grid]
|
||||
out, cur = [], float('inf')
|
||||
for i in range(len(raw)):
|
||||
a = max(0, i - 2); b = min(len(raw), i + 3) # moving average ±2
|
||||
avg = sum(v for _, v in raw[a:b]) / (b - a)
|
||||
cur = min(cur, avg) # non-increasing
|
||||
out.append([round(raw[i][0], 1), round(cur, 2)])
|
||||
return out
|
||||
|
||||
envelope = {'lower': _band(0.75), 'mid': _band(0.90), 'upper': _band(0.98)}
|
||||
return web.json_response({'points': points, 'envelope': envelope})
|
||||
|
||||
|
||||
def _get_param_value(params, key):
|
||||
"""Get a single param value via its declared setting type, or as a
|
||||
bool for control-only params that have no SETTINGS entry."""
|
||||
setting = _PARAM_SETTINGS.get(key)
|
||||
if setting is not None:
|
||||
return _get_setting_value(params, setting)
|
||||
if key in _RAW_STRING_PARAMS:
|
||||
try:
|
||||
raw = params.get(key)
|
||||
if raw is None:
|
||||
return None
|
||||
# JSON-typed params (e.g. dp_lon_accel_profiles) come back from
|
||||
# Params.get already json.loads'd into a dict/list — re-serialize so
|
||||
# the web gets valid JSON, not Python repr (str(dict) → single quotes,
|
||||
# which JSON.parse can't read → client silently falls back to seed).
|
||||
if isinstance(raw, (dict, list)):
|
||||
return json.dumps(raw)
|
||||
return raw.decode('utf-8', errors='replace') if isinstance(raw, bytes) else str(raw)
|
||||
except Exception:
|
||||
return None
|
||||
if key in _CONTROL_PARAMS:
|
||||
try:
|
||||
return params.get_bool(key)
|
||||
@@ -822,6 +1041,8 @@ def setup_aiohttp_app(host: str, port: int, debug: bool):
|
||||
app.router.add_get("/api/play", serve_player_api)
|
||||
app.router.add_get("/api/manifest.m3u8", serve_manifest_api)
|
||||
app.router.add_get("/api/settings", get_settings_config_api)
|
||||
app.router.add_get("/api/accel_eq/config", get_accel_eq_config_api)
|
||||
app.router.add_get("/api/accel_eq/habit", get_accel_eq_habit_api)
|
||||
app.router.add_get("/api/settings/params/{param_name}", get_param_api)
|
||||
app.router.add_post("/api/settings/params/{param_name}", save_param_api)
|
||||
app.router.add_get("/api/models", get_model_list_api)
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
Vendored
+29
-26
File diff suppressed because one or more lines are too long
@@ -0,0 +1,157 @@
|
||||
"""
|
||||
Copyright (c) 2026, Rick Lan
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, and/or sublicense,
|
||||
for non-commercial purposes only, subject to the following conditions:
|
||||
|
||||
- The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
- Commercial use (e.g. use in a product, service, or activity intended to
|
||||
generate revenue) is prohibited without explicit written permission from
|
||||
the copyright holder.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Acceleration EQ — planner-side reader. Loads the active profile's max-accel
|
||||
curve from the dp_lon_accel_profiles param (validated, with a stock fallback)
|
||||
and exposes it to the longitudinal planner. The editor UI lives in dashy.
|
||||
"""
|
||||
|
||||
import math
|
||||
import os
|
||||
|
||||
import numpy as np
|
||||
|
||||
from openpilot.common.params import Params
|
||||
from openpilot.common.swaglog import cloudlog
|
||||
from opendbc.car.interfaces import ACCEL_MAX
|
||||
|
||||
PROFILES_KEY = "dp_lon_accel_profiles"
|
||||
STOCK_NAME = "Stock" # the protected default — a live mirror of injected stock, never a stored curve
|
||||
|
||||
SPEED_CEIL = 60.0
|
||||
MIN_GAP = 0.5
|
||||
MIN_PTS = 2
|
||||
MAX_PTS = 12 # our own sanity bound (np.interp has no limit); must match dashy's MAX_PTS
|
||||
MAX_ACCEL_CEIL = ACCEL_MAX
|
||||
|
||||
|
||||
def _validate_curve(curve, ceil):
|
||||
"""Return a sorted, clamped (bp, v) tuple, or None if unusable."""
|
||||
if not isinstance(curve, dict):
|
||||
return None
|
||||
bp, v = curve.get("bp"), curve.get("v")
|
||||
if not isinstance(bp, list) or not isinstance(v, list):
|
||||
return None
|
||||
if len(bp) != len(v) or not (MIN_PTS <= len(bp) <= MAX_PTS):
|
||||
return None
|
||||
try:
|
||||
pairs = sorted(((float(b), float(a)) for b, a in zip(bp, v, strict=True)), key=lambda p: p[0])
|
||||
except (TypeError, ValueError):
|
||||
return None
|
||||
if not all(math.isfinite(b) and math.isfinite(a) for b, a in pairs):
|
||||
return None
|
||||
out_bp, out_v = [], []
|
||||
for b, a in pairs:
|
||||
b = min(max(b, 0.0), SPEED_CEIL)
|
||||
if out_bp and b - out_bp[-1] < MIN_GAP:
|
||||
return None
|
||||
out_bp.append(b)
|
||||
out_v.append(min(max(a, 0.0), ceil))
|
||||
return out_bp, out_v
|
||||
|
||||
|
||||
def _select_active(data, name):
|
||||
"""The profile with exactly this name, or None (caller falls back to stock).
|
||||
No first-profile fallback — an unknown name means 'use stock'."""
|
||||
if not isinstance(data, dict) or not name:
|
||||
return None
|
||||
profiles = data.get("profiles")
|
||||
if not isinstance(profiles, list):
|
||||
return None
|
||||
return next((p for p in profiles
|
||||
if isinstance(p, dict) and p.get("name") == name), None)
|
||||
|
||||
|
||||
def _resolve_active_name(data, personality):
|
||||
"""Profile name to use: when use_personality is on, the personality-mapped name
|
||||
(None if unmapped → stock); otherwise the manual 'active' selection (None if
|
||||
unset → stock). The caller treats None / no match as 'use stock'."""
|
||||
if not isinstance(data, dict):
|
||||
return None
|
||||
if data.get("use_personality"):
|
||||
pmap = data.get("personality_map")
|
||||
name = pmap.get(str(personality)) if isinstance(pmap, dict) else None
|
||||
else:
|
||||
name = data.get("active")
|
||||
return name if isinstance(name, str) and name else None
|
||||
|
||||
|
||||
class AccelEq:
|
||||
def __init__(self, stock_bp, stock_v, params=None):
|
||||
# Stock fallback is injected by the planner (its A_CRUISE_MAX_* table), so
|
||||
# there's a single source of truth and accel_eq stays a leaf — it never
|
||||
# imports the planner (which imports AccelEq → would be circular).
|
||||
self._stock_bp, self._stock_v = list(stock_bp), list(stock_v)
|
||||
self._params = params if params is not None else Params()
|
||||
self._personality = -1 # unknown sentinel → the first maybe_refresh() with a real value (0/1/2) forces a resolve
|
||||
self._doc = None # cached parsed profiles JSON (re-read only on mtime change)
|
||||
self._max_bp, self._max_v = list(stock_bp), list(stock_v)
|
||||
self._reload_doc()
|
||||
self._last_mtime = self._mtime(PROFILES_KEY)
|
||||
|
||||
def _mtime(self, key):
|
||||
try:
|
||||
return os.stat(self._params.get_param_path(key)).st_mtime
|
||||
except OSError:
|
||||
return None
|
||||
|
||||
def maybe_refresh(self, personality):
|
||||
# The JSON read is the only expensive part, so gate it on the param mtime
|
||||
# and cache the parsed doc. A personality change (button press) doesn't
|
||||
# touch the param at all — just re-resolve the active curve from the cache.
|
||||
mtime = self._mtime(PROFILES_KEY)
|
||||
if mtime != self._last_mtime:
|
||||
self._last_mtime = mtime
|
||||
self._personality = personality
|
||||
self._reload_doc() # JSON changed → re-read + re-resolve
|
||||
elif personality != self._personality:
|
||||
self._personality = personality
|
||||
self._resolve() # selection changed → re-resolve cache, no I/O
|
||||
|
||||
def _reload_doc(self):
|
||||
# Read + parse + cache the profiles JSON (the expensive step), then resolve.
|
||||
try:
|
||||
self._doc = self._params.get(PROFILES_KEY) # parsed dict, or None
|
||||
except Exception as e: # never let tuning data crash the planner
|
||||
cloudlog.warning(f"AccelEq: failed to read profiles, using stock: {e}")
|
||||
self._doc = None
|
||||
self._resolve()
|
||||
|
||||
def _resolve(self):
|
||||
# Pick the active profile's curve from the cached doc. Pure in-memory — no
|
||||
# param access, so it's cheap to call on every personality change.
|
||||
max_bp, max_v = list(self._stock_bp), list(self._stock_v)
|
||||
try:
|
||||
data = self._doc
|
||||
if data:
|
||||
name = _resolve_active_name(data, self._personality)
|
||||
# Anything unresolved — unmapped personality, unset/empty active, no
|
||||
# matching profile, or the Stock baseline itself — falls through to the
|
||||
# injected stock. Stock is a live mirror of injected stock, so its stored
|
||||
# curve is ignored (a planner stock change always takes effect).
|
||||
if name and name != STOCK_NAME:
|
||||
prof = _select_active(data, name)
|
||||
if prof is not None:
|
||||
mc = _validate_curve(prof.get("max"), MAX_ACCEL_CEIL)
|
||||
if mc is not None:
|
||||
max_bp, max_v = mc
|
||||
except Exception as e: # never let tuning data crash the planner
|
||||
cloudlog.warning(f"AccelEq: failed to resolve profile, using stock: {e}")
|
||||
self._max_bp, self._max_v = max_bp, max_v
|
||||
|
||||
def max_accel(self, v_ego):
|
||||
return float(np.interp(v_ego, self._max_bp, self._max_v))
|
||||
@@ -0,0 +1,97 @@
|
||||
"""
|
||||
Copyright (c) 2026, Rick Lan
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, and/or sublicense,
|
||||
for non-commercial purposes only, subject to the following conditions:
|
||||
|
||||
- The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
- Commercial use (e.g. use in a product, service, or activity intended to
|
||||
generate revenue) is prohibited without explicit written permission from
|
||||
the copyright holder.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Param-only settings entry for the Acceleration EQ feature.
|
||||
No UI fields (section/type/title), so the native dp settings panel skips
|
||||
these; generate_settings.py still emits them into common/params_keys.h.
|
||||
The editor UI lives in the dashy web repo.
|
||||
"""
|
||||
|
||||
from cereal import car
|
||||
from openpilot.common.constants import CV
|
||||
from openpilot.common.realtime import DT_MDL
|
||||
from openpilot.common.swaglog import cloudlog
|
||||
from openpilot.selfdrive.controls.lib.longcontrol import LongCtrlState
|
||||
|
||||
V_MIN = 1.0 # m/s — exclude creep/stop
|
||||
TTC_MIN = 0.5 # s — lead must be at least this far in time
|
||||
LAT_ACCEL_MAX = 1.0 # m/s² — exclude curves
|
||||
FLUSH_DT = 60.0 # s — append the buffer to disk at most this often
|
||||
|
||||
# Accel-log data is observational telemetry, not config, so it lives as a CSV on the
|
||||
# drive-log partition (where rlogs live) rather than in the params store.
|
||||
LOG_PATH = "/data/media/0/realdata/accel_log.csv"
|
||||
|
||||
|
||||
def _should_log(long_off, gas, brake, blinker, in_drive, moving, a_ego, lead_ttc, lat_accel):
|
||||
"""True only for a clean, free, straight-line human-acceleration sample."""
|
||||
return (long_off and gas and a_ego > 0.0
|
||||
and not brake and not blinker
|
||||
and in_drive and moving
|
||||
and lead_ttc > TTC_MIN and lat_accel < LAT_ACCEL_MAX)
|
||||
|
||||
|
||||
class AccelLogger:
|
||||
"""Logs the driver's natural acceleration — clean, free, straight-line manual
|
||||
samples — to a CSV (columns: vEgo m/s, aEgo m/s²). Samples are buffered in RAM
|
||||
and appended once a minute to spare the flash; up to FLUSH_DT of samples are
|
||||
lost on an ungraceful shutdown, which is negligible for an aggregate. The gate
|
||||
makes clean samples rare, so the file grows very slowly (no cap needed).
|
||||
Fully exception-isolated — it can never perturb the planner."""
|
||||
|
||||
def __init__(self, CP, path=None):
|
||||
self._CP = CP
|
||||
self._enabled = CP.openpilotLongitudinalControl # accel-eq only applies under OP long
|
||||
self._path = path if path is not None else LOG_PATH
|
||||
self._buf = []
|
||||
self._frames = 0
|
||||
self._flush_every = max(1, int(FLUSH_DT / DT_MDL))
|
||||
|
||||
def _flush(self):
|
||||
# Take + clear the buffer first, so RAM stays bounded even if the write
|
||||
# fails (e.g. path not writable) — those rows are simply dropped.
|
||||
rows, self._buf = self._buf, []
|
||||
try:
|
||||
with open(self._path, "a") as f:
|
||||
f.writelines(f"{v:.3f},{a:.3f}\n" for v, a in rows)
|
||||
except Exception as e:
|
||||
cloudlog.warning(f"AccelLogger: write failed (dropped {len(rows)} rows): {e}")
|
||||
|
||||
def update(self, sm):
|
||||
if not self._enabled:
|
||||
return
|
||||
try:
|
||||
self._frames += 1
|
||||
cs = sm['carState']
|
||||
v_ego = cs.vEgo
|
||||
long_off = sm['controlsState'].longControlState == LongCtrlState.off
|
||||
in_drive = cs.gearShifter == car.CarState.GearShifter.drive
|
||||
moving = (not cs.standstill) and v_ego > V_MIN
|
||||
blinker = cs.leftBlinker or cs.rightBlinker
|
||||
lat_accel = abs(v_ego ** 2 * cs.steeringAngleDeg * CV.DEG_TO_RAD
|
||||
/ (self._CP.steerRatio * self._CP.wheelbase))
|
||||
lead = sm['radarState'].leadOne
|
||||
lead_ttc = (lead.dRel / max(v_ego, 0.1)) if lead.status else float('inf')
|
||||
|
||||
if _should_log(long_off, cs.gasPressed, cs.brakePressed,
|
||||
blinker, in_drive, moving, cs.aEgo, lead_ttc, lat_accel):
|
||||
self._buf.append((v_ego, cs.aEgo))
|
||||
|
||||
if self._buf and self._frames % self._flush_every == 0:
|
||||
self._flush()
|
||||
except Exception as e:
|
||||
cloudlog.warning(f"AccelLogger.update failed (ignored): {e}")
|
||||
@@ -0,0 +1,269 @@
|
||||
from dragonpilot.selfdrive.controls.lib.accel_eq import _validate_curve, MAX_ACCEL_CEIL, _select_active, MAX_PTS
|
||||
|
||||
def test_valid_curve_passes_through_sorted():
|
||||
bp, v = _validate_curve({"bp": [0, 10, 25, 40], "v": [1.6, 1.2, 0.8, 0.6]}, MAX_ACCEL_CEIL)
|
||||
assert bp == [0.0, 10.0, 25.0, 40.0]
|
||||
assert v == [1.6, 1.2, 0.8, 0.6]
|
||||
|
||||
def test_unsorted_speeds_are_sorted_together():
|
||||
bp, v = _validate_curve({"bp": [40, 0, 10], "v": [0.6, 1.6, 1.2]}, MAX_ACCEL_CEIL)
|
||||
assert bp == [0.0, 10.0, 40.0]
|
||||
assert v == [1.6, 1.2, 0.6]
|
||||
|
||||
def test_value_clamped_to_ceiling():
|
||||
_, v = _validate_curve({"bp": [0, 20], "v": [99.0, -5.0]}, MAX_ACCEL_CEIL)
|
||||
assert v == [MAX_ACCEL_CEIL, 0.0]
|
||||
|
||||
def test_too_few_points_rejected():
|
||||
assert _validate_curve({"bp": [0], "v": [1.6]}, MAX_ACCEL_CEIL) is None
|
||||
|
||||
def test_too_many_points_rejected():
|
||||
n = MAX_PTS + 1
|
||||
assert _validate_curve({"bp": list(range(n)), "v": [1.0] * n}, MAX_ACCEL_CEIL) is None
|
||||
|
||||
def test_mismatched_lengths_rejected():
|
||||
assert _validate_curve({"bp": [0, 10], "v": [1.6]}, MAX_ACCEL_CEIL) is None
|
||||
|
||||
def test_duplicate_speeds_rejected():
|
||||
assert _validate_curve({"bp": [10, 10], "v": [1.0, 0.9]}, MAX_ACCEL_CEIL) is None
|
||||
|
||||
def test_non_numeric_rejected():
|
||||
assert _validate_curve({"bp": [0, "x"], "v": [1.6, 1.2]}, MAX_ACCEL_CEIL) is None
|
||||
|
||||
def test_non_finite_rejected():
|
||||
assert _validate_curve({"bp": [0, float("inf")], "v": [1.6, 1.2]}, MAX_ACCEL_CEIL) is None
|
||||
|
||||
def test_none_and_non_dict_rejected():
|
||||
assert _validate_curve(None, MAX_ACCEL_CEIL) is None
|
||||
assert _validate_curve([1, 2], MAX_ACCEL_CEIL) is None
|
||||
|
||||
|
||||
DATA = {"profiles": [
|
||||
{"name": "Eco", "max": {"bp": [0, 20], "v": [1.0, 0.8]}},
|
||||
{"name": "Sport", "max": {"bp": [0, 20], "v": [2.0, 1.6]}},
|
||||
]}
|
||||
|
||||
def test_select_named_profile():
|
||||
assert _select_active(DATA, "Sport")["name"] == "Sport"
|
||||
|
||||
def test_unknown_name_returns_none():
|
||||
assert _select_active(DATA, "Nope") is None # no first-profile fallback
|
||||
|
||||
def test_empty_name_returns_none():
|
||||
assert _select_active(DATA, "") is None
|
||||
|
||||
def test_no_profiles_returns_none():
|
||||
assert _select_active({"profiles": []}, "x") is None
|
||||
assert _select_active({}, "x") is None
|
||||
assert _select_active(None, "x") is None
|
||||
|
||||
def test_unnamed_profiles_ignored():
|
||||
bad = {"profiles": [{"max": {}}, {"name": 5}]}
|
||||
assert _select_active(bad, "x") is None
|
||||
|
||||
|
||||
import numpy as np
|
||||
from openpilot.common.params import Params
|
||||
from dragonpilot.selfdrive.controls.lib.accel_eq import AccelEq, PROFILES_KEY
|
||||
# Stock fallback is the planner's A_CRUISE_MAX table, injected into AccelEq.
|
||||
from openpilot.selfdrive.controls.lib.longitudinal_planner import (
|
||||
A_CRUISE_MAX_BP as STOCK_MAX_BP, A_CRUISE_MAX_VALS as STOCK_MAX_V,
|
||||
)
|
||||
|
||||
def test_unset_uses_stock():
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, Params())
|
||||
for v in (0., 5., 10., 25., 40., 55.):
|
||||
assert c.max_accel(v) == float(np.interp(v, STOCK_MAX_BP, STOCK_MAX_V))
|
||||
|
||||
def test_active_profile_drives_curve():
|
||||
p = Params()
|
||||
p.put(PROFILES_KEY, {"active": "Sport", "profiles": [
|
||||
{"name": "Sport", "max": {"bp": [0, 40], "v": [2.0, 1.0]},
|
||||
"turn": {"bp": [20, 40], "v": [1.7, 3.2]}},
|
||||
]}, block=True)
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
assert c.max_accel(0.) == 2.0
|
||||
assert c.max_accel(40.) == 1.0
|
||||
|
||||
def test_switching_active_changes_curve_on_refresh():
|
||||
p = Params()
|
||||
p.put(PROFILES_KEY, {"active": "Eco", "profiles": [
|
||||
{"name": "Eco", "max": {"bp": [0, 40], "v": [1.0, 0.5]}},
|
||||
{"name": "Sport", "max": {"bp": [0, 40], "v": [2.0, 1.0]}},
|
||||
]}, block=True)
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
assert c.max_accel(0.) == 1.0
|
||||
p.put(PROFILES_KEY, {"active": "Sport", "profiles": [
|
||||
{"name": "Eco", "max": {"bp": [0, 40], "v": [1.0, 0.5]}},
|
||||
{"name": "Sport", "max": {"bp": [0, 40], "v": [2.0, 1.0]}},
|
||||
]}, block=True)
|
||||
c.maybe_refresh(1)
|
||||
assert c.max_accel(0.) == 2.0
|
||||
|
||||
def test_no_work_when_unchanged(monkeypatch):
|
||||
p = Params()
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
c.maybe_refresh(1) # warm up: first call resolves the -1 sentinel to a real personality
|
||||
calls = []
|
||||
monkeypatch.setattr(c, "_reload_doc", lambda: calls.append("doc"))
|
||||
monkeypatch.setattr(c, "_resolve", lambda: calls.append("resolve"))
|
||||
c.maybe_refresh(1)
|
||||
c.maybe_refresh(1)
|
||||
assert calls == [] # mtime + personality unchanged → no read, no resolve
|
||||
|
||||
def test_personality_change_resolves_without_reread(monkeypatch):
|
||||
# A personality change must re-resolve from the cached doc, never re-read the param.
|
||||
p = Params()
|
||||
p.put(PROFILES_KEY, {
|
||||
"use_personality": True,
|
||||
"personality_map": {"0": "Sport", "1": "Stock", "2": "Eco"},
|
||||
"profiles": [
|
||||
{"name": "Stock", "max": {"bp": [0, 40], "v": [1.6, 0.6]}},
|
||||
{"name": "Sport", "max": {"bp": [0, 40], "v": [2.0, 1.0]}},
|
||||
{"name": "Eco", "max": {"bp": [0, 40], "v": [1.0, 0.5]}},
|
||||
],
|
||||
}, block=True)
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
reads = []
|
||||
monkeypatch.setattr(c, "_reload_doc", lambda: reads.append(1))
|
||||
c.maybe_refresh(0) # aggressive → Sport, resolved from cache
|
||||
assert c.max_accel(0.) == 2.0
|
||||
assert reads == [] # no JSON re-read on a personality change
|
||||
|
||||
def test_malformed_profiles_falls_back_to_stock():
|
||||
p = Params()
|
||||
# write raw invalid json bytes directly
|
||||
p.put(PROFILES_KEY, {"active": "Bad", "profiles": [{"name": "Bad", "max": {"bp": [0], "v": [9]}}]}, block=True)
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
assert c.max_accel(0.) == float(np.interp(0., STOCK_MAX_BP, STOCK_MAX_V))
|
||||
|
||||
def test_deleted_after_set_reverts_to_stock():
|
||||
p = Params()
|
||||
p.put(PROFILES_KEY, {"active": "S", "profiles": [{"name": "S", "max": {"bp": [0, 40], "v": [2.0, 1.0]}}]}, block=True)
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
assert c.max_accel(0.) == 2.0
|
||||
p.remove(PROFILES_KEY)
|
||||
c.maybe_refresh(1)
|
||||
assert c.max_accel(0.) == float(np.interp(0., STOCK_MAX_BP, STOCK_MAX_V))
|
||||
|
||||
def test_invalid_or_empty_doc_falls_back_to_stock_regardless_of_personality():
|
||||
# A doc that isn't a usable dict (non-dict, empty, or no profiles) → stock,
|
||||
# for every personality. Mirrors Params.get() returning None on bad/empty JSON.
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, Params())
|
||||
stock0 = float(np.interp(0., STOCK_MAX_BP, STOCK_MAX_V))
|
||||
for bad in (None, [1, 2, 3], {}, {"use_personality": True, "personality_map": {"0": "X"}}):
|
||||
c._doc = bad
|
||||
for pers in (0, 1, 2):
|
||||
c._personality = pers
|
||||
c._resolve()
|
||||
assert c.max_accel(0.) == stock0
|
||||
|
||||
|
||||
from openpilot.selfdrive.controls.lib.longitudinal_planner import (
|
||||
get_max_accel, A_CRUISE_MAX_BP, A_CRUISE_MAX_VALS,
|
||||
)
|
||||
|
||||
def test_accelcurves_matches_legacy_get_max_accel_when_unset():
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, Params())
|
||||
for v in (0., 7., 10., 18., 25., 33., 40., 50.):
|
||||
assert c.max_accel(v) == float(get_max_accel(v))
|
||||
assert get_max_accel(v) == float(np.interp(v, A_CRUISE_MAX_BP, A_CRUISE_MAX_VALS))
|
||||
|
||||
|
||||
from dragonpilot.selfdrive.controls.lib.accel_eq import _resolve_active_name
|
||||
|
||||
PDATA = {"use_personality": True,
|
||||
"personality_map": {"0": "Sport", "1": "Stock", "2": "Eco"},
|
||||
"profiles": [{"name": "Stock"}, {"name": "Sport"}, {"name": "Eco"}]}
|
||||
|
||||
def test_personality_maps_to_profile():
|
||||
assert _resolve_active_name(PDATA, 0) == "Sport"
|
||||
assert _resolve_active_name(PDATA, 2) == "Eco"
|
||||
|
||||
def test_personality_off_uses_active():
|
||||
d = {"use_personality": False, "active": "Manual", "profiles": []}
|
||||
assert _resolve_active_name(d, 0) == "Manual"
|
||||
|
||||
def test_personality_off_no_active_returns_none():
|
||||
assert _resolve_active_name({"use_personality": False}, 0) is None # → stock
|
||||
|
||||
def test_personality_unmapped_returns_none():
|
||||
d = {"use_personality": True, "personality_map": {"0": "Sport"}, "active": "Manual"}
|
||||
assert _resolve_active_name(d, 1) is None # 1 unmapped → stock, not manual
|
||||
|
||||
def test_personality_missing_map_returns_none():
|
||||
assert _resolve_active_name({"use_personality": True}, 0) is None
|
||||
|
||||
def test_resolve_handles_non_dict():
|
||||
assert _resolve_active_name(None, 0) is None
|
||||
|
||||
|
||||
def test_personality_selects_profile_in_accelcurves():
|
||||
p = Params()
|
||||
p.put(PROFILES_KEY, {
|
||||
"use_personality": True,
|
||||
"personality_map": {"0": "Sport", "1": "Stock", "2": "Eco"},
|
||||
"profiles": [
|
||||
{"name": "Stock", "max": {"bp": [0, 40], "v": [1.6, 0.6]}},
|
||||
{"name": "Sport", "max": {"bp": [0, 40], "v": [2.0, 1.0]}},
|
||||
{"name": "Eco", "max": {"bp": [0, 40], "v": [1.0, 0.5]}},
|
||||
],
|
||||
}, block=True)
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
c.maybe_refresh(0) # aggressive (live personality from the planner)
|
||||
assert c.max_accel(0.) == 2.0 # Sport
|
||||
c.maybe_refresh(2) # relaxed
|
||||
assert c.max_accel(0.) == 1.0 # Eco
|
||||
|
||||
def test_personality_off_uses_manual_active_in_accelcurves():
|
||||
p = Params()
|
||||
p.put(PROFILES_KEY, {
|
||||
"active": "Stock",
|
||||
"use_personality": False,
|
||||
"personality_map": {"0": "Sport"},
|
||||
"profiles": [
|
||||
{"name": "Stock", "max": {"bp": [0, 40], "v": [1.6, 0.6]}},
|
||||
{"name": "Sport", "max": {"bp": [0, 40], "v": [2.0, 1.0]}},
|
||||
],
|
||||
}, block=True)
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
c.maybe_refresh(0) # personality 0 would map to Sport, but use_personality is off
|
||||
assert c.max_accel(0.) == 1.6 # manual "active": Stock wins → injected stock
|
||||
|
||||
def test_active_in_json_drives_curve_without_legacy_key():
|
||||
p = Params()
|
||||
p.put(PROFILES_KEY, {
|
||||
"active": "Sport",
|
||||
"profiles": [
|
||||
{"name": "Stock", "max": {"bp": [0, 40], "v": [1.6, 0.6]}},
|
||||
{"name": "Sport", "max": {"bp": [0, 40], "v": [2.0, 1.0]}},
|
||||
],
|
||||
}, block=True)
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
assert c.max_accel(0.) == 2.0
|
||||
|
||||
def test_no_active_falls_back_to_stock():
|
||||
# No "active" and personality off → injected stock, NOT the first profile.
|
||||
p = Params()
|
||||
p.put(PROFILES_KEY, {
|
||||
"profiles": [
|
||||
{"name": "Sport", "max": {"bp": [0, 40], "v": [2.0, 1.0]}},
|
||||
{"name": "Eco", "max": {"bp": [0, 40], "v": [1.0, 0.5]}},
|
||||
],
|
||||
}, block=True)
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
assert c.max_accel(0.) == float(np.interp(0., STOCK_MAX_BP, STOCK_MAX_V)) # stock, not Sport
|
||||
assert c.max_accel(0.) != 2.0
|
||||
|
||||
|
||||
def test_stock_profile_ignores_stored_curve():
|
||||
# A stale/legacy "Stock" with a stored curve must NOT override the injected
|
||||
# (live) stock table — Stock is a mirror, so a planner stock change wins.
|
||||
p = Params()
|
||||
p.put(PROFILES_KEY, {
|
||||
"active": "Stock",
|
||||
"profiles": [{"name": "Stock", "max": {"bp": [0, 40], "v": [0.1, 0.1]}}],
|
||||
}, block=True)
|
||||
c = AccelEq(STOCK_MAX_BP, STOCK_MAX_V, p)
|
||||
assert c.max_accel(0.) == float(np.interp(0., STOCK_MAX_BP, STOCK_MAX_V))
|
||||
assert c.max_accel(0.) != 0.1
|
||||
@@ -0,0 +1,102 @@
|
||||
from types import SimpleNamespace
|
||||
from cereal import car
|
||||
from openpilot.selfdrive.controls.lib.longcontrol import LongCtrlState
|
||||
from dragonpilot.selfdrive.controls.lib.accel_logger import _should_log, AccelLogger
|
||||
|
||||
|
||||
def _clean(**over):
|
||||
args = dict(long_off=True, gas=True, brake=False, blinker=False,
|
||||
in_drive=True, moving=True, a_ego=0.8, lead_ttc=9.9, lat_accel=0.2)
|
||||
args.update(over)
|
||||
return _should_log(**args)
|
||||
|
||||
def test_clean_sample_logs():
|
||||
assert _clean() is True
|
||||
|
||||
def test_each_condition_blocks():
|
||||
assert _clean(long_off=False) is False # op long active
|
||||
assert _clean(gas=False) is False
|
||||
assert _clean(a_ego=0.0) is False # not accelerating
|
||||
assert _clean(brake=True) is False
|
||||
assert _clean(blinker=True) is False
|
||||
assert _clean(in_drive=False) is False
|
||||
assert _clean(moving=False) is False
|
||||
assert _clean(lead_ttc=1.0) is False # lead too close
|
||||
assert _clean(lat_accel=5.0) is False # in a curve
|
||||
|
||||
|
||||
DRIVE = car.CarState.GearShifter.drive
|
||||
CP = SimpleNamespace(steerRatio=15.0, wheelbase=2.7, openpilotLongitudinalControl=True)
|
||||
|
||||
def _sm(**over):
|
||||
cs = dict(vEgo=10.0, aEgo=0.8, gasPressed=True, brakePressed=False,
|
||||
steeringPressed=False, leftBlinker=False, rightBlinker=False,
|
||||
standstill=False, gearShifter=DRIVE, steeringAngleDeg=0.0)
|
||||
cs.update(over)
|
||||
return {
|
||||
'carState': SimpleNamespace(**cs),
|
||||
'controlsState': SimpleNamespace(longControlState=LongCtrlState.off),
|
||||
'radarState': SimpleNamespace(leadOne=SimpleNamespace(status=False, dRel=0.0)),
|
||||
}
|
||||
|
||||
def test_clean_sample_buffers(tmp_path):
|
||||
log = AccelLogger(CP, path=str(tmp_path / "h.csv"))
|
||||
log.update(_sm(vEgo=10.0, aEgo=0.8))
|
||||
assert log._buf == [(10.0, 0.8)]
|
||||
|
||||
def test_gate_blocks_dirty_sample(tmp_path):
|
||||
log = AccelLogger(CP, path=str(tmp_path / "h.csv"))
|
||||
sm = _sm()
|
||||
sm['controlsState'] = SimpleNamespace(longControlState=LongCtrlState.pid) # op long active
|
||||
log.update(sm)
|
||||
assert log._buf == []
|
||||
|
||||
def test_no_op_long_disables_logging(tmp_path):
|
||||
# stock-long car: accel-eq is inert, so the logger must not run at all
|
||||
stock_cp = SimpleNamespace(steerRatio=15.0, wheelbase=2.7, openpilotLongitudinalControl=False)
|
||||
log = AccelLogger(stock_cp, path=str(tmp_path / "h.csv"))
|
||||
log.update(_sm(vEgo=10.0, aEgo=0.8)) # would be a clean sample under OP long
|
||||
assert log._buf == []
|
||||
|
||||
def test_in_curve_sample_rejected_end_to_end(tmp_path):
|
||||
# large steering -> lateral accel exceeds LAT_ACCEL_MAX -> not buffered
|
||||
log = AccelLogger(CP, path=str(tmp_path / "h.csv"))
|
||||
log.update(_sm(vEgo=10.0, aEgo=0.8, steeringAngleDeg=45.0))
|
||||
assert log._buf == []
|
||||
|
||||
def test_flush_appends_and_clears(tmp_path):
|
||||
p = tmp_path / "h.csv"
|
||||
log = AccelLogger(CP, path=str(p))
|
||||
log.update(_sm(vEgo=10.0, aEgo=0.8))
|
||||
log.update(_sm(vEgo=12.0, aEgo=0.5))
|
||||
log._flush()
|
||||
assert log._buf == []
|
||||
assert p.read_text().splitlines() == ["10.000,0.800", "12.000,0.500"]
|
||||
# second flush appends (does not truncate)
|
||||
log.update(_sm(vEgo=5.0, aEgo=1.0))
|
||||
log._flush()
|
||||
assert p.read_text().splitlines()[-1] == "5.000,1.000"
|
||||
|
||||
def test_auto_flush_on_cadence(tmp_path):
|
||||
p = tmp_path / "h.csv"
|
||||
log = AccelLogger(CP, path=str(p))
|
||||
log._flush_every = 1 # flush every frame
|
||||
log.update(_sm(vEgo=10.0, aEgo=0.8))
|
||||
assert p.read_text().splitlines() == ["10.000,0.800"]
|
||||
assert log._buf == []
|
||||
|
||||
def test_flush_failure_drops_rows_no_raise(tmp_path):
|
||||
# parent dir does not exist -> open() fails -> rows dropped, no raise, RAM bounded
|
||||
log = AccelLogger(CP, path=str(tmp_path / "missing" / "h.csv"))
|
||||
log.update(_sm())
|
||||
log._flush()
|
||||
assert log._buf == []
|
||||
|
||||
def test_update_never_raises(tmp_path):
|
||||
log = AccelLogger(CP, path=str(tmp_path / "h.csv"))
|
||||
log.update({}) # missing keys -> swallowed
|
||||
assert log._buf == []
|
||||
|
||||
def test_logger_is_pure_observation(tmp_path):
|
||||
log = AccelLogger(CP, path=str(tmp_path / "h.csv"))
|
||||
assert log.update(_sm()) is None
|
||||
@@ -22,6 +22,24 @@ def update_translations():
|
||||
ret = os.system(cmd)
|
||||
assert ret == 0
|
||||
|
||||
# Also extract dashy's web UI strings (JavaScript) into the same template.
|
||||
# dashy is a sibling repo — build_and_deploy.sh copies only the minified dist
|
||||
# into the tree (where tr() calls are renamed and unscannable), so scan its
|
||||
# web/src and append the tr()/tr_noop() literals via --join-existing. Override
|
||||
# the location with DASHY_SRC; skipped quietly if the source isn't present.
|
||||
dashy_src = os.environ.get("DASHY_SRC") or os.path.join(BASEDIR, "..", "dashy", "web", "src")
|
||||
dashy_src = os.path.realpath(dashy_src)
|
||||
if os.path.isdir(dashy_src):
|
||||
js_files = [os.path.relpath(os.path.join(root, fn), dashy_src)
|
||||
for root, _, filenames in os.walk(dashy_src)
|
||||
for fn in filenames if fn.endswith(".js")]
|
||||
if js_files:
|
||||
cmd = ("xgettext -L JavaScript --keyword=tr --keyword=tr_noop --from-code=UTF-8 "
|
||||
"--join-existing "
|
||||
f"-D {dashy_src} -o {POT_FILE} {' '.join(js_files)}")
|
||||
ret = os.system(cmd)
|
||||
assert ret == 0
|
||||
|
||||
# Generate/update translation files for each language
|
||||
for name in multilang.languages.values():
|
||||
po_file = os.path.join(TRANSLATIONS_DIR, f"dragonpilot_{name}.po")
|
||||
|
||||
@@ -80,6 +80,10 @@ _KNOWN_ITEM_KEYS = _UI_REQUIRED_KEYS | {
|
||||
# text_input_item: text field that POSTs typed value to the named action endpoint.
|
||||
# action_item: button that POSTs to the named action endpoint with no payload.
|
||||
"action",
|
||||
# Setting a needs_restart param also writes OnroadCycleRequested on save
|
||||
# (dashy), mirroring upstream's TogglesLayout. Behavioral only — ignored by
|
||||
# generate_settings.py (not a param-storage field).
|
||||
"needs_restart",
|
||||
# Param-storage fields (consumed by generate_settings.py, ignored by UI)
|
||||
"flags", "param_type",
|
||||
}
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
"""
|
||||
Copyright (c) 2026, Rick Lan
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, and/or sublicense,
|
||||
for non-commercial purposes only, subject to the following conditions:
|
||||
|
||||
- The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
- Commercial use (e.g. use in a product, service, or activity intended to
|
||||
generate revenue) is prohibited without explicit written permission from
|
||||
the copyright holder.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Param-only settings entry for the Acceleration EQ feature.
|
||||
No UI fields (section/type/title), so the native dp settings panel skips
|
||||
these; generate_settings.py still emits them into common/params_keys.h.
|
||||
The editor UI lives in the dashy web repo.
|
||||
"""
|
||||
|
||||
ITEMS = [
|
||||
# The whole EQ doc (profiles, curves, personality links, and the manual
|
||||
# `active` selection) lives in this one JSON param. The planner reads it;
|
||||
# the dashy web UI writes it.
|
||||
{"key": "dp_lon_accel_profiles", "flags": "PERSISTENT", "param_type": "JSON"},
|
||||
# Accel samples are logged to a CSV on the drive-log partition (AccelLogger),
|
||||
# not a param — see dragonpilot/selfdrive/controls/lib/accel_logger.py.
|
||||
]
|
||||
@@ -26,6 +26,7 @@ ITEMS = [
|
||||
"section": _SEC, "key": "OpenpilotEnabledToggle", "type": "toggle_item",
|
||||
"title": lambda: tr("Enable openpilot"),
|
||||
"description": lambda: tr(_TOGGLES_DESC["OpenpilotEnabledToggle"]),
|
||||
"needs_restart": True,
|
||||
"condition": _DASHY,
|
||||
},
|
||||
{
|
||||
@@ -55,12 +56,14 @@ ITEMS = [
|
||||
"section": _SEC, "key": "RecordFront", "type": "toggle_item",
|
||||
"title": lambda: tr("Record and Upload Driver Camera"),
|
||||
"description": lambda: tr(_TOGGLES_DESC["RecordFront"]),
|
||||
"needs_restart": True,
|
||||
"condition": _DASHY,
|
||||
},
|
||||
{
|
||||
"section": _SEC, "key": "RecordAudio", "type": "toggle_item",
|
||||
"title": lambda: tr("Record and Upload Microphone Audio"),
|
||||
"description": lambda: tr(_TOGGLES_DESC["RecordAudio"]),
|
||||
"needs_restart": True,
|
||||
"condition": _DASHY,
|
||||
},
|
||||
{
|
||||
|
||||
+21
-48
@@ -18,24 +18,17 @@ fi
|
||||
|
||||
BUILD_BRANCH=release-mici-staging
|
||||
|
||||
if [ -z "$SOURCE_BRANCH" ]; then
|
||||
echo "SOURCE_BRANCH is not set"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
# set git identity
|
||||
source /data/identity.sh
|
||||
source $DIR/identity.sh
|
||||
|
||||
echo "[-] Setting up repo T=$SECONDS"
|
||||
rm -rf $BUILD_DIR
|
||||
mkdir -p $BUILD_DIR
|
||||
cd $BUILD_DIR
|
||||
git init
|
||||
# git remote add origin git@github.com:commaai/openpilot.git
|
||||
# git checkout --orphan $BUILD_BRANCH
|
||||
git remote add origin https://github.com/dragonpilot/dev.git
|
||||
git checkout --orphan $SOURCE_BRANCH
|
||||
git remote add origin git@github.com:commaai/openpilot.git
|
||||
git checkout --orphan $BUILD_BRANCH
|
||||
|
||||
# do the files copy
|
||||
echo "[-] copying files T=$SECONDS"
|
||||
@@ -51,25 +44,19 @@ rm -f panda/board/obj/panda_h7.bin.signed
|
||||
VERSION=$(cat common/version.h | awk -F[\"-] '{print $2}')
|
||||
echo "[-] committing version $VERSION T=$SECONDS"
|
||||
git add -f .
|
||||
git commit -a -m "dragonpilot v$VERSION release"
|
||||
git commit -a -m "openpilot v$VERSION release"
|
||||
|
||||
# Build
|
||||
export PYTHONPATH="$BUILD_DIR"
|
||||
scons
|
||||
|
||||
# if [ -z "$PANDA_DEBUG_BUILD" ]; then
|
||||
# # release panda fw
|
||||
# CERT=/data/pandaextra/certs/release RELEASE=1 scons panda/
|
||||
# else
|
||||
# # build with ALLOW_DEBUG=1 to enable features like experimental longitudinal
|
||||
# scons panda/
|
||||
# fi
|
||||
scons -j$(nproc) panda/
|
||||
|
||||
# panda tici
|
||||
rm -f panda_tici/board/obj/panda.bin.signed
|
||||
rm -f panda_tici/board/obj/panda_h7.bin.signed
|
||||
scons -j$(nproc) panda_tici/
|
||||
if [ -z "$PANDA_DEBUG_BUILD" ]; then
|
||||
# release panda fw
|
||||
CERT=/data/pandaextra/certs/release RELEASE=1 scons panda/
|
||||
else
|
||||
# build with ALLOW_DEBUG=1 to enable features like experimental longitudinal
|
||||
scons panda/
|
||||
fi
|
||||
|
||||
# Ensure no submodules in release
|
||||
if test "$(git submodule--helper list | wc -l)" -gt "0"; then
|
||||
@@ -92,34 +79,20 @@ rm -f selfdrive/modeld/models/*.onnx*
|
||||
# Mark as prebuilt release
|
||||
touch prebuilt
|
||||
|
||||
# dragonpilot customized
|
||||
find . -name '*.cc' -delete
|
||||
find selfdrive/ui/ -name '*.h' -delete
|
||||
# rick - some test codes are used in the code
|
||||
# find . -type d -name "tests" -exec rm -rf {} +
|
||||
find . -type d -name 'x86_64' -exec rm -rf {} +
|
||||
find . -type d -name 'Darwin' -exec rm -rf {} +
|
||||
rm -fr tinygrad_repo/docs/tinygrad_intro.pdf # 1.9M
|
||||
rm -fr cereal/gen/cpp/log.capnp.h # 2.5M
|
||||
rm -fr tinygrad_repo/extra/hip_gpu_driver/gc_10_3_0_offset.h # 1.4 M
|
||||
rm -fr tinygrad_repo/extra/accel/tpu/logs/tpu_driver.t1v-n-852cd0d5-w-0.taylor.log.INFO.20210619-062914.26926.gz # 1.3 M
|
||||
|
||||
# Add built files to git
|
||||
git add -f .
|
||||
git commit --amend -m "dragonpilot v$VERSION"
|
||||
|
||||
git branch -m $RELEASE_BRANCH
|
||||
git commit --amend -m "openpilot v$VERSION"
|
||||
|
||||
# Run tests
|
||||
# cd $BUILD_DIR
|
||||
# RELEASE=1 pytest -n0 -s selfdrive/test/test_onroad.py
|
||||
# #pytest selfdrive/car/tests/test_car_interfaces.py
|
||||
cd $BUILD_DIR
|
||||
RELEASE=1 pytest -n0 -s selfdrive/test/test_onroad.py
|
||||
#pytest selfdrive/car/tests/test_car_interfaces.py
|
||||
|
||||
# echo "[-] pushing release T=$SECONDS"
|
||||
# REFS=()
|
||||
# for branch in ${RELEASE_BRANCH//,/ }; do
|
||||
# REFS+=("$BUILD_BRANCH:$branch")
|
||||
# done
|
||||
# git push -f origin "${REFS[@]}"
|
||||
echo "[-] pushing release T=$SECONDS"
|
||||
REFS=()
|
||||
for branch in ${RELEASE_BRANCH//,/ }; do
|
||||
REFS+=("$BUILD_BRANCH:$branch")
|
||||
done
|
||||
git push -f origin "${REFS[@]}"
|
||||
|
||||
echo "[-] done T=$SECONDS"
|
||||
|
||||
@@ -17,6 +17,8 @@ from openpilot.common.swaglog import cloudlog
|
||||
from dragonpilot.selfdrive.controls.lib.acm import ACM
|
||||
from dragonpilot.selfdrive.controls.lib.aem import AEM
|
||||
from dragonpilot.selfdrive.controls.lib.apm import APM
|
||||
from dragonpilot.selfdrive.controls.lib.accel_eq import AccelEq
|
||||
from dragonpilot.selfdrive.controls.lib.accel_logger import AccelLogger
|
||||
|
||||
A_CRUISE_MAX_VALS = [1.6, 1.2, 0.8, 0.6]
|
||||
A_CRUISE_MAX_BP = [0., 10.0, 25., 40.]
|
||||
@@ -75,6 +77,8 @@ class LongitudinalPlanner:
|
||||
self.acm = ACM()
|
||||
self.aem = AEM()
|
||||
self.apm = APM()
|
||||
self.accel_eq = AccelEq(A_CRUISE_MAX_BP, A_CRUISE_MAX_VALS)
|
||||
self.accel_logger = AccelLogger(CP)
|
||||
|
||||
@staticmethod
|
||||
def parse_model(model_msg):
|
||||
@@ -118,7 +122,9 @@ class LongitudinalPlanner:
|
||||
# No change cost when user is controlling the speed, or when standstill
|
||||
prev_accel_constraint = not (reset_state or sm['carState'].standstill)
|
||||
|
||||
accel_clip = [ACCEL_MIN, get_max_accel(v_ego)]
|
||||
self.accel_eq.maybe_refresh(sm['selfdriveState'].personality.raw)
|
||||
self.accel_logger.update(sm)
|
||||
accel_clip = [ACCEL_MIN, self.accel_eq.max_accel(v_ego)]
|
||||
steer_angle_without_offset = sm['carState'].steeringAngleDeg - sm['liveParameters'].angleOffsetDeg
|
||||
accel_clip = limit_accel_in_turns(v_ego, steer_angle_without_offset, accel_clip, self.CP)
|
||||
|
||||
|
||||
@@ -1,571 +0,0 @@
|
||||
# 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 <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr ""
|
||||
@@ -1,503 +0,0 @@
|
||||
# Arabic translations for dragonpilot.
|
||||
# Copyright (C) 2025 dragonpilot
|
||||
# This file is distributed under the same license as the dragonpilot package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: dragonpilot\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-02-13 16:44+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:30+0800\n"
|
||||
"Last-Translator: dragonpilot\n"
|
||||
"Language-Team: Arabic\n"
|
||||
"Language: ar\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=6; plural=(n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
||||
"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5);\n"
|
||||
|
||||
#: dragonpilot/settings.py:94
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ تغيير المسار تلقائياً بعد:"
|
||||
|
||||
#: dragonpilot/settings.py:263
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:136
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
"وضع الانزلاق التكيفي (ACM) يقلل الفرملة للسماح بانزلاق أكثر سلاسة عند الحاجة."
|
||||
|
||||
#: dragonpilot/settings.py:141
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "الوضع التجريبي التكيفي (AEM)"
|
||||
|
||||
#: dragonpilot/settings.py:153
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:142
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr "مبدل الوضع التكيفي بين ACC ومختلط حسب سياق القيادة."
|
||||
|
||||
#: dragonpilot/settings.py:211
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "الكل"
|
||||
|
||||
#: dragonpilot/settings.py:230
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr ""
|
||||
"السماح لـ openpilot بالالتزام بقواعد المرور اليمنى على مقعد السائق الأيمن."
|
||||
|
||||
#: dragonpilot/settings.py:70
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "مساعد الحفاظ على المسار الدائم (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:198
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr "هل أنت متأكد من إعادة تعيين جميع إعدادات DP إلى الافتراضية؟"
|
||||
|
||||
#: dragonpilot/settings.py:249
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "التنبيه الصوتي"
|
||||
|
||||
#: dragonpilot/settings.py:262
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "الإيقاف التلقائي بعد"
|
||||
|
||||
#: dragonpilot/settings.py:154
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:51
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "تجنب قفل نظام التوجيه الكهربائي"
|
||||
|
||||
#: dragonpilot/settings.py:112
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"منع مساعد تغيير المسار عند اكتشاف النظام لحافة الطريق.<br>ملاحظة: سيظهر "
|
||||
"تحذير 'اكتشاف سيارة في النقطة العمياء'."
|
||||
|
||||
#: dragonpilot/settings.py:275
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:148
|
||||
#, python-format
|
||||
msgid ""
|
||||
"DTSC automatically adjusts the vehicle's predicted speed based on upcoming "
|
||||
"road curvature and grip conditions.<br>Originally from the openpilot TACO "
|
||||
"branch."
|
||||
msgstr ""
|
||||
"يقوم DTSC بضبط السرعة المتوقعة للمركبة تلقائياً بناءً على انحناء الطريق القادم "
|
||||
"وظروف التماسك.<br>مأخوذ أصلاً من فرع openpilot TACO."
|
||||
|
||||
#: dragonpilot/settings.py:286
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "تأخير تشغيل المسجل لمدة:"
|
||||
|
||||
#: dragonpilot/settings.py:287
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"يؤخر بدء تشغيل المسجل والعمليات المرتبطة به عند دخول الجهاز على الطريق."
|
||||
"<br>هذا يمنع تسجيل اللحظات الأولى من الرحلة، مما يحمي خصوصية الموقع في بداية "
|
||||
"الرحلة."
|
||||
|
||||
#: dragonpilot/settings.py:298
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "تعطيل Comma Connect"
|
||||
|
||||
#: dragonpilot/settings.py:299
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
"تعطيل خدمة Comma Connect إذا كنت لا ترغب في الرفع / أو تتبعك من قبل الخدمة."
|
||||
|
||||
#: dragonpilot/settings.py:204
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "عرض إحصائيات السيارة الأمامية"
|
||||
|
||||
#: dragonpilot/settings.py:172
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "وضع العرض"
|
||||
|
||||
#: dragonpilot/settings.py:205
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"عرض إحصائيات السيارة الأمامية و/أو نقاط تتبع الرادار.<br>أمامية: إحصائيات "
|
||||
"السيارة الأمامية فقط<br>رادار: إحصائيات نقاط تتبع الرادار فقط<br>الكل: "
|
||||
"إحصائيات السيارة الأمامية والرادار<br>ملاحظة: خيار الرادار يعمل فقط على بعض "
|
||||
"موديلات المركبات."
|
||||
|
||||
#: dragonpilot/settings.py:14
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "قفل/فتح الأبواب تلقائياً"
|
||||
|
||||
#: dragonpilot/settings.py:159
|
||||
#, python-format
|
||||
msgid "Dynamic Accel Slew Rate (DASR)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:147
|
||||
#, python-format
|
||||
msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
msgstr "التحكم الديناميكي بسرعة الانعطاف (DTSC)"
|
||||
|
||||
#: dragonpilot/settings.py:135
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "تفعيل وضع الانزلاق التكيفي (ACM)"
|
||||
|
||||
#: dragonpilot/settings.py:236
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "تفعيل الصفارة (تحذير)"
|
||||
|
||||
#: dragonpilot/settings.py:229
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "تفعيل وضع القيادة اليمنى"
|
||||
|
||||
#: dragonpilot/settings.py:20
|
||||
#, python-format
|
||||
msgid "Enable TSS1 SnG Mod"
|
||||
msgstr "تفعيل تعديل TSS1 للتوقف والانطلاق"
|
||||
|
||||
#: dragonpilot/settings.py:71
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"تفعيل التحكم الجانبي حتى عند إيقاف ACC/التثبيت، باستخدام زر ACC Main أو LKAS "
|
||||
"للتبديل. يجب أن تكون المركبة متحركة."
|
||||
|
||||
#: dragonpilot/settings.py:15
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
"تمكين openpilot من قفل الأبواب تلقائياً فوق 20 كم/س وفتحها تلقائياً عند "
|
||||
"التحويل إلى وضع الركن."
|
||||
|
||||
#: dragonpilot/settings.py:274
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:118
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:186
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "إخفاء شاشة العرض عند الحركة فوق:"
|
||||
|
||||
#: dragonpilot/settings.py:77
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "مساعد تغيير المسار عند:"
|
||||
|
||||
#: dragonpilot/settings.py:209
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "أمامية"
|
||||
|
||||
#: dragonpilot/settings.py:177
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "MAIN+"
|
||||
|
||||
#: dragonpilot/settings.py:179
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "MAIN-"
|
||||
|
||||
#: dragonpilot/settings.py:39
|
||||
#, python-format
|
||||
msgid "MQB A0 SnG Mod"
|
||||
msgstr "تعديل MQB A0 للتوقف والانطلاق"
|
||||
|
||||
#: dragonpilot/settings.py:178
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings.py:180
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings.py:84 dragonpilot/settings.py:101
|
||||
#: dragonpilot/settings.py:193 dragonpilot/settings.py:208
|
||||
#: dragonpilot/settings.py:255 dragonpilot/settings.py:269
|
||||
#: dragonpilot/settings.py:293
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "إيقاف"
|
||||
|
||||
#: dragonpilot/settings.py:95
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "إيقاف = تعطيل تغيير المسار التلقائي."
|
||||
|
||||
#: dragonpilot/settings.py:78
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr "إيقاف = تعطيل مساعد تغيير المسار.<br>1 ميل/س = 1.2 كم/س."
|
||||
|
||||
#: dragonpilot/settings.py:45
|
||||
#, python-format
|
||||
msgid "PQ Steering Patch"
|
||||
msgstr "تصحيح توجيه PQ"
|
||||
|
||||
#: dragonpilot/settings.py:117
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:41
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "إعادة تعيين"
|
||||
|
||||
#: dragonpilot/settings.py:210
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "رادار"
|
||||
|
||||
#: dragonpilot/settings.py:198
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "مسار قيادة قوس قزح مثل تسلا"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:198
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "إعادة تعيين"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:40
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "إعادة تعيين إعدادات DP"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:42
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr "إعادة تعيين إعدادات dragonpilot إلى الافتراضية وإعادة تشغيل الجهاز."
|
||||
|
||||
#: dragonpilot/settings.py:111
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "اكتشاف حافة الطريق (RED)"
|
||||
|
||||
#: dragonpilot/settings.py:244
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
"انظر https://github.com/eFiniLan/openpilot-ext-radar-addon لمزيد من "
|
||||
"المعلومات."
|
||||
|
||||
#: dragonpilot/settings.py:160
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Speed-dependent acceleration smoothing. Allows faster accel changes at low "
|
||||
"speeds for responsive city driving, smoother changes at highway speeds for "
|
||||
"comfort."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:176 dragonpilot/settings.py:253
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "قياسي"
|
||||
|
||||
#: dragonpilot/settings.py:173
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"قياسي: السلوك الافتراضي.<br>MAIN+: تشغيل ACC MAIN = تشغيل العرض.<br>OP+: "
|
||||
"تفعيل OP = تشغيل العرض.<br>MAIN-: تشغيل ACC MAIN = إيقاف العرض.<br>OP-: "
|
||||
"تفعيل OP = إيقاف العرض."
|
||||
|
||||
#: dragonpilot/settings.py:250
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"قياسي: السلوك الافتراضي.<br>تحذير: يصدر صوتاً فقط عند وجود تحذير.<br>إيقاف: "
|
||||
"لا يصدر أي صوت على الإطلاق."
|
||||
|
||||
#: dragonpilot/settings.py:187
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"لمنع احتراق الشاشة، إخفاء السرعة والسرعة القصوى وأيقونات التوجيه/DM عند تحرك "
|
||||
"السيارة.<br>إيقاف = السلوك الافتراضي<br>1 كم/س = 0.6 ميل/س"
|
||||
|
||||
#: dragonpilot/settings.py:237
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "استخدام الصفارة للتنبيهات الصوتية."
|
||||
|
||||
#: dragonpilot/settings.py:243
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "استخدام رادار خارجي"
|
||||
|
||||
#: dragonpilot/settings.py:217
|
||||
#, python-format
|
||||
msgid "Use MICI (comma four) UI"
|
||||
msgstr "استخدام واجهة MICI (comma four)"
|
||||
|
||||
#: dragonpilot/settings.py:26
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "استخدام التحكم الطولي الافتراضي"
|
||||
|
||||
#: dragonpilot/settings.py:254
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "تحذير"
|
||||
|
||||
#: dragonpilot/settings.py:199 dragonpilot/settings.py:218
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "لم لا؟"
|
||||
|
||||
#: dragonpilot/settings.py:123
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:281
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
"<device_ip>:5088 to access.<br><br>Enable this to use Tesla HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:280
|
||||
#, python-format
|
||||
msgid "dashy HUD"
|
||||
msgstr "dashy HUD"
|
||||
|
||||
#: dragonpilot/settings.py:192
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:268
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings.py:83
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "أو افتح المتصفح"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "امسح للوصول"
|
||||
|
||||
#: dragonpilot/settings.py:100 dragonpilot/settings.py:292
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " كم/س"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " دقائق"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " ميل/س"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " ثانية"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " ثواني"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0 دقائق = فوراً"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - مركز النظام الشامل من dragonpilot لك.<br><br>قم بزيارة http://"
|
||||
#~ "<device_ip>:5088 للوصول.<br><br>فعّل هذا لاستخدام ميزة HUD (البث المباشر)."
|
||||
@@ -1,673 +0,0 @@
|
||||
# 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: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:21+0800\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"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ Automatischer Spurwechsel nach:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
"Der adaptive Rollmodus (ACM) reduziert das Bremsen, um ein sanfteres Rollen "
|
||||
"zu ermöglichen, wenn dies angemessen ist."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "Adaptiver Experimentalmodus (AEM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr ""
|
||||
"Adaptiver Moduswechsler zwischen ACC und Blended basierend auf dem "
|
||||
"Fahrkontext."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "Alle"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr "Openpilot erlauben, Rechtsverkehrsregeln bei Rechtslenker zu befolgen."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "Dauerhafter Spurhalteassistent (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr ""
|
||||
"Möchten Sie wirklich ALLE DP-EINSTELLUNGEN auf die Standardwerte "
|
||||
"zurücksetzen?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "Akustische Warnung"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "Automatisches Herunterfahren nach"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "EPS-Sperre vermeiden"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"Spurwechselassistent blockieren, wenn das System den Straßenrand erkennt."
|
||||
"<br>HINWEIS: Dies zeigt die Warnung 'Fahrzeug im toten Winkel erkannt' an."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "Loggerd-Start verzögern um:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"Verzögert den Start von loggerd und zugehörigen Prozessen, wenn das Gerät in "
|
||||
"Betrieb geht.<br>Dies verhindert, dass die ersten Momente einer Fahrt "
|
||||
"aufgezeichnet werden, wodurch die Standortprivatsphäre zu Beginn einer Fahrt "
|
||||
"geschützt wird."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "Comma Connect deaktivieren"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
"Comma Connect-Dienst deaktivieren, wenn Sie keine Daten hochladen / vom "
|
||||
"Dienst verfolgt werden möchten."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "Vorausfahrendes Fahrzeug-Statistiken anzeigen"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "Anzeigemodus"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"Zeigt Statistiken des vorausfahrenden Fahrzeugs und/oder Radar-"
|
||||
"Trackingpunkte an.<br>Lead: Nur Vorausfahrendes Fahrzeug<br>Radar: Nur Radar-"
|
||||
"Trackingpunkte<br>Alle: Vorausfahrendes Fahrzeug und Radar<br>HINWEIS: "
|
||||
"Radaroption funktioniert nur bei bestimmten Fahrzeugmodellen."
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "Automatische Türverriegelung/-entriegelung"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "Adaptiven Rollmodus (ACM) aktivieren"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "Signalton aktivieren (Warnung)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "Rechtslenkermodus aktivieren"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"Querregelung aktivieren, auch wenn ACC/Tempomat deaktiviert ist, mit ACC-"
|
||||
"Haupttaste oder LKAS-Taste umschalten. Fahrzeug muss in Bewegung sein."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
"Openpilot erlauben, Türen über 20 km/h automatisch zu verriegeln und beim "
|
||||
"Einlegen von Park automatisch zu entriegeln."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "HUD ausblenden bei Bewegung über:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "Spurwechselassistent bei:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "Vorausfahrendes Fahrzeug"
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "MAIN+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "MAIN-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "Aus"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "Aus = Automatischen Spurwechsel deaktivieren."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr "Aus = LCA deaktivieren.<br>1 mph = 1,2 km/h."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "ZURÜCKSETZEN"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "Radar"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "Regenbogen-Fahrpfad wie Tesla"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "Zurücksetzen"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "DP-Einstellungen zurücksetzen"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr ""
|
||||
"Dragonpilot-Einstellungen auf Standardwerte zurücksetzen und Gerät neu "
|
||||
"starten."
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "Straßenranderkennung (RED)"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
"Siehe https://github.com/eFiniLan/openpilot-ext-radar-addon für weitere "
|
||||
"Informationen."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "Standard"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"Standard: Serienmäßiges Verhalten.<br>MAIN+: ACC MAIN ein = Anzeige EIN."
|
||||
"<br>OP+: OP aktiviert = Anzeige EIN.<br>MAIN-: ACC MAIN ein = Anzeige "
|
||||
"AUS<br>OP-: OP aktiviert = Anzeige AUS."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"Standard: Serienmäßiges Verhalten.<br>Warnung: Gibt nur bei Warnungen Ton "
|
||||
"aus.<br>Aus: Gibt überhaupt keinen Ton aus."
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"Um Bildschirmeinbrennen zu verhindern, Geschwindigkeit, MAX-Geschwindigkeit "
|
||||
"und Lenk-/DM-Symbole ausblenden, wenn sich das Fahrzeug bewegt.<br>Aus = "
|
||||
"Serienmäßiges Verhalten<br>1 km/h = 0,6 mph"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "Signalton für hörbare Warnungen verwenden."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "Externes Radar verwenden"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "Serienmäßige Längsregelung verwenden"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "Warnung"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "Warum nicht?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "oder Browser öffnen"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "scannen zum Zugriff"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " km/h"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " Min."
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " mph"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " Sek."
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " Sek."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0 Min. = Sofort"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "DTSC automatically adjusts the vehicle's predicted speed based on "
|
||||
#~ "upcoming road curvature and grip conditions.<br>Originally from the "
|
||||
#~ "openpilot TACO branch."
|
||||
#~ msgstr ""
|
||||
#~ "DTSC passt die vorhergesagte Geschwindigkeit des Fahrzeugs automatisch an "
|
||||
#~ "die bevorstehende Straßenkrümmung und Griffbedingungen an."
|
||||
#~ "<br>Ursprünglich aus dem openpilot TACO-Zweig."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
#~ msgstr "Dynamische Kurvengeschwindigkeitskontrolle (DTSC)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Enable TSS1 SnG Mod"
|
||||
#~ msgstr "TSS1 SnG Mod aktivieren"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "MQB A0 SnG Mod"
|
||||
#~ msgstr "MQB A0 SnG Mod"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "PQ Steering Patch"
|
||||
#~ msgstr "PQ-Lenkungspatch"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Use MICI (comma four) UI"
|
||||
#~ msgstr "MICI (comma four) Benutzeroberfläche verwenden"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - dragonpilots All-in-One-System-Hub für Sie.<br><br>Besuchen Sie "
|
||||
#~ "http://<device_ip>:5088 für den Zugriff.<br><br>Aktivieren Sie dies, um "
|
||||
#~ "die HUD-Funktion (Live-Streaming) zu nutzen."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "dashy HUD"
|
||||
#~ msgstr "dashy HUD"
|
||||
@@ -1,571 +0,0 @@
|
||||
# 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: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:21+0800\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"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "RESET"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "Reset"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "Reset DP Settings"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr "Reset dragonpilot settings to default and restart the device."
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "or open browser"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "scan to access"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
@@ -1,678 +0,0 @@
|
||||
# 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: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:21+0800\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"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ Cambio automático de carril después de:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
"El modo de rodaje adaptativo (ACM) reduce el frenado para permitir un rodaje "
|
||||
"más suave cuando sea apropiado."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "Modo experimental adaptativo (AEM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr ""
|
||||
"Conmutador de modo adaptativo entre ACC y combinado según el contexto de "
|
||||
"conducción."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "Todo"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr ""
|
||||
"Permitir que openpilot obedezca las convenciones de tráfico por la derecha "
|
||||
"con el asiento del conductor a la derecha."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "Asistente de mantenimiento de carril permanente (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr ""
|
||||
"¿Está seguro de que desea restablecer TODOS LOS AJUSTES DE DP a los valores "
|
||||
"predeterminados?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "Alerta sonora"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "Apagado automático después de"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "Evitar bloqueo del EPS"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"Bloquear la asistencia de cambio de carril cuando el sistema detecte el "
|
||||
"borde de la carretera.<br>NOTA: Esto mostrará la advertencia 'Vehículo "
|
||||
"detectado en punto ciego'."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "Retrasar inicio de Loggerd por:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"Retrasa el inicio de loggerd y sus procesos relacionados cuando el "
|
||||
"dispositivo está en la carretera.<br>Esto evita que se graben los momentos "
|
||||
"iniciales de un viaje, protegiendo la privacidad de la ubicación al inicio "
|
||||
"del trayecto."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "Desactivar Comma Connect"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
"Desactivar el servicio Comma Connect si no desea cargar datos / ser "
|
||||
"rastreado por el servicio."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "Mostrar estadísticas del vehículo delantero"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "Modo de visualización"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"Mostrar las estadísticas del vehículo delantero y/o puntos de seguimiento "
|
||||
"del radar.<br>Delantero: Solo estadísticas del delantero<br>Radar: Solo "
|
||||
"estadísticas de puntos de seguimiento del radar<br>Todo: Estadísticas del "
|
||||
"delantero y radar<br>NOTA: La opción de radar solo funciona en ciertos "
|
||||
"modelos de vehículos."
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "Bloqueo/desbloqueo automático de puertas"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "Activar modo de rodaje adaptativo (ACM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "Activar pitido (advertencia)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "Activar modo de conducción por la derecha"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"Activar control lateral incluso cuando ACC/cruise esté desactivado, usando "
|
||||
"el botón ACC Main o LKAS para alternar. El vehículo debe estar en movimiento."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
"Permitir que openpilot bloquee automáticamente las puertas por encima de 20 "
|
||||
"km/h y desbloquee automáticamente al cambiar a estacionamiento."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "Ocultar HUD cuando se mueva por encima de:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "Asistente de cambio de carril a:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "Delantero"
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "MAIN+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "MAIN-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "Desactivado"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "Desactivado = Deshabilitar cambio automático de carril."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr "Desactivado = Deshabilitar LCA.<br>1 mph = 1.2 km/h."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "RESTABLECER"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "Radar"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "Trayectoria de conducción arcoíris como Tesla"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "Restablecer"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "Restablecer configuración de DP"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr ""
|
||||
"Restablecer la configuración de dragonpilot a los valores predeterminados y "
|
||||
"reiniciar el dispositivo."
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "Detección de borde de carretera (RED)"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
"Consulte https://github.com/eFiniLan/openpilot-ext-radar-addon para obtener "
|
||||
"más información."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "Estándar"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"Estándar: Comportamiento de fábrica.<br>MAIN+: ACC MAIN activado = Pantalla "
|
||||
"ACTIVADA.<br>OP+: OP activado = Pantalla ACTIVADA.<br>MAIN-: ACC MAIN "
|
||||
"activado = Pantalla DESACTIVADA<br>OP-: OP activado = Pantalla DESACTIVADA."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"Estándar: Comportamiento de fábrica.<br>Advertencia: Solo emite sonido "
|
||||
"cuando hay una advertencia.<br>Desactivado: No emite ningún sonido en "
|
||||
"absoluto."
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"Para evitar el quemado de pantalla, ocultar velocidad, velocidad MAX e "
|
||||
"iconos de dirección/DM cuando el vehículo se mueva.<br>Desactivado = "
|
||||
"Comportamiento de fábrica<br>1 km/h = 0.6 mph"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "Usar zumbador para alertas audibles."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "Usar radar externo"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "Usar control longitudinal de fábrica"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "Advertencia"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "¿Por qué no?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "o abrir navegador"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "escanear para acceder"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " km/h"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " min"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " mph"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " seg"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " segs"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0 min = Inmediatamente"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "DTSC automatically adjusts the vehicle's predicted speed based on "
|
||||
#~ "upcoming road curvature and grip conditions.<br>Originally from the "
|
||||
#~ "openpilot TACO branch."
|
||||
#~ msgstr ""
|
||||
#~ "DTSC ajusta automáticamente la velocidad prevista del vehículo en función "
|
||||
#~ "de la curvatura de la carretera y las condiciones de agarre próximas."
|
||||
#~ "<br>Originalmente de la rama TACO de openpilot."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
#~ msgstr "Control dinámico de velocidad en curvas (DTSC)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Enable TSS1 SnG Mod"
|
||||
#~ msgstr "Activar mod TSS1 SnG"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "MQB A0 SnG Mod"
|
||||
#~ msgstr "Mod MQB A0 SnG"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "PQ Steering Patch"
|
||||
#~ msgstr "Parche de dirección PQ"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Use MICI (comma four) UI"
|
||||
#~ msgstr "Usar interfaz MICI (comma four)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - centro de sistema todo en uno de dragonpilot para usted."
|
||||
#~ "<br><br>Visite http://<device_ip>:5088 para acceder.<br><br>Active esto "
|
||||
#~ "para usar la función HUD (transmisión en vivo)."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "dashy HUD"
|
||||
#~ msgstr "dashy HUD"
|
||||
@@ -1,681 +0,0 @@
|
||||
# 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: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:21+0800\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"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ Changement de voie automatique après :"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
"Le mode de roue libre adaptatif (ACM) réduit le freinage pour permettre une "
|
||||
"décélération plus douce lorsque cela est approprié."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "Mode expérimental adaptatif (AEM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr ""
|
||||
"Commutateur de mode adaptatif entre ACC et mixte en fonction du contexte de "
|
||||
"conduite."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "Tout"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr ""
|
||||
"Permet à openpilot de respecter les conventions de circulation à droite avec "
|
||||
"le volant à droite."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "Assistance au maintien de voie permanente (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr ""
|
||||
"Êtes-vous sûr de vouloir réinitialiser TOUS LES PARAMÈTRES DP par défaut ?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "Alerte sonore"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "Arrêt automatique après"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "Éviter le verrouillage EPS"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"Bloquer l'assistance au changement de voie lorsque le système détecte le "
|
||||
"bord de la route.<br>REMARQUE : Ceci affichera l'avertissement 'Véhicule "
|
||||
"détecté dans l'angle mort'."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "Retarder le démarrage de Loggerd de :"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"Retarde le démarrage de loggerd et de ses processus associés lorsque "
|
||||
"l'appareil commence à rouler.<br>Cela empêche l'enregistrement des premiers "
|
||||
"instants d'un trajet, protégeant ainsi la confidentialité de la localisation "
|
||||
"au début d'un voyage."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "Désactiver Comma Connect"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
"Désactiver le service Comma Connect si vous ne souhaitez pas télécharger / "
|
||||
"être suivi par le service."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "Afficher les stats du véhicule précédent"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "Mode d'affichage"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"Afficher les statistiques du véhicule précédent et/ou des points de suivi "
|
||||
"radar.<br>Précédent : Statistiques du véhicule précédent "
|
||||
"uniquement<br>Radar : Statistiques des points de suivi radar "
|
||||
"uniquement<br>Tout : Statistiques du véhicule précédent et du "
|
||||
"radar<br>REMARQUE : L'option radar ne fonctionne que sur certains modèles de "
|
||||
"véhicules."
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "Verrouillage/déverrouillage automatique des portes"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "Activer le mode de roue libre adaptatif (ACM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "Activer le bip (avertissement)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "Activer le mode conduite à droite"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"Activer le contrôle latéral même lorsque l'ACC/régulateur est désactivé, en "
|
||||
"utilisant le bouton ACC Main ou LKAS pour basculer. Le véhicule doit être en "
|
||||
"mouvement."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
"Permettre à openpilot de verrouiller automatiquement les portes au-dessus de "
|
||||
"20 km/h et de les déverrouiller automatiquement lors du passage en position "
|
||||
"Parking."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "Masquer le HUD au-dessus de :"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "Assistance au changement de voie à :"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "Précédent"
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "MAIN+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "MAIN-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "Désactivé"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "Désactivé = Désactiver le changement de voie automatique."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr ""
|
||||
"Désactivé = Désactiver l'assistance au changement de voie.<br>1 mph = 1,2 km/"
|
||||
"h."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "RÉINITIALISER"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "Radar"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "Trajectoire arc-en-ciel comme Tesla"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "Réinitialiser"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "Réinitialiser les paramètres DP"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr ""
|
||||
"Réinitialiser les paramètres dragonpilot par défaut et redémarrer l'appareil."
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "Détection du bord de route (RED)"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
"Voir https://github.com/eFiniLan/openpilot-ext-radar-addon pour plus "
|
||||
"d'informations."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "Standard"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"Standard : Comportement d'origine.<br>MAIN+ : ACC MAIN activé = Affichage "
|
||||
"ACTIVÉ.<br>OP+ : OP activé = Affichage ACTIVÉ.<br>MAIN- : ACC MAIN activé = "
|
||||
"Affichage DÉSACTIVÉ<br>OP- : OP activé = Affichage DÉSACTIVÉ."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"Standard : Comportement d'origine.<br>Avertissement : Émet un son uniquement "
|
||||
"en cas d'avertissement.<br>Désactivé : N'émet aucun son."
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"Pour éviter la rémanence d'écran, masquer la vitesse, la vitesse MAX et les "
|
||||
"icônes de direction/DM lorsque la voiture bouge.<br>Désactivé = Comportement "
|
||||
"d'origine<br>1 km/h = 0,6 mph"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "Utiliser le buzzer pour les alertes sonores."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "Utiliser un radar externe"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "Utiliser le contrôle longitudinal d'origine"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "Avertissement"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "Pourquoi pas ?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "ou ouvrir le navigateur"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "scanner pour accéder"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " km/h"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " min"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " mph"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " sec"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " sec"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0 min = Immédiatement"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "DTSC automatically adjusts the vehicle's predicted speed based on "
|
||||
#~ "upcoming road curvature and grip conditions.<br>Originally from the "
|
||||
#~ "openpilot TACO branch."
|
||||
#~ msgstr ""
|
||||
#~ "DTSC ajuste automatiquement la vitesse prédite du véhicule en fonction de "
|
||||
#~ "la courbure de la route à venir et des conditions d'adhérence."
|
||||
#~ "<br>Provient initialement de la branche openpilot TACO."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
#~ msgstr "Contrôle dynamique de vitesse en virage (DTSC)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Enable TSS1 SnG Mod"
|
||||
#~ msgstr "Activer le mod TSS1 SnG"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "MQB A0 SnG Mod"
|
||||
#~ msgstr "Mod MQB A0 SnG"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "PQ Steering Patch"
|
||||
#~ msgstr "Correctif de direction PQ"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Use MICI (comma four) UI"
|
||||
#~ msgstr "Utiliser l'interface MICI (comma four)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - le hub système tout-en-un de dragonpilot pour vous."
|
||||
#~ "<br><br>Visitez http://<adresse_ip_appareil>:5088 pour y accéder."
|
||||
#~ "<br><br>Activez cette option pour utiliser la fonctionnalité HUD "
|
||||
#~ "(diffusion en direct)."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "dashy HUD"
|
||||
#~ msgstr "HUD dashy"
|
||||
@@ -1,660 +0,0 @@
|
||||
# Japanese translations for dragonpilot.
|
||||
# Copyright (C) 2025 dragonpilot
|
||||
# This file is distributed under the same license as the dragonpilot package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: dragonpilot\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:30+0800\n"
|
||||
"Last-Translator: dragonpilot\n"
|
||||
"Language-Team: Japanese\n"
|
||||
"Language: ja\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ 自動車線変更の遅延:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
"アダプティブコースティングモード (ACM) は、適切な場合にブレーキを減らし、より"
|
||||
"スムーズなコースティングを実現します。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "アダプティブ実験モード (AEM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr "運転状況に基づいて ACC とブレンドモード間で自動切り替え。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "全て"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr "右ハンドル車で右側通行規則に従うことを許可します。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "常時車線維持アシスト (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr "すべての DP 設定をデフォルトにリセットしてもよろしいですか?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "音声アラート"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "自動シャットダウン遅延"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "EPS ロックアウトを回避"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"システムが道路端を検出したときに車線変更アシストをブロックします。<br>注意:"
|
||||
"「死角に車両検出」警告が表示されます。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "ロガー起動遅延:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"デバイスが走行開始時にロガーと関連プロセスの起動を遅延させます。<br>運転開始"
|
||||
"時の記録を防ぎ、トリップ開始時の位置情報プライバシーを保護します。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "Comma Connect を無効化"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
"アップロードやサービスによる追跡を望まない場合、Comma Connect サービスを無効"
|
||||
"化します。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "先行車統計を表示"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "表示モード"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"先行車やレーダー追跡ポイントの統計を表示します。<br>先行車:先行車統計のみ"
|
||||
"<br>レーダー:レーダー追跡ポイント統計のみ<br>全て:先行車とレーダー統計<br>"
|
||||
"注意:レーダーオプションは特定の車種でのみ動作します。"
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "ドア自動ロック/解除"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "アダプティブコースティングモード (ACM) を有効化"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "ビープ音を有効化(警告)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "右ハンドルモードを有効化"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"ACC/クルーズが無効でも横方向制御を有効化、ACC Main または LKAS ボタンで切り替"
|
||||
"え。車両は走行中である必要があります。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
"時速 20 km 以上でドアを自動ロック、P レンジにシフトすると自動解除する "
|
||||
"openpilot を有効化します。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "HUD を非表示にする速度:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "車線変更アシスト有効速度:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "先行車"
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "MAIN+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "MAIN-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "オフ"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "オフ = 自動車線変更を無効化。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr "オフ = 車線変更アシストを無効化。<br>1 mph = 1.2 km/h。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "リセット"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "レーダー"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "レインボー走行経路(テスラ風)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "リセット"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "DP 設定をリセット"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr "dragonpilot 設定をデフォルトにリセットしてデバイスを再起動します。"
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "道路端検出 (RED)"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
"詳細は https://github.com/eFiniLan/openpilot-ext-radar-addon をご覧ください。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "標準"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"標準:純正動作。<br>MAIN+:ACC MAIN オン = ディスプレイ オン。<br>OP+:OP 有"
|
||||
"効 = ディスプレイ オン。<br>MAIN-:ACC MAIN オン = ディスプレイ オフ。"
|
||||
"<br>OP-:OP 有効 = ディスプレイ オフ。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"標準:純正動作。<br>警告:警告時のみ音を発します。<br>オフ:一切音を発しませ"
|
||||
"ん。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"画面の焼き付きを防ぐため、車両走行時に速度、最高速度、ステアリング/DM アイコ"
|
||||
"ンを非表示にします。<br>オフ = 純正動作<br>1 km/h = 0.6 mph"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "音声アラートにブザーを使用します。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "外部レーダーを使用"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "純正縦方向制御を使用"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "警告"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "なぜダメ?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "またはブラウザで開く"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "スキャンしてアクセス"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " km/h"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " 分"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " mph"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " 秒"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " 秒"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0 分 = 即時"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "DTSC automatically adjusts the vehicle's predicted speed based on "
|
||||
#~ "upcoming road curvature and grip conditions.<br>Originally from the "
|
||||
#~ "openpilot TACO branch."
|
||||
#~ msgstr ""
|
||||
#~ "DTSC は前方の道路カーブとグリップ状態に基づいて車両の予測速度を自動調整し"
|
||||
#~ "ます。<br>openpilot TACO ブランチ由来。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
#~ msgstr "動的ターン速度制御 (DTSC)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Enable TSS1 SnG Mod"
|
||||
#~ msgstr "TSS1 SnG 修正を有効化"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "MQB A0 SnG Mod"
|
||||
#~ msgstr "MQB A0 SnG 修正"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "PQ Steering Patch"
|
||||
#~ msgstr "PQ ステアリングパッチ"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Use MICI (comma four) UI"
|
||||
#~ msgstr "MICI (comma four) UI を使用"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - dragonpilot のオールインワンシステムハブ。<br><br>http://"
|
||||
#~ "<device_ip>:5088 にアクセスしてください。<br><br>HUD 機能(ライブストリー"
|
||||
#~ "ミング)を使用するには、これを有効にしてください。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "dashy HUD"
|
||||
#~ msgstr "dashy HUD"
|
||||
@@ -1,661 +0,0 @@
|
||||
# Korean translations for dragonpilot.
|
||||
# Copyright (C) 2025 dragonpilot
|
||||
# This file is distributed under the same license as the dragonpilot package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: dragonpilot\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:30+0800\n"
|
||||
"Last-Translator: dragonpilot\n"
|
||||
"Language-Team: Korean\n"
|
||||
"Language: ko\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ 자동 차선 변경 지연 시간:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
"적응형 관성 주행 모드(ACM)는 적절한 상황에서 제동을 줄여 부드러운 관성 주행"
|
||||
"을 가능하게 합니다."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "적응형 실험 모드 (AEM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr "주행 상황에 따라 ACC와 혼합 모드 간 자동 전환합니다."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "전체"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr "우측 운전석 차량에서 openpilot이 우측 통행 규칙을 따르도록 허용합니다."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "상시 차선 유지 보조 (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr "모든 DP 설정을 기본값으로 초기화하시겠습니까?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "소리 알림"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "자동 종료 대기 시간"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "EPS 잠금 방지"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"시스템이 도로 가장자리를 감지하면 차선 변경 보조를 차단합니다.<br>참고: '사각"
|
||||
"지대 차량 감지' 경고가 표시됩니다."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "로거 시작 지연 시간:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"기기가 도로 주행을 시작할 때 로거 및 관련 프로세스의 시작을 지연시킵니다.<br>"
|
||||
"이를 통해 주행 시작 시점의 위치가 기록되지 않아 개인정보를 보호합니다."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "Comma Connect 비활성화"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
"데이터 업로드 또는 서비스 추적을 원하지 않는 경우 Comma Connect 서비스를 비활"
|
||||
"성화하세요."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "선행 차량 통계 표시"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "디스플레이 모드"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"선행 차량 및/또는 레이더 추적 포인트의 통계를 표시합니다.<br>선행: 선행 차량 "
|
||||
"통계만<br>레이더: 레이더 추적 포인트 통계만<br>전체: 선행 차량 및 레이더 통계"
|
||||
"<br>참고: 레이더 옵션은 특정 차량 모델에서만 작동합니다."
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "도어 자동 잠금/해제"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "적응형 관성 주행 모드 (ACM) 활성화"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "부저음 활성화 (경고)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "우측 운전석 모드 활성화"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"ACC/크루즈가 비활성화되어 있어도 횡방향 제어를 활성화합니다. ACC Main 또는 "
|
||||
"LKAS 버튼으로 전환합니다. 차량이 움직이고 있어야 합니다."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
"openpilot이 시속 20km 이상에서 도어를 자동 잠금하고, P 기어로 변속 시 자동 해"
|
||||
"제하도록 활성화합니다."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "다음 속도 이상에서 HUD 숨기기:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "차선 변경 보조 활성화 속도:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "선행 차량"
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "MAIN+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "MAIN-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "끄기"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "끄기 = 자동 차선 변경 비활성화."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr "끄기 = 차선 변경 보조 비활성화.<br>1 mph = 1.2 km/h."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "초기화"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "레이더"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "무지개 주행 경로 (테슬라 스타일)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "초기화"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "DP 설정 초기화"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr "dragonpilot 설정을 기본값으로 초기화하고 기기를 재시작합니다."
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "도로 가장자리 감지 (RED)"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
"자세한 내용은 https://github.com/eFiniLan/openpilot-ext-radar-addon 을 참조하"
|
||||
"세요."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "표준"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"표준: 순정 동작.<br>MAIN+: ACC MAIN 켜짐 = 디스플레이 켜짐.<br>OP+: OP 활성"
|
||||
"화 = 디스플레이 켜짐.<br>MAIN-: ACC MAIN 켜짐 = 디스플레이 꺼짐.<br>OP-: OP "
|
||||
"활성화 = 디스플레이 꺼짐."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"표준: 순정 동작.<br>경고: 경고가 있을 때만 소리가 납니다.<br>끄기: 소리가 전"
|
||||
"혀 나지 않습니다."
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"화면 번인 방지를 위해 차량 주행 시 속도, 최고 속도 및 조향/DM 아이콘을 숨깁니"
|
||||
"다.<br>끄기 = 순정 동작<br>1 km/h = 0.6 mph"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "소리 알림에 부저를 사용합니다."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "외부 레이더 사용"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "순정 종방향 제어 사용"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "경고"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "당연하죠!"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "또는 브라우저를 열어서"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "스캔하여 접속"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " km/h"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " 분"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " mph"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " 초"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " 초"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0분 = 즉시"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "DTSC automatically adjusts the vehicle's predicted speed based on "
|
||||
#~ "upcoming road curvature and grip conditions.<br>Originally from the "
|
||||
#~ "openpilot TACO branch."
|
||||
#~ msgstr ""
|
||||
#~ "DTSC는 다가오는 도로 곡률 및 접지 조건에 따라 차량의 예상 속도를 자동으로 "
|
||||
#~ "조정합니다.<br>openpilot TACO 브랜치에서 유래했습니다."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
#~ msgstr "동적 회전 속도 제어 (DTSC)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Enable TSS1 SnG Mod"
|
||||
#~ msgstr "TSS1 정지 및 출발 모드 활성화"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "MQB A0 SnG Mod"
|
||||
#~ msgstr "MQB A0 정지 및 출발 모드"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "PQ Steering Patch"
|
||||
#~ msgstr "PQ 조향 패치"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Use MICI (comma four) UI"
|
||||
#~ msgstr "MICI (comma four) UI 사용"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - dragonpilot의 올인원 시스템 허브입니다.<br><br>http://"
|
||||
#~ "<device_ip>:5088 로 접속하세요.<br><br>HUD 기능(실시간 스트리밍)을 사용하"
|
||||
#~ "려면 활성화하세요."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "dashy HUD"
|
||||
#~ msgstr "dashy HUD"
|
||||
@@ -1,674 +0,0 @@
|
||||
# Portuguese (Brazil) translations for dragonpilot 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: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:21+0800\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"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ Mudança Automática de Faixa após:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
"O Modo de Desaceleração Adaptativa (ACM) reduz a frenagem para permitir uma "
|
||||
"desaceleração mais suave quando apropriado."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "Modo Experimental Adaptativo (AEM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr ""
|
||||
"Alternador de modo adaptativo entre ACC e Misto baseado no contexto de "
|
||||
"direção."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "Todos"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr ""
|
||||
"Permitir que o openpilot obedeça às convenções de tráfego à direita com o "
|
||||
"motorista no lado direito."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "Assistente de Manutenção de Faixa Permanente (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr ""
|
||||
"Tem certeza de que deseja redefinir TODAS AS CONFIGURAÇÕES DP para o padrão?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "Alerta Sonoro"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "Desligamento Automático Após"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "Evitar Bloqueio do EPS"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"Bloquear assistência de mudança de faixa quando o sistema detecta a borda da "
|
||||
"estrada.<br>NOTA: Isso mostrará o aviso 'Carro Detectado no Ponto Cego'."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "Atrasar Início do Loggerd por:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"Atrasa a inicialização do loggerd e seus processos relacionados quando o "
|
||||
"dispositivo entra em operação.<br>Isso impede que os momentos iniciais de "
|
||||
"uma viagem sejam gravados, protegendo a privacidade de localização no início "
|
||||
"da viagem."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "Desativar Comma Connect"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
"Desative o serviço Comma Connect se você não deseja fazer upload / ser "
|
||||
"rastreado pelo serviço."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "Exibir Estatísticas do Líder"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "Modo de Exibição"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"Exibir as estatísticas do carro à frente e/ou pontos de rastreamento do "
|
||||
"radar.<br>Líder: Apenas estatísticas do líder<br>Radar: Apenas estatísticas "
|
||||
"dos pontos de rastreamento do radar<br>Todos: Estatísticas de líder e "
|
||||
"radar<br>NOTA: A opção Radar funciona apenas em certos modelos de veículos."
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "Travamento/Destravamento Automático de Portas"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "Ativar Modo de Desaceleração Adaptativa (ACM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "Ativar Bip (Aviso)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "Ativar Modo de Direção à Direita"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"Ativar controle lateral mesmo quando ACC/cruise estiver desativado, usando o "
|
||||
"botão ACC Main ou LKAS para alternar. O veículo deve estar em movimento."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
"Permitir que o openpilot trave automaticamente as portas acima de 20 km/h e "
|
||||
"destrave automaticamente ao mudar para Park."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "Ocultar HUD Quando Mover Acima de:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "Assistência de Mudança de Faixa em:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "Líder"
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "MAIN+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "MAIN-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "Desligado"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "Desligado = Desativar Mudança Automática de Faixa."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr "Desligado = Desativar LCA.<br>1 mph = 1,2 km/h."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "REDEFINIR"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "Radar"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "Caminho de Condução Arco-íris como Tesla"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "Redefinir"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "Redefinir Configurações DP"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr ""
|
||||
"Redefinir as configurações do dragonpilot para o padrão e reiniciar o "
|
||||
"dispositivo."
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "Detecção de Borda da Estrada (RED)"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
"Veja https://github.com/eFiniLan/openpilot-ext-radar-addon para mais "
|
||||
"informações."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "Padrão"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"Padrão: Comportamento original.<br>MAIN+: ACC MAIN ligado = Display LIGADO."
|
||||
"<br>OP+: OP ativado = Display LIGADO.<br>MAIN-: ACC MAIN ligado = Display "
|
||||
"DESLIGADO<br>OP-: OP ativado = Display DESLIGADO."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"Padrão: Comportamento original.<br>Aviso: Emite som apenas quando há um "
|
||||
"aviso.<br>Desligado: Não emite nenhum som."
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"Para prevenir queima de tela, ocultar Velocidade, Velocidade MÁXIMA e Ícones "
|
||||
"de Direção/DM quando o carro se move.<br>Desligado = Comportamento "
|
||||
"Original<br>1 km/h = 0,6 mph"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "Usar buzzer para alertas sonoros."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "Usar Radar Externo"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "Usar Controle Longitudinal Original"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "Aviso"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "Por que não?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "ou abra o navegador"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "escaneie para acessar"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " km/h"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " min"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " mph"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " seg"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " seg"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0 min = Imediatamente"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "DTSC automatically adjusts the vehicle's predicted speed based on "
|
||||
#~ "upcoming road curvature and grip conditions.<br>Originally from the "
|
||||
#~ "openpilot TACO branch."
|
||||
#~ msgstr ""
|
||||
#~ "O DTSC ajusta automaticamente a velocidade prevista do veículo com base "
|
||||
#~ "na curvatura da estrada à frente e nas condições de aderência."
|
||||
#~ "<br>Originalmente do branch TACO do openpilot."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
#~ msgstr "Controle Dinâmico de Velocidade em Curvas (DTSC)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Enable TSS1 SnG Mod"
|
||||
#~ msgstr "Ativar Mod TSS1 SnG"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "MQB A0 SnG Mod"
|
||||
#~ msgstr "Mod MQB A0 SnG"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "PQ Steering Patch"
|
||||
#~ msgstr "Correção de Direção PQ"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Use MICI (comma four) UI"
|
||||
#~ msgstr "Usar Interface MICI (comma four)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - o hub do sistema tudo-em-um do dragonpilot para você."
|
||||
#~ "<br><br>Visite http://<device_ip>:5088 para acessar.<br><br>Ative isso "
|
||||
#~ "para usar o recurso HUD (transmissão ao vivo)."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "dashy HUD"
|
||||
#~ msgstr "HUD dashy"
|
||||
@@ -1,656 +0,0 @@
|
||||
# Thai translations for dragonpilot.
|
||||
# Copyright (C) 2025 dragonpilot
|
||||
# This file is distributed under the same license as the dragonpilot package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: dragonpilot\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:30+0800\n"
|
||||
"Last-Translator: dragonpilot\n"
|
||||
"Language-Team: Thai\n"
|
||||
"Language: th\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ เปลี่ยนเลนอัตโนมัติหลังจาก:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr "โหมดเลื่อนปรับตัว (ACM) ลดการเบรกเพื่อให้การเลื่อนราบรื่นขึ้นเมื่อเหมาะสม"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "โหมดทดลองปรับตัว (AEM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr "สลับโหมดอัตโนมัติระหว่าง ACC และ Blended ตามสถานการณ์การขับขี่"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "ทั้งหมด"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr "อนุญาตให้ openpilot ปฏิบัติตามกฎจราจรฝั่งขวาสำหรับรถพวงมาลัยขวา"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "ระบบช่วยรักษาเลนตลอดเวลา (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr "คุณแน่ใจหรือไม่ว่าต้องการรีเซ็ตการตั้งค่า DP ทั้งหมดเป็นค่าเริ่มต้น?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "การแจ้งเตือนด้วยเสียง"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "ปิดเครื่องอัตโนมัติหลังจาก"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "หลีกเลี่ยงการล็อค EPS"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"ปิดกันการช่วยเปลี่ยนเลนเมื่อระบบตรวจพบขอบถนน<br>หมายเหตุ: จะแสดงคำเตือน "
|
||||
"'ตรวจพบรถในจุดอับสายตา'"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "หน่วงเวลาการเริ่ม Loggerd:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"หน่วงเวลาการเริ่มต้น loggerd "
|
||||
"และกระบวนการที่เกี่ยวข้องเมื่ออุปกรณ์เริ่มใช้งานบนถนน<br>ช่วยป้องกันการบันทึกช่วงเวลาแรกของการขับขี่ "
|
||||
"เพื่อปกป้องความเป็นส่วนตัวของตำแหน่งที่เริ่มต้นการเดินทาง"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "ปิดใช้งาน Comma Connect"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr "ปิดใช้งานบริการ Comma Connect หากคุณไม่ต้องการอัปโหลดข้อมูล / ถูกติดตามโดยบริการนี้"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "แสดงสถิติรถคันหน้า"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "โหมดการแสดงผล"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"แสดงสถิติของรถคันหน้าและ/หรือจุดติดตามเรดาร์<br>รถคันหน้า: สถิติรถคันหน้าเท่านั้น<br>เรดาร์: "
|
||||
"สถิติจุดติดตามเรดาร์เท่านั้น<br>ทั้งหมด: สถิติรถคันหน้าและเรดาร์<br>หมายเหตุ: "
|
||||
"ตัวเลือกเรดาร์ใช้ได้เฉพาะบางรุ่นรถเท่านั้น"
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "ล็อค/ปลดล็อคประตูอัตโนมัติ"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "เปิดใช้งานโหมดเลื่อนปรับตัว (ACM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "เปิดใช้งานเสียงบี๊บ (เตือน)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "เปิดใช้งานโหมดพวงมาลัยขวา"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"เปิดใช้งานการควบคุมด้านข้างแม้ว่า ACC/ครูซจะปิดอยู่ ใช้ปุ่ม ACC Main หรือ LKAS เพื่อสลับ "
|
||||
"รถต้องกำลังเคลื่อนที่"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
"เปิดใช้งาน openpilot เพื่อล็อคประตูอัตโนมัติเมื่อความเร็วเกิน 20 กม./ชม. "
|
||||
"และปลดล็อคอัตโนมัติเมื่อเกียร์อยู่ที่ P"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "ซ่อน HUD เมื่อความเร็วเกิน:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "ช่วยเปลี่ยนเลนที่ความเร็ว:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "รถคันหน้า"
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "MAIN+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "MAIN-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "ปิด"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "ปิด = ปิดใช้งานการเปลี่ยนเลนอัตโนมัติ"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr "ปิด = ปิดใช้งานการช่วยเปลี่ยนเลน<br>1 ไมล์/ชม. = 1.2 กม./ชม."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "รีเซ็ต"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "เรดาร์"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "เส้นทางขับขี่สีรุ้งเหมือน Tesla"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "รีเซ็ต"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "รีเซ็ตการตั้งค่า DP"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr "รีเซ็ตการตั้งค่า dragonpilot เป็นค่าเริ่มต้นและรีสตาร์ทอุปกรณ์"
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "การตรวจจับขอบถนน (RED)"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr "ดูข้อมูลเพิ่มเติมที่ https://github.com/eFiniLan/openpilot-ext-radar-addon"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "มาตรฐาน"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"มาตรฐาน: พฤติกรรมแบบเดิม<br>MAIN+: ACC MAIN เปิด = จอแสดงผลเปิด<br>OP+: OP "
|
||||
"เปิดใช้งาน = จอแสดงผลเปิด<br>MAIN-: ACC MAIN เปิด = จอแสดงผลปิด<br>OP-: OP "
|
||||
"เปิดใช้งาน = จอแสดงผลปิด"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"มาตรฐาน: พฤติกรรมแบบเดิม<br>เตือน: ส่งเสียงเฉพาะเมื่อมีการเตือนเท่านั้น<br>ปิด: "
|
||||
"ไม่ส่งเสียงใดๆ เลย"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"เพื่อป้องกันหน้าจอไหม้ ซ่อนความเร็ว, ความเร็วสูงสุด และไอคอนพวงมาลัย/DM "
|
||||
"เมื่อรถเคลื่อนที่<br>ปิด = พฤติกรรมแบบเดิม<br>1 กม./ชม. = 0.6 ไมล์/ชม."
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "ใช้บัซเซอร์สำหรับการแจ้งเตือนด้วยเสียง"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "ใช้เรดาร์ภายนอก"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "ใช้การควบคุมแนวยาวแบบเดิม"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "เตือน"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "ทำไมไม่ล่ะ?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "หรือเปิดเบราว์เซอร์"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "สแกนเพื่อเข้าถึง"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " กม./ชม."
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " นาที"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " ไมล์/ชม."
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " วินาที"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " วินาที"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0 นาที = ทันที"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "DTSC automatically adjusts the vehicle's predicted speed based on "
|
||||
#~ "upcoming road curvature and grip conditions.<br>Originally from the "
|
||||
#~ "openpilot TACO branch."
|
||||
#~ msgstr ""
|
||||
#~ "DTSC "
|
||||
#~ "ปรับความเร็วที่คาดการณ์ของรถโดยอัตโนมัติตามความโค้งของถนนข้างหน้าและสภาพการยึดเกาะ<br>ต้นฉบับมาจาก "
|
||||
#~ "openpilot TACO branch"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
#~ msgstr "ควบคุมความเร็วเลี้ยวแบบไดนามิก (DTSC)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Enable TSS1 SnG Mod"
|
||||
#~ msgstr "เปิดใช้งานการปรับแต่ง TSS1 SnG"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "MQB A0 SnG Mod"
|
||||
#~ msgstr "การปรับแต่ง MQB A0 SnG"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "PQ Steering Patch"
|
||||
#~ msgstr "แพตช์พวงมาลัย PQ"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Use MICI (comma four) UI"
|
||||
#~ msgstr "ใช้ UI แบบ MICI (comma four)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - ศูนย์กลางระบบแบบครบวงจรของ dragonpilot สำหรับคุณ<br><br>เข้าถึงที่ http://"
|
||||
#~ "<device_ip>:5088<br><br>เปิดใช้งานเพื่อใช้ฟีเจอร์ HUD (ถ่ายทอดสด)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "dashy HUD"
|
||||
#~ msgstr "dashy HUD"
|
||||
@@ -1,667 +0,0 @@
|
||||
# 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: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:21+0800\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"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ Otomatik Şerit Değiştirme:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
"Uyarlanabilir Serbest Sürüş Modu (ACM), uygun olduğunda daha yumuşak serbest "
|
||||
"sürüş için frenlemeyi azaltır."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "Uyarlanabilir Deneysel Mod (AEM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr "Sürüş durumuna göre ACC ve Karışık mod arasında otomatik geçiş."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "Tümü"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr "Sağ direksiyon koltuğunda sağdan trafik kurallarına uymasını sağlar."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "Sürekli Şerit Takip Asistanı (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr "TÜM DP AYARLARINI varsayılana sıfırlamak istediğinizden emin misiniz?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "Sesli Uyarı"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "Otomatik Kapatma Süresi"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "EPS Kilitlenmesini Önle"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"Sistem yol kenarını algıladığında şerit değiştirme asistanını engeller."
|
||||
"<br>NOT: Bu 'Kör Noktada Araç Algılandı' uyarısını gösterecektir."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "Loggerd Başlatmayı Geciktir:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"Cihaz yola çıktığında loggerd ve ilgili işlemlerin başlatılmasını geciktirir."
|
||||
"<br>Bu, sürüşün ilk anlarının kaydedilmesini önleyerek yolculuğun başındaki "
|
||||
"konum gizliliğini korur."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "Comma Connect'i Devre Dışı Bırak"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
"Veri yüklemek veya hizmet tarafından izlenmek istemiyorsanız Comma connect "
|
||||
"hizmetini devre dışı bırakın."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "Öndeki Araç İstatistiklerini Göster"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "Görüntü Modu"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"Öndeki araç ve/veya radar takip noktalarının istatistiklerini gösterir."
|
||||
"<br>Öndeki: Sadece öndeki araç istatistikleri<br>Radar: Sadece radar takip "
|
||||
"noktası istatistikleri<br>Tümü: Öndeki araç ve Radar istatistikleri<br>NOT: "
|
||||
"Radar seçeneği sadece belirli araç modellerinde çalışır."
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "Otomatik Kapı Kilitleme/Açma"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "Uyarlanabilir Serbest Sürüş Modunu Etkinleştir (ACM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "Bip Sesini Etkinleştir (Uyarı)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "Sağ Direksiyon Modunu Etkinleştir"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"ACC/cruise devre dışı olsa bile yanal kontrolü etkinleştirir, ACC Ana veya "
|
||||
"LKAS düğmesi ile açılıp kapatılır. Araç hareket halinde olmalıdır."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
"20 km/s'nin üzerinde kapıları otomatik kilitler ve Park konumuna "
|
||||
"geçildiğinde otomatik açar."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "HUD'u Gizle Şu Hızın Üzerinde:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "Şerit Değiştirme Asistanı:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "Öndeki"
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "ANA+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "ANA-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "Kapalı"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "Kapalı = Otomatik Şerit Değiştirmeyi Devre Dışı Bırak."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr ""
|
||||
"Kapalı = Şerit Değiştirme Asistanını Devre Dışı Bırak.<br>1 mil/s = 1.2 km/s."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "SIFIRLA"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "Radar"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "Tesla Gibi Gökkuşağı Sürüş Yolu"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "Sıfırla"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "DP Ayarlarını Sıfırla"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr "Dragonpilot ayarlarını varsayılana sıfırla ve cihazı yeniden başlat."
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "Yol Kenarı Algılama (RED)"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
"Daha fazla bilgi için https://github.com/eFiniLan/openpilot-ext-radar-addon "
|
||||
"adresine bakın."
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "Std."
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"Std.: Standart davranış.<br>ANA+: ACC ANA açık = Ekran AÇIK.<br>OP+: OP "
|
||||
"etkin = Ekran AÇIK.<br>ANA-: ACC ANA açık = Ekran KAPALI<br>OP-: OP etkin = "
|
||||
"Ekran KAPALI."
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"Std.: Standart davranış.<br>Uyarı: Sadece uyarı olduğunda ses çıkarır."
|
||||
"<br>Kapalı: Hiç ses çıkarmaz."
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"Ekran yanmasını önlemek için, araç hareket halindeyken Hız, MAKS Hız ve "
|
||||
"Direksiyon/DM Simgelerini gizler.<br>Kapalı = Standart Davranış<br>1 km/s = "
|
||||
"0.6 mil/s"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "Sesli uyarılar için zil kullan."
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "Harici Radar Kullan"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "Standart Uzunlamasına Kontrolü Kullan"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "Uyarı"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "Neden olmasın?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "veya tarayıcıyı aç"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "erişmek için tara"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " km/s"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " dk"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " mil/s"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " sn"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " sn"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0 dk = Hemen"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "DTSC automatically adjusts the vehicle's predicted speed based on "
|
||||
#~ "upcoming road curvature and grip conditions.<br>Originally from the "
|
||||
#~ "openpilot TACO branch."
|
||||
#~ msgstr ""
|
||||
#~ "DTSC, yaklaşan yol virajı ve yol tutuş durumuna göre aracın öngörülen "
|
||||
#~ "hızını otomatik olarak ayarlar.<br>Orijinal olarak openpilot TACO "
|
||||
#~ "dalından."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
#~ msgstr "Dinamik Viraj Hız Kontrolü (DTSC)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Enable TSS1 SnG Mod"
|
||||
#~ msgstr "TSS1 SnG Modunu Etkinleştir"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "MQB A0 SnG Mod"
|
||||
#~ msgstr "MQB A0 SnG Modu"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "PQ Steering Patch"
|
||||
#~ msgstr "PQ Direksiyon Yaması"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Use MICI (comma four) UI"
|
||||
#~ msgstr "MICI (comma four) Arayüzünü Kullan"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - dragonpilot'un sizin için hepsi bir arada sistem merkezi."
|
||||
#~ "<br><br>Erişmek için http://<cihaz_ip>:5088 adresini ziyaret edin."
|
||||
#~ "<br><br>HUD özelliğini (canlı yayın) kullanmak için bunu etkinleştirin."
|
||||
|
||||
#, python-format
|
||||
#~ msgid "dashy HUD"
|
||||
#~ msgstr "dashy HUD"
|
||||
@@ -1,572 +0,0 @@
|
||||
# Ukrainian 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: 2026-06-22 13:57+0800\n"
|
||||
"PO-Revision-Date: 2025-12-19 21:35+0800\n"
|
||||
"Last-Translator: Automatically generated\n"
|
||||
"Language-Team: none\n"
|
||||
"Language: uk\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
|
||||
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr ""
|
||||
@@ -1,686 +0,0 @@
|
||||
# Simplified Chinese translations for dragonpilot.
|
||||
# Copyright (C) 2025 dragonpilot
|
||||
# This file is distributed under the same license as the dragonpilot package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: dragonpilot\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-06-09 12:19+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:30+0800\n"
|
||||
"Last-Translator: dragonpilot\n"
|
||||
"Language-Team: Chinese (Simplified)\n"
|
||||
"Language: zh-CHS\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ 自动变换车道延迟:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr "0 分钟 = 立即"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr "自适应滑行模式 (ACM) 在适当情况下减少刹车,实现更平顺的滑行。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "自适应实验模式 (AEM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr "自适应驾驶风格 (APM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr "根据驾驶情境自动在 ACC 和混合模式间切换。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "全部"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr "允许 openpilot 在右驾车辆上遵循右侧通行规则。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "持续车道保持辅助 (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr "确定要将所有 DP 设定重置为默认值吗?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "声音提示"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "自动关机延迟"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
"当车速低于 30 km/h 时,自动切换至“激进”模式;当车速高于 40 km/h 时,恢复您原"
|
||||
"先选择的模式。"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "避免 EPS 锁定"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"当系统侦测到道路边缘时阻止变换车道辅助。<br>注意:这将显示「侦测到盲点车辆」"
|
||||
"警告。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr "将遥测数据广播至 opview 应用程序 (Android 适用)。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "延迟启动记录程序:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"当设备上路时延迟启动记录程序及相关进程。<br>这可防止行程开始时的位置被记录,"
|
||||
"保护隐私。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "停用 Comma Connect"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr "如果您不希望上传数据或被服务追踪,请停用 Comma Connect 服务。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "显示前车统计"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "显示模式"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"显示前车和/或雷达追踪点的统计数据。<br>前车:仅显示前车统计<br>雷达:仅显示雷"
|
||||
"达追踪点统计<br>全部:显示前车和雷达统计<br>注意:雷达选项仅适用于特定车型。"
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "车门自动锁定/解锁"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "启用自适应滑行模式 (ACM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "启用蜂鸣器(警告)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "启用右驾模式"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"即使 ACC/巡航未启用也保持横向控制,使用 ACC Main 或 LKAS 按钮切换。车辆必须在"
|
||||
"行驶中。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr "启用 openpilot 在时速超过 20 公里时自动锁门,换至 P 档时自动解锁。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr "启用 opview"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
"微调车辆在车道内的位置。正值使车辆向左偏移,负值使车辆向右偏移。<br>建议从较"
|
||||
"小的数值(±5 厘米)开始,并依个人喜好进行调整。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "行驶超过此速度时隐藏 HUD:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "变换车道辅助启用速度:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "前车"
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "MAIN+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "MAIN-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "关闭"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "关闭 = 停用自动变换车道。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr "关闭 = 停用变换车道辅助。<br>1 英里/时 = 1.2 公里/时。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr "位置偏移"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "重置"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "雷达"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "彩虹行驶路径(类似特斯拉)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "重置"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "重置 DP 设定"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr "将 dragonpilot 设定重置为默认值并重新启动设备。"
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "道路边缘侦测 (RED)"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr "详情请参阅 https://github.com/eFiniLan/openpilot-ext-radar-addon。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "标准"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"标准:原厂行为。<br>MAIN+:ACC MAIN 开启 = 屏幕开启。<br>OP+:OP 启用 = 屏幕"
|
||||
"开启。<br>MAIN-:ACC MAIN 开启 = 屏幕关闭。<br>OP-:OP 启用 = 屏幕关闭。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"标准:原厂行为。<br>警告:仅在有警告时发出声音。<br>关闭:完全不发出声音。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"为防止屏幕烙印,在车辆行驶时隐藏速度、最高速度和转向/DM 图标。<br>关闭 = 原厂"
|
||||
"行为<br>1 公里/时 = 0.6 英里/时"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "使用蜂鸣器进行声音提示。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "使用外部雷达"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "使用原厂纵向控制"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "警告"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "有何不可?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr "厘米"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr "km/h"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr "分钟"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr "mph"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "或使用浏览器打开"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "扫描以访问"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr "秒"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " 公里/时"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " 分钟"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " 英里/时"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " 秒"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " 秒"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0 分钟 = 立即"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "DTSC automatically adjusts the vehicle's predicted speed based on "
|
||||
#~ "upcoming road curvature and grip conditions.<br>Originally from the "
|
||||
#~ "openpilot TACO branch."
|
||||
#~ msgstr ""
|
||||
#~ "DTSC 根据前方道路曲率和抓地力条件自动调整车辆预测速度。<br>源自 openpilot "
|
||||
#~ "TACO 分支。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Accel Slew Rate (DASR)"
|
||||
#~ msgstr "动态加速变化率 (DASR)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
#~ msgstr "动态转弯速度控制 (DTSC)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Enable TSS1 SnG Mod"
|
||||
#~ msgstr "启用 TSS1 走停修正"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "MQB A0 SnG Mod"
|
||||
#~ msgstr "MQB A0 走停修正"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Nidec: Use Stock Longitudinal Control"
|
||||
#~ msgstr "Nidec: 使用原厂纵向控制"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "PQ Steering Patch"
|
||||
#~ msgstr "PQ 转向修正"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "Speed-dependent acceleration smoothing. Allows faster accel changes at "
|
||||
#~ "low speeds for responsive city driving, smoother changes at highway "
|
||||
#~ "speeds for comfort."
|
||||
#~ msgstr ""
|
||||
#~ "根据速度动态调整加速平滑度。低速时允许更快的加速变化以适应城市驾驶,高速时"
|
||||
#~ "则更平顺以提升舒适性。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "Use Honda's factory ACC for gas/brake control instead of openpilot. "
|
||||
#~ "openpilot will only control steering. Requires reboot to take effect."
|
||||
#~ msgstr ""
|
||||
#~ "使用 Honda 原厂 ACC 进行油门与刹车控制,而非 openpilot。openpilot 将仅负责"
|
||||
#~ "控制转向。需重新启动才会生效。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Use MICI (comma four) UI"
|
||||
#~ msgstr "使用 MICI (comma four) 界面"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - dragonpilot 的控制台。<br><br>请访问 http://<device_ip>:5088 进"
|
||||
#~ "入。<br><br>启用此功能以使用 HUD 功能(即时串流)。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use Tesla HUD."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - dragonpilot 的控制台。<br><br>请访问 http://<device_ip>:5088 进"
|
||||
#~ "入。<br><br>启用此功能以使用 Tesla HUD。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "dashy HUD"
|
||||
#~ msgstr "dashy HUD"
|
||||
@@ -1,686 +0,0 @@
|
||||
# Traditional Chinese translations for dragonpilot.
|
||||
# Copyright (C) 2025 dragonpilot
|
||||
# This file is distributed under the same license as the dragonpilot package.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: dragonpilot\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2026-06-09 12:19+0800\n"
|
||||
"PO-Revision-Date: 2025-12-18 12:30+0800\n"
|
||||
"Last-Translator: dragonpilot\n"
|
||||
"Language-Team: Chinese (Traditional)\n"
|
||||
"Language: zh-CHT\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:23
|
||||
#, python-format
|
||||
msgid "+ Auto Lane Change after:"
|
||||
msgstr "+ 自動變換車道延遲:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:9
|
||||
#, python-format
|
||||
msgid "0 min = Immediately"
|
||||
msgstr "0 分鐘 = 立即"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive Coasting Mode (ACM) reduces braking to allow smoother coasting when "
|
||||
"appropriate."
|
||||
msgstr "自適應滑行模式 (ACM) 在適當情況下減少煞車,實現更平順的滑行。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Experimental Mode (AEM)"
|
||||
msgstr "自適應實驗模式 (AEM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:8
|
||||
#, python-format
|
||||
msgid "Adaptive Personality Mode (APM)"
|
||||
msgstr "自適駕駛風格 (APM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.aem.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Adaptive mode switcher between ACC and Blended based on driving context."
|
||||
msgstr "根據駕駛情境自動在 ACC 和混合模式間切換。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Aggressive"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "All"
|
||||
msgstr "全部"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Allow openpilot to obey right-hand traffic conventions on right driver seat."
|
||||
msgstr "允許 openpilot 在右駕車輛上遵循右側通行規則。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:50
|
||||
#, python-format
|
||||
msgid "Always-On Driver Monitoring"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:8
|
||||
#, python-format
|
||||
msgid "Always-on Lane Keeping Assist (ALKA)"
|
||||
msgstr "持續車道維持輔助 (ALKA)"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Are you sure you want to reset ALL DP SETTINGS to default?"
|
||||
msgstr "確定要將所有 DP 設定重置為預設值嗎?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:8
|
||||
#, python-format
|
||||
msgid "Audible Alert"
|
||||
msgstr "聲音提示"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:8
|
||||
#, python-format
|
||||
msgid "Auto Shutdown After"
|
||||
msgstr "自動關機延遲"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.apm.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Automatically switches personality to \"Aggressive\" below 30 km/h and "
|
||||
"restores your selected personality above 40 km/h."
|
||||
msgstr ""
|
||||
"當車速低於 30 km/h 時,自動切換至「積極」模式;當車速高於 40 km/h 時,恢復成"
|
||||
"您原先選擇的模式。"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:8
|
||||
#, python-format
|
||||
msgid "Avoid EPS Lockout"
|
||||
msgstr "避免 EPS 鎖定"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Block lane change assist when the system detects the road edge.<br>NOTE: "
|
||||
"This will show 'Car Detected in Blindspot' warning."
|
||||
msgstr ""
|
||||
"當系統偵測到道路邊緣時阻止變換車道輔助。<br>注意:這將顯示「偵測到盲點車輛」"
|
||||
"警告。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Broadcasts telemetry to the opview App (available on Android). Requires the "
|
||||
"companion App to be running on an external display."
|
||||
msgstr "將遙測數據廣播至 opview 應用程式 (Android 適用)。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:76
|
||||
#, python-format
|
||||
msgid "Clear SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:8
|
||||
#, python-format
|
||||
msgid "Delay Starting Loggerd for:"
|
||||
msgstr "延遲啟動記錄程式:"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Delays the startup of loggerd and its related processes when the device goes "
|
||||
"on-road.<br>This prevents the initial moments of a drive from being "
|
||||
"recorded, protecting location privacy at the start of a trip."
|
||||
msgstr ""
|
||||
"當設備上路時延遲啟動記錄程式及相關程序。<br>這可防止行程開始時的位置被記錄,"
|
||||
"保護隱私。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:8
|
||||
#, python-format
|
||||
msgid "Disable Comma Connect"
|
||||
msgstr "停用 Comma Connect"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.disable-connect.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Disable Comma connect service if you do not wish to upload / being tracked "
|
||||
"by the service."
|
||||
msgstr "如果您不希望上傳資料或被服務追蹤,請停用 Comma Connect 服務。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:74
|
||||
#, python-format
|
||||
msgid "Disable Logging"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:80
|
||||
#, python-format
|
||||
msgid "Disable Updates"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:38
|
||||
#, python-format
|
||||
msgid "Disengage on Accelerator Pedal"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:8
|
||||
#, python-format
|
||||
msgid "Display Lead Stats"
|
||||
msgstr "顯示前車統計"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:8
|
||||
#, python-format
|
||||
msgid "Display Mode"
|
||||
msgstr "顯示模式"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Display the statistics of lead car and/or radar tracking points.<br>Lead: "
|
||||
"Lead stats only<br>Radar: Radar tracking point stats only<br>All: Lead and "
|
||||
"Radar stats<br>NOTE: Radar option only works on certain vehicle models."
|
||||
msgstr ""
|
||||
"顯示前車和/或雷達追蹤點的統計資料。<br>前車:僅顯示前車統計<br>雷達:僅顯示雷"
|
||||
"達追蹤點統計<br>全部:顯示前車和雷達統計<br>注意:雷達選項僅適用於特定車型。"
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:8
|
||||
#, python-format
|
||||
msgid "Door Auto Lock/Unlock"
|
||||
msgstr "車門自動鎖定/解鎖"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:87
|
||||
#, python-format
|
||||
msgid "Driving Personality"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:29
|
||||
#, python-format
|
||||
msgid "Enable ADB"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.acm.py:8
|
||||
#, python-format
|
||||
msgid "Enable Adaptive Coasting Mode (ACM)"
|
||||
msgstr "啟用自適應滑行模式 (ACM)"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:19
|
||||
#, python-format
|
||||
msgid "Enable Beep (Warning)"
|
||||
msgstr "啟用蜂鳴器(警告)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:44
|
||||
#, python-format
|
||||
msgid "Enable Lane Departure Warnings"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable Right-Hand Drive Mode"
|
||||
msgstr "啟用右駕模式"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:35
|
||||
#, python-format
|
||||
msgid "Enable SSH"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on A0 Platform"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:8
|
||||
#, python-format
|
||||
msgid "Enable Stop-and-Go on TSS1"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:8
|
||||
#, python-format
|
||||
msgid "Enable dashy Visual"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.alka-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable lateral control even when ACC/cruise is disengaged, using ACC Main or "
|
||||
"LKAS button to toggle. Vehicle must be moving."
|
||||
msgstr ""
|
||||
"即使 ACC/巡航未啟用也保持橫向控制,使用 ACC Main 或 LKAS 按鈕切換。車輛必須在"
|
||||
"行駛中。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:27
|
||||
#, python-format
|
||||
msgid "Enable openpilot"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand.toyota.door-auto-lock-unlock.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Enable openpilot to auto-lock doors above 20 km/h and auto-unlock when "
|
||||
"shifting to Park."
|
||||
msgstr "啟用 openpilot 在時速超過 20 公里時自動鎖門,換至 P 檔時自動解鎖。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.opview.py:8
|
||||
#, python-format
|
||||
msgid "Enable opview"
|
||||
msgstr "啟用 opview"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:33
|
||||
#, python-format
|
||||
msgid "Experimental Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Fine-tune where the car drives within the lane. Positive values move the car "
|
||||
"left, negative values move right.<br>Recommended to start with small values "
|
||||
"(±5cm) and adjust based on preference."
|
||||
msgstr ""
|
||||
"微調車輛在車道內的位置。正值使車輛向左偏移,負值使車輛向右偏移。<br>建議從較"
|
||||
"小的數值(±5 公分)開始,並依個人喜好進行調整。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:64
|
||||
#, python-format
|
||||
msgid "GitHub Username (SSH Keys)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:8
|
||||
#, python-format
|
||||
msgid "Hide HUD When Moves above:"
|
||||
msgstr "行駛超過此速度時隱藏 HUD:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:40
|
||||
#, python-format
|
||||
msgid "Joystick Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:8
|
||||
#, python-format
|
||||
msgid "Lane Change Assist At:"
|
||||
msgstr "變換車道輔助啟用速度:"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:85
|
||||
#, python-format
|
||||
msgid "Last Errors"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Lead"
|
||||
msgstr "前車"
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the Honda Nidec ACC handle gas and brake instead of openpilot. Lateral "
|
||||
"control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Let the car's built-in ACC handle gas and brake instead of openpilot. "
|
||||
"Lateral control (steering) still runs through openpilot."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:45
|
||||
#, python-format
|
||||
msgid "Longitudinal Maneuver Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN+"
|
||||
msgstr "MAIN+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "MAIN-"
|
||||
msgstr "MAIN-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP+"
|
||||
msgstr "OP+"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#, python-format
|
||||
msgid "OP-"
|
||||
msgstr "OP-"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:15
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:15
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:15
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:30
|
||||
#, python-format
|
||||
msgid "Off"
|
||||
msgstr "關閉"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:24
|
||||
#, python-format
|
||||
msgid "Off = Disable Auto Lane Change."
|
||||
msgstr "關閉 = 停用自動變換車道。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:9
|
||||
#, python-format
|
||||
msgid "Off = Disable LCA.<br>1 mph = 1.2 km/h."
|
||||
msgstr "關閉 = 停用變換車道輔助。<br>1 英里/時 = 1.2 公里/時。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:8
|
||||
#, python-format
|
||||
msgid "Position Offset"
|
||||
msgstr "位置偏移"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:60
|
||||
#, python-format
|
||||
msgid "RESET"
|
||||
msgstr "重置"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.lead-stats.py:10
|
||||
#, python-format
|
||||
msgid "Radar"
|
||||
msgstr "雷達"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:8
|
||||
#, python-format
|
||||
msgid "Rainbow Driving Path like Tesla"
|
||||
msgstr "彩虹行駛路徑(類似特斯拉)"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:56
|
||||
#, python-format
|
||||
msgid "Record and Upload Driver Camera"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:62
|
||||
#, python-format
|
||||
msgid "Record and Upload Microphone Audio"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Relaxed"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:239
|
||||
#, python-format
|
||||
msgid "Reset"
|
||||
msgstr "重置"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:59
|
||||
#, python-format
|
||||
msgid "Reset DP Settings"
|
||||
msgstr "重置 DP 設定"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/layouts/settings/dragonpilot.py:61
|
||||
#, python-format
|
||||
msgid "Reset dragonpilot settings to default and restart the device."
|
||||
msgstr "將 dragonpilot 設定重置為預設值並重新啟動設備。"
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-tss1-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on Toyota Safety Sense 1.0 vehicles, allowing "
|
||||
"openpilot to resume from a full stop without driver intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-vag-a0-sng.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Restores stop-and-go behavior on VAG A0 platform vehicles (Polo, Fabia, "
|
||||
"Ibiza, etc.), allowing openpilot to resume from a full stop without driver "
|
||||
"intervention."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.road-edge-detection.py:8
|
||||
#, python-format
|
||||
msgid "Road Edge Detection (RED)"
|
||||
msgstr "道路邊緣偵測 (RED)"
|
||||
|
||||
#: dragonpilot/settings/brand-vag-avoid-eps-lockout.py:9
|
||||
#, python-format
|
||||
msgid "Scale steering torque down at low speeds to avoid EPS lockout."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"See https://github.com/eFiniLan/openpilot-ext-radar-addon for more "
|
||||
"information."
|
||||
msgstr "詳情請參閱 https://github.com/eFiniLan/openpilot-ext-radar-addon。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:89
|
||||
#, python-format
|
||||
msgid "Standard"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:10
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Std."
|
||||
msgstr "標準"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.display-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behavior.<br>MAIN+: ACC MAIN on = Display ON.<br>OP+: OP enabled "
|
||||
"= Display ON.<br>MAIN-: ACC MAIN on = Display OFF<br>OP-: OP enabled = "
|
||||
"Display OFF."
|
||||
msgstr ""
|
||||
"標準:原廠行為。<br>MAIN+:ACC MAIN 開啟 = 螢幕開啟。<br>OP+:OP 啟用 = 螢幕"
|
||||
"開啟。<br>MAIN-:ACC MAIN 開啟 = 螢幕關閉。<br>OP-:OP 啟用 = 螢幕關閉。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"Std.: Stock behaviour.<br>Warning: Only emits sound when there is a warning."
|
||||
"<br>Off: Does not emit any sound at all."
|
||||
msgstr ""
|
||||
"標準:原廠行為。<br>警告:僅在有警告時發出聲音。<br>關閉:完全不發出聲音。"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:71
|
||||
#, python-format
|
||||
msgid "Stored SSH Keys"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"To prevent screen burn-in, hide Speed, MAX Speed, and Steering/DM Icons when "
|
||||
"the car moves.<br>Off = Stock Behavior<br>1 km/h = 0.6 mph"
|
||||
msgstr ""
|
||||
"為防止螢幕烙印,在車輛行駛時隱藏速度、最高速度和轉向/DM 圖示。<br>關閉 = 原廠"
|
||||
"行為<br>1 公里/時 = 0.6 英里/時"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:56
|
||||
#, python-format
|
||||
msgid "UI Debug Mode"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.o3-v2.py:20
|
||||
#, python-format
|
||||
msgid "Use Buzzer for audiable alerts."
|
||||
msgstr "使用蜂鳴器進行聲音提示。"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lon.ext-radar.py:8
|
||||
#, python-format
|
||||
msgid "Use External Radar"
|
||||
msgstr "使用外部雷達"
|
||||
|
||||
#: dragonpilot/settings/openpilot.toggles.py:68
|
||||
#, python-format
|
||||
msgid "Use Metric System"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-honda-nidec-stock-long.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal (Nidec)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/brand-toyota-stock-lon.py:8
|
||||
#, python-format
|
||||
msgid "Use Stock Longitudinal Control"
|
||||
msgstr "使用原廠縱向控制"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.alert-mode.py:10
|
||||
#, python-format
|
||||
msgid "Warning"
|
||||
msgstr "警告"
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.rainbow-path.py:9
|
||||
#, python-format
|
||||
msgid "Why not?"
|
||||
msgstr "有何不可?"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lat-offset.py:14
|
||||
#, python-format
|
||||
msgid "cm"
|
||||
msgstr "公分"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.dashy-v2.py:9
|
||||
#, python-format
|
||||
msgid ""
|
||||
"dashy - dragonpilot's all-in-one system hub.<br><br>Visit http://<"
|
||||
"device_ip>:5088 to access.<br><br>Enable this to use Tesla Visual/HUD."
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/settings/min-feat.ui.hide-hud.py:14
|
||||
#, python-format
|
||||
msgid "km/h"
|
||||
msgstr "km/h"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.auto-shutdown.py:14
|
||||
#, python-format
|
||||
msgid "min"
|
||||
msgstr "分鐘"
|
||||
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:14
|
||||
#, python-format
|
||||
msgid "mph"
|
||||
msgstr "mph"
|
||||
|
||||
#: dragonpilot/settings/openpilot.developer.py:50
|
||||
#, python-format
|
||||
msgid "openpilot Longitudinal Control (Alpha)"
|
||||
msgstr ""
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:18
|
||||
#, python-format
|
||||
msgid "or open browser"
|
||||
msgstr "或使用瀏覽器開啟"
|
||||
|
||||
#: dragonpilot/selfdrive/ui/mici/layouts/dashy_qrcode.py:14
|
||||
#, python-format
|
||||
msgid "scan to access"
|
||||
msgstr "掃描以存取"
|
||||
|
||||
#: dragonpilot/settings/min-feat.dev.delay-loggerd.py:14
|
||||
#: dragonpilot/settings/min-feat.lat.lca.py:29
|
||||
#, python-format
|
||||
msgid "sec"
|
||||
msgstr "秒"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " km/h"
|
||||
#~ msgstr " 公里/時"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mins"
|
||||
#~ msgstr " 分鐘"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " mph"
|
||||
#~ msgstr " 英里/時"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " sec"
|
||||
#~ msgstr " 秒"
|
||||
|
||||
#, python-format
|
||||
#~ msgid " secs"
|
||||
#~ msgstr " 秒"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "0 mins = Immediately"
|
||||
#~ msgstr "0 分鐘 = 立即"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "DTSC automatically adjusts the vehicle's predicted speed based on "
|
||||
#~ "upcoming road curvature and grip conditions.<br>Originally from the "
|
||||
#~ "openpilot TACO branch."
|
||||
#~ msgstr ""
|
||||
#~ "DTSC 根據前方道路曲率和抓地力條件自動調整車輛預測速度。<br>源自 openpilot "
|
||||
#~ "TACO 分支。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Accel Slew Rate (DASR)"
|
||||
#~ msgstr "動態加速變化率 (DASR)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Dynamic Turn Speed Control (DTSC)"
|
||||
#~ msgstr "動態轉彎速度控制 (DTSC)"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Enable TSS1 SnG Mod"
|
||||
#~ msgstr "啟用 TSS1 走停修正"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "MQB A0 SnG Mod"
|
||||
#~ msgstr "MQB A0 走停修正"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Nidec: Use Stock Longitudinal Control"
|
||||
#~ msgstr "Nidec: 使用原廠縱向控制"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "PQ Steering Patch"
|
||||
#~ msgstr "PQ 轉向修正"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "Speed-dependent acceleration smoothing. Allows faster accel changes at "
|
||||
#~ "low speeds for responsive city driving, smoother changes at highway "
|
||||
#~ "speeds for comfort."
|
||||
#~ msgstr ""
|
||||
#~ "根據速度動態調整加速平滑度。低速時允許更快的加速變化以適應城市駕駛,高速時"
|
||||
#~ "則更平順以提升舒適性。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "Use Honda's factory ACC for gas/brake control instead of openpilot. "
|
||||
#~ "openpilot will only control steering. Requires reboot to take effect."
|
||||
#~ msgstr ""
|
||||
#~ "使用 Honda 原廠 ACC 進行油門與煞車控制,而非 openpilot。openpilot 將僅負責"
|
||||
#~ "控制轉向。需重新啟動才會生效。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Use MICI (comma four) UI"
|
||||
#~ msgstr "使用 MICI (comma four) 介面"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use HUD feature (live "
|
||||
#~ "streaming)."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - dragonpilot 的控制中心。<br><br>請訪問 http://<device_ip>:5088 進"
|
||||
#~ "入。<br><br>啟用此功能以使用 HUD 功能(即時串流)。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid ""
|
||||
#~ "dashy - dragonpilot's all-in-one system hub for you.<br><br>Visit http://"
|
||||
#~ "<device_ip>:5088 to access.<br><br>Enable this to use Tesla HUD."
|
||||
#~ msgstr ""
|
||||
#~ "dashy - dragonpilot 的控制中心。<br><br>請訪問 http://<device_ip>:5088 進"
|
||||
#~ "入。<br><br>啟用此功能以使用 Tesla HUD。"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "dashy HUD"
|
||||
#~ msgstr "dashy HUD"
|
||||
@@ -6,6 +6,7 @@ from openpilot.system.hardware import HARDWARE
|
||||
|
||||
# raise fan setpoint on tici/tizi to reduce noise
|
||||
# after raising LMH threshold in AGNOS 18.1 to prevent CPU throttling
|
||||
# (evaluates to 0 on mici, i.e. no bump)
|
||||
OFFSET = 0 if HARDWARE.get_device_type() == "mici" else 5
|
||||
|
||||
|
||||
@@ -13,6 +14,9 @@ class FanController:
|
||||
def __init__(self, rate: int) -> None:
|
||||
self.last_ignition = False
|
||||
self.controller = PIDController(k_p=0, k_i=4e-3, rate=rate)
|
||||
# dp: mici keeps the upstream 0.11.1 response; the older comma three / three X
|
||||
# run hotter with the +5C bump, so they use the classic pre-0.11.1 response.
|
||||
self._mici = HARDWARE.get_device_type() == "mici"
|
||||
|
||||
def update(self, cur_temp: float, ignition: bool) -> int:
|
||||
self.controller.pos_limit = 100 if ignition else 30
|
||||
@@ -22,7 +26,15 @@ class FanController:
|
||||
self.controller.reset()
|
||||
self.last_ignition = ignition
|
||||
|
||||
if self._mici:
|
||||
# upstream 0.11.1 (OFFSET == 0 on mici)
|
||||
return int(self.controller.update(
|
||||
error=(cur_temp - (75 + OFFSET)), # temperature setpoint in C
|
||||
feedforward=np.interp(cur_temp, [60.0 + OFFSET, 100.0 + OFFSET], [0, 100])
|
||||
))
|
||||
|
||||
# classic pre-0.11.1 (comma three / three X)
|
||||
return int(self.controller.update(
|
||||
error=(cur_temp - (75 + OFFSET)), # temperature setpoint in C
|
||||
feedforward=np.interp(cur_temp, [60.0 + OFFSET, 100.0 + OFFSET], [0, 100])
|
||||
error=(cur_temp - 75), # temperature setpoint in C
|
||||
feedforward=np.interp(cur_temp, [60.0, 100.0], [0, 100])
|
||||
))
|
||||
|
||||
@@ -83,7 +83,7 @@ def set_consistent_flag(consistent: bool) -> None:
|
||||
|
||||
def parse_release_notes(basedir: str) -> bytes:
|
||||
try:
|
||||
with open(os.path.join(basedir, "CHANGELOGS.md"), "rb") as f:
|
||||
with open(os.path.join(basedir, "RELEASES.md"), "rb") as f:
|
||||
r = f.read().split(b'\n\n', 1)[0] # Slice latest release notes
|
||||
try:
|
||||
return bytes(parse_markdown(r.decode("utf-8")), encoding="utf-8")
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ def get_version(path: str = BASEDIR) -> str:
|
||||
|
||||
|
||||
def get_release_notes(path: str = BASEDIR) -> str:
|
||||
with open(os.path.join(path, "CHANGELOGS.md")) as f:
|
||||
with open(os.path.join(path, "RELEASES.md")) as f:
|
||||
return f.read().split('\n\n', 1)[0]
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user