diff --git a/lib/l10n/app_ja.arb b/lib/l10n/app_ja.arb new file mode 100644 index 00000000..e45fe6d5 --- /dev/null +++ b/lib/l10n/app_ja.arb @@ -0,0 +1,491 @@ +{ + "@@locale": "ja", + "@@last_modified": "2026-02-08T00:00:00Z", + + + + "@@x-GENERAL": "", + "dismiss": "閉じる", + "skip": "スキップ", + "done": "完了", + "confirm": "確認", + "ok": "OK", + "select": "選択", + "cancel": "キャンセル", + "learnMore": "詳細はこちら", + "loadingElipsis": "読み込み中…", + "previous": "前へ", + "next": "次へ", + "finish": "終了", + "rename": "名前変更", + "add": "追加", + "delete": "削除", + "optionalLabel": "(任意)", + "ios": "iOS", + "android": "Android", + + "syncStarting": "変更を検出中…", + "syncStartPull": "変更を同期中…", + "syncStartPush": "ローカルの変更を同期中…", + "syncNotRequired": "同期は不要です!", + "syncComplete": "リポジトリの同期が完了しました!", + "syncInProgress": "同期が進行中です", + "syncScheduled": "同期がスケジュールされました", + "detectingChanges": "変更を検出中…", + "thisActionCannotBeUndone": "この操作は取り消せません。", + + + "@@x-ACCESSIBILITY_LABELS": "", + "cloneProgressLabel": "クローン進行状況", + "forcePushProgressLabel": "強制プッシュ進行状況", + "forcePullProgressLabel": "強制プル進行状況", + "moreSyncOptionsLabel": "その他の同期オプション", + + "repositorySettingsLabel": "リポジトリ設定", + "addBranchLabel": "ブランチを追加", + "deselectDirLabel": "ディレクトリの選択を解除", + "selectDirLabel": "ディレクトリを選択", + "syncMessagesLabel": "同期メッセージの有効化/無効化", + "backLabel": "戻る", + "authDropdownLabel": "認証ドロップダウン", + + + "@@x-PAID_FEATURES": "", + "premiumDialogTitle": "プレミアムをアンロック", + "premiumDialogMessage": "この機能はプレミアム体験の一部です。\n%s の一回払いを行うことで、アンロックしてより強力なツールを利用できます。\n\nプレミアム機能:\n • マルチリポジトリ対応\n\nまたは、GitHubアカウントを連携して、GitHubスポンサーの対象かどうかを確認してください。", + "premiumDialogButtonText": "%s でアンロック", + "premiumDialogGitHubButtonText": "GitHubスポンサーを使用する", + "restorePurchase": "購入を復元", + "verifyGhSponsorTitle": "GitHubスポンサーシップを確認", + "verifyGhSponsorMsg": "GitHubスポンサーの方は、プレミアム機能に無料でアクセスできます。スポンサーのステータスを確認するため、GitHubで認証を行ってください。", + "verifyGhSponsorNote": "注意:新しいスポンサーシップがアプリに反映されるまで、最大1日かかる場合があります。", + + + + "@@x-SYNC_OPTIONS": "", + "switchToClientMode": "クライアントモードに切り替え…", + "switchToSyncMode": "同期モードに切り替え…", + "clientMode": "クライアントモード", + "clientModeDescription": "拡張Git UI\n(上級者向け)", + "syncMode": "同期モード", + "syncModeDescription": "自動同期\n(初心者向け)", + "syncNow": "変更を同期", + "syncAllChanges": "すべての変更を同期", + "stageAndCommit": "ステージングとコミット", + "downloadChanges": "変更をダウンロード", + "uploadChanges": "変更をアップロード", + "downloadAndOverwrite": "ダウンロード + 上書き", + "uploadAndOverwrite": "アップロード + 上書き", + "fetchRemote": "%s をフェッチ", + "pullChanges": "プル", + "pushChanges": "プッシュ", + "updateSubmodules": "サブモジュールを更新", + "forcePush": "強制プッシュ", + "forcePushing": "強制プッシュ中…", + "confirmForcePush": "強制プッシュの確認", + "confirmForcePushMsg": "本当にこれらの変更を強制プッシュしますか?実行中のマージコンフリクトはすべて中止されます。", + "forcePull": "強制プル", + "forcePulling": "強制プル中…", + "confirmForcePull": "強制プルの確認", + "confirmForcePullMsg": "本当にこれらの変更を強制プルしますか?実行中のマージコンフリクトはすべて無視されます。", + "localHistoryOverwriteWarning": "この操作はローカルの履歴を上書きし、元に戻すことはできません。", + "forcePushPullMessage": "プロセスが完了するまで、アプリを閉じたり終了したりしないでください。", + "manualSync": "手動同期", + "manualSyncMsg": "同期したいファイルを選択してください", + "commit": "コミット", + "unstage": "ステージ解除", + "stage": "ステージング", + "selectAll": "すべて選択", + "deselectAll": "選択解除", + "noUncommittedChanges": "未コミットの変更はありません", + "discardChanges": "変更を破棄", + + "discardChangesTitle": "変更を破棄しますか?", + "discardChangesMsg": "\"%s\" へのすべての変更を破棄してもよろしいですか?", + "mergeConflictItemMessage": "マージコンフリクトが発生しています!タップして解決してください", + "mergeConflict": "マージコンフリクト", + "mergeDialogMessage": "エディタを使用してマージコンフリクトを解決してください", + "commitMessage": "コミットメッセージ", + "abortMerge": "マージを中止", + "keepChanges": "変更を保持", + "local": "ローカル", + "both": "両方", + "remote": "リモート", + "merge": "マージ", + "merging": "マージ中…", + "resolvingMerge": "マージを解決中…", + + + + "@@x-ONBOARDING": "", + "iosClearDataTitle": "新規インストールですか?", + "iosClearDataMsg": "再インストールの可能性がありますが、誤検知の場合もあります。iOSではアプリを削除して再インストールしてもキーチェーンが消去されないため、一部のデータが安全に保存されたままになっている場合があります。\n\n新規インストールでない場合、またはリセットしたくない場合は、このステップをスキップして構いません。", + "clearDataConfirmTitle": "アプリデータのリセットを確認", + "clearDataConfirmMsg": "これにより、キーチェーンのエントリを含むすべてのアプリデータが完全に削除されます。続行してもよろしいですか?", + "iosClearDataAction": "すべてのデータを消去", + "legacyAppUserDialogTitle": "新バージョンへようこそ!", + "legacyAppUserDialogMessagePart1": "パフォーマンスの向上と将来の成長のために、アプリをゼロから再構築しました。", + "legacyAppUserDialogMessagePart2": "残念ながら、古い設定を引き継ぐことができないため、再度設定を行う必要があります。\n\nお気に入りの機能はすべて残っています。マルチリポジトリ対応は、今後の開発を支援するための少額の一回限りのアップグレードの一部となりました。", + "legacyAppUserDialogMessagePart3": "引き続きご利用いただきありがとうございます :)", + "setUp": "セットアップ", + "welcome": "ようこそ!", + "welcomeMessage": "初めてのご利用のようですね。\n\n開始するためのクイックセットアップを行いますか?", + "welcomePositive": "開始する", + "welcomeNeutral": "スキップ", + "welcomeNegative": "使い方は知っている", + "notificationDialogTitle": "通知を有効にする", + "notificationDialogMessage": "最高の体験のために、通知権限を有効にしてください。\n\nこのアプリは以下の目的で通知を使用します:\n • ポップアップ同期メッセージ(任意)\n • バグレポート", + "allFilesAccessDialogTitle": "「全ファイルへのアクセス」を有効にする", + "allFilesAccessDialogMessage": "「全ファイルへのアクセス」権限を許可しないと GitSync を使用できません!最高の体験のために有効にしてください。\n\nこのアプリは、リポジトリをデバイス上の選択したディレクトリに同期するためにこの権限を使用します。選択したディレクトリ以外のファイルにアクセスすることはありません。", + "almostThereDialogTitle": "あと少しです!", + "almostThereDialogMessageAndroid": "まもなく認証を行い、リポジトリをデバイスにクローンして同期の準備をします。\n\n設定完了後は、いくつかの方法で同期を開始できます:\n\n • アプリ内から\n • クイックタイルから\n • App Sync(アプリ同期)を使用して\n • カスタムインテント(上級者向け)を使用して", + "almostThereDialogMessageIos": "まもなく認証を行い、リポジトリをデバイスにクローンして同期の準備をします。\n\n設定完了後は、以下の方法で同期を開始できます:\n\n • アプリ内から", + "authDialogTitle": "Gitプロバイダーで認証", + "authDialogMessage": "選択したGitプロバイダーで認証を行い、リポジトリのクローンに進んでください!", + "authorDetailsPromptTitle": "作成者情報が必要です", + "authorDetailsPromptMessage": "作成者名またはメールアドレスが設定されていません。同期する前にリポジトリ設定で更新してください。", + "authorDetailsShowcasePrompt": "作成者情報を入力してください", + "goToSettings": "設定へ移動", + "enableAutosyncTitle": "App Syncを有効にする", + "enableAutosyncMessage": "データを手間なく最新に保ちます。App Syncをオンにすると、アプリが開かれたり閉じられたりする際、バックグラウンドで自動的に同期されます。", + "addMoreHint": "このボタンをクリックして、アプリにリポジトリを追加します", + "globalSettingsHint": "このボタンをクリックして、アプリのグローバル設定にアクセスします", + "syncProgressHint": "アクティブな同期操作のステータスをここで追跡します", + "controlHint": "これらのコントロールを使用して、手動同期やリポジトリ操作の管理を行います", + "configHint": "このセクションを使用して、リポジトリ設定の構成や初期セットアップを行います", + "autoSyncOptionsHint": "これらの設定を使用して、バックグラウンド同期を有効にし、データを自動的に最新の状態に保ちます", + + "guidedSetupHint": "ウォークスルーが必要な場合やUIを再確認したい場合は、ここをクリックしてセットアップまたはUIガイドを再開してください", + + + "@@x-HOME_PAGE": "", + "currentBranch": "現在のブランチ", + "detachedHead": "Detached Head", + "commitsNotFound": "コミットが見つかりません…", + "repoNotFound": "リポジトリが見つかりません…", + "committed": "コミット済み", + "additions": "%s ++", + "deletions": "%s --", + "modifyRemoteUrl": "リモートURLを変更", + "modify": "変更", + "remoteUrl": "リモートURL", + "setRemoteUrl": "リモートURLを設定", + "launchInBrowser": "ブラウザで開く", + "auth": "認証", + "gitDirPathHint": "/storage/emulated/0/…", + "openFileExplorer": "閲覧と編集", + "syncSettings": "同期設定", + "enableApplicationObserver": "App Sync設定", + "appSyncDescription": "選択したアプリが開かれた、または閉じられた時に自動同期します", + "accessibilityServiceDisclosureTitle": "ユーザー補助サービスの開示", + "accessibilityServiceDisclosureMessage": "ユーザー体験を向上させるため、GitSyncはAndroidのユーザー補助サービスを使用してアプリの開閉を検出します。\n\nこれにより、データを保存または共有することなく、カスタマイズされた機能を提供できます。\n\n次の画面でGitSyncを有効にしてください", + "accessibilityServiceDescription": "ユーザー体験を向上させるため、GitSyncはAndroidのユーザー補助サービスを使用してアプリの開閉を検出します。これにより、データを保存または共有することなく、カスタマイズされた機能を提供できます。\n\n 要点: \n 目的: アプリ体験の向上のためにのみこのサービスを使用します。\n プライバシー: データが保存されたり外部に送信されたりすることはありません。\n コントロール: デバイスの設定からいつでもこれらの権限を無効にできます。", + "search": "検索", + "searchEllipsis": "検索…", + "applicationNotSet": "アプリを選択", + "selectApplication": "アプリを選択してください", + "multipleApplicationSelected": "選択済み (%s)", + "saveApplication": "保存", + "syncOnAppClosed": "アプリが閉じられた時に同期", + "syncOnAppOpened": "アプリが開かれた時に同期", + "scheduledSyncSettings": "スケジュール同期設定", + "scheduledSyncDescription": "バックグラウンドで定期的に自動同期します", + "sync": "同期", + "dontSync": "同期しない", + + "iosDefaultSyncRate": "iOSが許可した時", + "aboutEvery": "約…ごと", + "enhancedScheduledSync": "拡張スケジュール同期", + "enhancedScheduledSyncMsg1": "基本的な同期とは異なり、この機能は高度なバックグラウンド更新を使用して、より頻繁かつ確実に最新データを取得します。", + "enhancedScheduledSyncMsg2": "アプリが閉じている時でも、最短で1分おきにリポジトリをバックグラウンドで同期できます!\n\n手間いらずの継続的な更新により、リポジトリはいつでも準備が整った状態になります。", + "enhancedScheduledSyncNote": "注意:バックグラウンド同期は、バッテリーセーバーやマナーモード(Do Not Disturb)の影響を受ける場合があります。", + "quickSyncSettings": "クイック同期設定", + + "quickSyncDescription": "カスタマイズ可能なクイックタイル、ショートカット、またはウィジェットを使用して同期します", + "tileSyncSettings": "タイル同期設定", + "otherSyncSettings": "その他の同期設定", + "useForTileSync": "同期タイルに使用", + "useForTileManualSync": "手動同期タイルに使用", + "useForShortcutSync": "同期ショートカットに使用", + "useForShortcutManualSync": "手動同期ショートカットに使用", + "useForWidgetSync": "同期ウィジェットに使用", + "useForWidgetManualSync": "手動同期ウィジェットに使用", + + + "@@x-AUTH": "", + "selectYourGitProviderAndAuthenticate": "Gitプロバイダーを選択して認証してください", + "oauthProviders": "OAuthプロバイダー", + + "gitProtocols": "Gitプロトコル", + "oauthNoAffiliation": "サードパーティによる認証。提携や推奨を意味するものではありません。", + "replacesExistingAuth": "既存のコンテナ認証を\n置き換えます", + "oauth": "OAuth", + "copyFromContainer": "コンテナからコピー", + "or": "または", + "enterPAT": "個人アクセストークン(PAT)を入力", + "usePAT": "PATを使用", + "oauthAllRepos": "OAuth (全リポジトリ)", + "oauthScoped": "OAuth (スコープ限定)", + "ensureTokenScope": "フル機能を利用するために、トークンに \"repo\" スコープが含まれていることを確認してください。", + "user": "ユーザー", + "exampleUser": "JohnSmith12", + "token": "トークン", + + "exampleToken": "ghp_1234abcd5678efgh", + "login": "ログイン", + "pubKey": "公開鍵", + "privKey": "秘密鍵", + "passphrase": "パスフェーズ", + "privateKey": "秘密鍵", + "sshPubKeyExample": "ssh-ed25519 AABBCCDDEEFF112233445566", + "sshPrivKeyExample": "-----BEGIN OPENSSH PRIVATE KEY----- AABBCCDDEEFF112233445566", + "generateKeys": "鍵を生成", + "confirmKeySaved": "公開鍵の保存を確認", + "copiedText": "テキストをコピーしました!", + "confirmPrivKeyCopy": "秘密鍵のコピーを確認", + "confirmPrivKeyCopyMsg": "秘密鍵をクリップボードにコピーしてもよろしいですか?\n\nこの鍵にアクセスできる人は誰でもあなたのアカウントを操作できます。安全な場所にのみ貼り付け、その後クリップボードを消去してください。", + "understood": "了解しました", + "importPrivateKey": "秘密鍵をインポート", + "importPrivateKeyMsg": "既存のアカウントを使用するには、以下に秘密鍵を貼り付けてください。\n\nこの鍵にアクセスできる人は誰でもあなたのアカウントを操作できるため、安全な環境で貼り付けていることを確認してください。", + "importKey": "インポート", + + + "@@x-CLONE_REPO_PAGE": "", + "cloneRepo": "リモートリポジトリをクローン", + "clone": "クローン", + "chooseHowToClone": "クローン方法を選択してください:", + "directCloningMsg": "直接クローン:選択したフォルダ内にリポジトリをクローンします", + "nestedCloningMsg": "ネストされたクローン:選択したフォルダ内にリポジトリ名の新しいフォルダを作成します", + "directClone": "直接クローン", + "nestedClone": "ネストされたクローン", + "gitRepoUrlHint": "https://git.abc/xyz.git", + "invalidRepositoryUrlTitle": "無効なリポジトリURLです!", + "invalidRepositoryUrlMessage": "無効なリポジトリURLです!", + "cloneAnyway": "強制的にクローン", + "iHaveALocalRepository": "ローカルリポジトリがある場合", + "cloningRepository": "リポジトリをクローン中…", + "cloneMessagePart1": "この画面を閉じないでください", + "cloneMessagePart2": "リポジトリのサイズによっては時間がかかる場合があります\n", + "selectCloneDirectory": "クローン先のフォルダを選択", + "confirmCloneOverwriteTitle": "フォルダが空ではありません", + "confirmCloneOverwriteMsg": "選択したフォルダには既にファイルが含まれています。クローンを実行すると内容が上書きされます。", + "confirmCloneOverwriteWarning": "この操作は取り消せません。", + "confirmCloneOverwriteAction": "上書き", + "repoSearchLimits": "リポジトリ検索の制限", + "repoSearchLimitsDescription": "リポジトリ検索はAPIから返される最初の100件のリポジトリのみを調査するため、目的のリポジトリが表示されない場合があります。\n\n目的のリポジトリが検索結果に表示されない場合は、HTTPSまたはSSHのURLを使用して直接クローンしてください。", + + + "@@x-SETTINGS_PAGE": "", + "repositorySettings": "リポジトリ設定", + "settings": "設定", + "signedCommitsLabel": "署名付きコミット", + "signedCommitsDescription": "身元を確認するためにコミットに署名します", + "importCommitKey": "鍵をインポート", + "commitKeyImported": "鍵をインポートしました", + "useSshKey": "コミット署名に認証キーを使用", + "syncMessageLabel": "同期メッセージ", + "syncMessageDescription": "日付と時刻には %s を使用", + "syncMessageTimeFormatLabel": "同期メッセージの日時形式", + "syncMessageTimeFormatDescription": "標準的な日時フォーマット構文を使用します", + "remoteLabel": "デフォルトのリモート", + "defaultRemote": "origin", + "authorNameLabel": "作成者名", + "authorName": "JohnSmith12", + "authorEmailLabel": "作成者のメールアドレス", + "authorEmail": "john12@smith.com", + "gitIgnore": ".gitignore", + "gitIgnoreDescription": "すべてのデバイスで無視するファイルやフォルダのリスト", + "gitIgnoreHint": ".trash/\n./…", + "gitInfoExclude": ".git/info/exclude", + "gitInfoExcludeDescription": "このデバイスでのみ無視するファイルやフォルダのリスト", + "gitInfoExcludeHint": ".trash/\n./…", + "disableSsl": "SSLを無効化", + "disableSslDescription": "HTTPリポジトリのセキュア接続を無効化", + "disableSslPromptTitle": "SSLを無効にしますか?", + "disableSslPromptMsg": "クローンしたアドレスは \"http\" で始まっており、安全ではありません。SSLを無効にするとURLと一致しますが、セキュリティは低下します。", + "optimisedSync": "最適化された同期", + "optimisedSyncDescription": "全体の同期操作をインテリジェントに削減します", + "proceedAnyway": "続行しますか?", + "moreOptions": "その他のオプション", + "untrackAll": "すべての追跡を解除", + + + + "@@x-GLOBAL_SETTINGS_PAGE": "", + "globalSettings": "グローバル設定", + "darkMode": "ダーク\nモード", + "lightMode": "ライト\nモード", + "system": "システム", + "language": "言語", + "browseEditDir": "閲覧・編集ディレクトリ", + "enableLineWrap": "エディタの折り返しを有効にする", + "excludeFromRecents": "最近使ったアプリから除外", + "backupRestoreTitle": "暗号化された設定の復元", + "encryptedBackup": "暗号化バックアップ", + "encryptedRestore": "暗号化復元", + "backup": "バックアップ", + "restore": "復元", + "selectBackupLocation": "バックアップの保存場所を選択", + "backupFileTemplate": "backup_%s.gsbak", + "enterPassword": "%s のパスワードを入力", + "invalidPassword": "パスワードが無効です", + "community": "コミュニティ", + "guides": "ガイド", + "documentation": "ガイド & Wiki", + "viewDocumentation": "ガイド & Wikiを表示", + "requestAFeature": "機能のリクエスト", + "contributeTitle": "開発を支援する", + "improveTranslations": "翻訳を改善する", + "joinTheDiscussion": "Discordに参加する", + "noLogFilesFound": "ログファイルが見つかりません!", + "guidedSetup": "ガイド付きセットアップ", + "uiGuide": "UIガイド", + "viewPrivacyPolicy": "プライバシーポリシー", + "viewEula": "利用規約 (EULA)", + "shareLogs": "ログを共有", + "logsEmailSubjectTemplate": "GitSync ログ (%s)", + "logsEmailRecipient": "bugsviscouspotential@gmail.com", + "repositoryDefaults": "リポジトリのデフォルト設定", + "miscellaneous": "その他", + "dangerZone": "デッドゾーン", + + + + "@@x-FILE_MANAGEMENT": "", + "file": "ファイル", + "folder": "フォルダ", + "directory": "ディレクトリ", + "confirmFileDirDeleteTitle": "%s の削除確認", + "confirmFileDirDeleteMsg":"本当に %s \"%s\" %s を削除しますか?", + "deleteMultipleSuffix": "および他 %s 個の項目とその内容", + "deleteSingularSuffix": "とその内容", + "createAFile": "ファイルを作成", + "fileName": "ファイル名", + "createADir": "ディレクトリを作成", + "dirName": "フォルダ名", + "renameFileDir": "%s の名前を変更", + "fileTooLarge": "ファイルが %s 行を超えています", + "readOnly": "読み取り専用", + "cut": "切り取り", + "copy": "コピー", + "paste": "貼り付け", + "experimental": "実験的機能", + "experimentalMsg": "自己責任で使用してください", + "codeEditorLimits": "コードエディタの制限", + "codeEditorLimitsDescription": "コードエディタは基本的で機能的な編集を提供しますが、エッジケースや負荷の高い使用については十分なテストが行われていません。\n\nバグを見つけたり、機能の提案がある場合は、フィードバックをお待ちしています!グローバル設定または以下の「バグレポート」や「機能リクエスト」をご利用ください。", + "openFile": "ファイルを開く", + "openFileDescription": "ファイル内容のプレビュー/編集", + "viewGitLog": "Gitログを表示", + "viewGitLogDescription": "Gitの完全なログ履歴を表示", + "ignoreUntrack": ".gitignore + 追跡解除", + "ignoreUntrackDescription": "ファイルを.gitignoreに追加して追跡を解除", + "excludeUntrack": ".git/info/exclude + 追跡解除", + "excludeUntrackDescription": "ファイルをローカルのexcludeファイルに追加して追跡を解除", + "ignoreOnly": ".gitignoreへの追加のみ", + "ignoreOnlyDescription": "ファイルを.gitignoreにのみ追加", + "excludeOnly": ".git/info/excludeへの追加のみ", + "excludeOnlyDescription": "ファイルをローカルのexcludeファイルにのみ追加", + "untrack": "ファイルの追跡を解除", + "untrackDescription": "指定したファイルの追跡を解除", + "selected": "選択済み", + "ignoreAndUntrack": "無視 & 追跡解除", + + + "@@x-DIFF_VIEW": "", + "open": "開く", + "fileDiff": "ファイルの差分", + "openEditFile": "ファイルを開く/編集", + "filesChanged": "個のファイルが変更されました", + "commits": "個のコミット", + + + "@@x-REPO_MANAGEMENT": "", + "defaultContainerName": "エイリアス", + "renameRepository": "コンテナの名前を変更", + "renameRepositoryMsg": "リポジトリコンテナの新しいエイリアスを入力してください", + "addMore": "さらに追加", + "addRepository": "コンテナを追加", + "addRepositoryMsg": "新しいリポジトリコンテナに固有のエイリアスを付けてください。後で識別しやすくなります。", + "confirmRepositoryDelete": "コンテナ削除の確認", + "confirmRepositoryDeleteMsg": "本当にリポジトリコンテナ \"%s\" を削除しますか?", + "deleteRepoDirectoryCheckbox": "リポジトリのディレクトリとそのすべての内容も削除する", + "confirmRepositoryDeleteTitle": "コンテナ削除の確認", + "confirmRepositoryDeleteMessage": "本当にリポジトリ \"%s\" とその内容を削除しますか?", + "submodulesFoundTitle": "サブモジュールが見つかりました", + "submodulesFoundMessage": "追加したリポジトリにサブモジュールが含まれています。これらを個別のリポジトリとしてアプリに自動追加しますか?\n\nこれはプレミアム機能です。", + "submodulesFoundAction": "サブモジュールを追加", + + + "@@x-BRANCH_MANAGEMENT": "", + "confirmBranchCheckoutTitle": "ブランチをチェックアウトしますか?", + "confirmBranchCheckoutMsgPart1": "本当にブランチ ", + "confirmBranchCheckoutMsgPart2": " をチェックアウトしますか?", + "unsavedChangesMayBeLost": "保存されていない変更は失われる可能性があります。", + "checkout": "チェックアウト", + "create": "作成", + "createBranch": "新しいブランチを作成", + "createBranchName": "ブランチ名", + "createBranchBasedOn": "ベース", + + + + "@@x-ERRORS": "", + "attemptAutoFix": "自動修復を試みますか?", + "troubleshooting": "トラブルシューティング", + "youreOffline": "オフラインです。", + "someFeaturesMayNotWork": "一部の機能が動作しない可能性があります。", + "unsupportedGitAttributes": "このリポジトリはストア版でのみ利用可能なGit機能を使用しています。", + "tapToOpenPlayStore": "タップして更新してください。", + "ongoingMergeConflict": "進行中のマージコンフリクト", + "enableAccessibilityService": "「インストール済みのアプリ」からGitSyncを有効にしてください", + "networkUnavailable": "ネットワークが利用不可です!", + "networkUnavailableRetry": "ネットワークが利用不可です!\n接続復旧時に再試行します", + "pullFailed": "プルに失敗しました!未コミットの変更がないか確認して再試行してください。", + "reportABug": "バグを報告", + "reportBug": " タップしてバグレポートを送信", + "unknownError": "不明なエラー", + "enableNotifications": "詳細を表示するために通知権限を有効にしてください。", + "errorOccurredTitle": "エラーが発生しました!", + "errorOccurredMessagePart1": "問題が発生した場合は、下のボタンからすぐにバグレポートを作成してください。", + "errorOccurredMessagePart2": "または、長押しでクリップボードにコピーするか、閉じて続行してください。", + "applicationError": "アプリケーションエラー!", + "missingAuthorDetailsError": "リポジトリの作成者情報が不足しています。設定で名前とメールアドレスを設定してください。", + "outOfMemory": "メモリ不足が発生しました!", + "invalidRemote": "無効なリモートです!設定で変更してください", + "largeFile": "50MBを超える単一ファイルはサポートされていません!", + "cloneFailed": "リポジトリのクローンに失敗しました!", + "inaccessibleDirectoryMessage": "ディレクトリにアクセスできません!別の場所を選択してください。", + "autoRebaseFailedException": "リモートがローカルより進んでおり、fast-forwardでない更新になるため、自動リベースができませんでした。", + "nonExistingException": "リモートの参照が存在しませんでした。", + "rejectedNodeleteException": "リモート側が参照の削除をサポートまたは許可していないため、拒否されました。", + "rejectedException": "リモート参照の更新が拒否されました。", + "rejectionWithReasonException": "リモート参照の更新は %s のため拒否されました。", + "remoteChangedException": "リモートリポジトリ上の古いオブジェクトIDが期待されるものと異なっていたため、更新が拒否されました。", + "mergingExceptionMessage": "マージ中", + "fieldCannotBeEmpty": "このフィールドは必須です", + "androidLimitedFilepathCharacters": "これはAndroidのファイル命名制限による問題です。別のデバイスで該当するファイルの名前を変更してから再同期してください。\n\nサポートされていない文字: \" * / : < > ? \\ |", + "emptyNameOrEmail": "Git構成に作成者名またはメールアドレスが不足しています。設定を更新して含めてください。", + "errorReadingZlibStream": "これは特定のデバイスで発生する既知の問題で、アプリの最終レガシーバージョンで解決可能です。継続的なアクセスのためにダウンロードしてください(一部の機能が制限される場合があります)。", + "gitObsidianFoundTitle": "Obsidian Git 警告", + "gitObsidianFoundMessage": "このリポジトリには Obsidian Git プラグインが有効な Obsidian ボールトが含まれているようです。\n\n競合を避けるため、このデバイスではプラグインを無効にしてください!詳細はリンク先のドキュメントで確認できます。", + "gitObsidianFoundAction": "ドキュメントを表示", + + + "@@x-ISSUE_REPORTING": "", + "githubIssueOauthTitle": "GitHubを連携して自動報告", + "githubIssueOauthMsg": "バグを報告し、その進捗を追跡するには、GitHubアカウントを連携する必要があります。この連携はグローバル設定でいつでもリセットできます。", + "issueReportMessage": "ログはレポートに自動的に含まれます", + "includeLogs": "ログファイルを含める", + "issueReportTitleTitle": "タイトル", + "issueReportTitleDesc": "問題を要約した短い言葉", + "issueReportDescTitle": "詳細", + "issueReportDescDesc": "起きていることを詳しく説明してください", + "issueReportMinimalReproTitle": "再現手順", + "issueReportMinimalReproDesc": "エラーに至るまでに行った手順を説明してください", + "includeLogFiles": "ログファイルを含める", + "includeLogFilesDescription": "ログファイルを含めると、根本原因の特定が大幅に早まるため、強く推奨します。\n\n「ログファイルを含める」を無効にする場合は、関連するログの抜粋をレポートに貼り付けてください。\n\n送信前に目のアイコンを使用して、機密情報が含まれていないかログを確認できます。\n\nログの添付は任意です。", + "report": "報告する", + "issueReportSuccessTitle": "報告が完了しました", + "issueReportSuccessMsg": "問題が報告されました。進捗を確認したりメッセージに返信したりするために、このページをブックマークしてください。\n\n解決が難しくなるため、重複した報告は避けてください。\n\n7日間アクティビティがない問題は自動的にクローズされます。", + "trackIssue": "問題を追跡・メッセージに返信" +} \ No newline at end of file diff --git a/lib/l10n/app_localizations.dart b/lib/l10n/app_localizations.dart index fa38c641..5c4c5137 100644 --- a/lib/l10n/app_localizations.dart +++ b/lib/l10n/app_localizations.dart @@ -9,6 +9,7 @@ import 'app_localizations_de.dart'; import 'app_localizations_en.dart'; import 'app_localizations_es.dart'; import 'app_localizations_fr.dart'; +import 'app_localizations_ja.dart'; import 'app_localizations_ru.dart'; import 'app_localizations_zh.dart'; @@ -99,6 +100,7 @@ abstract class AppLocalizations { Locale('en'), Locale('es'), Locale('fr'), + Locale('ja'), Locale('ru'), Locale('zh'), Locale.fromSubtags(languageCode: 'zh', scriptCode: 'Hant'), @@ -2664,7 +2666,7 @@ class _AppLocalizationsDelegate extends LocalizationsDelegate } @override - bool isSupported(Locale locale) => ['de', 'en', 'es', 'fr', 'ru', 'zh'].contains(locale.languageCode); + bool isSupported(Locale locale) => ['de', 'en', 'es', 'fr', 'ja', 'ru', 'zh'].contains(locale.languageCode); @override bool shouldReload(_AppLocalizationsDelegate old) => false; @@ -2693,6 +2695,8 @@ AppLocalizations lookupAppLocalizations(Locale locale) { return AppLocalizationsEs(); case 'fr': return AppLocalizationsFr(); + case 'ja': + return AppLocalizationsJa(); case 'ru': return AppLocalizationsRu(); case 'zh': diff --git a/lib/l10n/app_localizations_ja.dart b/lib/l10n/app_localizations_ja.dart new file mode 100644 index 00000000..91d49497 --- /dev/null +++ b/lib/l10n/app_localizations_ja.dart @@ -0,0 +1,1298 @@ +// ignore: unused_import +import 'package:intl/intl.dart' as intl; +import 'app_localizations.dart'; + +// ignore_for_file: type=lint + +/// The translations for Japanese (`ja`). +class AppLocalizationsJa extends AppLocalizations { + AppLocalizationsJa([String locale = 'ja']) : super(locale); + + @override + String get dismiss => '閉じる'; + + @override + String get skip => 'スキップ'; + + @override + String get done => '完了'; + + @override + String get confirm => '確認'; + + @override + String get ok => 'OK'; + + @override + String get select => '選択'; + + @override + String get cancel => 'キャンセル'; + + @override + String get learnMore => '詳細はこちら'; + + @override + String get loadingElipsis => '読み込み中…'; + + @override + String get previous => '前へ'; + + @override + String get next => '次へ'; + + @override + String get finish => '終了'; + + @override + String get rename => '名前変更'; + + @override + String get add => '追加'; + + @override + String get delete => '削除'; + + @override + String get optionalLabel => '(任意)'; + + @override + String get ios => 'iOS'; + + @override + String get android => 'Android'; + + @override + String get syncStarting => '変更を検出中…'; + + @override + String get syncStartPull => '変更を同期中…'; + + @override + String get syncStartPush => 'ローカルの変更を同期中…'; + + @override + String get syncNotRequired => '同期は不要です!'; + + @override + String get syncComplete => 'リポジトリの同期が完了しました!'; + + @override + String get syncInProgress => '同期が進行中です'; + + @override + String get syncScheduled => '同期がスケジュールされました'; + + @override + String get detectingChanges => '変更を検出中…'; + + @override + String get thisActionCannotBeUndone => 'この操作は取り消せません。'; + + @override + String get cloneProgressLabel => 'クローン進行状況'; + + @override + String get forcePushProgressLabel => '強制プッシュ進行状況'; + + @override + String get forcePullProgressLabel => '強制プル進行状況'; + + @override + String get moreSyncOptionsLabel => 'その他の同期オプション'; + + @override + String get repositorySettingsLabel => 'リポジトリ設定'; + + @override + String get addBranchLabel => 'ブランチを追加'; + + @override + String get deselectDirLabel => 'ディレクトリの選択を解除'; + + @override + String get selectDirLabel => 'ディレクトリを選択'; + + @override + String get syncMessagesLabel => '同期メッセージの有効化/無効化'; + + @override + String get backLabel => '戻る'; + + @override + String get authDropdownLabel => '認証ドロップダウン'; + + @override + String get premiumDialogTitle => 'プレミアムをアンロック'; + + @override + String get premiumDialogMessage => + 'この機能はプレミアム体験の一部です。\n%s の一回払いを行うことで、アンロックしてより強力なツールを利用できます。\n\nプレミアム機能:\n • マルチリポジトリ対応\n\nまたは、GitHubアカウントを連携して、GitHubスポンサーの対象かどうかを確認してください。'; + + @override + String get premiumDialogButtonText => '%s でアンロック'; + + @override + String get premiumDialogGitHubButtonText => 'GitHubスポンサーを使用する'; + + @override + String get restorePurchase => '購入を復元'; + + @override + String get verifyGhSponsorTitle => 'GitHubスポンサーシップを確認'; + + @override + String get verifyGhSponsorMsg => 'GitHubスポンサーの方は、プレミアム機能に無料でアクセスできます。スポンサーのステータスを確認するため、GitHubで認証を行ってください。'; + + @override + String get verifyGhSponsorNote => '注意:新しいスポンサーシップがアプリに反映されるまで、最大1日かかる場合があります。'; + + @override + String get switchToClientMode => 'クライアントモードに切り替え…'; + + @override + String get switchToSyncMode => '同期モードに切り替え…'; + + @override + String get clientMode => 'クライアントモード'; + + @override + String get clientModeDescription => '拡張Git UI\n(上級者向け)'; + + @override + String get syncMode => '同期モード'; + + @override + String get syncModeDescription => '自動同期\n(初心者向け)'; + + @override + String get syncNow => '変更を同期'; + + @override + String get syncAllChanges => 'すべての変更を同期'; + + @override + String get stageAndCommit => 'ステージングとコミット'; + + @override + String get downloadChanges => '変更をダウンロード'; + + @override + String get uploadChanges => '変更をアップロード'; + + @override + String get downloadAndOverwrite => 'ダウンロード + 上書き'; + + @override + String get uploadAndOverwrite => 'アップロード + 上書き'; + + @override + String get fetchRemote => '%s をフェッチ'; + + @override + String get pullChanges => 'プル'; + + @override + String get pushChanges => 'プッシュ'; + + @override + String get updateSubmodules => 'サブモジュールを更新'; + + @override + String get forcePush => '強制プッシュ'; + + @override + String get forcePushing => '強制プッシュ中…'; + + @override + String get confirmForcePush => '強制プッシュの確認'; + + @override + String get confirmForcePushMsg => '本当にこれらの変更を強制プッシュしますか?実行中のマージコンフリクトはすべて中止されます。'; + + @override + String get forcePull => '強制プル'; + + @override + String get forcePulling => '強制プル中…'; + + @override + String get confirmForcePull => '強制プルの確認'; + + @override + String get confirmForcePullMsg => '本当にこれらの変更を強制プルしますか?実行中のマージコンフリクトはすべて無視されます。'; + + @override + String get localHistoryOverwriteWarning => 'この操作はローカルの履歴を上書きし、元に戻すことはできません。'; + + @override + String get forcePushPullMessage => 'プロセスが完了するまで、アプリを閉じたり終了したりしないでください。'; + + @override + String get manualSync => '手動同期'; + + @override + String get manualSyncMsg => '同期したいファイルを選択してください'; + + @override + String get commit => 'コミット'; + + @override + String get unstage => 'ステージ解除'; + + @override + String get stage => 'ステージング'; + + @override + String get selectAll => 'すべて選択'; + + @override + String get deselectAll => '選択解除'; + + @override + String get noUncommittedChanges => '未コミットの変更はありません'; + + @override + String get discardChanges => '変更を破棄'; + + @override + String get discardChangesTitle => '変更を破棄しますか?'; + + @override + String get discardChangesMsg => '\"%s\" へのすべての変更を破棄してもよろしいですか?'; + + @override + String get mergeConflictItemMessage => 'マージコンフリクトが発生しています!タップして解決してください'; + + @override + String get mergeConflict => 'マージコンフリクト'; + + @override + String get mergeDialogMessage => 'エディタを使用してマージコンフリクトを解決してください'; + + @override + String get commitMessage => 'コミットメッセージ'; + + @override + String get abortMerge => 'マージを中止'; + + @override + String get keepChanges => '変更を保持'; + + @override + String get local => 'ローカル'; + + @override + String get both => '両方'; + + @override + String get remote => 'リモート'; + + @override + String get merge => 'マージ'; + + @override + String get merging => 'マージ中…'; + + @override + String get resolvingMerge => 'マージを解決中…'; + + @override + String get iosClearDataTitle => '新規インストールですか?'; + + @override + String get iosClearDataMsg => + '再インストールの可能性がありますが、誤検知の場合もあります。iOSではアプリを削除して再インストールしてもキーチェーンが消去されないため、一部のデータが安全に保存されたままになっている場合があります。\n\n新規インストールでない場合、またはリセットしたくない場合は、このステップをスキップして構いません。'; + + @override + String get clearDataConfirmTitle => 'アプリデータのリセットを確認'; + + @override + String get clearDataConfirmMsg => 'これにより、キーチェーンのエントリを含むすべてのアプリデータが完全に削除されます。続行してもよろしいですか?'; + + @override + String get iosClearDataAction => 'すべてのデータを消去'; + + @override + String get legacyAppUserDialogTitle => '新バージョンへようこそ!'; + + @override + String get legacyAppUserDialogMessagePart1 => 'パフォーマンスの向上と将来の成長のために、アプリをゼロから再構築しました。'; + + @override + String get legacyAppUserDialogMessagePart2 => + '残念ながら、古い設定を引き継ぐことができないため、再度設定を行う必要があります。\n\nお気に入りの機能はすべて残っています。マルチリポジトリ対応は、今後の開発を支援するための少額の一回限りのアップグレードの一部となりました。'; + + @override + String get legacyAppUserDialogMessagePart3 => '引き続きご利用いただきありがとうございます :)'; + + @override + String get setUp => 'セットアップ'; + + @override + String get welcome => 'ようこそ!'; + + @override + String get welcomeMessage => '初めてのご利用のようですね。\n\n開始するためのクイックセットアップを行いますか?'; + + @override + String get welcomePositive => '開始する'; + + @override + String get welcomeNeutral => 'スキップ'; + + @override + String get welcomeNegative => '使い方は知っている'; + + @override + String get notificationDialogTitle => '通知を有効にする'; + + @override + String get notificationDialogMessage => '最高の体験のために、通知権限を有効にしてください。\n\nこのアプリは以下の目的で通知を使用します:\n • ポップアップ同期メッセージ(任意)\n • バグレポート'; + + @override + String get allFilesAccessDialogTitle => '「全ファイルへのアクセス」を有効にする'; + + @override + String get allFilesAccessDialogMessage => + '「全ファイルへのアクセス」権限を許可しないと GitSync を使用できません!最高の体験のために有効にしてください。\n\nこのアプリは、リポジトリをデバイス上の選択したディレクトリに同期するためにこの権限を使用します。選択したディレクトリ以外のファイルにアクセスすることはありません。'; + + @override + String get almostThereDialogTitle => 'あと少しです!'; + + @override + String get almostThereDialogMessageAndroid => + 'まもなく認証を行い、リポジトリをデバイスにクローンして同期の準備をします。\n\n設定完了後は、いくつかの方法で同期を開始できます:\n\n • アプリ内から\n • クイックタイルから\n • App Sync(アプリ同期)を使用して\n • カスタムインテント(上級者向け)を使用して'; + + @override + String get almostThereDialogMessageIos => 'まもなく認証を行い、リポジトリをデバイスにクローンして同期の準備をします。\n\n設定完了後は、以下の方法で同期を開始できます:\n\n • アプリ内から'; + + @override + String get authDialogTitle => 'Gitプロバイダーで認証'; + + @override + String get authDialogMessage => '選択したGitプロバイダーで認証を行い、リポジトリのクローンに進んでください!'; + + @override + String get authorDetailsPromptTitle => '作成者情報が必要です'; + + @override + String get authorDetailsPromptMessage => '作成者名またはメールアドレスが設定されていません。同期する前にリポジトリ設定で更新してください。'; + + @override + String get authorDetailsShowcasePrompt => '作成者情報を入力してください'; + + @override + String get goToSettings => '設定へ移動'; + + @override + String get enableAutosyncTitle => 'App Syncを有効にする'; + + @override + String get enableAutosyncMessage => 'データを手間なく最新に保ちます。App Syncをオンにすると、アプリが開かれたり閉じられたりする際、バックグラウンドで自動的に同期されます。'; + + @override + String get addMoreHint => 'このボタンをクリックして、アプリにリポジトリを追加します'; + + @override + String get globalSettingsHint => 'このボタンをクリックして、アプリのグローバル設定にアクセスします'; + + @override + String get syncProgressHint => 'アクティブな同期操作のステータスをここで追跡します'; + + @override + String get controlHint => 'これらのコントロールを使用して、手動同期やリポジトリ操作の管理を行います'; + + @override + String get configHint => 'このセクションを使用して、リポジトリ設定の構成や初期セットアップを行います'; + + @override + String get autoSyncOptionsHint => 'これらの設定を使用して、バックグラウンド同期を有効にし、データを自動的に最新の状態に保ちます'; + + @override + String get guidedSetupHint => 'ウォークスルーが必要な場合やUIを再確認したい場合は、ここをクリックしてセットアップまたはUIガイドを再開してください'; + + @override + String get currentBranch => '現在のブランチ'; + + @override + String get detachedHead => 'Detached Head'; + + @override + String get commitsNotFound => 'コミットが見つかりません…'; + + @override + String get repoNotFound => 'リポジトリが見つかりません…'; + + @override + String get committed => 'コミット済み'; + + @override + String get additions => '%s ++'; + + @override + String get deletions => '%s --'; + + @override + String get modifyRemoteUrl => 'リモートURLを変更'; + + @override + String get modify => '変更'; + + @override + String get remoteUrl => 'リモートURL'; + + @override + String get setRemoteUrl => 'リモートURLを設定'; + + @override + String get launchInBrowser => 'ブラウザで開く'; + + @override + String get auth => '認証'; + + @override + String get gitDirPathHint => '/storage/emulated/0/…'; + + @override + String get openFileExplorer => '閲覧と編集'; + + @override + String get syncSettings => '同期設定'; + + @override + String get enableApplicationObserver => 'App Sync設定'; + + @override + String get appSyncDescription => '選択したアプリが開かれた、または閉じられた時に自動同期します'; + + @override + String get accessibilityServiceDisclosureTitle => 'ユーザー補助サービスの開示'; + + @override + String get accessibilityServiceDisclosureMessage => + 'ユーザー体験を向上させるため、GitSyncはAndroidのユーザー補助サービスを使用してアプリの開閉を検出します。\n\nこれにより、データを保存または共有することなく、カスタマイズされた機能を提供できます。\n\n次の画面でGitSyncを有効にしてください'; + + @override + String get accessibilityServiceDescription => + 'ユーザー体験を向上させるため、GitSyncはAndroidのユーザー補助サービスを使用してアプリの開閉を検出します。これにより、データを保存または共有することなく、カスタマイズされた機能を提供できます。\n\n 要点: \n 目的: アプリ体験の向上のためにのみこのサービスを使用します。\n プライバシー: データが保存されたり外部に送信されたりすることはありません。\n コントロール: デバイスの設定からいつでもこれらの権限を無効にできます。'; + + @override + String get search => '検索'; + + @override + String get searchEllipsis => '検索…'; + + @override + String get applicationNotSet => 'アプリを選択'; + + @override + String get selectApplication => 'アプリを選択してください'; + + @override + String get multipleApplicationSelected => '選択済み (%s)'; + + @override + String get saveApplication => '保存'; + + @override + String get syncOnAppClosed => 'アプリが閉じられた時に同期'; + + @override + String get syncOnAppOpened => 'アプリが開かれた時に同期'; + + @override + String get scheduledSyncSettings => 'スケジュール同期設定'; + + @override + String get scheduledSyncDescription => 'バックグラウンドで定期的に自動同期します'; + + @override + String get sync => '同期'; + + @override + String get dontSync => '同期しない'; + + @override + String get iosDefaultSyncRate => 'iOSが許可した時'; + + @override + String get aboutEvery => '約…ごと'; + + @override + String get enhancedScheduledSync => '拡張スケジュール同期'; + + @override + String get enhancedScheduledSyncMsg1 => '基本的な同期とは異なり、この機能は高度なバックグラウンド更新を使用して、より頻繁かつ確実に最新データを取得します。'; + + @override + String get enhancedScheduledSyncMsg2 => 'アプリが閉じている時でも、最短で1分おきにリポジトリをバックグラウンドで同期できます!\n\n手間いらずの継続的な更新により、リポジトリはいつでも準備が整った状態になります。'; + + @override + String get enhancedScheduledSyncNote => '注意:バックグラウンド同期は、バッテリーセーバーやマナーモード(Do Not Disturb)の影響を受ける場合があります。'; + + @override + String get quickSyncSettings => 'クイック同期設定'; + + @override + String get quickSyncDescription => 'カスタマイズ可能なクイックタイル、ショートカット、またはウィジェットを使用して同期します'; + + @override + String get tileSyncSettings => 'タイル同期設定'; + + @override + String get otherSyncSettings => 'その他の同期設定'; + + @override + String get useForTileSync => '同期タイルに使用'; + + @override + String get useForTileManualSync => '手動同期タイルに使用'; + + @override + String get useForShortcutSync => '同期ショートカットに使用'; + + @override + String get useForShortcutManualSync => '手動同期ショートカットに使用'; + + @override + String get useForWidgetSync => '同期ウィジェットに使用'; + + @override + String get useForWidgetManualSync => '手動同期ウィジェットに使用'; + + @override + String get selectYourGitProviderAndAuthenticate => 'Gitプロバイダーを選択して認証してください'; + + @override + String get oauthProviders => 'OAuthプロバイダー'; + + @override + String get gitProtocols => 'Gitプロトコル'; + + @override + String get oauthNoAffiliation => 'サードパーティによる認証。提携や推奨を意味するものではありません。'; + + @override + String get replacesExistingAuth => '既存のコンテナ認証を\n置き換えます'; + + @override + String get oauth => 'OAuth'; + + @override + String get copyFromContainer => 'コンテナからコピー'; + + @override + String get or => 'または'; + + @override + String get enterPAT => '個人アクセストークン(PAT)を入力'; + + @override + String get usePAT => 'PATを使用'; + + @override + String get oauthAllRepos => 'OAuth (全リポジトリ)'; + + @override + String get oauthScoped => 'OAuth (スコープ限定)'; + + @override + String get ensureTokenScope => 'フル機能を利用するために、トークンに \"repo\" スコープが含まれていることを確認してください。'; + + @override + String get user => 'ユーザー'; + + @override + String get exampleUser => 'JohnSmith12'; + + @override + String get token => 'トークン'; + + @override + String get exampleToken => 'ghp_1234abcd5678efgh'; + + @override + String get login => 'ログイン'; + + @override + String get pubKey => '公開鍵'; + + @override + String get privKey => '秘密鍵'; + + @override + String get passphrase => 'パスフェーズ'; + + @override + String get privateKey => '秘密鍵'; + + @override + String get sshPubKeyExample => 'ssh-ed25519 AABBCCDDEEFF112233445566'; + + @override + String get sshPrivKeyExample => '-----BEGIN OPENSSH PRIVATE KEY----- AABBCCDDEEFF112233445566'; + + @override + String get generateKeys => '鍵を生成'; + + @override + String get confirmKeySaved => '公開鍵の保存を確認'; + + @override + String get copiedText => 'テキストをコピーしました!'; + + @override + String get confirmPrivKeyCopy => '秘密鍵のコピーを確認'; + + @override + String get confirmPrivKeyCopyMsg => '秘密鍵をクリップボードにコピーしてもよろしいですか?\n\nこの鍵にアクセスできる人は誰でもあなたのアカウントを操作できます。安全な場所にのみ貼り付け、その後クリップボードを消去してください。'; + + @override + String get understood => '了解しました'; + + @override + String get importPrivateKey => '秘密鍵をインポート'; + + @override + String get importPrivateKeyMsg => '既存のアカウントを使用するには、以下に秘密鍵を貼り付けてください。\n\nこの鍵にアクセスできる人は誰でもあなたのアカウントを操作できるため、安全な環境で貼り付けていることを確認してください。'; + + @override + String get importKey => 'インポート'; + + @override + String get cloneRepo => 'リモートリポジトリをクローン'; + + @override + String get clone => 'クローン'; + + @override + String get chooseHowToClone => 'クローン方法を選択してください:'; + + @override + String get directCloningMsg => '直接クローン:選択したフォルダ内にリポジトリをクローンします'; + + @override + String get nestedCloningMsg => 'ネストされたクローン:選択したフォルダ内にリポジトリ名の新しいフォルダを作成します'; + + @override + String get directClone => '直接クローン'; + + @override + String get nestedClone => 'ネストされたクローン'; + + @override + String get gitRepoUrlHint => 'https://git.abc/xyz.git'; + + @override + String get invalidRepositoryUrlTitle => '無効なリポジトリURLです!'; + + @override + String get invalidRepositoryUrlMessage => '無効なリポジトリURLです!'; + + @override + String get cloneAnyway => '強制的にクローン'; + + @override + String get iHaveALocalRepository => 'ローカルリポジトリがある場合'; + + @override + String get cloningRepository => 'リポジトリをクローン中…'; + + @override + String get cloneMessagePart1 => 'この画面を閉じないでください'; + + @override + String get cloneMessagePart2 => 'リポジトリのサイズによっては時間がかかる場合があります\n'; + + @override + String get selectCloneDirectory => 'クローン先のフォルダを選択'; + + @override + String get confirmCloneOverwriteTitle => 'フォルダが空ではありません'; + + @override + String get confirmCloneOverwriteMsg => '選択したフォルダには既にファイルが含まれています。クローンを実行すると内容が上書きされます。'; + + @override + String get confirmCloneOverwriteWarning => 'この操作は取り消せません。'; + + @override + String get confirmCloneOverwriteAction => '上書き'; + + @override + String get repoSearchLimits => 'リポジトリ検索の制限'; + + @override + String get repoSearchLimitsDescription => + 'リポジトリ検索はAPIから返される最初の100件のリポジトリのみを調査するため、目的のリポジトリが表示されない場合があります。\n\n目的のリポジトリが検索結果に表示されない場合は、HTTPSまたはSSHのURLを使用して直接クローンしてください。'; + + @override + String get repositorySettings => 'リポジトリ設定'; + + @override + String get settings => '設定'; + + @override + String get signedCommitsLabel => '署名付きコミット'; + + @override + String get signedCommitsDescription => '身元を確認するためにコミットに署名します'; + + @override + String get importCommitKey => '鍵をインポート'; + + @override + String get commitKeyImported => '鍵をインポートしました'; + + @override + String get useSshKey => 'コミット署名に認証キーを使用'; + + @override + String get syncMessageLabel => '同期メッセージ'; + + @override + String get syncMessageDescription => '日付と時刻には %s を使用'; + + @override + String get syncMessageTimeFormatLabel => '同期メッセージの日時形式'; + + @override + String get syncMessageTimeFormatDescription => '標準的な日時フォーマット構文を使用します'; + + @override + String get remoteLabel => 'デフォルトのリモート'; + + @override + String get defaultRemote => 'origin'; + + @override + String get authorNameLabel => '作成者名'; + + @override + String get authorName => 'JohnSmith12'; + + @override + String get authorEmailLabel => '作成者のメールアドレス'; + + @override + String get authorEmail => 'john12@smith.com'; + + @override + String get gitIgnore => '.gitignore'; + + @override + String get gitIgnoreDescription => 'すべてのデバイスで無視するファイルやフォルダのリスト'; + + @override + String get gitIgnoreHint => '.trash/\n./…'; + + @override + String get gitInfoExclude => '.git/info/exclude'; + + @override + String get gitInfoExcludeDescription => 'このデバイスでのみ無視するファイルやフォルダのリスト'; + + @override + String get gitInfoExcludeHint => '.trash/\n./…'; + + @override + String get disableSsl => 'SSLを無効化'; + + @override + String get disableSslDescription => 'HTTPリポジトリのセキュア接続を無効化'; + + @override + String get disableSslPromptTitle => 'SSLを無効にしますか?'; + + @override + String get disableSslPromptMsg => 'クローンしたアドレスは \"http\" で始まっており、安全ではありません。SSLを無効にするとURLと一致しますが、セキュリティは低下します。'; + + @override + String get optimisedSync => '最適化された同期'; + + @override + String get optimisedSyncDescription => '全体の同期操作をインテリジェントに削減します'; + + @override + String get proceedAnyway => '続行しますか?'; + + @override + String get moreOptions => 'その他のオプション'; + + @override + String get untrackAll => 'すべての追跡を解除'; + + @override + String get globalSettings => 'グローバル設定'; + + @override + String get darkMode => 'ダーク\nモード'; + + @override + String get lightMode => 'ライト\nモード'; + + @override + String get system => 'システム'; + + @override + String get language => '言語'; + + @override + String get browseEditDir => '閲覧・編集ディレクトリ'; + + @override + String get enableLineWrap => 'エディタの折り返しを有効にする'; + + @override + String get excludeFromRecents => '最近使ったアプリから除外'; + + @override + String get backupRestoreTitle => '暗号化された設定の復元'; + + @override + String get encryptedBackup => '暗号化バックアップ'; + + @override + String get encryptedRestore => '暗号化復元'; + + @override + String get backup => 'バックアップ'; + + @override + String get restore => '復元'; + + @override + String get selectBackupLocation => 'バックアップの保存場所を選択'; + + @override + String get backupFileTemplate => 'backup_%s.gsbak'; + + @override + String get enterPassword => '%s のパスワードを入力'; + + @override + String get invalidPassword => 'パスワードが無効です'; + + @override + String get community => 'コミュニティ'; + + @override + String get guides => 'ガイド'; + + @override + String get documentation => 'ガイド & Wiki'; + + @override + String get viewDocumentation => 'ガイド & Wikiを表示'; + + @override + String get requestAFeature => '機能のリクエスト'; + + @override + String get contributeTitle => '開発を支援する'; + + @override + String get improveTranslations => '翻訳を改善する'; + + @override + String get joinTheDiscussion => 'Discordに参加する'; + + @override + String get noLogFilesFound => 'ログファイルが見つかりません!'; + + @override + String get guidedSetup => 'ガイド付きセットアップ'; + + @override + String get uiGuide => 'UIガイド'; + + @override + String get viewPrivacyPolicy => 'プライバシーポリシー'; + + @override + String get viewEula => '利用規約 (EULA)'; + + @override + String get shareLogs => 'ログを共有'; + + @override + String get logsEmailSubjectTemplate => 'GitSync ログ (%s)'; + + @override + String get logsEmailRecipient => 'bugsviscouspotential@gmail.com'; + + @override + String get repositoryDefaults => 'リポジトリのデフォルト設定'; + + @override + String get miscellaneous => 'その他'; + + @override + String get dangerZone => 'デッドゾーン'; + + @override + String get file => 'ファイル'; + + @override + String get folder => 'フォルダ'; + + @override + String get directory => 'ディレクトリ'; + + @override + String get confirmFileDirDeleteTitle => '%s の削除確認'; + + @override + String get confirmFileDirDeleteMsg => '本当に %s \"%s\" %s を削除しますか?'; + + @override + String get deleteMultipleSuffix => 'および他 %s 個の項目とその内容'; + + @override + String get deleteSingularSuffix => 'とその内容'; + + @override + String get createAFile => 'ファイルを作成'; + + @override + String get fileName => 'ファイル名'; + + @override + String get createADir => 'ディレクトリを作成'; + + @override + String get dirName => 'フォルダ名'; + + @override + String get renameFileDir => '%s の名前を変更'; + + @override + String get fileTooLarge => 'ファイルが %s 行を超えています'; + + @override + String get readOnly => '読み取り専用'; + + @override + String get cut => '切り取り'; + + @override + String get copy => 'コピー'; + + @override + String get paste => '貼り付け'; + + @override + String get experimental => '実験的機能'; + + @override + String get experimentalMsg => '自己責任で使用してください'; + + @override + String get codeEditorLimits => 'コードエディタの制限'; + + @override + String get codeEditorLimitsDescription => + 'コードエディタは基本的で機能的な編集を提供しますが、エッジケースや負荷の高い使用については十分なテストが行われていません。\n\nバグを見つけたり、機能の提案がある場合は、フィードバックをお待ちしています!グローバル設定または以下の「バグレポート」や「機能リクエスト」をご利用ください。'; + + @override + String get openFile => 'ファイルを開く'; + + @override + String get openFileDescription => 'ファイル内容のプレビュー/編集'; + + @override + String get viewGitLog => 'Gitログを表示'; + + @override + String get viewGitLogDescription => 'Gitの完全なログ履歴を表示'; + + @override + String get ignoreUntrack => '.gitignore + 追跡解除'; + + @override + String get ignoreUntrackDescription => 'ファイルを.gitignoreに追加して追跡を解除'; + + @override + String get excludeUntrack => '.git/info/exclude + 追跡解除'; + + @override + String get excludeUntrackDescription => 'ファイルをローカルのexcludeファイルに追加して追跡を解除'; + + @override + String get ignoreOnly => '.gitignoreへの追加のみ'; + + @override + String get ignoreOnlyDescription => 'ファイルを.gitignoreにのみ追加'; + + @override + String get excludeOnly => '.git/info/excludeへの追加のみ'; + + @override + String get excludeOnlyDescription => 'ファイルをローカルのexcludeファイルにのみ追加'; + + @override + String get untrack => 'ファイルの追跡を解除'; + + @override + String get untrackDescription => '指定したファイルの追跡を解除'; + + @override + String get selected => '選択済み'; + + @override + String get ignoreAndUntrack => '無視 & 追跡解除'; + + @override + String get open => '開く'; + + @override + String get fileDiff => 'ファイルの差分'; + + @override + String get openEditFile => 'ファイルを開く/編集'; + + @override + String get filesChanged => '個のファイルが変更されました'; + + @override + String get commits => '個のコミット'; + + @override + String get defaultContainerName => 'エイリアス'; + + @override + String get renameRepository => 'コンテナの名前を変更'; + + @override + String get renameRepositoryMsg => 'リポジトリコンテナの新しいエイリアスを入力してください'; + + @override + String get addMore => 'さらに追加'; + + @override + String get addRepository => 'コンテナを追加'; + + @override + String get addRepositoryMsg => '新しいリポジトリコンテナに固有のエイリアスを付けてください。後で識別しやすくなります。'; + + @override + String get confirmRepositoryDelete => 'コンテナ削除の確認'; + + @override + String get confirmRepositoryDeleteMsg => '本当にリポジトリコンテナ \"%s\" を削除しますか?'; + + @override + String get deleteRepoDirectoryCheckbox => 'リポジトリのディレクトリとそのすべての内容も削除する'; + + @override + String get confirmRepositoryDeleteTitle => 'コンテナ削除の確認'; + + @override + String get confirmRepositoryDeleteMessage => '本当にリポジトリ \"%s\" とその内容を削除しますか?'; + + @override + String get submodulesFoundTitle => 'サブモジュールが見つかりました'; + + @override + String get submodulesFoundMessage => '追加したリポジトリにサブモジュールが含まれています。これらを個別のリポジトリとしてアプリに自動追加しますか?\n\nこれはプレミアム機能です。'; + + @override + String get submodulesFoundAction => 'サブモジュールを追加'; + + @override + String get confirmBranchCheckoutTitle => 'ブランチをチェックアウトしますか?'; + + @override + String get confirmBranchCheckoutMsgPart1 => '本当にブランチ '; + + @override + String get confirmBranchCheckoutMsgPart2 => ' をチェックアウトしますか?'; + + @override + String get unsavedChangesMayBeLost => '保存されていない変更は失われる可能性があります。'; + + @override + String get checkout => 'チェックアウト'; + + @override + String get create => '作成'; + + @override + String get createBranch => '新しいブランチを作成'; + + @override + String get createBranchName => 'ブランチ名'; + + @override + String get createBranchBasedOn => 'ベース'; + + @override + String get attemptAutoFix => '自動修復を試みますか?'; + + @override + String get troubleshooting => 'トラブルシューティング'; + + @override + String get youreOffline => 'オフラインです。'; + + @override + String get someFeaturesMayNotWork => '一部の機能が動作しない可能性があります。'; + + @override + String get unsupportedGitAttributes => 'このリポジトリはストア版でのみ利用可能なGit機能を使用しています。'; + + @override + String get tapToOpenPlayStore => 'タップして更新してください。'; + + @override + String get ongoingMergeConflict => '進行中のマージコンフリクト'; + + @override + String get enableAccessibilityService => '「インストール済みのアプリ」からGitSyncを有効にしてください'; + + @override + String get networkUnavailable => 'ネットワークが利用不可です!'; + + @override + String get networkUnavailableRetry => 'ネットワークが利用不可です!\n接続復旧時に再試行します'; + + @override + String get pullFailed => 'プルに失敗しました!未コミットの変更がないか確認して再試行してください。'; + + @override + String get reportABug => 'バグを報告'; + + @override + String get reportBug => ' タップしてバグレポートを送信'; + + @override + String get unknownError => '不明なエラー'; + + @override + String get enableNotifications => '詳細を表示するために通知権限を有効にしてください。'; + + @override + String get errorOccurredTitle => 'エラーが発生しました!'; + + @override + String get errorOccurredMessagePart1 => '問題が発生した場合は、下のボタンからすぐにバグレポートを作成してください。'; + + @override + String get errorOccurredMessagePart2 => 'または、長押しでクリップボードにコピーするか、閉じて続行してください。'; + + @override + String get applicationError => 'アプリケーションエラー!'; + + @override + String get missingAuthorDetailsError => 'リポジトリの作成者情報が不足しています。設定で名前とメールアドレスを設定してください。'; + + @override + String get outOfMemory => 'メモリ不足が発生しました!'; + + @override + String get invalidRemote => '無効なリモートです!設定で変更してください'; + + @override + String get largeFile => '50MBを超える単一ファイルはサポートされていません!'; + + @override + String get cloneFailed => 'リポジトリのクローンに失敗しました!'; + + @override + String get inaccessibleDirectoryMessage => 'ディレクトリにアクセスできません!別の場所を選択してください。'; + + @override + String get autoRebaseFailedException => 'リモートがローカルより進んでおり、fast-forwardでない更新になるため、自動リベースができませんでした。'; + + @override + String get nonExistingException => 'リモートの参照が存在しませんでした。'; + + @override + String get rejectedNodeleteException => 'リモート側が参照の削除をサポートまたは許可していないため、拒否されました。'; + + @override + String get rejectedException => 'リモート参照の更新が拒否されました。'; + + @override + String get rejectionWithReasonException => 'リモート参照の更新は %s のため拒否されました。'; + + @override + String get remoteChangedException => 'リモートリポジトリ上の古いオブジェクトIDが期待されるものと異なっていたため、更新が拒否されました。'; + + @override + String get mergingExceptionMessage => 'マージ中'; + + @override + String get fieldCannotBeEmpty => 'このフィールドは必須です'; + + @override + String get androidLimitedFilepathCharacters => + 'これはAndroidのファイル命名制限による問題です。別のデバイスで該当するファイルの名前を変更してから再同期してください。\n\nサポートされていない文字: \" * / : < > ? \\ |'; + + @override + String get emptyNameOrEmail => 'Git構成に作成者名またはメールアドレスが不足しています。設定を更新して含めてください。'; + + @override + String get errorReadingZlibStream => 'これは特定のデバイスで発生する既知の問題で、アプリの最終レガシーバージョンで解決可能です。継続的なアクセスのためにダウンロードしてください(一部の機能が制限される場合があります)。'; + + @override + String get gitObsidianFoundTitle => 'Obsidian Git 警告'; + + @override + String get gitObsidianFoundMessage => + 'このリポジトリには Obsidian Git プラグインが有効な Obsidian ボールトが含まれているようです。\n\n競合を避けるため、このデバイスではプラグインを無効にしてください!詳細はリンク先のドキュメントで確認できます。'; + + @override + String get gitObsidianFoundAction => 'ドキュメントを表示'; + + @override + String get githubIssueOauthTitle => 'GitHubを連携して自動報告'; + + @override + String get githubIssueOauthMsg => 'バグを報告し、その進捗を追跡するには、GitHubアカウントを連携する必要があります。この連携はグローバル設定でいつでもリセットできます。'; + + @override + String get issueReportMessage => 'ログはレポートに自動的に含まれます'; + + @override + String get includeLogs => 'ログファイルを含める'; + + @override + String get issueReportTitleTitle => 'タイトル'; + + @override + String get issueReportTitleDesc => '問題を要約した短い言葉'; + + @override + String get issueReportDescTitle => '詳細'; + + @override + String get issueReportDescDesc => '起きていることを詳しく説明してください'; + + @override + String get issueReportMinimalReproTitle => '再現手順'; + + @override + String get issueReportMinimalReproDesc => 'エラーに至るまでに行った手順を説明してください'; + + @override + String get includeLogFiles => 'ログファイルを含める'; + + @override + String get includeLogFilesDescription => + 'ログファイルを含めると、根本原因の特定が大幅に早まるため、強く推奨します。\n\n「ログファイルを含める」を無効にする場合は、関連するログの抜粋をレポートに貼り付けてください。\n\n送信前に目のアイコンを使用して、機密情報が含まれていないかログを確認できます。\n\nログの添付は任意です。'; + + @override + String get report => '報告する'; + + @override + String get issueReportSuccessTitle => '報告が完了しました'; + + @override + String get issueReportSuccessMsg => + '問題が報告されました。進捗を確認したりメッセージに返信したりするために、このページをブックマークしてください。\n\n解決が難しくなるため、重複した報告は避けてください。\n\n7日間アクティビティがない問題は自動的にクローズされます。'; + + @override + String get trackIssue => '問題を追跡・メッセージに返信'; +}