feat(i18n): add English source + 8-language translations for 193 UI strings
Adds the i18n source for 193 previously-hardcoded UI strings (the
security / PIN / lock flow, first-run seed-backup wizard, witness-rebuild
shutdown dialog, and balance / mining / explorer labels) so they can be
localized. The TR() call-site wrapping rides in the accompanying UI commit.
- 193 keys added to loadBuiltinEnglish() (the English source of truth),
including one pre-existing missing key (copied_to_clipboard).
- Additive res/lang/{de,es,fr,ja,ko,pt,ru,zh}.json (+193 each); every
translation's printf format-signature was validated against English
(0 mismatches) so the runtime validator accepts them.
- Rebuilt res/fonts/NotoSansCJK-Subset.ttf to cover ~30 new Han/Hangul
glyphs introduced by the zh/ja/ko translations (tofu-free).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
193
res/lang/ko.json
193
res/lang/ko.json
@@ -60,6 +60,80 @@
|
||||
"amount_label": "금액:",
|
||||
"animate_avatars": "아바타 애니메이션",
|
||||
"appearance": "외관",
|
||||
"appx_back": "뒤로",
|
||||
"appx_back_up_seed_phrase_title": "시드 문구 백업",
|
||||
"appx_birthday_block_height": "생성 시점(블록 높이): %llu — 이것도 함께 백업하세요.",
|
||||
"appx_blockchain_data_deleted": "블록체인 데이터를 삭제했습니다(%d개 항목). 네트워크에서 다시 동기화하기 위해 데몬을 재시작합니다.",
|
||||
"appx_blockchain_maintenance_in_progress": "블록체인 유지 관리 작업이 이미 진행 중입니다.",
|
||||
"appx_blockchain_rescan_complete": "블록체인 다시 스캔 완료",
|
||||
"appx_bootstrap_complete_reconciling": "부트스트랩 완료 — 새 체인 데이터와 지갑을 대조하는 중입니다.",
|
||||
"appx_cancel": "취소",
|
||||
"appx_cleaning_up": "정리하는 중...",
|
||||
"appx_confirm_your_backup": "백업 확인",
|
||||
"appx_copied_clipboard_autoclears": "복사됨 — 클립보드가 45초 후 자동으로 지워집니다",
|
||||
"appx_copy": "복사",
|
||||
"appx_could_not_start_restore": "복구를 시작할 수 없습니다",
|
||||
"appx_create_failed_prefix": "생성 실패: ",
|
||||
"appx_creating_your_wallet": "지갑을 생성하는 중…",
|
||||
"appx_daemon_error": "데몬 오류",
|
||||
"appx_daemon_reinstall_in_progress": "데몬 재설치가 이미 진행 중입니다.",
|
||||
"appx_disconnecting": "연결 해제 중...",
|
||||
"appx_done": "완료",
|
||||
"appx_dragonxd_output": "dragonxd 출력",
|
||||
"appx_encrypting_wallet": "지갑 암호화 중...",
|
||||
"appx_fullnode_lifecycle_unavailable_lite": "풀노드 수명 주기 작업은 라이트 빌드에서 사용할 수 없습니다",
|
||||
"appx_installing_bundled_daemon": "번들 데몬을 설치하는 중 — 노드가 중지, 업데이트 후 다시 시작됩니다...",
|
||||
"appx_invalid_payment_uri_prefix": "잘못된 결제 URI: ",
|
||||
"appx_ive_written_it_down": "적어 두었습니다",
|
||||
"appx_keep_node_running_and_quit": "노드 유지하고 종료",
|
||||
"appx_last_block_n": "마지막 블록: %d",
|
||||
"appx_last_used_wallet_not_found_prefix": "마지막으로 사용한 지갑 파일(",
|
||||
"appx_last_used_wallet_not_found_suffix": ")을 찾을 수 없어 기본 지갑을 대신 열었습니다. 옮기셨다면 복원한 후 지갑 목록에서 다시 전환하세요.",
|
||||
"appx_low_spec_mode_disabled": "저사양 모드 비활성화됨",
|
||||
"appx_low_spec_mode_enabled": "저사양 모드 활성화됨",
|
||||
"appx_miner_stopped_prefix": "채굴기 중지됨: ",
|
||||
"appx_miner_stopped_unexpectedly": "채굴기가 예기치 않게 중지되었습니다.",
|
||||
"appx_n_min_n_sec": "%d분 %d초",
|
||||
"appx_n_seconds": "%d초",
|
||||
"appx_no_bundled_daemon_to_install": "이 빌드에는 설치할 번들 데몬이 없습니다",
|
||||
"appx_no_embedded_daemon_to_install": "이 빌드에는 설치할 내장 데몬이 없습니다",
|
||||
"appx_node_busy_restarting": "노드가 재시작 중입니다 — 잠시 후 다시 시도하세요.",
|
||||
"appx_node_rebuilding_witness_cache": "노드가 위트니스 캐시를 재구성하는 중입니다",
|
||||
"appx_not_next_word": " — 다음 단어가 아닙니다",
|
||||
"appx_payment_request_loaded": "결제 요청을 불러왔습니다",
|
||||
"appx_pool_miner_connected_and_hashing": "풀 채굴기가 연결되어 해싱 중입니다.",
|
||||
"appx_progress_n_of_n": "진행 상황: %d / %d",
|
||||
"appx_rebuilding_sapling_note_witnesses": "Sapling 노트 위트니스 재구성 중…",
|
||||
"appx_rebuilding_witness_cache_blocks_left": "위트니스 캐시 재구성 중 %.0f%% — %d개 블록 남음",
|
||||
"appx_rebuilding_witness_cache_pct": "위트니스 캐시 재구성 중 %.0f%%",
|
||||
"appx_recovery_phrase_word_count": "복구 문구는 24개 단어여야 합니다 — 현재 %d개입니다.",
|
||||
"appx_restarting_daemon_rescan_flag": "-rescan 플래그로 데몬을 다시 시작하는 중...",
|
||||
"appx_restarting_daemon_zapwallettxes": "-zapwallettxes=2로 데몬을 다시 시작하는 중(지갑 복구)...",
|
||||
"appx_restoring_your_wallet": "지갑을 복구하는 중…",
|
||||
"appx_seed_backup_warning": "이 24개 단어는 지갑을 복구할 수 있는 유일한 방법입니다. 순서대로 적어 오프라인에 보관하고 절대 공유하지 마세요. 잃어버리면 자금을 영원히 되찾을 수 없습니다.",
|
||||
"appx_seed_not_backed_up_warning": "시드를 아직 백업하지 않았습니다 — 자금을 잃을 수 있습니다. 그래도 건너뛰시겠습니까?",
|
||||
"appx_sending_stop_command_to_daemon": "데몬에 중지 명령을 보내는 중...",
|
||||
"appx_setting_initial_sapling_witnesses": "초기 Sapling 위트니스 설정 중 %.0f%%",
|
||||
"appx_shutdown_complete": "종료 완료",
|
||||
"appx_simple_background_disabled": "단순 배경 비활성화됨",
|
||||
"appx_simple_background_enabled": "단순 배경 활성화됨",
|
||||
"appx_skip": "건너뛰기",
|
||||
"appx_skip_anyway": "그래도 건너뛰기",
|
||||
"appx_still_status_prefix": "아직 \"",
|
||||
"appx_still_status_suffix": "\" 상태입니다 — 지금 강제 종료하면 체인 데이터가 손상될 수 있습니다.",
|
||||
"appx_stop_anyway_and_quit": "그래도 중지하고 종료",
|
||||
"appx_stopping_daemon_deleting_blockchain": "데몬을 중지하고 블록체인 데이터를 삭제하는 중...",
|
||||
"appx_stopping_node_discards_rebuild": "지금 노드를 중지하면 진행 중인 재구성이 취소되며, 다음에 지갑을 열 때 다시 시작됩니다(몇 분 소요). 대신 노드를 계속 실행할 수 있습니다.",
|
||||
"appx_stopping_pool_miner": "풀 채굴기를 중지하는 중...",
|
||||
"appx_syncing_pct_block_n_of_n": "동기화 중 %.1f%% — 블록 %d / %d",
|
||||
"appx_tap_words_in_order": "저장한 내용을 확인하도록 단어를 올바른 순서대로 탭하세요.",
|
||||
"appx_theme_effects_disabled": "테마 효과 비활성화됨",
|
||||
"appx_theme_effects_enabled": "테마 효과 활성화됨",
|
||||
"appx_theme_prefix": "테마: ",
|
||||
"appx_use_settings_restart_daemon_hint": "설정 > 데몬 다시 시작을 사용해 다시 시도하세요",
|
||||
"appx_waiting_for_daemon_to_encrypt_wallet": "데몬이 지갑을 암호화하기를 기다리는 중...",
|
||||
"appx_wallet_created_and_backed_up": "지갑이 생성되고 백업되었습니다.",
|
||||
"appx_wallet_open_failed_prefix": "지갑 열기 실패: ",
|
||||
"auto_shield": "채굴 자동 차폐",
|
||||
"av_intro": "채굴 소프트웨어는 종종 잠재적으로 원치 않는 항목으로 표시됩니다. 풀 채굴을 활성화하려면 다음 단계를 따르세요:",
|
||||
"av_open_security": "Windows 보안 열기",
|
||||
@@ -100,6 +174,17 @@
|
||||
"balance_shielded_fmt": "차폐: %.8f",
|
||||
"balance_syncing_pct": "동기화 중 %.1f%%",
|
||||
"balance_transparent_fmt": "투명: %.8f",
|
||||
"baltab_market": "시세",
|
||||
"baltab_market_price_4dp": "시세: $%.4f",
|
||||
"baltab_market_price_8dp": "시세: $%.8f",
|
||||
"baltab_pct_change_24h": "%s%.1f%% 24시간",
|
||||
"baltab_pct_of_total_zaddr": "전체의 %.0f%% · Z-addr %d개",
|
||||
"baltab_shielded": "실드됨",
|
||||
"baltab_shielded_amount": "실드됨 %.8f",
|
||||
"baltab_t_addresses_count": "T-address %d개",
|
||||
"baltab_total_balance": "총 잔액",
|
||||
"baltab_transparent": "투명",
|
||||
"baltab_transparent_amount": "투명 %.8f",
|
||||
"ban": "차단",
|
||||
"banned_peers": "차단된 피어",
|
||||
"block": "블록",
|
||||
@@ -414,6 +499,7 @@
|
||||
"contacts_shape_square": "사각형",
|
||||
"contacts_shape_tab": "왼쪽 탭",
|
||||
"copied": "복사됨!",
|
||||
"copied_to_clipboard": "클립보드에 복사됨",
|
||||
"copy": "복사",
|
||||
"copy_address": "전체 주소 복사",
|
||||
"copy_error": "오류 복사",
|
||||
@@ -593,6 +679,63 @@
|
||||
"general": "일반",
|
||||
"generating": "생성 중",
|
||||
"go_to_receive": "수신으로 이동",
|
||||
"grpa_current_block_paren": "(현재: %d)",
|
||||
"grpa_days_ago": "%lld일 전",
|
||||
"grpa_dbg_addrman": "피어 주소 추적 및 관리",
|
||||
"grpa_dbg_alert": "경고 시스템 메시지",
|
||||
"grpa_dbg_bench": "작업 벤치마크 시간 측정",
|
||||
"grpa_dbg_coindb": "코인 데이터베이스 읽기/쓰기 작업",
|
||||
"grpa_dbg_db": "Berkeley DB 작업",
|
||||
"grpa_dbg_estimatefee": "수수료 추정 알고리즘",
|
||||
"grpa_dbg_http": "HTTP RPC 서버 활동",
|
||||
"grpa_dbg_libevent": "Libevent 네트워킹 라이브러리",
|
||||
"grpa_dbg_lock": "락 경합 디버깅",
|
||||
"grpa_dbg_mempool": "트랜잭션 메모리 풀 활동",
|
||||
"grpa_dbg_net": "네트워크 연결 및 메시지",
|
||||
"grpa_dbg_paymentdisclosure": "결제 공개 프로토콜",
|
||||
"grpa_dbg_pow": "작업 증명 채굴 활동",
|
||||
"grpa_dbg_proxy": "SOCKS5 프록시 연결",
|
||||
"grpa_dbg_prune": "블록 정리 작업",
|
||||
"grpa_dbg_rand": "난수 생성",
|
||||
"grpa_dbg_reindex": "블록체인 재색인 진행 상황",
|
||||
"grpa_dbg_rpc": "RPC 명령 처리",
|
||||
"grpa_dbg_selectcoins": "트랜잭션용 코인 선택",
|
||||
"grpa_dbg_tor": "Tor 연동 및 회로 정보",
|
||||
"grpa_dbg_zmq": "ZeroMQ 알림 시스템",
|
||||
"grpa_dbg_zrpc": "실드(z-addr) RPC 작업",
|
||||
"grpa_enter_private_key_to_import": "가져올 개인 키를 입력하세요.",
|
||||
"grpa_error_prefix": "오류: ",
|
||||
"grpa_hr_ago": "%lld시간 전",
|
||||
"grpa_invalid_response_from_daemon": "데몬으로부터 잘못된 응답",
|
||||
"grpa_invalid_suffix": " (유효하지 않음)",
|
||||
"grpa_min_ago": "%lld분 전",
|
||||
"grpa_sec_ago": "%lld초 전",
|
||||
"grpa_seed_demo_chat": "시드 데모 채팅",
|
||||
"grpa_showing_first_100_of": "... %d개 중 처음 100개 표시",
|
||||
"grpa_tab_about": "정보",
|
||||
"grpa_tab_appearance": "화면 표시",
|
||||
"grpa_tab_backup_data": "백업 및 데이터",
|
||||
"grpa_tab_chat": "채팅",
|
||||
"grpa_tab_explorer": "탐색기",
|
||||
"grpa_tab_node_security": "노드 및 보안",
|
||||
"grpa_tab_wallet": "지갑",
|
||||
"grpa_unexpected_getblockhash_result": "예기치 않은 getblockhash 결과",
|
||||
"grpb_copy": "복사",
|
||||
"grpb_max": "최대",
|
||||
"grpb_new_badge_suffix": " [신규]",
|
||||
"grpb_preview_msg_payment_through": "결제가 완료됐나요? 🙂",
|
||||
"grpb_preview_msg_sending_rest": "지금 나머지를 보낼게요 👍",
|
||||
"grpb_preview_msg_yep_confirmed": "네 — 방금 확인했어요 ✅",
|
||||
"grpb_selected_suffix": "\n(선택됨)",
|
||||
"grpb_tooltip_address_balance": "%s\n잔액: %.8f %s%s",
|
||||
"grpb_undo_clear": "지우기 취소",
|
||||
"grpc_benchmark_inconclusive": "벤치마크 결과가 불확실합니다: 해시레이트 샘플이 기록되지 않았습니다. 풀 연결을 확인한 후 다시 시도하세요.",
|
||||
"grpc_benchmark_takes_secs": "벤치마크는 약 %d초가 걸리며 채굴을 중단합니다. 시작하려면 다시 클릭하세요.",
|
||||
"grpc_bootstrap_failed": "부트스트랩 실패",
|
||||
"grpc_bootstrap_not_initialized": "부트스트랩이 초기화되지 않았습니다",
|
||||
"grpc_hashrate_fee": "%s 수수료 %s%%",
|
||||
"grpc_key_not_available": "이 주소에 대한 키를 사용할 수 없습니다",
|
||||
"grpc_na": "해당 없음",
|
||||
"height": "높이",
|
||||
"help": "도움말",
|
||||
"hidden_tag": " (숨김)",
|
||||
@@ -1239,6 +1382,45 @@
|
||||
"screenshot_sweep_full": "전체 UI 스윕",
|
||||
"search_icons": "아이콘 검색...",
|
||||
"search_placeholder": "검색...",
|
||||
"sec_changing_passphrase": "암호문 변경 중...",
|
||||
"sec_changing_pin": "PIN 변경 중...",
|
||||
"sec_couldnt_lock_wallet": "지갑을 잠글 수 없습니다 — 아직 잠금 해제 상태입니다. 데몬 연결을 확인하세요.",
|
||||
"sec_encrypted_backup_suffix": "\n암호화된 백업: wallet.dat.encrypted.bak",
|
||||
"sec_encrypting_wallet": "지갑 암호화 중...",
|
||||
"sec_encryption_did_not_complete": "지갑 암호화가 완료되지 않았습니다 — 지갑이 암호화되지 않은 상태입니다. 설정을 열어 암호화를 완료하세요.",
|
||||
"sec_encryption_failed_prefix": "암호화 실패: ",
|
||||
"sec_failed_prefix": "실패: ",
|
||||
"sec_failed_to_create_vault": "볼트 생성에 실패했습니다",
|
||||
"sec_importing_keys_rescanning": "키를 가져오고 블록체인을 다시 스캔하는 중 — 진행 중에도 지갑을 사용할 수 있습니다",
|
||||
"sec_incorrect_current_pin": "현재 PIN이 올바르지 않습니다",
|
||||
"sec_incorrect_passphrase_decrypt": "잘못된 암호문",
|
||||
"sec_incorrect_passphrase_pin_setup": "잘못된 암호문",
|
||||
"sec_incorrect_pin_remove": "잘못된 PIN",
|
||||
"sec_internal_error_change_pin": "내부 오류",
|
||||
"sec_internal_error_remove_pin": "내부 오류",
|
||||
"sec_mode_passphrase": " 암호문",
|
||||
"sec_not_connected_to_daemon": "데몬에 연결되지 않음",
|
||||
"sec_not_connected_to_daemon_pin": "데몬에 연결되지 않음",
|
||||
"sec_passphrase_changed_successfully": "암호문이 성공적으로 변경되었습니다",
|
||||
"sec_pin_changed_successfully": "PIN이 성공적으로 변경되었습니다",
|
||||
"sec_pin_removed": "PIN이 제거되었습니다",
|
||||
"sec_pin_set_successfully": "PIN이 성공적으로 설정되었습니다",
|
||||
"sec_restart_daemon_for_encryption": "암호화를 적용하려면 데몬을 다시 시작하세요.",
|
||||
"sec_too_many_attempts_wait": "시도 횟수가 너무 많습니다. %.0f초 기다리세요...",
|
||||
"sec_total_elapsed_fmt": "총 경과 시간: %d분 %02d초",
|
||||
"sec_unlock_button": "잠금 해제",
|
||||
"sec_unlock_failed_prefix": "잠금 해제 실패: ",
|
||||
"sec_unlocking_fmt": "잠금 해제 중%s",
|
||||
"sec_use_passphrase_instead": "대신 암호문 사용",
|
||||
"sec_use_pin_instead": "대신 PIN 사용",
|
||||
"sec_verifying_passphrase": "암호문 확인 중...",
|
||||
"sec_verifying_pin": "PIN 확인 중...",
|
||||
"sec_wallet_decrypted_all_keys_imported": "지갑 복호화 완료! 모든 키를 가져왔습니다.",
|
||||
"sec_wallet_encrypted_and_pin_set": "지갑 암호화 및 PIN 설정 완료",
|
||||
"sec_wallet_encrypted_but_pin_vault_failed": "지갑은 암호화되었으나 PIN 볼트 설정에 실패했습니다",
|
||||
"sec_wallet_encrypted_restarting_daemon": "지갑이 암호화되었습니다. 데몬을 다시 시작하는 중...",
|
||||
"sec_wallet_encrypted_successfully": "지갑이 성공적으로 암호화되었습니다",
|
||||
"sec_wallet_locked_title": "지갑 잠김",
|
||||
"security": "보안",
|
||||
"seed_backup_button": "시드 문구",
|
||||
"seed_backup_close": "닫기",
|
||||
@@ -1460,6 +1642,17 @@
|
||||
"sweep_to": "쓸어담은 주소:",
|
||||
"sweep_toggle": "내 지갑으로 쓸어담기 (키 보관 안 함)",
|
||||
"sweep_tx": "거래:",
|
||||
"swin_connection_failed": "연결 실패: ",
|
||||
"swin_connection_successful": "연결에 성공했습니다!\ndragonxd 버전: ",
|
||||
"swin_invalid_suffix": " (유효하지 않음)",
|
||||
"swin_no_history_file_found": "기록 파일을 찾을 수 없습니다",
|
||||
"swin_rescan_failed": "다시 스캔 실패: ",
|
||||
"swin_rescan_started_from_block": "다시 스캔이 시작된 블록 ",
|
||||
"swin_rescan_to": " ~ ",
|
||||
"swin_rpc_client_not_initialized": "RPC 클라이언트가 초기화되지 않았습니다",
|
||||
"swin_settings_saved": "설정이 저장되었습니다",
|
||||
"swin_theme_list_refreshed": "테마 목록을 새로고침했습니다",
|
||||
"swin_ztx_history_cleared": "Z-트랜잭션 기록이 삭제되었습니다",
|
||||
"switch_corrupt_body": "이 지갑이 손상된 것 같습니다. 노드가 열 수 없습니다. 백업에서 복원하거나 다시 만들거나 복구를 시도하세요.",
|
||||
"switch_corrupt_repair": "복구 시도(salvage)",
|
||||
"switch_progress_background": "백그라운드에서 계속",
|
||||
|
||||
Reference in New Issue
Block a user