Update model translations

This commit is contained in:
qananasikq
2026-07-01 14:35:49 +03:00
commit 3904cd003e
53 changed files with 7629 additions and 0 deletions

View File

@@ -0,0 +1,326 @@
"""Korean -> English translation tables for EnCar (partner-provided basis).
Источник переводов от партнёра. Этот файл — эталон: бренды и модели берём
отсюда в первую очередь. Держим секционные словари плюс один плоский для
простых поисков.
"""
from __future__ import annotations
ENCAR_KO_EN_TABLES: dict[str, dict[str, str]] = {
"makers": {
"포르쉐": "Porsche",
"메르세데스-벤츠": "Mercedes-Benz",
"메르세데스 벤츠": "Mercedes-Benz",
"벤츠": "Mercedes-Benz",
"메르세데스-AMG": "Mercedes-AMG",
"메르세데스 AMG": "Mercedes-AMG",
"AMG": "AMG",
"BMW": "BMW",
"아우디": "Audi",
"폭스바겐": "Volkswagen",
"렉서스": "Lexus",
"토요타": "Toyota",
"닛산": "Nissan",
"인피니티": "Infiniti",
"혼다": "Honda",
"마쯔다": "Mazda",
"스바루": "Subaru",
"미쓰비시": "Mitsubishi",
"랜드로버": "Land Rover",
"재규어": "Jaguar",
"지프": "Jeep",
"볼보": "Volvo",
"푸조": "Peugeot",
"르노": "Renault",
"미니": "MINI",
"로터스": "Lotus",
"벤틀리": "Bentley",
"롤스로이스": "Rolls-Royce",
"람보르기니": "Lamborghini",
"페라리": "Ferrari",
"맥라렌": "McLaren",
"애스턴마틴": "Aston Martin",
"애스톤마틴": "Aston Martin",
"마세라티": "Maserati",
"코닉세그": "Koenigsegg",
"파가니": "Pagani",
"부가티": "Bugatti",
"캐딜락": "Cadillac",
"쉐보레": "Chevrolet",
"포드": "Ford",
"링컨": "Lincoln",
"크라이슬러": "Chrysler",
"닷지": "Dodge",
"": "Ram",
"테슬라": "Tesla",
"제네시스": "Genesis",
"현대": "Hyundai",
"기아": "Kia",
"KG모빌리티": "KG Mobility",
"쌍용": "SsangYong",
"알파로메오": "Alfa Romeo",
"피아트": "Fiat",
"시트로엥": "Citroen",
"스마트": "Smart",
"폴스타": "Polestar",
"리비안": "Rivian",
"루시드": "Lucid",
"BYD": "BYD",
"지리": "Geely",
"홍치": "Hongqi",
"이스즈": "Isuzu",
},
"models": {
"718 박스터": "718 Boxster",
"718 카이맨": "718 Cayman",
"911": "911",
"911 카브리올레": "911 Cabriolet",
"카이엔": "Cayenne",
"카이엔 쿠페": "Cayenne Coupe",
"파나메라": "Panamera",
"파나메라 스포츠 투리스모": "Panamera Sport Turismo",
"마칸": "Macan",
"타이칸": "Taycan",
"타이칸 크로스 투리스모": "Taycan Cross Turismo",
"918 스파이더": "918 Spyder",
"카레라 GT": "Carrera GT",
"718 스파이더": "718 Spyder",
"박스터": "Boxster",
"카이맨": "Cayman",
"4.0 스파이더": "4.0 Spyder",
"C 클래스": "C-Class",
"E 클래스": "E-Class",
"S 클래스": "S-Class",
"A 클래스": "A-Class",
"B 클래스": "B-Class",
"CLA": "CLA",
"CLS": "CLS",
"SL": "SL",
"SLK": "SLK",
"G 클래스": "G-Class",
"GLA": "GLA",
"GLB": "GLB",
"GLC": "GLC",
"GLE": "GLE",
"GLS": "GLS",
"AMG GT": "AMG GT",
"AMG GT 4도어 쿠페": "AMG GT 4-Door Coupe",
"V 클래스": "V-Class",
"1 시리즈": "1 Series",
"2 시리즈": "2 Series",
"3 시리즈": "3 Series",
"4 시리즈": "4 Series",
"5 시리즈": "5 Series",
"6 시리즈": "6 Series",
"7 시리즈": "7 Series",
"8 시리즈": "8 Series",
"M2": "M2",
"M3": "M3",
"M4": "M4",
"M5": "M5",
"M8": "M8",
"X1": "X1",
"X2": "X2",
"X3": "X3",
"X4": "X4",
"X5": "X5",
"X6": "X6",
"X7": "X7",
"Z4": "Z4",
"A3": "A3",
"A4": "A4",
"A5": "A5",
"A6": "A6",
"A7": "A7",
"A8": "A8",
"Q3": "Q3",
"Q5": "Q5",
"Q7": "Q7",
"Q8": "Q8",
"R8": "R8",
"TT": "TT",
"고스트": "Ghost",
"팬텀": "Phantom",
"레이스": "Wraith",
"": "Dawn",
"컬리넌": "Cullinan",
"스펙터": "Spectre",
"벤테이가": "Bentayga",
"컨티넨탈 GT": "Continental GT",
"플라잉스퍼": "Flying Spur",
"우라칸": "Huracan",
"아벤타도르": "Aventador",
"우루스": "Urus",
"레부엘토": "Revuelto",
"로마": "Roma",
"포르토피노": "Portofino",
"SF90 스트라달레": "SF90 Stradale",
"F8 트리뷰토": "F8 Tributo",
"콰트로포르테": "Quattroporte",
"기블리": "Ghibli",
"르반떼": "Levante",
"그란투리스모": "GranTurismo",
"반퀴시": "Vanquish",
"밴티지": "Vantage",
"DB11": "DB11",
"DB12": "DB12",
"DBS": "DBS",
},
"body_types": {
"세단": "Sedan",
"쿠페": "Coupe",
"컨버터블": "Convertible",
"카브리올레": "Cabriolet",
"오픈카": "Open Top",
"해치백": "Hatchback",
"왜건": "Wagon",
"스테이션왜건": "Station Wagon",
"SUV": "SUV",
"크로스오버": "Crossover",
"픽업트럭": "Pickup Truck",
"": "Van",
"미니밴": "Minivan",
"트럭": "Truck",
"쿠페형 SUV": "Coupe SUV",
"기타": "Other",
},
"fuel_types": {
"가솔린": "Gasoline",
"디젤": "Diesel",
"경유": "Diesel",
"하이브리드": "Hybrid",
"가솔린 하이브리드": "Gasoline Hybrid",
"플러그인 하이브리드": "Plug-in Hybrid",
"전기": "Electric",
"전기차": "Electric",
"수소": "Hydrogen",
"LPG": "LPG",
"LNG": "LNG",
"가솔린+전기": "Gasoline + Electric",
"가솔린 + 전기": "Gasoline + Electric",
},
"transmissions": {
"수동": "Manual",
"오토": "Automatic",
"자동": "Automatic",
"자동변속": "Automatic",
"세미오토": "Semi-automatic",
"CVT": "CVT",
"듀얼클러치": "Dual-clutch",
},
"sell_types": {
"일반": "General",
"리스": "Lease",
"렌트": "Rent",
"할부": "Installment",
},
"lease_types": {
"운용리스": "Operating Lease",
"금융리스": "Financial Lease",
},
"regions": {
"서울": "Seoul",
"부산": "Busan",
"인천": "Incheon",
"대구": "Daegu",
"대전": "Daejeon",
"광주": "Gwangju",
"울산": "Ulsan",
"세종": "Sejong",
"경기": "Gyeonggi",
"강원": "Gangwon",
"충북": "Chungbuk",
"충남": "Chungnam",
"전북": "Jeonbuk",
"전남": "Jeonnam",
"경북": "Gyeongbuk",
"경남": "Gyeongnam",
"제주": "Jeju",
},
"dealer_companies": {
"(주)기억": "Gieok Co., Ltd.",
"(주)네바퀴": "Four Wheels Co., Ltd.",
"(주)에이스타모터스": "A-Star Motors Co., Ltd.",
"(주)우진 오토모빌": "Woojin Automobile Co., Ltd.",
"(주)지온컴퍼니": "Zion Company Co., Ltd.",
"(주)플로시모터스": "Flossy Motors Co., Ltd.",
"㈜오토핸즈": "Auto Hands Co., Ltd.",
"GD카": "GD Car",
"MK모터스": "MK Motors",
"꿈차": "Dream Car",
"마이카4": "My Car 4",
"블루오토": "Blue Auto",
"세영모빌리티(주)": "Seyoung Mobility Co., Ltd.",
"스마일자동차": "Smile Motors",
"오토링크": "Auto Link",
"오토핸즈": "Auto Hands",
"우리들모터스": "Woorideul Motors",
"주식회사 모터바겐": "Motorwagen Co., Ltd.",
"주식회사 아이오토스": "iAutos Co., Ltd.",
"주식회사이들컴퍼니": "Ideul Company Co., Ltd.",
"카메이트": "Car Mate",
"카톡모터스": "Katok Motors",
"카피디": "Car PD",
"포르쉐 인증 중고차 센터 성수": "Porsche Certified Used Car Center Seongsu",
"포르쉐인증중고차센터성수": "Porsche Certified Used Car Center Seongsu",
},
"dealer_names": {
"고준용": "Go Jun-yong",
"공민중": "Gong Min-jung",
"김경진": "Kim Gyeong-jin",
"김명진": "Kim Myeong-jin",
"김민수": "Kim Min-su",
"김성언": "Kim Seong-eon",
"김성진": "Kim Seong-jin",
"김영균": "Kim Yeong-gyun",
"김완섭": "Kim Wan-seop",
"김현진": "Kim Hyeon-jin",
"김형진": "Kim Hyeong-jin",
"김호영": "Kim Ho-yeong",
"문명기": "Moon Myeong-gi",
"박원석": "Park Won-seok",
"박재현": "Park Jae-hyeon",
"방지윤": "Bang Ji-yun",
"송슬기": "Song Seul-gi",
"신영철": "Shin Yeong-cheol",
"신호진": "Shin Ho-jin",
"양시언": "Yang Si-eon",
"양태규": "Yang Tae-gyu",
"윤지완": "Yoon Ji-wan",
"이경민": "Lee Gyeong-min",
"이재욱": "Lee Jae-uk",
"임종현": "Lim Jong-hyeon",
"임형욱": "Lim Hyeong-uk",
"전태준": "Jeon Tae-jun",
"정상필": "Jeong Sang-pil",
"조경식": "Jo Gyeong-sik",
"조승재": "Jo Seung-jae",
"조환성": "Jo Hwan-seong",
"차상훈": "Cha Sang-hun",
"최경욱": "Choi Gyeong-uk",
"하상열": "Ha Sang-yeol",
"허지훈": "Heo Ji-hun",
},
}
def _build_flat_map() -> dict[str, str]:
result: dict[str, str] = {}
for section in ENCAR_KO_EN_TABLES.values():
result.update(section)
return result
ENCAR_KO_EN_TRANSLATIONS: dict[str, str] = _build_flat_map()
def translate_encar_ko_to_en(value: str, section: str | None = None) -> str:
"""Перевод корейского термина Encar на английский.
Если задан `section`, используется только словарь этой секции. Иначе —
плоский объединённый словарь.
"""
if section is not None:
return ENCAR_KO_EN_TABLES.get(section, {}).get(value, value)
return ENCAR_KO_EN_TRANSLATIONS.get(value, value)