From e02d1987c6ad7825457416bc8fe505324b43ab6e Mon Sep 17 00:00:00 2001 From: TianchengHu <3139658+tiancheng2000@users.noreply.github.com> Date: Fri, 11 Jun 2021 12:53:09 +0800 Subject: [PATCH] feat-i18n-ja (#259) --- src/scripts/i18n/README.md | 1 + src/scripts/i18n/_locales.ts | 2 + src/scripts/i18n/ja.json | 235 +++++++++++++++++++++++++++++++++++ 3 files changed, 238 insertions(+) create mode 100644 src/scripts/i18n/ja.json diff --git a/src/scripts/i18n/README.md b/src/scripts/i18n/README.md index b4d83b9..4c8325c 100644 --- a/src/scripts/i18n/README.md +++ b/src/scripts/i18n/README.md @@ -8,6 +8,7 @@ Currently, Fluent Reader supports the following languages. | es | Español | [@kant](https://github.com/kant) | | fr-FR | Français | [@Toinane](https://github.com/Toinane) | | zh-CN | 中文(简体) | [@yang991178](https://github.com/yang991178) | +| ja | 日本語 | [@tiancheng2000](https://github.com/tiancheng2000) | | de | Deutsch | [@NoNamePro0](https://github.com/NoNamePro0) | | sv | Svenska | [@eson57](https://github.com/eson57) | | tr | Türkçe | [@mustafagenc](https://github.com/mustafagenc) | diff --git a/src/scripts/i18n/_locales.ts b/src/scripts/i18n/_locales.ts index c2f0cb8..515b9ac 100644 --- a/src/scripts/i18n/_locales.ts +++ b/src/scripts/i18n/_locales.ts @@ -1,6 +1,7 @@ import en_US from "./en-US.json" import zh_CN from "./zh-CN.json" import zh_TW from "./zh-TW.json" +import ja from "./ja.json" import fr_FR from "./fr-FR.json" import de from "./de.json" import nl from "./nl.json" @@ -12,6 +13,7 @@ const locales = { "en-US": en_US, "zh-CN": zh_CN, "zh-TW": zh_TW, + "ja": ja, "fr-FR": fr_FR, "de": de, "nl": nl, diff --git a/src/scripts/i18n/ja.json b/src/scripts/i18n/ja.json new file mode 100644 index 0000000..24359c0 --- /dev/null +++ b/src/scripts/i18n/ja.json @@ -0,0 +1,235 @@ +{ + "allArticles": "全ての記事", + "add": "追加", + "create": "新規", + "icon": "アイコン", + "name": "名称", + "openExternal": "ブラウザで開く", + "emptyName": "名称を入力してください。", + "emptyField": "このフィールドは空にできません。", + "edit": "編集", + "delete": "削除", + "followSystem": "システム設定に従う", + "more": "さらに詳しく", + "close": "閉じる", + "search": "検索", + "loadMore": "もっと読み込む", + "dangerButton": "{action}を確認しますか?", + "confirmMarkAll": "全ての記事を開封済みにしますか?", + "confirm": "確認", + "cancel": "キャンセル", + "time": { + "now": "now", + "m": "m", + "h": "h", + "d": "d", + "minute": "{m}分", + "hour": "{h}時間", + "day": "{d}日" + }, + "log": { + "empty": "通知なし", + "fetchFailure": "フィード“{name}”の読み込みに失敗しました。", + "fetchSuccess": "{count} 件の記事をロードしました。", + "networkError": "フィードの接続にエラーが発生しました。", + "parseError": "XMLストリームの解析にエラーが発生しました。", + "syncFailure": "サービスの同期に失敗しました。" + }, + "nav": { + "menu": "メニュー", + "refresh": "更新", + "markAllRead": "一括で開封済み", + "notifications": "通知", + "view": "ビュー", + "settings": "設定", + "minimize": "最小化", + "maximize": "最大化" + }, + "menu": { + "close": "メニューを閉じる", + "subscriptions": "購読" + }, + "article": { + "error": "記事の読み込みに失敗しました。", + "reload": "リロード", + "empty": "記事なし", + "untitled": "(無題)", + "hide": "記事を非表示", + "unhide": "記事を再表示", + "markRead": "開封済みにする", + "markUnread": "未開封にする", + "markAbove": "上記の記事を開封済みに", + "markBelow": "下記の記事を開封済みに", + "star": "星マーク", + "unstar": "星マークを外す", + "fontSize": "フォントサイズ", + "loadWebpage": "ウェブページを読み込む", + "loadFull": "全体を読み込む", + "notify": "バックグラウンドで取得された場合に通知する", + "dontNotify": "通知しない" + }, + "context": { + "share": "共有", + "read": "読む", + "copyTitle": "タイトルをコピー", + "copyURL": "URLをコピー", + "copy": "コピー", + "search": "{engine} を使って“{text}”を検索する", + "view": "ビュー", + "cardView": "カードビュー", + "listView": "リストビュー", + "magazineView": "雑誌ビュー", + "compactView": "コンパクトビュー", + "filter": "フィルター", + "unreadOnly": "未開封のみ", + "starredOnly": "星付けのみ", + "fullSearch": "全文検索", + "showHidden": "非表示記事を表示", + "manageSources": "フィードを管理", + "saveImageAs": "イメージを保存", + "copyImage": "イメージをコピー", + "copyImageURL": "イメージリンクをコピー", + "caseSensitive": "大文字と小文字を区別", + "showCover": "表紙を表示", + "showSnippet": "スニペットを表示", + "fadeRead": "開封済みをフェード表示" + }, + "searchEngine": { + "name": "検索エンジン", + "google": "Google", + "bing": "Bing", + "baidu": "Baidu", + "duckduckgo": "DuckDuckGo" + }, + "settings": { + "writeError": "ファイルの書き込みにエラーが発生しました。", + "name": "オプション", + "fetching": "フィードを更新中、しばらくお待ちください…", + "exit": "終了", + "sources": "フィード", + "grouping": "グルーピングとソーティング", + "rules": "ルール", + "service": "サービス", + "app": "環境設定", + "about": "本アプリについて", + "version": "バージョン", + "shortcuts": "ショートカット", + "openSource": "オープンソース", + "feedback": "フィードバック" + }, + "sources": { + "serviceWarning": "ここでインポートか追加されるフィードはサーバ側と同期しません。", + "serviceManaged": "このフィードはサーバ側で管理されます。", + "untitled": "フィード", + "errorAdd": "フィードの追加にエラーが発生しました。", + "errorParse": "OPMLファイルの解析にエラーが発生しました。", + "errorParseHint": "OPMLファイルが破損しておらず、UTF-8 でエンコードされていることを確認してください。", + "errorImport": "{count}件のフィードのインポート中にエラーが発生しました。", + "exist": "このフィードは既に存在します。", + "opmlFile": "OPMLファイル", + "name": "フィード名", + "editName": "名称変更", + "fetchFrequency": "取得頻度制限", + "unlimited": "無制限", + "openTarget": "フィード記事を開く方法", + "delete": "フィードを削除", + "add": "フィードを追加", + "import": "インポート", + "export": "エクスポート", + "rssText": "RSSテキスト", + "loadWebpage": "ウェブページを読み込む", + "inputUrl": "URLを入力", + "badIcon": "無効なアイコン", + "badUrl": "無効なURL", + "deleteWarning": "フィード及び保管している記事を削除することになります。", + "selected": "選択されたフィード", + "selectedMulti": "選択されたフィード(複数)" + }, + "groups": { + "exist": "このグループは既に存在します。", + "type": "区分", + "group": "グループ", + "source": "フィード", + "capacity": "容量", + "exitGroup": "グループ一覧に戻る", + "deleteSource": "グループからフィードを削除", + "sourceHint": "フィードをドラッグ アンド ドロップして並べ替えます。", + "create": "新規グループ", + "selectedGroup": "選択されたグループ", + "selectedSource": "選択されたフィード", + "enterName": "名称を入力ください", + "editName": "名称を編集ください", + "deleteGroup": "グループを削除", + "chooseGroup": "グループを選択", + "addToGroup": "グループに追加", + "groupHint": "グループをダブルクリックしてフィードを編集します。フィードをドラッグ アンド ドロップして並べ替えます。" + }, + "rules": { + "intro": "正規表現で記事を自動的にマークするか、通知を送信します", + "help": "さらに詳しく", + "source": "フィード", + "selectSource": "フィードを選ぶ", + "new": "新規ルール", + "if": "もし", + "then": "なら", + "title": "タイトル", + "content": "コンテンツ", + "fullSearch": "タイトルかコンテンツ", + "creator": "著者", + "match": "一致する", + "notMatch": "一致しない", + "regex": "正規表現", + "badRegex": "無効な正規表現", + "action": "アクション", + "selectAction": "アクションを選択", + "hint": "ルールは順番に適用されます。ドラッグ アンド ドロップして並べ替えます。", + "test": "テスト用ルール" + }, + "service": { + "intro": "RSSサービスを使用してディバイス間で同期します", + "select": "サービスを選択", + "suggest": "新たなサービスを推薦", + "overwriteWarning": "ローカルフィードがサーバ側に既存する場合に無視されます。", + "groupsWarning": "グループはサーバ側と自動的に同期されません。", + "rateLimitWarning": "レート制限を回避するには、独自のAPI キーを作成する必要があります。", + "removeAd": "広告を削除", + "endpoint": "エンドポイント", + "username": "ユーザー名", + "password": "パスワード", + "unchanged": "変更なし", + "fetchLimit": "同期数制限", + "fetchLimitNum": "{count} 件の最新記事", + "importGroups": "グループをエクスポート", + "failure": "サーバ接続中にエラーが発生しました。", + "failureHint": "サーバ設定とネットワーク接続を確認ください", + "fetchUnlimited": "無制限(非推奨)", + "exportToLite": "Fluent Reader Liteにエクスポート" + }, + "app": { + "cleanup": "一括削除", + "cache": "キャッシュを削除", + "cacheSize": "{size}のデータをキャッシュしている", + "deleteChoices": "… 日前の記事を削除", + "confirmDelete": "記事を削除", + "daysAgo": "{days} 日前", + "deleteAll": "全ての記事を削除", + "calculatingSize": "占めるスペースを計算中…", + "itemSize": "ローカル記事は{size}のスペースを占める", + "confirmImport": "バックアップファイルからデータを導入しますか?全ての既存データを削除することになります。", + "data": "アプリデータ", + "backup": "バックアップ", + "restore": "リストア", + "frData": "Fluent Readerデータ", + "language": "表示言語", + "theme": "アプリテーマ", + "lightTheme": "明るいテーマ", + "darkTheme": "暗いテーマ", + "enableProxy": "プロキシを使う", + "badUrl": "正しいURLを入力ください", + "pac": "PACアドレス", + "setPac": "PACを設定", + "pacHint": "Sockプロキシの場合にPACが“SOCKS5”を返すことをお勧めします。プロキシを停止してから再起動する必要があります。", + "fetchInterval": "フェッチ間隔", + "never": "しない" + } +} \ No newline at end of file