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
5 changes: 3 additions & 2 deletions .vscode/locales.schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,10 @@
"properties": {
"en": { "type": "string" },
"zh-CN": { "type": "string" },
"zh-TW": { "type": "string" }
"zh-TW": { "type": "string" },
"ko": { "type": "string" }
},
"required": ["en", "zh-CN", "zh-TW"],
"required": ["en", "zh-CN", "zh-TW", "ko"],
"additionalProperties": false
},
"locales": {
Expand Down
2 changes: 1 addition & 1 deletion scripts/create-neutrino-config.js
Original file line number Diff line number Diff line change
Expand Up @@ -322,7 +322,7 @@ module.exports = function createNeutrinoConfig({
// remove locales
neutrino.config
.plugin('momentjs')
.use(MomentLocalesPlugin, [{ localesToKeep: ['zh-cn', 'zh-tw'] }])
.use(MomentLocalesPlugin, [{ localesToKeep: ['zh-cn', 'zh-tw', 'ko'] }])
.end()

// prettier-ignore
Expand Down
5 changes: 3 additions & 2 deletions src/_helpers/i18n.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import i18n, { TFunction } from 'i18next'
import { getConfig, addConfigListener } from '@/_helpers/config-manager'
import zip from 'lodash/zip'

export type LangCode = 'zh-CN' | 'zh-TW' | 'en'
export type LangCode = 'zh-CN' | 'zh-TW' | 'ko' | 'en'
export type Namespace =
| 'common'
| 'content'
Expand All @@ -27,6 +27,7 @@ export type Namespace =
export interface RawLocale {
'zh-CN': string
'zh-TW': string
ko: string
en: string
}

Expand Down Expand Up @@ -88,7 +89,7 @@ export async function i18nLoader(): Promise<i18n.i18n> {
.init({
lng: langCode,
fallbackLng: false,
whitelist: ['en', 'zh-CN', 'zh-TW'],
whitelist: ['en', 'zh-CN', 'zh-TW', 'ko'],

debug: process.env.NODE_ENV === 'development',
saveMissing: false,
Expand Down
11 changes: 11 additions & 0 deletions src/_locales/ko/background.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import { locale as _locale } from '../zh-CN/background'

export const locale: typeof _locale = {
app: {
off: 'Saladict가 비활성화되었습니다. (독립 실행 패널은 계속 사용 가능)',
tempOff:
'현재 탭에서 Saladict가 비활성화되었습니다. (독립 실행 패널은 계속 사용 가능)',
unsupported:
'현재 탭에서는 내장형 Saladict 패널을 사용할 수 없습니다. 독립 실행 패널을 이용해 주세요.'
}
}
75 changes: 75 additions & 0 deletions src/_locales/ko/common.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
import { locale as _locale } from '../zh-CN/common'

export const locale: typeof _locale = {
add: '추가',
delete: '삭제',
save: '저장',
cancel: '취소',

edit: '편집',
sort: '정렬',
rename: '이름 변경',

confirm: '확인',
changes_confirm: '변경 사항이 저장되지 않았습니다. 그래도 닫으시겠습니까?',
delete_confirm: '이 항목을 완전히 삭제하시겠습니까?',

max: '최대',
min: '최소',

name: '이름',
none: '없음',

enable: '사용',
enabled: '사용 중',
disabled: '사용 안 함',

blacklist: '차단 목록',
whitelist: '허용 목록',

import: '가져오기',
export: '내보내기',

lang: {
chinese: '중국어',
chs: '중국어',
deutsch: '독일어',
eng: '영어',
english: '영어',
french: '프랑스어',
japanese: '일본어',
korean: '한국어',
matchAll: '모든 문자가 일치해야 함',
minor: '기타 언어',
others: '기타 문자',
spanish: '스페인어'
},

unit: {
mins: '분',
ms: 'ms',
s: '초',
word: '개'
},

note: {
word: '단어',
trans: '번역',
note: '메모',
context: '문맥',
contextCloze: '문맥 빈칸',
date: '날짜',
srcTitle: '출처 제목',
srcLink: '출처 링크',
srcFavicon: '출처 파비콘'
},

profile: {
daily: '일상 모드',
sentence: '문장 모드',
default: '기본 모드',
scholar: '학술 모드',
translation: '번역 모드',
nihongo: '일본어 모드'
}
}
64 changes: 64 additions & 0 deletions src/_locales/ko/content.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
import { locale as _locale } from '../zh-CN/content'

export const locale: typeof _locale = {
chooseLang: '다른 언어 선택',
standalone: 'Saladict 독립 실행 패널',
fetchLangList: '전체 언어 목록 가져오기',
transContext: '문맥 다시 번역',
neverShow: '다시 표시 안 함',
fromSaladict: 'Saladict 패널에서 전달됨',
tip: {
historyBack: '이전 검색 기록',
historyNext: '다음 검색 기록',
searchText: '텍스트 검색',
openOptions: '설정 열기',
addToNotebook: '단어장에 추가 (마우스 오른쪽 클릭으로 단어장 열기)',
openNotebook: '단어장 열기',
openHistory: '기록 열기',
shareImg: '이미지로 공유',
pinPanel: '패널 고정',
closePanel: '패널 닫기',
sidebar: '사이드바 모드로 전환 (마우스 오른쪽 클릭 시 오른쪽에 고정)',
focusPanel: '검색 시 패널이 포커스를 가져옴',
unfocusPanel: '검색 시 패널이 포커스를 가져오지 않음'
},
wordEditor: {
title: '단어장에 추가',
wordCardsTitle: '단어장의 다른 검색 결과',
deleteConfirm: '단어장에서 삭제하시겠습니까?',
closeConfirm: '변경 사항이 저장되지 않습니다. 그래도 닫으시겠습니까?',
chooseCtxTitle: '번역된 결과 선택',
ctxHelp:
'Saladict가 번역문 선택과 Anki 표 생성을 자동으로 처리하게 하려면 [:: xxx ::] 및 --------------- 형식을 그대로 유지하세요.'
},
machineTrans: {
switch: '언어 전환',
sl: '원문 언어',
tl: '번역 언어',
auto: '언어 자동 감지',
stext: '원문',
showSl: '원문 표시',
copySrc: '원문 복사',
copyTrans: '번역문 복사',
credential: {
missing: '{access token}을(를) 입력해 주세요.',
invalid:
'액세스 토큰이 유효하지 않습니다. {access token}을(를) 확인하세요.',
quota:
'액세스 토큰의 할당량을 초과했습니다. {access token}을(를) 확인하세요.'
},
login: '{access token}을(를) 입력해 주세요.',
dictAccount: '액세스 토큰'
},
manualVerification: {
title: '수동 인증이 필요합니다',
message:
'원본 사전 페이지를 열어 사람인지 확인하는 절차를 완료한 후, Saladict에서 다시 검색해 주세요.',
openPage: '사전 페이지 열기'
},
updateAnki: {
title: 'Anki로 업데이트',
success: 'Anki로 단어를 성공적으로 업데이트했습니다.',
failed: 'Anki로 단어를 업데이트하지 못했습니다.'
}
}
147 changes: 147 additions & 0 deletions src/_locales/ko/langcode.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
import { locale as _locale } from '../zh-CN/langcode'

export const locale: typeof _locale = {
af: '아프리칸스어',
am: '암하라어',
ar: '아랍어',
auto: '언어 자동 감지',
az: '아제르바이잔어',
be: '벨라루스어',
bg: '불가리아어',
bn: '벵골어',
bs: '보스니아어',
ca: '카탈루냐어',
ceb: '세부아노어',
co: '코르시카어',
cs: '체코어',
cy: '웨일스어',
da: '덴마크어',
de: '독일어',
el: '그리스어',
en: '영어',
eo: '에스페란토어',
es: '스페인어',
et: '에스토니아어',
eu: '바스크어',
fa: '페르시아어',
fi: '핀란드어',
fil: '필리핀어',
fj: '피지어',
fr: '프랑스어',
fy: '프리지아어',
ga: '아일랜드어',
gd: '스코틀랜드 게일어',
gl: '갈리시아어',
gu: '구자라트어',
ha: '하우사어',
haw: '하와이어',
he: '히브리어',
hi: '힌디어',
hmn: '몽어',
hr: '크로아티아어',
ht: '아이티 크레올어',
hu: '헝가리어',
hy: '아르메니아어',
id: '인도네시아어',
ig: '이보어',
is: '아이슬란드어',
it: '이탈리아어',
ja: '일본어',
jw: '자바어',
ka: '조지아어',
kk: '카자흐어',
km: '크메르어',
kn: '칸나다어',
ko: '한국어',
ku: '쿠르드어(쿠르만지)',
ky: '키르기스어',
la: '라틴어',
lb: '룩셈부르크어',
lo: '라오어',
lt: '리투아니아어',
lv: '라트비아어',
mg: '말라가시어',
mi: '마오리어',
mk: '마케도니아어',
ml: '말라얄람어',
mn: '몽골어',
mr: '마라티어',
ms: '말레이어',
mt: '몰타어',
mww: '몽족어(백묘문)',
my: '미얀마어(버마어)',
ne: '네팔어',
nl: '네덜란드어',
no: '노르웨이어',
ny: '니안자어(치체와어)',
otq: '오토미어(케레타로)',
pa: '펀자브어',
pl: '폴란드어',
ps: '파슈토어',
pt: '포르투갈어(포르투갈, 브라질)',
ro: '루마니아어',
ru: '러시아어',
sd: '신드어',
si: '신할라어',
sk: '슬로바키아어',
sl: '슬로베니아어',
sm: '사모아어',
sn: '쇼나어',
so: '소말리어',
sq: '알바니아어',
sr: '세르비아어',
'sr-Cyrl': '세르비아어(키릴 문자)',
'sr-Latn': '세르비아어(라틴 문자)',
st: '세소토어',
su: '순다어',
sv: '스웨덴어',
sw: '스와힐리어',
ta: '타밀어',
te: '텔루구어',
tg: '타지크어',
th: '태국어',
tlh: '클링온어',
'tlh-Qaak': '클링온어(피카드 문자)',
to: '통가어',
tr: '터키어',
ty: '타히티어',
ug: '위구르어',
uk: '우크라이나어',
ur: '우르두어',
uz: '우즈베크어',
vi: '베트남어',
wyw: '문언문(고전 중국어)',
xh: '코사어',
yi: '이디시어',
yo: '요루바어',
yua: '유카탄 마야어',
yue: '광둥어(번체)',
'zh-CN': '중국어(간체)',
'zh-TW': '중국어(번체)',
zu: '줄루어',

default: '확장 프로그램 언어 따르기',
ne_NP: '네팔어',
ara: '아랍어',
'bs-Latn': '보스니아어',
bul: '불가리아어',
cht: '중국어(번체)',
dan: '덴마크어',
est: '에스토니아어',
fin: '핀란드어',
fra: '프랑스어',
iw: '히브리어',
jp: '일본어',
kor: '한국어',
kr: '한국어',
pt_BR: '브라질 포르투갈어',
rom: '루마니아어',
slo: '슬로베니아어',
spa: '스페인어',
swe: '스웨덴어',
tl: '타갈로그어(필리핀어)',
vie: '베트남어',
zh: '중국어(간체)',
'zh-CHS': '중국어(간체)',
'zh-CHT': '중국어(번체)'
}
29 changes: 29 additions & 0 deletions src/_locales/ko/menus.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import { locale as _locale } from '../zh-CN/menus'

export const locale: typeof _locale = {
baidu_search: '바이두 검색',
bing_dict: 'Bing 사전',
bing_search: 'Bing 검색',
cambridge: '케임브리지 사전',
copy_pdf_url: 'PDF 주소를 클립보드에 복사',
dictcn: 'Dictcn',
etymonline: 'Etymonline',
google_search: 'Google 검색',
google_translate: 'Google 번역',
google_cn_translate: 'Google.cn 번역',
guoyu: '國語辭典',
history_title: '검색 기록',
iciba: 'iciba',
liangan: '兩岸詞典',
longman_business: 'Longman 비즈니스',
manual_title: '설명서',
merriam_webster: 'Merriam-Webster',
notebook_title: '새 단어 목록',
oxford: 'Oxford',
saladict: 'Saladict',
saladict_standalone: 'Saladict 독립 실행 패널',
termonline: 'Termonline',
view_as_pdf: 'PDF 뷰어로 열기',
youdao: '유다오(有道)',
youglish: 'YouGlish'
}
Loading