Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions openless-all/app/src/i18n/de.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2221,6 +2221,15 @@ export const de: typeof zhCN = {
downloading: 'Wird heruntergeladen',
startDownload: 'Download starten',
downloadNewModel: 'Neues Modell herunterladen',
activeModelLabel: 'Aktives Modell',
pickerNoModelDownloaded:
'Noch keine Modelle heruntergeladen — lade sie zuerst auf der Seite „Lokale Modelle“.',
partialDownloadsLabel: 'Unvollständige Downloads',
partialDownloadsDesc:
'Abgebrochene Downloads haben temporäre Dateien hinterlassen; bereinige sie ohne die installierten Modelle zu beeinflussen.',
cleanupIncomplete: 'Unvollständigen Download bereinigen',
languagesLabel: 'Sprachen',
partialBytesLabel: 'Restdateien',
downloadDialogTitle: 'Modell herunterladen',
downloadDialogAlreadyHave:
'Die Modelldateien sind heruntergeladen. Kehre zur Modellseite zurück, um es zu laden und zu testen, oder wähle seinen Anbieter unter „ASR-Transkription“.',
Expand Down
36 changes: 26 additions & 10 deletions openless-all/app/src/i18n/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1748,17 +1748,24 @@ export const en: typeof zhCN = {
regeneratePin: 'Regenerate',
portInUse: 'Port {{port}} is in use, please change it',
startError: 'Failed to start the remote input service: {{reason}}',
securityHint: 'Reachable only on the same LAN and requires the pairing code; turn it off when not in use.',
certHint: "Verify the root certificate fingerprint before trusting it on first use. Older versions require one-time setup; subsequent restarts and IP changes preserve trust.",
securityHint:
'Reachable only on the same LAN and requires the pairing code; turn it off when not in use.',
certHint:
'Verify the root certificate fingerprint before trusting it on first use. Older versions require one-time setup; subsequent restarts and IP changes preserve trust.',
certFingerprintLabel: "This computer's root CA SHA-256",
certFingerprintCopy: "Copy full fingerprint",
certFingerprintCopied: "Fingerprint copied",
certFingerprintUnavailable: "The full fingerprint is unavailable. Do not install or trust a downloaded certificate.",
certVerifyHint: "Find SHA-256 in the phone's system certificate details and compare all 64 characters with this value (ignore spaces and colons) before enabling full trust. A web page, profile name or identifier cannot prove identity. If the fingerprint differs or cannot be viewed in full, stop and remove the downloaded or installed profile.",
certProfileHint: "Expect exactly one root certificate. Do not install a profile containing additional certificates, VPN or device management settings.",
certTrustWarning: "The initial certificate download cannot verify the computer's identity; a malicious device on the LAN could replace the root certificate in a man-in-the-middle attack. Install it only on a trusted home or private network, never on a public or shared network. The root CA can issue certificates and its private key stays on this computer; remove it from your phone when no longer needed.",
certSetupLink: "Copy iPhone certificate link",
waitingStart: 'The service is not running yet. Turn the switch off, then on again. Do not restart the app.',
certFingerprintCopy: 'Copy full fingerprint',
certFingerprintCopied: 'Fingerprint copied',
certFingerprintUnavailable:
'The full fingerprint is unavailable. Do not install or trust a downloaded certificate.',
certVerifyHint:
"Find SHA-256 in the phone's system certificate details and compare all 64 characters with this value (ignore spaces and colons) before enabling full trust. A web page, profile name or identifier cannot prove identity. If the fingerprint differs or cannot be viewed in full, stop and remove the downloaded or installed profile.",
certProfileHint:
'Expect exactly one root certificate. Do not install a profile containing additional certificates, VPN or device management settings.',
certTrustWarning:
"The initial certificate download cannot verify the computer's identity; a malicious device on the LAN could replace the root certificate in a man-in-the-middle attack. Install it only on a trusted home or private network, never on a public or shared network. The root CA can issue certificates and its private key stays on this computer; remove it from your phone when no longer needed.",
certSetupLink: 'Copy iPhone certificate link',
waitingStart:
'The service is not running yet. Turn the switch off, then on again. Do not restart the app.',
starting: 'Starting the remote input service…',
urlsStale: 'These addresses come from the previous run and may be out of date.',
},
Expand Down Expand Up @@ -2146,6 +2153,15 @@ export const en: typeof zhCN = {
downloading: 'Downloading',
startDownload: 'Start download',
downloadNewModel: 'Download new model',
activeModelLabel: 'Model in use',
pickerNoModelDownloaded:
'No downloaded models yet — download one on the Local models page first.',
partialDownloadsLabel: 'Incomplete downloads',
partialDownloadsDesc:
'Interrupted downloads left staging files behind; clean them up without affecting installed models.',
cleanupIncomplete: 'Clean up incomplete download',
languagesLabel: 'Languages',
partialBytesLabel: 'Leftover files',
downloadDialogTitle: 'Download Model',
downloadDialogAlreadyHave:
'The model files are downloaded. Return to the model page to load and test, or choose its provider in ASR transcription.',
Expand Down
9 changes: 9 additions & 0 deletions openless-all/app/src/i18n/es.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2202,6 +2202,15 @@ export const es: typeof zhCN = {
downloading: 'Descargando',
startDownload: 'Iniciar descarga',
downloadNewModel: 'Descargar nuevo modelo',
activeModelLabel: 'Modelo en uso',
pickerNoModelDownloaded:
'Aún no hay modelos descargados; descarga primero uno en la página de modelos locales.',
partialDownloadsLabel: 'Descargas incompletas',
partialDownloadsDesc:
'Las descargas interrumpidas dejaron archivos temporales; límpialos sin afectar a los modelos instalados.',
cleanupIncomplete: 'Limpiar descarga incompleta',
languagesLabel: 'Idiomas',
partialBytesLabel: 'Archivos residuales',
downloadDialogTitle: 'Descargar modelo',
downloadDialogAlreadyHave:
'Los archivos del modelo ya están descargados. Vuelve a su página para cargarlo y probarlo, o elige su proveedor en Transcripción ASR.',
Expand Down
9 changes: 9 additions & 0 deletions openless-all/app/src/i18n/fr.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2231,6 +2231,15 @@ export const fr: typeof zhCN = {
downloading: 'Téléchargement',
startDownload: 'Démarrer le téléchargement',
downloadNewModel: 'Télécharger un nouveau modèle',
activeModelLabel: 'Modèle utilisé',
pickerNoModelDownloaded:
'Aucun modèle téléchargé pour l’instant — commencez par la page des modèles locaux.',
partialDownloadsLabel: 'Téléchargements incomplets',
partialDownloadsDesc:
'Des téléchargements interrompus ont laissé des fichiers temporaires ; nettoyez-les sans toucher aux modèles installés.',
cleanupIncomplete: 'Nettoyer le téléchargement incomplet',
languagesLabel: 'Langues',
partialBytesLabel: 'Fichiers restants',
downloadDialogTitle: 'Télécharger un modèle',
downloadDialogAlreadyHave:
'Les fichiers du modèle sont téléchargés. Revenez à sa page pour le charger et le tester, ou choisissez son fournisseur dans Transcription ASR.',
Expand Down
38 changes: 27 additions & 11 deletions openless-all/app/src/i18n/ja.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1717,17 +1717,24 @@ export const ja: typeof zhCN = {
regeneratePin: '再生成',
portInUse: 'ポート {{port}} は使用中です。変更してください',
startError: 'リモート入力サービスの起動に失敗しました:{{reason}}',
securityHint: '同一 LAN からのみアクセス可能で、ペアリングコードの入力が必要です。使わないときはオフにすることを推奨します。',
certHint: "初回接続ではルート証明書の指紋を確認してから信頼してください。旧バージョンからは一度設定が必要ですが、その後は再起動や IP 変更でも信頼が保持されます。",
certFingerprintLabel: "このコンピューターのルート CA SHA-256",
certFingerprintCopy: "指紋全体をコピー",
certFingerprintCopied: "指紋をコピーしました",
certFingerprintUnavailable: "完全な指紋を取得できません。ダウンロードした証明書をインストールしたり信頼したりしないでください。",
certVerifyHint: "スマートフォンのシステム証明書詳細にある SHA-256 の全 64 文字を、空白とコロンを除いてこの値と照合し、完全に信頼する前に確認してください。Web ページ、プロファイル名や識別子は身元の証明にはなりません。一致しない場合や全体を表示できない場合は中止し、ダウンロード済みまたはインストール済みのプロファイルを削除してください。",
certProfileHint: "プロファイルにはルート証明書が 1 枚だけ含まれるはずです。追加の証明書、VPN、デバイス管理の設定がある場合はインストールしないでください。",
certTrustWarning: "初回の証明書ダウンロードではコンピューターの身元を確認できず、LAN 上の悪意あるデバイスが中間者攻撃でルート証明書を置き換える可能性があります。信頼できる家庭内またはプライベートネットワークでのみインストールし、公共または共有ネットワークでは操作しないでください。ルート CA は証明書を発行でき、秘密鍵はこのコンピューターに保存されます。不要になったらスマートフォンから削除してください。",
certSetupLink: "iPhone 証明書リンクをコピー",
waitingStart: 'サービスはまだ起動していません。スイッチを一度オフにしてからオンにしてください。アプリを再起動しないでください。',
securityHint:
'同一 LAN からのみアクセス可能で、ペアリングコードの入力が必要です。使わないときはオフにすることを推奨します。',
certHint:
'初回接続ではルート証明書の指紋を確認してから信頼してください。旧バージョンからは一度設定が必要ですが、その後は再起動や IP 変更でも信頼が保持されます。',
certFingerprintLabel: 'このコンピューターのルート CA SHA-256',
certFingerprintCopy: '指紋全体をコピー',
certFingerprintCopied: '指紋をコピーしました',
certFingerprintUnavailable:
'完全な指紋を取得できません。ダウンロードした証明書をインストールしたり信頼したりしないでください。',
certVerifyHint:
'スマートフォンのシステム証明書詳細にある SHA-256 の全 64 文字を、空白とコロンを除いてこの値と照合し、完全に信頼する前に確認してください。Web ページ、プロファイル名や識別子は身元の証明にはなりません。一致しない場合や全体を表示できない場合は中止し、ダウンロード済みまたはインストール済みのプロファイルを削除してください。',
certProfileHint:
'プロファイルにはルート証明書が 1 枚だけ含まれるはずです。追加の証明書、VPN、デバイス管理の設定がある場合はインストールしないでください。',
certTrustWarning:
'初回の証明書ダウンロードではコンピューターの身元を確認できず、LAN 上の悪意あるデバイスが中間者攻撃でルート証明書を置き換える可能性があります。信頼できる家庭内またはプライベートネットワークでのみインストールし、公共または共有ネットワークでは操作しないでください。ルート CA は証明書を発行でき、秘密鍵はこのコンピューターに保存されます。不要になったらスマートフォンから削除してください。',
certSetupLink: 'iPhone 証明書リンクをコピー',
waitingStart:
'サービスはまだ起動していません。スイッチを一度オフにしてからオンにしてください。アプリを再起動しないでください。',
starting: 'リモート入力サービスを起動しています…',
urlsStale: 'これらのアドレスは前回の起動時のもので、古くなっている可能性があります。',
},
Expand Down Expand Up @@ -2115,6 +2122,15 @@ export const ja: typeof zhCN = {
downloading: 'ダウンロード中',
startDownload: 'ダウンロード開始',
downloadNewModel: '新しいモデルをダウンロード',
activeModelLabel: '使用中のモデル',
pickerNoModelDownloaded:
'ダウンロード済みのモデルがありません。先にローカルモデルページで取得してください。',
partialDownloadsLabel: '未完了のダウンロード',
partialDownloadsDesc:
'中断されたダウンロードの一時ファイルが残っています。インストール済みモデルに影響せず一括削除できます。',
cleanupIncomplete: '未完了ダウンロードを削除',
languagesLabel: '言語',
partialBytesLabel: '残存ファイル',
downloadDialogTitle: 'モデルをダウンロード',
downloadDialogAlreadyHave:
'モデルファイルはダウンロード済みです。モデルページで読み込みとテストを行うか、「ASR 音声文字起こし」で対応するプロバイダーを選択してください。',
Expand Down
38 changes: 27 additions & 11 deletions openless-all/app/src/i18n/ko.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1705,17 +1705,24 @@ export const ko: typeof zhCN = {
regeneratePin: '재생성',
portInUse: '포트 {{port}}이(가) 사용 중입니다. 변경하세요',
startError: '원격 입력 서비스 시작에 실패했습니다: {{reason}}',
securityHint: '같은 LAN에서만 접속 가능하며 페어링 코드 입력이 필요합니다. 사용하지 않을 때는 끄는 것을 권장합니다.',
certHint: "처음 연결할 때 루트 인증서 지문을 확인한 후 신뢰하세요. 이전 버전에서는 한 번 설정해야 하며, 이후 재시작과 IP 변경 시 신뢰가 유지됩니다.",
certFingerprintLabel: "이 컴퓨터의 루트 CA SHA-256",
certFingerprintCopy: "전체 지문 복사",
certFingerprintCopied: "지문 복사됨",
certFingerprintUnavailable: "전체 지문을 확인할 수 없습니다. 다운로드한 인증서를 설치하거나 신뢰하지 마세요.",
certVerifyHint: "휴대폰 시스템의 인증서 상세 정보에서 SHA-256을 찾아, 완전한 신뢰를 켜기 전에 공백과 콜론을 제외한 64자 전체를 이 값과 비교하세요. 웹 페이지, 프로파일 이름이나 식별자는 신원 증명이 아닙니다. 일치하지 않거나 전체 지문을 볼 수 없으면 중단하고 다운로드했거나 설치한 프로파일을 제거하세요.",
certProfileHint: "프로파일에는 루트 인증서 한 개만 있어야 합니다. 추가 인증서, VPN 또는 기기 관리 설정이 있으면 설치하지 마세요.",
certTrustWarning: "최초 인증서 다운로드에서는 컴퓨터의 신원을 확인할 수 없으며, LAN의 악성 기기가 중간자 공격으로 루트 인증서를 바꿀 수 있습니다. 신뢰할 수 있는 가정용 또는 사설 네트워크에서만 설치하고 공용 또는 공유 네트워크에서는 진행하지 마세요. 루트 CA는 인증서를 발급할 수 있고 개인 키는 이 컴퓨터에 저장됩니다. 더 이상 사용하지 않으면 휴대폰에서 제거하세요.",
certSetupLink: "iPhone 인증서 링크 복사",
waitingStart: '서비스가 아직 시작되지 않았습니다. 스위치를 끈 다음 다시 켜세요. 앱을 다시 시작하지 마세요.',
securityHint:
'같은 LAN에서만 접속 가능하며 페어링 코드 입력이 필요합니다. 사용하지 않을 때는 끄는 것을 권장합니다.',
certHint:
'처음 연결할 때 루트 인증서 지문을 확인한 후 신뢰하세요. 이전 버전에서는 한 번 설정해야 하며, 이후 재시작과 IP 변경 시 신뢰가 유지됩니다.',
certFingerprintLabel: '이 컴퓨터의 루트 CA SHA-256',
certFingerprintCopy: '전체 지문 복사',
certFingerprintCopied: '지문 복사됨',
certFingerprintUnavailable:
'전체 지문을 확인할 수 없습니다. 다운로드한 인증서를 설치하거나 신뢰하지 마세요.',
certVerifyHint:
'휴대폰 시스템의 인증서 상세 정보에서 SHA-256을 찾아, 완전한 신뢰를 켜기 전에 공백과 콜론을 제외한 64자 전체를 이 값과 비교하세요. 웹 페이지, 프로파일 이름이나 식별자는 신원 증명이 아닙니다. 일치하지 않거나 전체 지문을 볼 수 없으면 중단하고 다운로드했거나 설치한 프로파일을 제거하세요.',
certProfileHint:
'프로파일에는 루트 인증서 한 개만 있어야 합니다. 추가 인증서, VPN 또는 기기 관리 설정이 있으면 설치하지 마세요.',
certTrustWarning:
'최초 인증서 다운로드에서는 컴퓨터의 신원을 확인할 수 없으며, LAN의 악성 기기가 중간자 공격으로 루트 인증서를 바꿀 수 있습니다. 신뢰할 수 있는 가정용 또는 사설 네트워크에서만 설치하고 공용 또는 공유 네트워크에서는 진행하지 마세요. 루트 CA는 인증서를 발급할 수 있고 개인 키는 이 컴퓨터에 저장됩니다. 더 이상 사용하지 않으면 휴대폰에서 제거하세요.',
certSetupLink: 'iPhone 인증서 링크 복사',
waitingStart:
'서비스가 아직 시작되지 않았습니다. 스위치를 끈 다음 다시 켜세요. 앱을 다시 시작하지 마세요.',
starting: '원격 입력 서비스를 시작하는 중입니다…',
urlsStale: '이 주소는 이전 실행에서 가져온 것으로 최신이 아닐 수 있습니다.',
},
Expand Down Expand Up @@ -2098,6 +2105,15 @@ export const ko: typeof zhCN = {
downloading: '다운로드 중',
startDownload: '다운로드 시작',
downloadNewModel: '새 모델 다운로드',
activeModelLabel: '사용 중인 모델',
pickerNoModelDownloaded:
'다운로드된 모델이 아직 없습니다. 로컬 모델 페이지에서 먼저 내려받으세요.',
partialDownloadsLabel: '완료되지 않은 다운로드',
partialDownloadsDesc:
'중단된 다운로드의 임시 파일이 남아 있습니다. 설치된 모델에 영향 없이 정리할 수 있습니다.',
cleanupIncomplete: '미완료 다운로드 정리',
languagesLabel: '언어',
partialBytesLabel: '남은 파일',
downloadDialogTitle: '모델 다운로드',
downloadDialogAlreadyHave:
'모델 파일이 다운로드되었습니다. 모델 페이지에서 불러와 테스트하거나 ASR 음성 전사에서 해당 제공업체를 선택하세요.',
Expand Down
Loading
Loading