mirror of
https://github.com/Jonnyan404/memos-bber.git
synced 2026-04-25 03:58:37 +09:00
Add UI language switcher and ja/ko locales
Introduce a runtime UI language switcher and add Japanese/Korean locale support. Added _locales/ja and _locales/ko messages, updated en and zh_CN message files with new language-related keys and sendImage label. Implemented dynamic i18n handling: new i18n.js supports override messages, persistent uiLanguage in storage, and emits i18n:changed; background.js now loads override locales, updates context menu titles and listens for storage changes. Integrated dayjs locales (js/ja.js, js/ko.js) and made oper.js use a unified msg() helper and react to language changes. Added language selector UI in popup.html and styling in css/main.css.
This commit is contained in:
@@ -14,6 +14,9 @@
|
||||
"sendLinkTo": {
|
||||
"message": "Send link to Memos"
|
||||
},
|
||||
"sendImageTo": {
|
||||
"message": "Send image to Memos"
|
||||
},
|
||||
"saveBtn":{
|
||||
"message": "Save"
|
||||
},
|
||||
@@ -142,5 +145,23 @@
|
||||
},
|
||||
"tipSend": {
|
||||
"message": "Send (Ctrl/⌘+Enter)"
|
||||
},
|
||||
"tipLanguage": {
|
||||
"message": "Language"
|
||||
},
|
||||
"langAuto": {
|
||||
"message": "Auto"
|
||||
},
|
||||
"langEnglish": {
|
||||
"message": "English"
|
||||
},
|
||||
"langChineseSimplified": {
|
||||
"message": "简体中文"
|
||||
},
|
||||
"langJapanese": {
|
||||
"message": "日本語"
|
||||
},
|
||||
"langKorean": {
|
||||
"message": "한국어"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,167 @@
|
||||
{
|
||||
"extName": {
|
||||
"message": "Memos"
|
||||
},
|
||||
"actionTitle": {
|
||||
"message": "Memos に送信"
|
||||
},
|
||||
"extDescription": {
|
||||
"message": "memos: 軽量なセルフホスト型メモハブ。"
|
||||
},
|
||||
"sendTo": {
|
||||
"message": "Memos に \"%s\" を送信"
|
||||
},
|
||||
"sendLinkTo": {
|
||||
"message": "リンクを Memos に送信"
|
||||
},
|
||||
"sendImageTo": {
|
||||
"message": "画像を Memos に送信"
|
||||
},
|
||||
"saveBtn": {
|
||||
"message": "保存"
|
||||
},
|
||||
"supportedMemosVersion": {
|
||||
"message": "Memos v0.24.0+ に対応(テスト済み: 0.24.0 / 0.25.0 / 0.26.x)"
|
||||
},
|
||||
"placeApiUrl": {
|
||||
"message": "Memos サイトURL"
|
||||
},
|
||||
"placeApiTokens": {
|
||||
"message": "Memos アクセストークン"
|
||||
},
|
||||
"placeContent": {
|
||||
"message": "今のメモは…"
|
||||
},
|
||||
"lockPrivate": {
|
||||
"message": "非公開"
|
||||
},
|
||||
"lockProtected": {
|
||||
"message": "保護"
|
||||
},
|
||||
"lockPublic": {
|
||||
"message": "公開"
|
||||
},
|
||||
"submitBtn": {
|
||||
"message": "送信"
|
||||
},
|
||||
"placeHideInput": {
|
||||
"message": "既定の「非公開」タグ名"
|
||||
},
|
||||
"placeShowInput": {
|
||||
"message": "既定の「全員に公開」タグ名"
|
||||
},
|
||||
"uploadedListTitle": {
|
||||
"message": "アップロード済みファイル(ドラッグで並べ替え)"
|
||||
},
|
||||
"uploadedListEmpty": {
|
||||
"message": "アップロード済みファイルはありません"
|
||||
},
|
||||
"tipReorder": {
|
||||
"message": "ドラッグして並べ替え"
|
||||
},
|
||||
"tipDeleteAttachment": {
|
||||
"message": "削除"
|
||||
},
|
||||
"attachmentDeleteSuccess": {
|
||||
"message": "削除しました"
|
||||
},
|
||||
"attachmentDeleteFailed": {
|
||||
"message": "削除に失敗しました 😭"
|
||||
},
|
||||
"picDrag": {
|
||||
"message": "画像をここにドラッグしてアップロード"
|
||||
},
|
||||
"picCancelDrag": {
|
||||
"message": "アップロードをキャンセル"
|
||||
},
|
||||
"picUploading": {
|
||||
"message": "画像をアップロード中..."
|
||||
},
|
||||
"picSuccess": {
|
||||
"message": "アップロード完了"
|
||||
},
|
||||
"picFailed": {
|
||||
"message": "アップロード失敗"
|
||||
},
|
||||
"picPending": {
|
||||
"message": "画像のアップロードが進行中です"
|
||||
},
|
||||
"saveSuccess": {
|
||||
"message": "保存しました!"
|
||||
},
|
||||
"searchNow": {
|
||||
"message": "何を探していますか?"
|
||||
},
|
||||
"searchNone": {
|
||||
"message": "別のキーワードを試してください!"
|
||||
},
|
||||
"archiveSuccess": {
|
||||
"message": "アーカイブ成功 😊"
|
||||
},
|
||||
"archiveFailed": {
|
||||
"message": "アーカイブ失敗 😭"
|
||||
},
|
||||
"getTabFailed": {
|
||||
"message": "タブの取得に失敗 😭"
|
||||
},
|
||||
"memoUploading": {
|
||||
"message": "送信中"
|
||||
},
|
||||
"memoSuccess": {
|
||||
"message": "成功!😊"
|
||||
},
|
||||
"memoFailed": {
|
||||
"message": "失敗!😭"
|
||||
},
|
||||
"invalidToken": {
|
||||
"message": "無効なトークンまたはURL 😭"
|
||||
},
|
||||
"tipOpenSite": {
|
||||
"message": "Memos を開く"
|
||||
},
|
||||
"tipSettings": {
|
||||
"message": "設定"
|
||||
},
|
||||
"tipTags": {
|
||||
"message": "タグを挿入"
|
||||
},
|
||||
"tipTodo": {
|
||||
"message": "ToDo を挿入"
|
||||
},
|
||||
"tipUpload": {
|
||||
"message": "ファイルをアップロード"
|
||||
},
|
||||
"tipLink": {
|
||||
"message": "現在のタブのリンクを挿入"
|
||||
},
|
||||
"tipRandom": {
|
||||
"message": "ランダムメモ"
|
||||
},
|
||||
"tipSearch": {
|
||||
"message": "検索"
|
||||
},
|
||||
"tipVisibility": {
|
||||
"message": "公開範囲"
|
||||
},
|
||||
"tipSend": {
|
||||
"message": "送信(Ctrl/⌘+Enter)"
|
||||
},
|
||||
"tipLanguage": {
|
||||
"message": "言語"
|
||||
},
|
||||
"langAuto": {
|
||||
"message": "自動"
|
||||
},
|
||||
"langEnglish": {
|
||||
"message": "English"
|
||||
},
|
||||
"langChineseSimplified": {
|
||||
"message": "简体中文"
|
||||
},
|
||||
"langJapanese": {
|
||||
"message": "日本語"
|
||||
},
|
||||
"langKorean": {
|
||||
"message": "한국어"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,167 @@
|
||||
{
|
||||
"extName": {
|
||||
"message": "Memos"
|
||||
},
|
||||
"actionTitle": {
|
||||
"message": "Memos 보내기"
|
||||
},
|
||||
"extDescription": {
|
||||
"message": "memos: 가볍고 셀프호스팅 가능한 메모 허브."
|
||||
},
|
||||
"sendTo": {
|
||||
"message": "Memos로 \"%s\" 보내기"
|
||||
},
|
||||
"sendLinkTo": {
|
||||
"message": "링크를 Memos로 보내기"
|
||||
},
|
||||
"sendImageTo": {
|
||||
"message": "이미지를 Memos로 보내기"
|
||||
},
|
||||
"saveBtn": {
|
||||
"message": "저장"
|
||||
},
|
||||
"supportedMemosVersion": {
|
||||
"message": "Memos v0.24.0+ 호환 (테스트됨: 0.24.0 / 0.25.0 / 0.26.x)"
|
||||
},
|
||||
"placeApiUrl": {
|
||||
"message": "Memos 사이트 URL"
|
||||
},
|
||||
"placeApiTokens": {
|
||||
"message": "Memos 액세스 토큰"
|
||||
},
|
||||
"placeContent": {
|
||||
"message": "지금 떠오른 생각은..."
|
||||
},
|
||||
"lockPrivate": {
|
||||
"message": "비공개"
|
||||
},
|
||||
"lockProtected": {
|
||||
"message": "보호됨"
|
||||
},
|
||||
"lockPublic": {
|
||||
"message": "공개"
|
||||
},
|
||||
"submitBtn": {
|
||||
"message": "전송"
|
||||
},
|
||||
"placeHideInput": {
|
||||
"message": "기본 '비공개' 태그 이름"
|
||||
},
|
||||
"placeShowInput": {
|
||||
"message": "기본 '모두 공개' 태그 이름"
|
||||
},
|
||||
"uploadedListTitle": {
|
||||
"message": "업로드된 파일(드래그로 순서 변경)"
|
||||
},
|
||||
"uploadedListEmpty": {
|
||||
"message": "업로드된 파일이 없습니다"
|
||||
},
|
||||
"tipReorder": {
|
||||
"message": "드래그하여 순서 변경"
|
||||
},
|
||||
"tipDeleteAttachment": {
|
||||
"message": "삭제"
|
||||
},
|
||||
"attachmentDeleteSuccess": {
|
||||
"message": "삭제됨"
|
||||
},
|
||||
"attachmentDeleteFailed": {
|
||||
"message": "삭제 실패 😭"
|
||||
},
|
||||
"picDrag": {
|
||||
"message": "이미지를 드래그하여 업로드"
|
||||
},
|
||||
"picCancelDrag": {
|
||||
"message": "업로드 취소"
|
||||
},
|
||||
"picUploading": {
|
||||
"message": "이미지 업로드 중..."
|
||||
},
|
||||
"picSuccess": {
|
||||
"message": "업로드 완료"
|
||||
},
|
||||
"picFailed": {
|
||||
"message": "업로드 실패"
|
||||
},
|
||||
"picPending": {
|
||||
"message": "이미지 업로드가 진행 중입니다"
|
||||
},
|
||||
"saveSuccess": {
|
||||
"message": "저장 성공!"
|
||||
},
|
||||
"searchNow": {
|
||||
"message": "무엇을 찾고 있나요?"
|
||||
},
|
||||
"searchNone": {
|
||||
"message": "다른 단어를 시도해 보세요!"
|
||||
},
|
||||
"archiveSuccess": {
|
||||
"message": "보관 성공 😊"
|
||||
},
|
||||
"archiveFailed": {
|
||||
"message": "보관 실패 😭"
|
||||
},
|
||||
"getTabFailed": {
|
||||
"message": "탭 가져오기 실패 😭"
|
||||
},
|
||||
"memoUploading": {
|
||||
"message": "전송 중"
|
||||
},
|
||||
"memoSuccess": {
|
||||
"message": "성공! 😊"
|
||||
},
|
||||
"memoFailed": {
|
||||
"message": "실패! 😭"
|
||||
},
|
||||
"invalidToken": {
|
||||
"message": "유효하지 않은 토큰 또는 URL 😭"
|
||||
},
|
||||
"tipOpenSite": {
|
||||
"message": "Memos 열기"
|
||||
},
|
||||
"tipSettings": {
|
||||
"message": "설정"
|
||||
},
|
||||
"tipTags": {
|
||||
"message": "태그 삽입"
|
||||
},
|
||||
"tipTodo": {
|
||||
"message": "할 일 삽입"
|
||||
},
|
||||
"tipUpload": {
|
||||
"message": "파일 업로드"
|
||||
},
|
||||
"tipLink": {
|
||||
"message": "현재 탭 링크 삽입"
|
||||
},
|
||||
"tipRandom": {
|
||||
"message": "랜덤 메모"
|
||||
},
|
||||
"tipSearch": {
|
||||
"message": "검색"
|
||||
},
|
||||
"tipVisibility": {
|
||||
"message": "공개 범위"
|
||||
},
|
||||
"tipSend": {
|
||||
"message": "전송(Ctrl/⌘+Enter)"
|
||||
},
|
||||
"tipLanguage": {
|
||||
"message": "언어"
|
||||
},
|
||||
"langAuto": {
|
||||
"message": "자동"
|
||||
},
|
||||
"langEnglish": {
|
||||
"message": "English"
|
||||
},
|
||||
"langChineseSimplified": {
|
||||
"message": "简体中文"
|
||||
},
|
||||
"langJapanese": {
|
||||
"message": "日本語"
|
||||
},
|
||||
"langKorean": {
|
||||
"message": "한국어"
|
||||
}
|
||||
}
|
||||
@@ -145,5 +145,23 @@
|
||||
},
|
||||
"tipSend": {
|
||||
"message": "发送(Ctrl/⌘+Enter)"
|
||||
},
|
||||
"tipLanguage": {
|
||||
"message": "语言"
|
||||
},
|
||||
"langAuto": {
|
||||
"message": "跟随浏览器"
|
||||
},
|
||||
"langEnglish": {
|
||||
"message": "English"
|
||||
},
|
||||
"langChineseSimplified": {
|
||||
"message": "简体中文"
|
||||
},
|
||||
"langJapanese": {
|
||||
"message": "日本語"
|
||||
},
|
||||
"langKorean": {
|
||||
"message": "한국어"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user