From cc17260e54446c2ad255d5c7c70ebc3a1c73d341 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=AF=E3=82=89=E3=81=9F=E3=81=8F?= Date: Sat, 17 Dec 2022 12:01:54 +0900 Subject: [PATCH] add japanese translation --- assets/translations/ja.json | 235 ++++++++++++++++++++++++++++++++++++ lib/main.dart | 2 +- 2 files changed, 236 insertions(+), 1 deletion(-) create mode 100644 assets/translations/ja.json diff --git a/assets/translations/ja.json b/assets/translations/ja.json new file mode 100644 index 0000000..4fc228b --- /dev/null +++ b/assets/translations/ja.json @@ -0,0 +1,235 @@ +{ + "invalidURLForSource": "{}は有効なソースURLではありません", + "noReleaseFound": "適切なリリースが見つかりませんでした", + "noVersionFound": "リリースバージョンを特定できませんでした", + "urlMatchesNoSource": "URLが既知のソースと一致しません", + "cantInstallOlderVersion": "旧バージョンのアプリをインストールできません", + "appIdMismatch": "ダウンロードしたパッケージのIDが既存のApp IDと一致しません", + "functionNotImplemented": "このクラスはこの機能を実装していません", + "placeholder": "プレースホルダー", + "someErrors": "いくつかのエラーが発生しました", + "unexpectedError": "予期せぬエラーが発生しました", + "ok": "OK", + "and": "と", + "startedBgUpdateTask": "Started BG update check task", + "bgUpdateIgnoreAfterIs": "Bg update ignoreAfter is {}", + "startedActualBGUpdateCheck": "Started actual BG update checking", + "bgUpdateTaskFinished": "Finished BG update check task", + "firstRun": "This is the first ever run of Obtainium", + "settingUpdateCheckIntervalTo": "更新間隔を{}に設定する", + "githubPATLabel": "GitHub パーソナルアクセストークン (Increases Rate Limit)", + "githubPATHint": "PATは次の形式でなければなりません: ユーザー名:トークン", + "githubPATFormat": "ユーザー名:トークン", + "githubPATLinkText": "'GitHub PATsについて", + "includePrereleases": "プレリリースを含む", + "fallbackToOlderReleases": "旧リリースへのフォールバック", + "filterReleaseTitlesByRegEx": "正規表現でリリースタイトルを絞り込む", + "invalidRegEx": "無効な正規表現", + "noDescription": "説明はありません", + "cancel": "キャンセル", + "continue": "続ける", + "requiredInBrackets": "(必須)", + "dropdownNoOptsError": "エラー: ドロップダウンには、少なくとも1つのoptが必要です。", + "colour": "カラー", + "githubStarredRepos": "Githubでスターしたリポジトリ", + "uname": "ユーザー名", + "wrongArgNum": "提供する引数の数が間違っています", + "xIsTrackOnly": "{} は'Track-Only'です", + "source": "ソース", + "app": "アプリ", + "appsFromSourceAreTrackOnly": "このソースからのアプリは'Track-Only'です'。", + "youPickedTrackOnly": "'Track-Only'を選択しています", + "trackOnlyAppDescription": "アプリのアップデートは追跡されますが、Obtainiumはアプリのダウンロードやインストールをすることはできません。", + "cancelled": "キャンセルしました", + "appAlreadyAdded": "アプリはすでに追加されています", + "alreadyUpToDateQuestion": "アプリはすでに最新ですか?", + "addApp": "アプリ追加", + "appSourceURL": "アプリのソースURL", + "error": "エラー", + "add": "追加", + "searchSomeSourcesLabel": "検索 (一部ソースのみ)", + "search": "検索", + "additionalOptsFor": "{}の追加オプション", + "supportedSourcesBelow": "対応するソース:", + "trackOnlyInBrackets": "(Track-Only)", + "searchableInBrackets": "(検索可能)", + "appsString": "アプリ", + "noApps": "アプリはありません", + "noAppsForFilter": "フィルターに一致するアプリはありません", + "byX": "{}による", + "percentProgress": "ダウンロード中: {}%", + "pleaseWait": "しばらくお待ちください", + "updateAvailable": "アップデートを利用可能", + "estimateInBracketsShort": "(推定)", + "notInstalled": "未インストール", + "estimateInBrackets": "(推定)", + "selectAll": "すべて選択", + "deselectN": "{}件を選択解除", + "xWillBeRemovedButRemainInstalled": "{}はObtainiumから削除されますが、デバイスにはインストールされたままです。", + "removeSelectedAppsQuestion": "選択したアプリを削除しますか?", + "removeSelectedApps": "選択したアプリを削除する", + "updateX": "{}を更新する", + "installX": "{}をインストールする", + "markXTrackOnlyAsUpdated": "Mark {}\n(Track-Only)\nas Updated", + "changeX": "{}を変更する", + "installUpdateApps": "アプリのインストール/アップデート", + "installUpdateSelectedApps": "選択したアプリのインストール/アップデート", + "onlyWorksWithNonEVDApps": "インストール状況を自動検出できないアプリ(一般的でないもの)のみ動作します。", + "markXSelectedAppsAsUpdated": "{}個の選択したアプリをアップデート済みとしてマークしますか?", + "no": "いいえ", + "yes": "はい", + "markSelectedAppsUpdated": "選択したアプリをアップデート済みとしてマークする", + "pinToTop": "トップに固定", + "unpinFromTop": "トップから固定解除", + "resetInstallStatusForSelectedAppsQuestion": "選択したアプリのインストール状態をリセットしますか?", + "installStatusOfXWillBeResetExplanation": "選択したアプリのインストール状態がリセットされます。\n\nアップデートに失敗するなどして、Obtainiumに表示されるアプリのバージョンが正しくない場合に役立ちます。", + "shareSelectedAppURLs": "選択したアプリのURLを共有する", + "resetInstallStatus": "インストール状態をリセットする", + "more": "もっと見る", + "removeOutdatedFilter": "期限切れのアプリフィルターを削除", + "showOutdatedOnly": "期限切れのアプリのみ表示する", + "filter": "フィルター", + "filterActive": "フィルター *", + "filterApps": "アプリをフィルターする", + "appName": "アプリ名", + "author": "作者", + "upToDateApps": "最新のアプリ", + "nonInstalledApps": "未インストールのアプリ", + "importExport": "インポート/エクスポート", + "settings": "設定", + "exportedTo": "{}にエクスポートしました", + "obtainiumExport": "Obtainium Export", + "invalidInput": "無効な入力", + "importedX": "{}をインポートしました", + "obtainiumImport": "Obtainium Import", + "importFromURLList": "URLリストからのインポート", + "searchQuery": "検索キーワード", + "appURLList": "アプリのURLリスト", + "line": "行", + "searchX": "検索 {}", + "noResults": "結果は見つかりませんでした", + "importX": "{}をインポートする", + "importedAppsIdDisclaimer": "インポートしたアプリが「Not Installed」と表示されることがあります。\nこれを解決するには、Obtainiumから再インストールしてください。\nアプリのデータには影響ありません。\n\nURLとサードパーティーのインポートメソッドにのみ影響します。", + "importErrors": "インポートエラー", + "importedXOfYApps": "{} / {} アプリをインポートしました", + "followingURLsHadErrors": "以下のURLでエラーが発生しました。:", + "okay": "OK", + "selectURL": "URLを選択", + "selectURLs": "URLを選択", + "pick": "選択", + "theme": "テーマ", + "dark": "ダーク", + "light": "ライト", + "followSystem": "システムに従う", + "obtainium": "Obtainium", + "materialYou": "Material You", + "appSortBy": "アプリの並び順", + "authorName": "作者/名前", + "nameAuthor": "名前/作者", + "asAdded": "追加順", + "appSortOrder": "並び方", + "ascending": "昇順", + "descending": "下降", + "bgUpdateCheckInterval": "バックグラウンド更新の確認間隔", + "neverManualOnly": "OFF - 手動のみ", + "appearance": "外観", + "showWebInAppView": "アプリビューにソースウェブページを表示する", + "pinUpdates": "更新があるアプリをトップに固定する", + "updates": "更新", + "sourceSpecific": "Github アクセストークン", + "appSource": "アプリのソース", + "noLogs": "ログはありません", + "appLogs": "アプリのログ", + "close": "閉じる", + "share": "共有", + "appNotFound": "アプリが見つかりません", + "obtainiumExportHyphenatedLowercase": "obtainium-export", + "pickAnAPK": "APKを選ぶ", + "appHasMoreThanOnePackage": "{}は複数のパッケージを持っています: ", + "deviceSupportsXArch": "お使いのデバイスは{} CPUアーキテクチャに対応しています。", + "deviceSupportsFollowingArchs": "お使いのデバイスは、以下のCPUアーキテクチャをサポートしています。:", + "warning": "警告", + "sourceIsXButPackageFromYPrompt": "アプリのソースは'{}'ですが、リリースパッケージは'{}'から来ています。続行しますか?", + "updatesAvailable": "更新があります", + "updatesAvailableNotifDescription": "Obtainiumが追跡している1つまたは複数のアプリのアップデートが利用可能であることをユーザーに通知します", + "noNewUpdates": "新しいアップデートはありません。", + "xHasAnUpdate": "{}は更新があります。", + "appsUpdated": "アプリを更新しました", + "appsUpdatedNotifDescription": "1つまたは複数のAppのアップデートがバックグラウンドで適用されたことをユーザーに通知する", + "xWasUpdatedToY": "{}が{}に更新されました。", + "errorCheckingUpdates": "アップデート時のエラーチェック", + "errorCheckingUpdatesNotifDescription": "バックグラウンドでのアップデートチェックに失敗した際に表示される通知する", + "appsRemoved": "削除されたアプリ", + "appsRemovedNotifDescription": "アプリの読み込み中にエラーが発生したため、1つまたは複数のアプリが削除されたことをユーザーに通知する", + "xWasRemovedDueToErrorY": "このエラーのため、{}は削除されました: {}", + "completeAppInstallation": "アプリのインストールを完了する", + "obtainiumMustBeOpenToInstallApps": "アプリをインストールするにはObtainiumが開いている必要があります。", + "completeAppInstallationNotifDescription": "アプリのインストールを完了するために、Obtainiumに戻る必要があります。", + "checkingForUpdates": "アップデートの確認", + "checkingForUpdatesNotifDescription": "Transient notification that appears when checking for updates", + "pleaseAllowInstallPerm": "Obtainiumによるアプリのインストールを許可してください。", + "trackOnly": "Track-Only", + "errorWithHttpStatusCode": "エラー {}", + "versionCorrectionDisabled": "バージョン補正無効 (プラグインが動作していません)", + "unknown": "不明", + "none": "なし", + "never": "Never", + "latestVersionX": "最新版: {}", + "installedVersionX": "インストールされたバージョン: {}", + "lastUpdateCheckX": "最終アップデート確認: {}", + "remove": "削除", + "removeAppQuestion": "アプリを削除しますか?", + "yesMarkUpdated": "はい、更新済みとしてマーク", + "fdroid": "F-Droid", + "appIdOrName": "アプリIDまたは名前", + "appWithIdOrNameNotFound": "そのIDや名前を持つアプリは見つかりませんでした", + "reposHaveMultipleApps": "レポには複数のAppが含まれることがあります", + "fdroidThirdPartyRepo": "F-Droid Third-Party Repo", + "steam": "Steam", + "steamMobile": "Steam Mobile", + "steamChat": "Steam Chat", + "tooManyRequestsTryAgainInMinutes": { + "one": "リクエストが多すぎます(レート制限あり)- {}分後に再試行してください。", + "other": "リクエストが多すぎます(レート制限あり)- {}分後に再試行してください。" + }, + "bgUpdateGotErrorRetryInMinutes": { + "one": "BG update checking encountered a {}, will schedule a retry check in {} minute", + "other": "BG update checking encountered a {}, will schedule a retry check in {} minutes" + }, + "bgCheckFoundUpdatesWillNotifyIfNeeded": { + "one": "BG update checking found {} update - will notify user if needed", + "other": "BG update checking found {} updates - will notify user if needed" + }, + "apps": { + "one": "{}個のアプリ", + "other": "{}個のアプリ" + }, + "url": { + "one": "{}個のURL", + "other": "{}個のURL" + }, + "minute": { + "one": "{}分", + "other": "{}分" + }, + "hour": { + "one": "{}時間", + "other": "{}時間" + }, + "day": { + "one": "{}日", + "other": "{}日" + }, + "clearedNLogsBeforeXAfterY": { + "one": "{n}個のログをクリアしました (前 = {before}, 後 = {after})", + "other": "{n}個のログをクリアしました (前 = {before}, 後 = {after})" + }, + "xAndNMoreUpdatesAvailable": { + "one": "{}と{}のアプリが更新があります。", + "other": "{}と{}のアプリが更新があります。" + }, + "xAndNMoreUpdatesInstalled": { + "one": "{}と{}のアプリが更新しました。", + "other": "{}と{}のアプリが更新しました。" + } +} diff --git a/lib/main.dart b/lib/main.dart index 54bdd4b..9f66018 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -27,7 +27,7 @@ const String currentReleaseTag = const int bgUpdateCheckAlarmId = 666; -const supportedLocales = [Locale('en'), Locale('zh'), Locale('it')]; +const supportedLocales = [Locale('en'), Locale('zh'), Locale('it'), Locale('ja')]; const fallbackLocale = Locale('en'); const localeDir = 'assets/translations';