Oregami
Repositories/oxedyne/daimond

oxedyne/daimond/www/i18n/ko.js

249 KiB, 3 runs

created by r2519314175:1331, which is this file's identity for as long as the history lasts, whatever it is later renamed to

download · who wrote it · its history

1/* i18n/ko.js — 한국어 (Korean).
2 *
3 * Machine-drafted from `en.js`, pending native review. Keys are the baseline's
4 * and are never renamed; a key omitted here falls back to English.
5 *
6 * Register: 해요체 throughout. Where a placeholder is followed by a particle
7 * whose form depends on the word it lands on, the standard dual form —
8 * 이(가), 을(를), (으)로 — is used, or the sentence is rewritten to avoid it.
9 * Product nouns are left in the Latin script on purpose: Daimond, Diamond,
10 * Daimond Pro, Hands, Stripe. A "Diamond" is a named object in this app.
11 */
12(function () {
13 'use strict';
14 if (!window.DaimondI18n) return;
15
16 window.DaimondI18n.register('ko', {
17
18 // ── 공통 낱말 ──────────────────────────────────────────────
19 'common.close': '닫기',
20 'common.close_named': '{name} 닫기',
21 'admin.close_drawer': '관리 패널 닫기',
22 'rail.close_rail': 'Diamonds 패널 닫기',
23 'sheet.close': '시트 닫기',
24 'pal.close': '이동 상자 닫기',
25 'common.dismiss': '닫기',
26 'agents.read': '읽기',
27 'agents.read_help': '이 에이전트의 기록을 문서 패널에서 파일로 엽니다',
28 'agents.read_nothing': '이 에이전트는 아직 아무 말도 하지 않았습니다.',
29 'common.close_panel': '패널 닫기',
30 'common.refresh': '새로고침',
31 'common.copy': '복사',
32 'common.cancel': '취소',
33 'common.save': '저장',
34
35 // 식별자 복사. `copy.aria`가 각 `what_`를 감싸므로 읽어 주는 이름이
36 // “빌드 ID 복사”가 되고, 버튼 다섯 개가 모두 “복사”라고만 하지 않아요.
37 // 조사 대신 띄어쓰기로 이어 붙여, 어떤 조각이 와도 자연스러워요.
38 'copy.aria': '{what} 복사',
39 'copy.failed': '복사하지 못했어요',
40 'copy.nothing': '복사할 것이 없어요',
41 'copy.what_build': '빌드 ID',
42 'copy.what_build_n': '빌드 ID {id}',
43 'copy.what_fingerprint': '계정 지문',
44 'copy.what_device': '{name}의 ID',
45 'copy.what_model': '모델 ID {id}',
46 'copy.what_default_model': '기본 모델 ID',
47 'copy.what_handle': '공개 이름',
48
49 // ── 상단 바 ────────────────────────────────────────────────
50 'topbar.menu': '메뉴',
51 'topbar.open_menu': '메뉴 열기',
52 'topbar.brand': 'Daimond, daimond.app 홈페이지',
53 'topbar.made_by': 'Oxedyne가 만들었어요',
54 'topbar.made_with_ai': '코드는 대부분 AI로 만들었어요',
55 'topbar.up_to_date': 'Daimond이 최신 상태예요',
56 'topbar.about': 'Daimond 정보',
57 'topbar.guide': '사용 안내 열기',
58 'topbar.guide_short': '사용 안내',
59 'topbar.appearance': '모양과 배치',
60
61 // ── 정보 ───────────────────────────────────────────────────
62 // `about.what`은 안내서의 첫 문단이에요. 이미 그렇게 말하고 있으니 표현을
63 // 하나 더 만들지 않아요.
64 'about.title': 'Daimond 정보',
65 'about.splash_alt': '행성의 곡선 위 밤하늘을 날아 다이아몬드로 향하는 사람의 모습.',
66 'about.what': 'Daimond은 브라우저에서 도는 AI 에이전트 작업 공간이에요. 서버 계정도 없고 내려받을 것도 없어요. 채팅과 키와 파일은 이 기기에만 있어요.',
67 'about.verify': '이 빌드를 공개된 소스와 대조해 보기',
68
69 // ── 패널 이름 ──────────────────────────────────────────────
70 // 짧게. 칩 줄과 휴대폰 탭 바에 들어가요.
71 'panel.rail': 'Diamonds',
72 'panel.ai': 'AI',
73 'panel.web': '웹',
74 'panel.doc': '문서',
75 'panel.preview': '미리 보기',
76 'panel.msg': '이메일 메시지',
77 'panel.tools': '도구',
78 'panel.compose': '작성',
79 'panel.graph': '관계도',
80 'panel.agents': '에이전트',
81 'panel.mail': '메일',
82 'panel.work': '작업 공간',
83 'panel.spend': '지출',
84 'panel.term': '터미널',
85
86 // ── 칩 줄 ──────────────────────────────────────────────────
87 // {name}은 위 `panel.*`의 패널 이름이에요.
88 'chip.dock_full': '독이 가득 찼어요. 모양에서 더 큰 분할을 고르거나, 패널 하나를 닫아 주세요.',
89 'chip.show': '{name} 보기',
90 'chip.close': '{name} 닫기',
91 'chip.open': '{name} 열기',
92 'chip.open_instead': '채팅 옆 패널 대신 {name} 열기',
93 'chip.more.one': '{n}개 더',
94 'chip.more.other': '{n}개 더',
95
96 // ── 패널 모음과 명령 팔레트 ────────────────────────────────
97 'gallery.title': '패널',
98 'pal.title': '이동',
99 'pal.placeholder': '패널이나 설정으로 이동…',
100 'pal.results': '결과',
101 'pal.nothing': '맞는 항목이 없어요.',
102 'pal.kind_panel': '패널',
103 'pal.kind_theme': '테마',
104 'pal.kind_size': '글자 크기',
105 'pal.kind_dock': '독',
106 'pal.kind_lang': '언어',
107 'pal.kind_ccy': '통화',
108 'pal.hint_open': '열림',
109 'pal.hint_full': '가득 참',
110 'pal.hint_current': '현재',
111
112 // ── 레일 ───────────────────────────────────────────────────
113 'rail.diamonds': 'Diamonds',
114 'rail.diamonds_help': '한 번의 대화에서 걸러 낸, 다시 쓸 수 있는 방법이에요.',
115 'rail.new_diamond': '새 Diamond',
116 'rail.unnamed_diamond': '이름 없는 Diamond',
117 'rail.chats': '채팅',
118 'rail.chats_help': '날것의 대화예요. 여기서 Diamond을 잘라 내요.',
119 'rail.new_chat': '새 채팅',
120 'rail.chats_menu': '더보기',
121 'rail.delete_all_chats': '모든 채팅 삭제',
122 'layout.handle': '끌어서 크기 조절, 두 번 클릭하면 원래대로',
123
124 // ── 계정과 설정 ────────────────────────────────────────────
125 'admin.identity': '내 Daimond 신원',
126 'admin.settings': '설정',
127 'admin.local_identity': '로컬 신원',
128 'admin.account_help': '내 계정. 로그아웃, 암호문구, 백업은 여기를 눌러요.',
129 'admin.locked': '잠김',
130 'admin.locked_help': '잠김. 암호문구를 입력해서 풀어 주세요.',
131 'admin.no_account': '계정 없음',
132 'admin.no_account_help': 'API 키가 암호화되지 않은 채로 저장되어 있어요. 눌러서 계정을 만들고 암호화하세요.',
133 'admin.no_crypto_help': '이 브라우저에는 WebCrypto가 없어서, 여기서는 키를 암호화할 수 없어요.',
134 'admin.version_history': '버전 기록',
135
136 // ── 모델과 제공자 키 ───────────────────────────────────────
137 'models.lead': '쓰는 제공자마다 키를 하나씩. 새 채팅과 Diamond은 기본 모델에서 시작하고, 채팅 하나에만 다른 모델을 골라 쓸 수도 있어요.',
138 'models.add': '+ 제공자 추가',
139 'models.provider': '제공자',
140 'models.choose_provider': '제공자를 고르세요…',
141 'models.custom_provider': '직접 입력(고급)…',
142 'models.base_url': '기본 URL',
143 'models.api_key': 'API 키',
144 'models.api_key_ph': 'API 키를 붙여 넣으세요',
145 'models.default_model': '기본 모델',
146 'models.choose_provider_first': '제공자를 먼저 고르세요…',
147 'models.model_id_ph': '모델 ID(직접 입력)',
148 'models.default_note': '새 에이전트는 따로 고르지 않으면 이 모델을 써요.',
149 'models.save_start': '저장하고 시작',
150 'models.privacy': '<strong>모두 이 기기에만 있어요.</strong> 키도, 채팅도, 파일도 이 브라우저 안에만 있고, 저희에게는 아무것도 보내지 않아요.',
151
152 // 모델 패널: 제공자마다 한 줄, 펼치면 그 제공자가 돌리는 모델이 나와요.
153 // 업체 이름(Groq, Fireworks AI)은 고유명사라 여기 없어요.
154 // 아래 두 개는 Daimond이 스스로 붙인 이름이에요.
155 'models.credits_row': 'Daimond 크레딧',
156 'models.custom_provider_name': '직접 넣은 제공자',
157 // 발급된 키 뒤에 어느 회사가 있는지 게이트웨이가 밝히지 않았을 때 쓰는 대체어.
158 // 상표 이름이 들어갈 자리인 {provider}에 들어가니, 이름처럼 읽혀야 해요.
159 'models.the_provider': '쓰시는 제공자',
160 'models.empty': '아직 제공자가 없어요. 하나 추가해서 Daimond이 생각할 모델을 주세요.',
161 'models.balance_left': '{amount} 남음',
162 'models.via': '{provider} 경유',
163 'models.count.one': '모델 {n}개',
164 'models.count.other': '모델 {n}개',
165 'models.row_paid_help': '이 모델들은 Daimond 잔액을 써요. 브라우저가 발급받은 키로 {provider}을(를) 곧바로 부르고, Daimond을 거치는 것은 없어요.',
166 'models.row_own_help': '이 모델들은 직접 쓰는 {provider} 계정으로 청구돼요. Daimond 잔액은 건드리지 않아요.',
167 // 한 줄이 키에 대해 말하는 것. 앞의 기호는 코드가 붙여요.
168 'models.sealed': '봉인됨',
169 'models.key_set': '키 있음',
170 'models.no_key': '키 없음',
171 'models.connecting': '연결 중…',
172 'models.no_credits': '크레딧 없음',
173 'models.offline': '계정 서비스에 연결 안 됨',
174 'models.could_not_connect': '연결하지 못함',
175 'models.unlock_to_use': '쓰려면 잠금 해제',
176 'models.sealed_unlock': '봉인됨, 쓰려면 잠금 해제',
177 'models.top_up_to_use': '쓰려면 충전',
178 'models.top_up': '크레딧 충전하기 →',
179 'models.ask_provider': '이 제공자에게 무엇을 돌릴 수 있는지 물어보기',
180 'models.ask_provider_again': '이 제공자에게 다시 물어보기',
181 'models.list_asked': '{when}에 목록을 받았어요.',
182 'models.list_never': '한 번도 물어본 적 없어요.',
183 'models.add_key_first': '키를 먼저 추가하세요',
184 'models.asking': '물어보는 중…',
185 // 목록 속 모델 하나.
186 'models.econ_credits': '크레딧',
187 'models.econ_own': '내 키',
188 'models.favourites': '자주 쓰는 모델',
189 'models.is_default': '기본',
190 'models.model_is_default': '새 채팅과 Diamond은 이 모델에서 시작해요.',
191 'models.model_make_default': '새 채팅과 Diamond이 이 모델에서 시작하게 해요.',
192 'models.model_paid': '{provider}을(를) 거쳐 Daimond 잔액을 써요.',
193 'models.model_own': '직접 쓰는 {provider} 계정으로 청구돼요.',
194 'models.model_twin': '같은 이름의 모델을 다른 제공자도 내놔요. 이건 {provider} 쪽이에요.',
195 'models.remove': '{provider} 지우기',
196 'models.starts_on': '새 채팅이 시작할 모델: {model}',
197 'models.no_default': '아직 기본 모델이 없어요. 위에서 하나에 별을 달아 주세요.',
198 'models.none_yet': '제공자 없음',
199 'models.err_refused': '계정 서비스가 거절했어요(HTTP {status}).',
200 'models.err_bad_key': '계정 서비스가 Daimond이 쓸 수 없는 키를 보냈어요.',
201 'models.err_no_key': '그 제공자에는 아직 키가 없어요.',
202 'models.err_key_refused': '제공자가 키를 거절했어요(HTTP {status}).',
203 // 제공자 키에 얼마나 남았는지, 그리고 그걸 어떻게 아는지. 직접 적은 줄을
204 // 일부러 ‘잔액’이라 부르지 않아요. 본인이 적은 숫자에서 어림한 지출을 뺀 값이니까요.
205 'models.credit_auto': '이 키에 {amount} 남았어요. {when}에 제공자가 그렇게 알려 줬어요.',
206 'models.credit_manual': '{amount} 남았어요. {when}에 적어 둔 {base}에서 그 뒤로 쓴 {spent}쯤을 뺀 값이에요.',
207 'models.credit_unknown': '이 키에 얼마가 남았는지는 알 수 없어요.',
208 'models.credit_check': '얼마 남았는지 묻기',
209 'models.credit_recheck': '다시 묻기',
210 'models.credit_probe_failed': '{provider}이(가) 얼마 남았는지 알려 주지 않았어요. 대신 Daimond에 알려 주세요.',
211 'models.credit_base_ph': '예: 12.50',
212 'models.credit_base_label': '지금 이 키에 있는 금액(미국 달러)',
213 'models.credit_base_set': '지금 이만큼 있어요',
214 'models.credit_base_update': '내가 적은 금액 고치기',
215 'models.credit_base_bad': '금액이 아니에요. 미국 달러 숫자를 넣어 주세요.',
216 // 물어본 금액에서, 그 뒤로 이 기기가 지켜본 지출을 뺀 값이에요.
217 'models.credit_auto_spent': '{amount} 남았어요. {when}에 제공자가 알려 준 {base}에서, 그 뒤로 여기서 쓴 {spent}쯤을 뺀 값이에요.',
218 // 숫자가 얼마나 오래됐는지. 이것이 없으면 멈춘 숫자와 최신 숫자가 똑같아 보여요.
219 'models.age_now': '방금 확인했어요.',
220 'models.age_mins.one': '{n}분 전에 확인했어요.',
221 'models.age_mins.other': '{n}분 전에 확인했어요.',
222 'models.age_hours.one': '{n}시간 전에 확인했어요.',
223 'models.age_hours.other': '{n}시간 전에 확인했어요.',
224 'models.age_days.one': '{n}일 전에 확인했어요.',
225 'models.age_days.other': '{n}일 전에 확인했어요.',
226 'models.age_failed': '지난번 확인은 응답이 없어서, 그 뒤로 이 숫자는 그대로예요.',
227
228 // ── 검색 ───────────────────────────────────────────────────
229 // '검색 엔진'은 검색이라는 행위가 아니라 쓰는 서비스를 가리켜요.
230 // 엔진 이름(Brave, Exa, Tavily, Serper)은 고유명사라 옮기지 않아요.
231 // {engine}에는 그 고유명사가 들어가니, 로마자와 한글 사이는 'API 키'처럼
232 // 한 칸 띄우고, 조사는 이 파일의 다른 곳처럼 붙여 써요.
233 'search.head': '검색',
234 'search.engine': '검색 엔진',
235 // 공짜인 것은 달마다 주어지는 일정량이지, 키 자체가 아니에요. 그걸 넘긴 만큼은
236 // 제공사가 사용자에게 청구해요. 숫자도 엔진 이름도 일부러 적지 않아요.
237 'search.engine_note': 'Daimond이 어떤 서비스로 검색할지 골라요. 자기 키를 가져오면 대부분 다달이 일정량까지 공짜예요.',
238 'search.credits': 'Daimond 크레딧',
239 'search.key': 'API 키',
240 'search.key_note': '이 기기에만 두고, 암호문구로 봉인해서, 그 키로 값을 치르는 검색에만 함께 보내요.',
241 'search.no_key': '{engine} 키를 넣거나, Daimond 크레딧으로 바꾸세요.',
242 'search.kind_web': '웹',
243 'search.kind_news': '뉴스',
244 'search.kind_academic': '학술',
245 'search.refused_serper': '{engine}은(는) 자기 키로만 쓸 수 있어요.',
246 // {n}은 이미 자릿수가 끊긴 채로 와요. 따로 붙이지 마세요. 끝의 단서는 남겨요.
247 // 남의 회사 가격이라 언젠가 옛날 이야기가 되니까요.
248 'search.free_month': '{engine}: 한 달에 {n}번쯤 공짜예요. 저희가 마지막으로 확인했을 때 기준이에요.',
249
250 // ── 크레딧, 팩, Pro ────────────────────────────────────────
251 // 실제로 결제되는 자리에서는 미국 달러라고 분명히 밝혀요. `billing.*` 참고.
252 'credits.lead': '크레딧을 사면 제공자 키를 관리하지 않아도 Daimond이 대신 모델을 돌려요. 구독은 없어요. 산 만큼은 그대로 남고, 자동 충전을 켜지 않는 한 다시 결제되지 않아요.',
253 'credits.balance': '잔액: {amount}',
254 'credits.balance_unavailable': '잔액을 가져올 수 없어요.',
255 'credits.see_spend': '지출이 어디로 가는지 보기 →',
256 'credits.offline': 'Daimond 계정 서비스에 연결할 수 없어서 크레딧을 쓸 수 없어요. 직접 쓰는 제공자 키는 그대로 동작해요.',
257 'credits.need_account': '크레딧이 있으면 제공자 키 없이 Daimond을 쓸 수 있어요. 크레딧에는 계정이 필요해요. 계정은 이 기기에 보관되는 암호문구예요.',
258 'credits.need_passcode': '크레딧은 계정이 필요하며, 비공개 베타 중에는 새 계정을 열 수 없습니다. 위에서 패스코드를 등록하세요.',
259 'credits.create_account': '계정 만들기',
260 'credits.added': '크레딧을 추가했어요',
261 'credits.now': '잔액이 {amount}(으)로 바뀌었어요.',
262 'pro.owned': '<b>Daimond Pro를 가지고 계세요.</b> 기기 간 동기화, 클라우드 저장, Email이 켜져 있어요. 구독은 없고, 갱신되는 것도 없어요.',
263 'pro.offer': '<p><b>Daimond Pro, 5년.</b> 한 번 결제하면 돼요. Pro는 기기 간 동기화, 클라우드 저장, Email을 켜 줘서, 작업 공간에서 내 메일을 읽고 보낼 수 있어요.</p>',
264 'pro.fine': '구독은 없고, 갱신되는 것도 없어요. 쓴 만큼 내는 부분(추론, 데이터 전송, 무료 용량을 넘는 저장)은 Pro가 있든 없든 크레딧에서 빠져나가요.',
265 'pro.buy': 'Pro 5년치 사기',
266 'pro.buy_priced': '{price}에 Pro 5년치 사기',
267 'billing.usd_note': '결제는 미국 달러로 이루어져요. 환산한 금액은 어림값이에요.',
268 'billing.rates_as_of': '{date} 기준 환율이며, 어림값이에요.',
269
270 // ── The closed beta and its passcode ───────────────────────
271 'beta.title': '비공개 베타',
272 'beta.title_unavailable': '계정이 만들어지지 않았어요',
273 'beta.title_plain': '베타 패스코드',
274 'beta.lead_beta_only': '이 서버는 아직 새 계정을 열지 않아요. 닫힌 건 계정이지 앱이 아니에요. Daimond는 무료이고 브라우저 안에서 돌아가며, 직접 준비한 제공자 키가 있으면 계정 없이도 쓸 수 있어요. 계정이 더해 주는 건 크레딧과 대신 구입해 주는 추론이라, 자기 키가 없어도 됩니다. 기기 간 동기화와 Daimond 메일은 Pro에 들어 있고, 따로 구입해요.',
275 'beta.lead_unavailable': '이 서버가 새 계정을 받는지 답하지 못해서 아무것도 만들지 않았어요. 기기에는 문제가 없고, 그동안 Daimond는 직접 준비한 제공자 키로 돌아가요. 잠시 뒤에 다시 시도해 주세요.',
276 'beta.lead_no_reason': '이 기기에는 아직 Daimond 계정이 없어요.',
277 'beta.have_code': 'Oxedyne에서 베타 패스코드를 받았다면 여기에 넣어 주세요. 이 기기에서 한 번만 쓸 수 있어요.',
278 'beta.no_code': '패스코드가 없나요? 각 차수의 테스트 자리는 신청을 받아 배정합니다.',
279 'beta.apply': 'Daimond 테스트 신청하기',
280 'beta.code': '패스코드',
281 'beta.code_ph': 'abcd-efgh-ijkl',
282 'beta.redeem': '사용하기',
283 'beta.redeeming': '사용하는 중…',
284 'beta.try_again': '다시 시도',
285 'beta.enter_code': '패스코드 입력',
286 'beta.still_closed': '여전히 계정이 없어요. 서버가 같은 답을 줬어요.',
287 'beta.err_enter_code': '받은 패스코드를 입력해 주세요.',
288 'beta.err_locked': '먼저 Daimond 잠금을 풀어 주세요. 패스코드는 이 기기의 키에 대해 사용돼요.',
289 'beta.err_no_identity': '이 기기에는 패스코드를 사용할 신원이 없어요. 먼저 하나 만들어 주세요.',
290 'beta.err_unknown': '그 패스코드는 저희가 발급한 것이 아니에요. 한 글자씩 확인해 주세요 — 세 묶음으로 열두 글자예요.',
291 'beta.err_spent': '그 패스코드는 이미 사용됐어요. 하나당 한 기기에서 한 번이에요.',
292 'beta.err_expired': '그 패스코드는 기한이 지났어요. Oxedyne에 새로 요청해 주세요.',
293 'beta.err_throttled': '이 연결에서 시도가 너무 많았어요. 잠시 기다렸다가 다시 시도해 주세요.',
294 'beta.err_generic': '그 패스코드는 받아들여지지 않았어요.',
295 'beta.err_unreachable': 'Daimond 계정 서비스에 연결하지 못해서 패스코드는 사용되지 않았어요. 잠시 뒤에 다시 시도해 주세요.',
296 'beta.done_title': '들어왔어요',
297 'beta.done_pro': '이 기기에 Daimond 계정이 생겼고 Pro도 켜져 있어요. 기기 간 동기화, 클라우드 저장, 메일을 쓸 수 있어요.',
298 'beta.done_plain': '이 기기에 Daimond 계정이 생겼어요. 앱은 그대로 다 쓸 수 있고, 크레딧으로 추론을 대신 구입해 주니 제공자 키가 없어도 됩니다. 기기 간 동기화, 클라우드 저장, 메일은 Pro가 더해 주는 것이고, 필요할 때 구입하면 돼요.',
299 'beta.done_handle': '다른 사람에게는 이 계정이 {handle}로 보여요.',
300 'beta.done_not_signed_in': '패스코드는 사용됐고 계정도 있지만, 이 기기가 방금 로그인을 끝내지 못했어요. 알아서 다시 시도할 거예요.',
301
302 // ── 테스터에게 동의를 구하는 단 하나 ───────────────────
303 // 이 표의 나머지와 마찬가지로 원어민 검토 전입니다. `tel_never`는 코드에 대한
304 // 사실이지 우리의 조심성에 대한 약속이 아니므로, "개인정보를 수집하지 않습니다"
305 // 같은 표현으로 완화하면 안 됩니다.
306 'beta.tel_title': '사용 횟수를 보낼까요?',
307 'beta.tel_title_on': '사용 횟수',
308 'beta.tel_lead': 'Daimond가 어떻게 쓰이는지 알려줄 수 있으면 이번 테스트가 훨씬 도움이 돼요. 보내는 건 숫자뿐입니다. 스무 가지 중 무엇이 일어났는지, 세션 시작 후 몇 밀리초인지, 그리고 각각의 수치 하나 — 한 차례에 걸린 시간, 연 패널, 발생한 오류 수예요.',
309 'beta.tel_never': '글자는 절대 보내지 않아요. 메시지도, 파일 이름도, Diamond 이름도, 경로도, 오류 메시지도요. 그걸 담을 칸 자체가 없고, 글자가 든 보고서는 서버가 통째로 거부합니다.',
310 'beta.tel_who': 'Oxedyne으로 가고, 패스코드로 만든 계정에 붙습니다. 그래서 어떤 숫자가 당신 것인지 알 수 있고, 그에 대해 다시 여쭐 수도 있어요.',
311 'beta.tel_free': '거절해도 잃는 건 없어요. 계정도 크레딧도 나머지 전부 그대로고, 앱이 다르게 동작하지도 않습니다.',
312 'beta.tel_more': '보내는 내용 전체',
313 'beta.tel_yes': '사용 횟수 보내기',
314 'beta.tel_no': '보내지 않기',
315 'beta.tel_on': 'Daimond가 이 계정의 사용 횟수를 보내고 있어요. 숫자뿐이고 글자는 없습니다.',
316 'beta.tel_stop': '사용 횟수 보내기 중단',
317
318 // ── 현관 ───────────────────────────────────────────────────
319 // 기계 번역이며 원어민이 검토하지 않았습니다.
320 'door.head': 'Daimond이 처음이신가요?',
321 'door.lead': '비공개 테스트 중이라 계정은 패스코드로 드립니다.',
322 'door.test': '테스트 신청하기',
323 'door.waitlist': '대기 명단 등록',
324 'door.code': '패스코드가 있어요',
325 'door.code_later': '먼저 패스프레이즈를 만드세요. 패스코드는 이 기기의 키에 사용됩니다. 가능해지는 즉시 코드 입력창이 저절로 열립니다.',
326
327 // ── 자동 충전 ──────────────────────────────────────────────
328 // 여기 금액은 모두 카드로 결제되니, 문장은 담백하게 둬요.
329 'autoreload.title': '자동 충전',
330 'autoreload.lead': '크레딧이 얼마 남지 않으면 Daimond이 대신 사 둘 수 있어서, 긴 작업이 도중에 멈추지 않아요. 여기서 정한 한도까지 묻지 않고 아래 카드로 결제해요.',
331 'autoreload.card_word': '카드',
332 'autoreload.card_has': '{brand} · 끝 4자리 {last4}',
333 'autoreload.replace': '바꾸기…',
334 'autoreload.replace_help': '다른 카드를 저장해요. 카드는 Stripe에서 받고, Daimond은 절대 보지 않아요.',
335 'autoreload.no_card': '저장된 카드가 없어요.',
336 'autoreload.save_card': '카드 저장하기',
337 'autoreload.save_card_help': 'Stripe 자체 페이지가 열려요. 결제되는 것은 없고, 카드 정보가 Daimond에 닿지도 않아요.',
338 'autoreload.switch_on': '크레딧 자동으로 사기',
339 'autoreload.switch_no_card': '크레딧 자동으로 사기 (카드를 먼저 저장하세요)',
340 'autoreload.when_below': '잔액이 이 아래로 떨어지면',
341 'autoreload.when_below_hint': '어떤 턴이 잔액을 이 아래로 내리는 순간 충전이 걸려요.',
342 'autoreload.buy_amount': '이만큼 사기',
343 'autoreload.buy_amount_hint': '한 번에 충전하는 금액이에요. 게이트웨이는 한 번에 {max}보다 많이 팔지 않아요.',
344 'autoreload.monthly_cap': '한 달에 이보다 더 쓰지 않기',
345 'autoreload.monthly_cap_hint': '자동 충전이 한 달(달력 기준)에 쓸 수 있는 최대 금액이에요. 더 필요하면 여기서 올리세요.',
346 'autoreload.spent': '이번 달 지출: {spent}',
347 'autoreload.spent_of': '이번 달 지출: {cap} 중 {spent}',
348 'autoreload.last_error': '지난번 자동 충전이 실패했어요: {reason}',
349 'autoreload.saving': '저장 중…',
350 'autoreload.on_note': '켜짐. Daimond이 월 한도 안에서 스스로 채워요.',
351 'autoreload.off_note': '꺼짐. 결제되는 것은 없어요.',
352
353 // ── 채팅 ───────────────────────────────────────────────────
354 'chat.no_chat': '채팅 없음',
355 'chat.model_for_chat': '이 채팅에서 쓸 모델',
356 'chat.select_all': '모두 선택',
357 'chat.deselect_all': '선택 해제',
358 'chat.fold_selected': '선택한 것 접기',
359 'chat.fold_now': '접기',
360 'chat.fold_now_help': '이 대화를 지금 접고 이전 내용의 요약을 남깁니다.',
361 'say.more': '자세히',
362 'say.less': '자세히 숨기기',
363 'rail.dupes_trashed': '기본 제공 Diamond의 중복 사본 {n}개를 제거했습니다. 이전 동기화가 만든 것입니다. 필요하면 휴지통에서 되돌릴 수 있습니다.',
364 'rail.dupes_kept': '중복된 기본 제공 Diamond가 {n}개 더 있지만 작업한 내용이 있어 제거하지 않았습니다. 필요 없는 것은 직접 삭제하세요.',
365 'ask.of': '결정 {of}개 중 {n}번째',
366 'ask.recommended': '권장',
367 'ask.why': '이유: {why}',
368 'ask.silent': '아무 말도 하지 않으면: {what}',
369 'ask.other': '다른 답…',
370 'ask.other_ph': '직접 답을 적어 주세요',
371 'ask.send': '이 답 보내기',
372 'ask.answered': '답하신 내용: {what}',
373 'say.more_help': '약 {n} 토큰. 이 기기에 보관됩니다. 접혀 있으면 모델에 전송되지 않고, 펼치면 전송됩니다.',
374 'say.less_help': '약 {n} 토큰. 펼쳐 두는 동안에는 매 턴 모델도 이를 봅니다.',
375 'chat.copy_all_aria': '대화 복사',
376 'wire.role_help': '당신의 역할 프롬프트. prompts/ 에서 편집하세요 — 시스템 메시지 중 당신의 몫입니다.',
377 'wire.safety_help': '당신의 편집 뒤에 매 턴 덧붙습니다. 역할 프롬프트를 고쳐도 제거할 수 없습니다.',
378 'wire.tools_help': '이 대화가 실제로 가진 도구로부터 작성되므로, 없는 도구를 약속할 수 없습니다.',
379 'wire.machine_help': '그것을 집행하는 울타리 자체에서 작성되므로 설명과 규칙이 어긋날 수 없습니다.',
380 'wire.schemas_help': '각 도구의 전체 JSON 스키마. 매 요청 전송되며 보통 페이로드에서 가장 큽니다.',
381 'wire.diamond_help': '이번 턴만을 위해 구성됩니다: 이 Diamond 자신의 폴더, 클립으로 넣어 둔 것, 그리고 지금 이대로의 기억 — crystal.json. 옆에 있는 capp 은 이름만 나올 뿐, 실려 가지 않습니다.',
382 'wire.standing_help': '당신의 DAIMOND.md. 모든 대화의 매 턴, 시스템 메시지에 덧붙습니다.',
383 'wire.chip': 'Wire',
384 'wire.chip_help': '매 턴마다 모델에 실제로 전송되는 내용을 보여줍니다 — 시스템 메시지, 각 부분의 출처, 도구 스키마.',
385 'wire.head': '당신이 말하기 전에 매 턴 전송됩니다 — 약 {n} 토큰',
386 'wire.role': '역할 프롬프트',
387 'wire.role_why': '당신의 것',
388 'wire.safety': '안전 조항',
389 'wire.safety_why': '변경 불가',
390 'wire.tools': '도구 이름',
391 'wire.tools_why': '레지스트리에서',
392 'wire.machine': '이 컴퓨터',
393 'wire.machine_why': '울타리에서',
394 'wire.diamond': '이 Diamond',
395 'wire.diamond_why': '이번 턴만',
396 'wire.standing': '늘 지켜야 할 지시',
397 'wire.standing_why': '당신의 것',
398 'wire.schemas': '도구 스키마 ({n})',
399 'wire.schemas_why': '매 턴',
400 'chat.copy_all': '복사',
401 'chat.copy_all_help': '대화 전체를 일반 텍스트로 클립보드에 복사합니다.',
402 'chat.copy_all_said': '대화를 클립보드에 복사했습니다.',
403 'chat.copy_all_empty': '이 대화에는 아직 복사할 내용이 없습니다.',
404 'chat.copy_all_failed': '클립보드에 접근할 수 없습니다. 텍스트를 직접 선택해 복사해 주세요.',
405 'chat.steps': '단계',
406 'chat.concise': '간결',
407 'chat.concise_help': '이 채팅에서 짧은 답을 요청합니다. 보내는 메시지마다 /concise 스킬이 함께 갑니다. 작업 공간에 있는, 편집할 수 있는 파일입니다.',
408 'chat.concise_failed_title': '간결을 쓸 수 없습니다',
409 'chat.concise_failed': 'Daimond가 .daimond/skills/concise.md를 쓰지 못했습니다. 이대로면 칩은 답을 줄이는 대신 매 턴을 거부합니다. 작업 공간 폴더를 열거나 파일 패널을 확인한 뒤 다시 시도하세요.',
410 'chat.steps_help': '대화에서 도구 단계를 보이거나 숨겨요',
411 'chat.collapse_help': '답변을 모두 접어 물어본 것만 남기고, 접을 턴을 골라요',
412 'chat.input_ph': '메시지를 입력하세요…',
413 'chat.send': '보내기',
414 'chat.busy': '생각하는 중…',
415 'chat.thinking': '추론',
416 'chat.busy_tool': '{tool} 실행 중, {n}단계…',
417 'chat.busy_next': '{n}단계 완료, 생각하는 중…',
418 'chat.busy_road': '연결이 끊겼습니다 — {name} 다시 시도 중 ({of}회 중 {n}회)…',
419 'chat.busy_writing': '답변을 쓰는 중…',
420 // One command's own line, when the turn's fence withheld the network from it.
421 // `src/tools.rs`'s NO_NET_NOTE says the same thing to the model; this is the
422 // half a person can read. A statement of what happened, not a failure.
423 'chat.tool_no_net': '이 명령은 네트워크 없이 실행되었습니다. Daimond가 다른 사람이 쓴 것을 읽었기 때문입니다. 그 안에서 내려받기, 설치, 복제를 시도한 것은 아무것도 얻지 못했습니다. 권한 버튼으로 되돌릴 수 있습니다.',
424 'chat.answered': 'Daimond이 답했어요, {n}단어',
425 'chat.answer_failed': 'Daimond이 답하지 못했어요',
426 'chat.collapse': '모든 답변 접기',
427 'chat.jump': '마지막 메시지로 돌아가기',
428 'chat.end': '채팅 끝으로 이동',
429 'chat.jump_help': '마지막으로 보낸 메시지로 돌아가요. 다시 누르면 그 앞의 메시지로 계속 거슬러 올라가요.',
430 'chat.end_help': '채팅 맨 아래로 가요.',
431 'chat.new': '+ 새 채팅',
432 // 답이 오는 중에 쓴 메시지예요. 잠시 맡아 두었다가 보여 주고, 답이 끝나면
433 // 한 턴씩 보내요. 짧게 둔 건 일부러예요. 휴대폰 입력칸은 120px 남짓이라
434 // 긴 줄은 두 줄로 접히면서 잘려요.
435 'chat.queue_ph': '다음 메시지를 쓰세요…',
436 'chat.queue_help': '기다리는 중. 이 답이 끝나면 보내요',
437 'chat.queued_pending': '아직 안 보냈어요. 눌러서 고치세요.',
438 'chat.queue_cancel': '이건 보내지 않기',
439 // 기계 번역. 이미 돌고 있는 턴에 말을 끼워 넣기. 한계도 적어 둡니다 --
440 // 도구를 쓰지 않는 답에는 끼어들 이음매가 없습니다.
441 'chat.send_into': '이 답변에 끼워 보내기',
442 'chat.interject_help': '기다리는 중. 모델의 다음 단계에 들어가고, 없으면 이 답이 끝날 때 들어가요',
443 'chat.interject_pending': '아직 전달되지 않았어요. 눌러서 고치세요.',
444 'chat.interjected': '여기서 끼어들었어요',
445 'chat.interjected_help': '이 지점에서 턴에 넣었어요. 모델은 여기부터 알고 있어요.',
446 'chat.queue_returned': '그 턴이 끝까지 가지 못해서, 줄 세워 둔 글이 보내지지 않은 채 입력칸으로 돌아왔어요.',
447 // 같은 이야기를 채팅 '타일'에도 적어요. 자리를 뜬 대화에 줄이 남아 있을 때를
448 // 위해서예요. 말풍선은 화면에 열려 있는 채팅에만 그려지는데, 곧 나갈 돈이
449 // 기억에 기대게 두어서는 안 되니까요.
450 'chat.queue_badge.one': '{n}건 대기 중',
451 'chat.queue_badge.other': '{n}건 대기 중',
452 'chat.queue_badge_help.one': '이 채팅에 메시지 한 통이 기다리고 있어요. 열면 그 자체로 한 턴이 되어 보내져요.',
453 'chat.queue_badge_help.other': '이 채팅에 메시지 {n}통이 기다리고 있어요. 열면 한 턴에 하나씩 보내져요.',
454
455 // ── 턴이 어떻게 끝났는지, 그리고 Diamond의 템플릿 ─────────
456 'end.how_answered': '답하고 끝났어요',
457 'end.how_stopped': '멈췄어요',
458 'end.how_capped': '단계 한도에 닿았어요',
459 'end.how_silent': '아무 말 없이 끝났어요',
460 'end.how_failed': '오류로 끝났어요',
461 'end.no_calls': '도구를 쓰지 않았어요',
462 'end.calls.one': '도구 호출 {n}번',
463 'end.calls.other': '도구 호출 {n}번',
464 'end.refused.one': '그중 {n}번은 거절됐어요',
465 'end.refused.other': '그중 {n}번은 거절됐어요',
466 'end.broke.one': '그중 {n}번은 실패했어요',
467 'end.broke.other': '그중 {n}번은 실패했어요',
468 'end.missing': '쓰이지 않았어요: {paths}',
469 'end.help': '이 턴이 어떻게 끝났는지예요. 쓸 수 있던 도구: {offered}. 보낸 요청: {rounds}. 도구 호출: {calls}.',
470
471 'tmpl.section': '템플릿',
472 'tmpl.dlg_help': '템플릿은 이 Diamond의 모양 — 그려지는 페이지, 자동화, capp이 곁에 두는 것들 — 을 담고, 기록된 내용은 담지 않아요. 트리거 동작은 일부러 뺐어요. 트리거는 아무도 누르지 않아도 켜지니까, 함께 옮겨 가면 파일을 열었다는 이유만으로 남의 기계에서 일이 시작돼요. 여는 사람에게는 새 Diamond가 생기고, 그 사람 것은 아무것도 덮어쓰지 않아요.',
473 'tmpl.with_conversation': '기록된 내용도 넣기',
474 'tmpl.with_conversation_help': '대신 전부를 담아요. 기억, 남겨 둔 대화, capp 자체의 기록까지요. 그래도 템플릿이라 여전히 새 Diamond로 열려요.',
475 'tmpl.save': '템플릿으로 저장…',
476 'tmpl.saving': '템플릿을 만드는 중…',
477 'tmpl.saved': '{file}(으)로 저장했어요. 건네받은 사람은 소셜 패널의 공유 보기에서 자기 Diamond로 열어요.',
478 'tmpl.panel_head': '템플릿 열기',
479 'tmpl.panel_help': '템플릿은 내용 없는 Diamond의 모양이에요. 그려지는 페이지와 자동화만 있고, 기록된 내용은 없어요. 새 Diamond로 열리고, 이미 있는 Diamond를 덮어쓰는 일은 없어요. 트리거 동작은 절대 옮겨 가지 않아요. 트리거는 아무도 누르지 않아도 켜지니까요.',
480 'tmpl.panel_open': '템플릿 파일 열기…',
481 'tmpl.opened': '새 Diamond “{name}”(으)로 열었어요. 파일 {n}개가 도착했어요.',
482 'tmpl.unnamed': '이 템플릿',
483 'tmpl.code_title': '이 템플릿에는 코드가 들어 있어요',
484 'tmpl.code_body': '“{name}” 안에는 페이지가 있어요. 다른 사람이 쓴 프로그램이고, 열면 Daimond가 그것을 실행해요. 템플릿에는 서명도 이름도 없어서, 어디서 왔는지 여기서는 알 수 없어요. 그건 파일을 건네준 사람만 알아요.\n\n무엇이 더해지는지: {files}\n\n새 Diamond로 열리고, 이미 있는 Diamond를 덮어쓰는 일은 없어요. 거절하면 아무것도 쓰이지 않아요.',
485 'tmpl.code_ok': '페이지를 받아들이고 열기',
486 'tmpl.declined': '페이지를 받아들이지 않아서 아무것도 열지 않았어요.',
487 'tmpl.err_empty': '그 파일은 비어 있어서 열 것이 없어요.',
488 'tmpl.err_not_template': '그 파일은 Daimond 템플릿이 아니에요.',
489 'tmpl.err_file_huge': '그 파일은 {size}이고, 어떤 템플릿보다 크기 때문에 열지 않았어요.',
490 'tmpl.err_no_file': '파일을 고르지 않아서 아무것도 열지 않았어요.',
491 'tmpl.err_nothing': '저장할 것이 없어요. 그 Diamond에서는 빈 템플릿이 나왔어요.',
492 'tmpl.err_no_door': '이 빌드는 템플릿을 읽을 수는 있지만 열 곳이 없어요.',
493
494 // ── 웹 패널 ────────────────────────────────────────────────
495 'web.who_drives': '지금 누가 조작하고 있나',
496 'web.back': '뒤로',
497 'web.reload': '새로고침',
498 'web.pop_out': '진짜 탭에서 열기',
499 // 패널 머리글에 있는 일시정지 버튼의 이름이에요. `pause.act_pause`에 들어가
500 // '웹 접근 일시정지'가 돼요. `root/web`을 다스리고 이 패널보다 멀리 미치니
501 // '이 패널'이라고 부르지 않아요.
502 'web.pause': '웹 접근',
503 'web.blind_title': '지금은 직접 하고 계세요. 저는 보고 있지 않아요.',
504 'web.blind_note': 'Daimond은 이 페이지 읽기를 멈췄어요. 글자도, 그림도, 키 입력도 보지 않아요. 로그인한 다음 브라우저 탭에 있는 <b>Daimond 재개</b>를 눌러 조작을 넘겨 주세요. 그 버튼은 탭에 있어서, 이 페이지가 조작을 빼앗아 갈 수는 없어요.',
505 'web.resumed': '다시 시작했어요, 확인해 주세요',
506 // {where}는 Daimond이 어디서 멈췄는지 확장이 알려 준 것이에요. 예를 들면 로그인 페이지.
507 'web.blind_title_at': '지금은 직접 하고 계세요. 저는 {where}에서 멈췄어요.',
508 // 머리글: 화면에 무엇이 있고, 누가 운전대를 쥐고 있는지.
509 'web.guide': '안내',
510 'web.guide_title': 'Daimond 사용 안내',
511 'web.panel_for': '웹 패널',
512 'web.who_you': '나',
513 'web.who_daimond': 'Daimond',
514 'web.who_ready': '준비됨',
515 'web.who_view_only': '보기 전용',
516 'web.who_you_help': '지금은 직접 조작하고 계세요. Daimond은 이 페이지를 보고 있지 않아요.',
517 'web.who_daimond_help': 'Daimond이 조작하고 있어요. 언제든 넘겨받을 수 있어요.',
518 'web.who_ready_help': 'Daimond Hands이 설치돼 있어요.',
519 'web.who_view_only_help': '이 페이지는 보여 줄 수는 있지만 조작할 수는 없어요. 조작하려면 Daimond Hands을 설치하세요.',
520 // 확장을 통해 사이트를 열 때. {host}는 호스트 이름이고 이미 이스케이프돼 있어요.
521 // 이것들은 마크업으로 놓이니, 있는 태그는 두고 새로 넣지 않아요.
522 'web.opening': '<b>{host}을(를) 여는 중…</b><br>앞쪽에 <b>Daimond Hands</b> 창이 열려요. 거기서 사이트를 승인한 다음, Chrome에서 한 번 확인하세요. 둘 다 그 사이트의 첫 방문에만 있어요.',
523 'web.not_approved': '<b>{host}은(는) 승인되지 않았어요.</b><br>',
524 'web.approval_closed': '승인 창이 닫혔거나, 아니라고 하셨어요. 허용하려면 그 사이트를 다시 열어 달라고 한 다음 <b>허용하고 Chrome에서 확인</b>을 눌러 주세요. 창은 이 창 앞에 열리고, <b>Daimond Hands</b> 아이콘은 답하실 때까지 그 물음을 들고 있어요.',
525 'web.approved_late': '<b>{host}은(는) 승인됐어요.</b> 답이 Daimond이 기다리기를 그만둔 뒤에 닿아서, 패널이 잠깐 반대로 말했어요. 페이지는 이제 열려 있어요.',
526 'web.answer_late': '답이 Daimond이 기다리기를 그만둔 뒤에 닿았어요. ',
527 'web.driving_tab': '<b>Daimond이 브라우저 탭에서 {host}을(를) 조작하고 있어요</b>. 거기서 보셔도 되고, 실시간 화면을 이 패널로 끌어와도 돼요.',
528 'web.show_live': '여기에 실시간 화면 보기',
529 'web.real_tab': '이 페이지는 실제 브라우저 탭으로 열립니다. 사용자의 로그인을 지니는 것이 그 탭이므로, 이 패널은 그 화면만 보여 줍니다.',
530 'web.mirror_wait': '해당 탭의 첫 화면을 기다리는 중입니다. Chrome이 권한 창을 앞에 띄웠다면 답변을 기다리는 중입니다.',
531 'web.mirror_silent': 'Daimond Hands에서 한동안 응답이 없어 실시간 화면이 없습니다. 탭 자체는 열려 있고 여전히 그 페이지입니다.',
532 'web.mirror_refused': '이 탭은 화면을 캡처할 수 없어 실시간 화면이 없습니다. 탭에서 직접 보거나 화면을 다시 요청하세요.',
533 // 틀 안에 담기기를 거부하는 사이트 — 사실 대부분이 그래요.
534 'web.blocked': '<b>{host}</b>은(는) 다른 페이지 안에서는 표시되지 않아요. 대부분의 사이트가 클릭재킹을 막으려고 이렇게 해요. 고장이 아니에요.',
535 'web.blocked_hands': 'Daimond Hands은 진짜 탭에서 조작할 수 있어요.',
536 'web.blocked_install': '실시간으로 조작하려면 Daimond Hands을 설치하세요.',
537 'web.open_new_tab': '새 탭에서 열기',
538 'web.read_as_text': '텍스트로 읽기',
539 'web.reading': '읽는 중…',
540 'web.read_failed': '그 페이지를 읽지 못했어요: {reason}',
541 'web.readonly_badge': '실제 사이트가 아닌 읽기 전용 사본이에요. 여기서 로그인하지 마세요.',
542
543 // ── 메일 쓰기 ──────────────────────────────────────────────
544 'compose.from': '보내는 사람',
545 'compose.to': '받는 사람',
546 'compose.cc': '참조',
547 'compose.subject': '제목',
548 'compose.optional': '선택',
549 'compose.body_ph': '메시지를 쓰세요.',
550 'compose.send': '보내기',
551 'compose.save_draft': '임시 저장',
552 'compose.attach': '첨부…',
553 'compose.discard': '버리기',
554
555 // ── 에이전트 ───────────────────────────────────────────────
556 'agents.control_all': '모든 에이전트 제어',
557 'agents.pause_all': '모든 에이전트 일시정지',
558 'agents.resume_all': '멈춰 둔 에이전트 모두 재개',
559 'agents.stop_all': '모든 에이전트 정지',
560 'agents.clear_finished': '끝난 에이전트 지우기',
561 'agents.search': '에이전트 검색',
562 'agents.search_help': '이름, 작업, Diamond, 태그로 에이전트를 검색해요',
563
564 // ── 메일 ───────────────────────────────────────────────────
565 'mail.write': '메시지 쓰기',
566 'mail.add_mailbox': '메일함 추가',
567 'mail.sync_now': '지금 동기화',
568
569 // 이 계정에서 Email이 아직 풀리지 않았을 때 보이는 안내. 앞의 두 개는
570 // 마크업을 그대로 넣는 자리예요. 있는 태그는 두고, 새로 넣지 않아요.
571 'mail.pitch.head': '<b>Daimond이 메일을 읽을 수 있어요.</b> 받은편지함이 평범한 파일로 작업 공간에 들어와서, 모든 에이전트가 읽고 찾고 그것으로 일할 수 있어요.',
572 'mail.pitch.fine': 'Email은 Pro의 일부예요. 한 번 결제하면 5년 동안 쓰고, 기기 간 동기화·클라우드 저장과 함께 와요. 메일함은 {cap}개까지예요. 보내고 받아 오는 것은 추론처럼 크레딧에서 쓴 만큼 빠져요. 구독은 없고, 갱신되는 것도 없어요.',
573 'mail.pitch.privacy': 'Daimond의 게이트웨이가 연결을 맡고, 비밀번호는 잊어요. 저희 쪽에 메일이 저장되는 일은 없어요.',
574 'mail.pitch.unknown': '계정 서비스에 연결할 수 없어서, 여기서 Email이 풀려 있는지 Daimond이 알 수 없어요.',
575 'mail.pro_pitch': 'Email은 Pro의 일부예요. Pro 5년치를 사면 동기화, 클라우드 저장과 함께 켜져요.',
576
577 // 메일함 목록.
578 'mail.remove_mailbox': '이 메일함 지우기',
579 'mail.remove_mailbox_named': '메일함 {address} 지우기',
580 'mail.no_mailbox': '아직 메일함이 없어요. <b>+</b>를 눌러 하나 추가하세요.',
581 'mail.remove.title': '{address}을(를) 지울까요?',
582 'mail.remove.body': '이미 동기화한 메일은 작업 공간에 남아요. 잠금 해제로 받은 메일함 자리가 하나 비워져요.',
583 'mail.remove.ok': '지우기',
584 'mail.ago.never': '없음',
585 'mail.ago.just_now': '방금',
586 'mail.ago.mins': '{n}분 전',
587 'mail.ago.hours': '{n}시간 전',
588 'mail.ago.days': '{n}일 전',
589
590 // 폴더. 서버가 자기 언어로 폴더 이름을 붙일 수 있어서, 역할을 밝힌
591 // 경우(RFC 6154)에는 역할 이름을, 그 밖에는 서버가 쓴 이름을 그대로 보여요.
592 'mail.folders': '폴더',
593 'mail.folders_loading': '폴더를 찾는 중…',
594 'mail.refreshed_held': '메일함 {boxes}개에서 폴더 {done}개를 새로 고쳤습니다. {held}개는 일시정지로 보류했습니다.',
595 'mail.refreshed': '메일함 {boxes}개에서 폴더 {done}개를 새로 고쳤습니다.',
596 'mail.count.never': '아직 가져오지 않아 개수가 없습니다.',
597 'mail.count.asat': '{when} 기준 {n}통.',
598 'mail.count.more': '그때 서버에는 {n}통이 더 기다리고 있었습니다.',
599 'mail.settings': '메일함 설정',
600 'mail.settings_named': '{address} 설정',
601 'mail.all_mailboxes': '모든 메일함',
602 'mail.refresh_all': '메일함 {boxes}개의 폴더 {folders}개를 모두 새로 고침',
603 'mail.every.0': '수동으로만',
604 'mail.every.300': '5분마다',
605 'mail.every.900': '15분마다',
606 'mail.every.1800': '30분마다',
607 'mail.every.3600': '한 시간마다',
608 'mail.every.14400': '4시간마다',
609 'mail.every.43200': '12시간마다',
610 'mail.every.86400': '하루 한 번',
611 'mail.every.secs': '{n}초마다',
612 'mail.every_for': '{folder}이(가) 스스로 새로 고치는 주기',
613 'mail.cfg.head': '각 폴더가 얼마나 자주 확인하는지, 그리고 어느 폴더가 그럴 수 있는지. 새로 고칠 때마다 크레딧이 드니, 말하기 전에는 아무것도 조회하지 않습니다.',
614 'mail.cfg.self': '아래의 모든 폴더를 함께 멈춥니다.',
615 'mail.cfg.title': '{address} 설정',
616 'mail.folders_err': '폴더 목록을 가져오지 못했어요: {reason}',
617 'mail.folder.inbox': '받은편지함',
618 'mail.folder.sent': '보낸편지함',
619 'mail.folder.drafts': '임시보관함',
620 'mail.folder.trash': '휴지통',
621 'mail.folder.junk': '스팸',
622 'mail.folder.archive': '보관함',
623 'mail.folder.all': '전체 메일',
624 'mail.folder.flagged': '중요 표시',
625
626 // 메시지 목록.
627 'mail.drafts_head': '임시보관함 · {n}',
628 'mail.no_subject': '(제목 없음)',
629 'mail.no_recipient': '(받는 사람 없음)',
630 'mail.unknown_sender': '(알 수 없음)',
631 'mail.nothing_yet': '아직 아무것도 없어요. <b>⟳</b>를 눌러 동기화하세요.',
632
633 // 동기화 중. {address}는 메일함, {folder}는 그 안의 폴더예요.
634 'mail.note.syncing': '{address}의 {folder}을(를) 동기화하는 중…',
635 'mail.note.fetching_older': '{address}의 {folder}에서 지난 메일을 가져오는 중…',
636 'mail.note.rebuilt': '서버에서 메일함이 다시 만들어졌어요. 처음부터 다시 동기화해요…',
637 'mail.note.up_to_date': '최신 상태예요.',
638 'mail.note.no_older': '더 가져올 지난 메일이 없어요.',
639 'mail.note.new.one': '새 메일 {n}통',
640 'mail.note.new.other': '새 메일 {n}통',
641 'mail.note.older.one': '지난 메일 {n}통',
642 'mail.note.older.other': '지난 메일 {n}통',
643 'mail.note.still_older.one': '서버에 지난 메일이 {n}통 더 있어요',
644 'mail.note.still_older.other': '서버에 지난 메일이 {n}통 더 있어요',
645
646 // 목록의 끝: 상한이 붙잡아 둔 것.
647 'mail.more.note.one': '서버에 지난 메일이 {n}통 더 있어요. Daimond은 새것부터 한 번에 {batch}통씩 가져오니, 메일함 전체를 한꺼번에 내려받는 일은 없어요.',
648 'mail.more.note.other': '서버에 지난 메일이 {n}통 더 있어요. Daimond은 새것부터 한 번에 {batch}통씩 가져오니, 메일함 전체를 한꺼번에 내려받는 일은 없어요.',
649 'mail.more.next': '다음 {n}통 가져오기',
650 'mail.more.stop': '멈추기',
651 'mail.more.all': '모두 가져오기',
652
653 // 메일함 하나를 끝까지 내려받기. {count}는 `mail.all.count`로, 이미 문장이 되어 있어요.
654 'mail.all.title': '남은 {n}통을 모두 가져올까요?',
655 'mail.all.body': '{batch}통씩 들어와 작업 공간에 쓰여요. 그래서 큰 메일함은 시간이 걸리고 디스크도 써요. 동기화는 메가바이트 단위로 크레딧에서 빠져요. 도중에 멈춰도 이미 들어온 것은 그대로 남아요.',
656 'mail.all.ok': '모두 가져오기',
657 'mail.all.progress': '{total} 중 {got} 가져왔어요…',
658 'mail.all.count.one': '{n}통',
659 'mail.all.count.other': '{n}통',
660 'mail.all.done': '끝났어요. {count} 가져왔어요.',
661 'mail.all.done_left': '끝났어요. {count} 가져왔고, 서버에 {left} 남아 있어요.',
662 'mail.all.stopped': '멈췄어요. {count} 가져왔어요.',
663 'mail.all.stopped_left': '멈췄어요. {count} 가져왔고, 서버에 {left} 남아 있어요.',
664
665 // 인용과 전달. 구분선은 읽는 사람이 보는 것이고, 그 아래 헤더 이름
666 //(From:, Date:, Subject:, To:)은 메시지 자체의 것이라 헤더 표기 그대로 둬요.
667 // "Re:"와 "Fwd:"도 손대지 않아요 — 받는 클라이언트가 그걸로 묶으니까요.
668 // 한 문장의 날짜 자리에 대체어를 끼워 넣지 않고 두 문장을 따로 둬요. 날짜를
669 // 읽을 수 없는 인용에는 날짜가 아예 없는 문장을 써요.
670 'mail.quote.head': '{date}에 {who} 님이 이렇게 썼어요:',
671 'mail.quote.head_undated': '{who} 님이 이렇게 썼어요:',
672 'mail.quote.they': '상대방',
673 'mail.fwd.sep': '---------- 전달된 메시지 ----------',
674
675 // 메일함 추가하기.
676 'mail.add.title': '메일함 추가',
677 'mail.add.lead': 'Daimond의 게이트웨이가 메일 서버에 연결해 메시지를 건네주고, 비밀번호는 잊어요. 비밀번호는 이 기기에서 암호문구로 암호화돼요.',
678 'mail.add.ok': '추가하고 동기화',
679 'mail.add.address': '이메일 주소',
680 'mail.add.password': '앱 비밀번호',
681 'mail.add.password_ph': '제공자에서 발급한 앱 비밀번호',
682 'mail.add.imap': 'IMAP 서버',
683 'mail.add.smtp': 'SMTP 서버',
684 'mail.add.port': '포트',
685 'mail.add.guess': 'Daimond에는 이 제공자의 서버 이름이 필요해요 (받기는 보통 imap.{domain}, 보내기는 보통 smtp.{domain}).',
686 'mail.add.err_address': '이메일 주소가 아니에요.',
687 'mail.add.err_password': '앱 비밀번호는 반드시 있어야 해요.',
688 'mail.add.err_imap': 'Daimond에는 IMAP 서버 이름이 필요해요.',
689 'mail.add.err_port': 'IMAP은 993 포트(TLS)나 143 포트를 써요.',
690 'mail.add.err_smtp': '이 메일함에서 보내려면 Daimond에 SMTP 서버 이름이 필요해요.',
691 'mail.add.err_smtp_port': '메일은 587이나 465 포트로 보내요.',
692
693 // 제공자별 안내. 주소에서 도메인을 알아보는 순간 그 아래에 나와요. 마크업이
694 // 들어 있어요. "앱 비밀번호"는 제공자가 스스로 부르는 이름이니, 그 언어에서
695 // 제공자가 부르는 대로 둬요.
696 'mail.preset.gmail': 'Gmail은 Google 비밀번호가 아니라 <b>앱 비밀번호</b>가 필요해요 (Google 계정 → 보안 → 2단계 인증 → 앱 비밀번호).',
697 'mail.preset.gmail_short': 'Gmail은 Google 비밀번호가 아니라 <b>앱 비밀번호</b>가 필요해요.',
698 'mail.preset.outlook': '2단계 인증을 켜 두었다면 Outlook은 <b>앱 암호</b>가 필요해요.',
699 'mail.preset.yahoo': 'Yahoo는 계정 보안에서 만든 <b>앱 비밀번호</b>가 필요해요.',
700 'mail.preset.icloud': 'iCloud는 <b>앱 암호</b>가 필요해요.',
701 'mail.preset.fastmail': 'Fastmail은 IMAP 접근이 열린 앱 비밀번호가 필요해요.',
702 'mail.unreachable.proton': 'Proton 메일은 내 컴퓨터에서 도는 Proton Bridge를 통해서만 닿을 수 있는데, Daimond의 게이트웨이는 거기에 연결할 수 없어요.',
703 'mail.unreachable.tuta': 'Tuta는 IMAP을 제공하지 않아서 어떤 메일 클라이언트도 읽을 수 없어요. Daimond도 마찬가지예요.',
704
705 // 잘못될 수 있는 것들.
706 'mail.err.unlock_first': '먼저 Daimond의 잠금을 풀어 주세요. 메일 비밀번호가 암호문구 아래에서 암호화돼 있어요.',
707 'mail.err.draft_needs_mailbox': '임시 보관하려면 보내는 메일함이 있어야 해요.',
708 'mail.err.draft_unreadable': '그 임시 보관 메일을 읽을 수 없었어요.',
709 'mail.err.msg_unreadable': '그 메시지를 읽을 수 없었어요.',
710 'mail.err.send_from_added': '추가하고 동기화한 메일함에서 보내세요.',
711 'mail.err.no_recipients': '받는 사람이 없는 메시지는 보낼 수 없어요.',
712 'mail.err.add_mailbox_first': '메시지를 쓰기 전에 메일함을 추가하세요.',
713 'mail.err.service_unavailable': '계정 서비스를 쓸 수 없어요.',
714 'mail.err.service_unreachable': 'Daimond 계정 서비스에 닿지 못했어요. 잠시 뒤에 다시 시도해 주세요.',
715 'mail.err.cap.one': '이 잠금 해제로는 메일함 {n}개까지 쓸 수 있어요. 하나 지우면 다른 것을 추가할 수 있어요.',
716 'mail.err.cap.other': '이 잠금 해제로는 메일함 {n}개까지 쓸 수 있어요. 하나 지우면 다른 것을 추가할 수 있어요.',
717
718 'mail.err.protocol_pending': 'Daimond은 아직 메일을 가져올 수 없어요. 비공개 터널은 완성됐지만 메일 프로토콜이 아직 연결되지 않았어요. 아무것도 보내지 않았고, 비밀번호는 이 기기를 떠난 적이 없어요.',
719
720 // 터널. TLS가 브라우저에서 끝나므로 게이트웨이가 들여다볼 수 없는 연결에 대해
721 // 사용자가 받을 수 있는 말은 이것뿐이에요.
722 'mail.tunnel.close.auth': 'Daimond이 이 기기를 로그아웃했기 때문에 메일 연결이 거부됐어요. Daimond을 잠금 해제하고 다시 가져와 주세요.',
723 'mail.tunnel.close.pro': '메일은 Pro에 포함되고, 이 계정은 아직 해제하지 않았어요. 크레딧에서 Pro를 구매하면 메일이 열려요.',
724 'mail.tunnel.close.host': 'Daimond은 이 계정이 연결해 둔 메일 서버에만 접속해요. {host}는 그중 하나가 아니에요. 메일함을 다시 추가하면 (그때 서버가 함께 연결돼요) 가져올 수 있어요.',
725 'mail.tunnel.close.port': '메일은 포트 993, 143, 465, 587로 접속해요. {port}는 그중 어느 것도 아니에요. 메일함 설정에서 포트를 고쳐 주세요.',
726 'mail.tunnel.close.credits': '가져오는 중에 크레딧이 다 됐어요. 크레딧에서 충전하고 다시 가져와 주세요. 이미 내려온 것은 이 기기에 있어요.',
727 'mail.tunnel.close.concurrent': '이 계정은 이미 메일 연결 네 개를 쓰고 있어요. 다른 메일함이 끝나기를 기다리거나 다른 Daimond 탭을 닫고 다시 가져와 주세요.',
728 'mail.tunnel.close.unresolved': '{host}는 Daimond이 접속해도 되는 주소로 해석되지 않아요. 메일함 설정에서 서버 이름을 확인하거나 (오타가 정확히 이렇게 보여요) 이 네트워크의 DNS가 그 이름을 아는지 확인해 주세요.',
729 'mail.tunnel.close.toobig': '메일 연결이 게이트웨이가 실을 수 있는 양보다 한꺼번에 많이 보내서 닫혔어요. 다시 가져와 주세요.',
730 'mail.tunnel.close.done': '가져오기가 끝나기 전에 메일 서버가 연결을 끝냈어요. 다시 가져와 주세요. 내려온 것은 이 기기에 있어요.',
731 'mail.tunnel.close.unreachable': '{host}에 닿을 수 없었어요. 메일함 설정에서 서버 이름을 확인하거나 잠시 뒤에 다시 시도해 주세요.',
732 'mail.tunnel.close.no_socket': '메일 연결을 아예 열 수 없었어요. 인터넷에 연결돼 있는지 확인하고 다시 가져와 주세요.',
733 'mail.tunnel.close.idle': '메일 서버가 응답을 멈춰서 연결을 닫았어요. 이어서 하려면 다시 가져와 주세요.',
734 'mail.tunnel.close.expired': '너무 오래 걸려서 메일 연결을 닫았어요. 다시 가져오면 멈춘 곳에서 이어져요.',
735 'mail.tunnel.close.other': '메일 연결이 예상치 못하게 닫혔어요 (코드 {code}). 다시 가져와 주세요.',
736 'mail.tunnel.err.no_server': '그 메일함에는 서버와 포트가 설정돼 있지 않아요. 설정을 열어 채워 주세요.',
737 'mail.tunnel.err.no_client': 'Daimond이 암호화된 메일 연결을 시작할 수 없었어요 — {reason}',
738 'mail.tunnel.err.slow': '{host}가 {secs}초 안에 암호화 핸드셰이크를 끝내지 못했어요. 잠시 뒤에 다시 시도해 주세요.',
739 'mail.tunnel.err.no_reply': '{host}가 {what} 단계에 {secs}초 안에 응답하지 않았어요. 다시 가져와 주세요.',
740 'mail.tunnel.err.cert': 'Daimond이 {host}의 인증서를 확인할 수 없어서 ({fault}) 아무것도 보내지 않았어요. 서버가 자기 신원을 증명할 수 있을 때까지 비밀번호는 이 기기에 남아 있어요.',
741 'mail.tunnel.err.cert_name': '{host}가 다른 서버용으로 발급된 인증서를 내놓아서 ({fault}) Daimond은 아무것도 보내지 않았어요. 메일함 설정에서 서버 이름을 확인해 주세요.',
742 'mail.tunnel.err.cert_expired': '{host}가 만료된 인증서를 내놓아서 ({fault}) Daimond은 아무것도 보내지 않았어요. 이 기기의 시계가 틀렸다면 고치고 다시 가져와 주세요.',
743 'mail.tunnel.err.cert_issuer': '{host}가 Daimond이 신뢰하지 않는 발급자의 인증서를 내놓아서 ({fault}) 아무것도 보내지 않았어요. 자체 서명 인증서도 이렇게 보이고, 가로채인 연결도 마찬가지예요.',
744 'mail.tunnel.err.starttls': '{host}로 가는 암호화 채널을 시작할 수 없었어요 — {reason}',
745 'mail.tunnel.err.starttls_early': '{host}가 암호화 채널이 서기 전에 무언가를 보냈기 때문에, Daimond은 신뢰하지 않고 연결을 버렸어요. 아무것도 보내지 않았어요.',
746
747 // ── 작업 공간 파일 ─────────────────────────────────────────
748 'work.new_file': '새 파일',
749 'work.new_folder': '새 폴더',
750 'work.upload': '파일 올리기',
751 'work.parent': '상위 폴더',
752 'work.filter_ph': '거르기…',
753 'work.breadcrumb': '폴더 경로',
754
755 // ── 휴대폰 화면 ────────────────────────────────────────────
756 'sheet.panel': '패널',
757 'sheet.ask': '질문',
758 'sheet.ask_ph': '이것에 대해 물어보기…',
759 // {thing}은 패널 이름이에요.
760 'sheet.ask_about': '이 {thing}에 대해 물어보기…',
761
762 // ── 신원: 만들기와 잠금 해제 ───────────────────────────────
763 'identity.your_name': '이름',
764 'identity.passphrase': '암호문구',
765 'identity.confirm_passphrase': '암호문구 확인',
766 'identity.show_passphrase': '암호문구 보기',
767 'identity.hide_passphrase': '암호문구 숨기기',
768 'identity.generate_another': '다른 것 만들기',
769 'identity.wrote_it_down': '안전한 곳에 적어 두었어요',
770 'identity.choose_own': '암호문구를 직접 정할래요',
771 'identity.skip': '지금은 건너뛰기',
772 'identity.create_account': '계정 만들기',
773 'identity.unlock': '잠금 해제',
774 'identity.forget': '이 신원 지우기…',
775 'identity.use_generated': '만들어 준 암호문구 쓰기',
776 'identity.title_create': '계정 만들기',
777 'identity.title_unlock': 'Daimond 잠금 해제',
778 'identity.title_welcome': '다시 오셨네요, {name} 님',
779 'identity.title_linked': '연결됐어요. 이제 잠금을 풀어 주세요',
780 'identity.lead_create': '이름을 정하세요. 암호문구는 아래에서 Daimond이 직접 만들어요. 다른 기기에서 이미 Daimond을 쓰고 있다면 여기서 계정을 새로 만들지 말고, “페어링 코드가 있나요?”로 이 기기를 연결하세요. (에이전트가 편집할 수 있는 실제 폴더를 열려면 Chrome, Edge, Brave가 필요해요.)',
781 'identity.lead_unlock': '암호문구를 입력해서 이 기기의 잠금을 풀고, 저장해 둔 키를 복호화하세요.',
782 'identity.lead_linked': '이 기기는 계정에 연결되어 있어요. 새 것이 아니라 다른 기기에서 쓰는 것과 같은 암호문구를 입력하면, 채팅과 파일이 여기로 와요.',
783 'identity.lead_linked_named': '이 기기는 계정 “{name}”에 연결되어 있어요. 새 것이 아니라 다른 기기에서 쓰는 것과 같은 암호문구를 입력하면, 채팅과 파일이 여기로 와요.',
784 // {bits}는 함께 실린 낱말 목록에서 계산한 숫자이고, 고정값이 아니에요.
785 'identity.gen_note': '이 기기가 무작위로 고른 여덟 낱말이고, 약 {bits}비트라 추측할 수 있는 범위를 훨씬 넘어요. 여기에 보관하는 모든 것의 열쇠이고, 누구도 대신 되돌려 줄 수 없어요. 종이에 적어 두세요. 비밀번호 관리자가 대신 보관하겠다고 할 수도 있는데, 이만큼 강하면 안전해요.',
786
787 // ── 패스키 ─────────────────────────────────────────────────
788 // 하나하나가 막다른 길을 설명해요. 열리지 않는 패스키 뒤에는 암호문구밖에
789 // 없으니, 어떤 경우인지 저마다 밝혀요.
790 'passkey.err_need_passphrase': '패스키를 등록하려면 암호문구가 필요해요.',
791 'passkey.err_no_identity': '패스키로 지킬 신원이 없어요.',
792 'passkey.err_bad_passphrase': '암호문구가 맞지 않아요.',
793 'passkey.err_cannot_create': '이 브라우저나 기기에서는 패스키를 만들 수 없어요.',
794 'passkey.err_create_failed': '패스키 만들기가 취소됐거나 실패했어요.',
795 'passkey.err_none_created': '만들어진 패스키가 없어요.',
796 'passkey.err_no_prf': '이 인증기는 PRF 확장을 지원하지 않아서 Daimond의 잠금을 풀 수 없어요.',
797 'passkey.err_not_sealed': '패스키를 봉인하지 못했어요. 아무것도 저장되지 않았어요.',
798 'passkey.err_not_saved': '이 기기에 패스키를 저장하지 못했어요.',
799 'passkey.err_not_enrolled': '이 기기에 등록된 패스키가 없어요.',
800 'passkey.err_unreadable': '패스키를 읽을 수 없었어요.',
801 'passkey.err_unreadable_use_pass': '패스키를 읽을 수 없었어요. 암호문구를 쓰세요.',
802 'passkey.err_wrong_identity': '패스키가 이 신원과 맞지 않았어요. 암호문구를 쓰세요.',
803 'passkey.err_out_of_date': '이 패스키는 오래됐어요. 암호문구로 잠금을 푼 다음 다시 추가하세요.',
804 'passkey.err_cannot_use': '이 브라우저나 기기에서는 패스키를 쓸 수 없어요.',
805 'passkey.err_no_identity_support': '신원 기능을 쓸 수 없어요.',
806 'passkey.err_no_offer': 'Daimond 패스키가 제시되지 않았거나, PRF 비밀을 담고 있지 않았어요.',
807 'passkey.err_no_account_carried': '그 패스키는 계정을 담도록 설정되어 있지 않아요. 계정이 있는 기기에서 설정을 열고 패스키를 다시 추가하세요.',
808 'passkey.err_did_not_open': '그 패스키로는 계정이 열리지 않았어요.',
809 'passkey.err_stored_unreadable': '저장된 계정을 읽을 수 없었어요.',
810 'passkey.err_stored_locked': '저장된 계정이 열리지 않았어요. 암호문구를 쓰세요.',
811 'passkey.err_not_resealed': '패스키를 다시 봉인하지 못했어요.',
812
813 // ── 기기 간 동기화 ─────────────────────────────────────────
814 'sync.syncing': '동기화 중…',
815 'sync.synced': '동기화됨',
816 'sync.off': '동기화 꺼짐',
817 'sync.off_reason': '기기 간 동기화는 Pro 기능인데, 이 계정에는 없어요.',
818 // 이 말을 하는 곳은 이 칩뿐이라, 제안으로 가는 길도 겸해요.
819 // 이 상태에서는 누를 수 있고, 크레딧에 있는 Pro를 열어요.
820 'sync.off_click': '누르면 크레딧에서 Pro를 볼 수 있어요.',
821 'sync.off_pitch': '이 계정이 Pro가 아니라서 동기화가 꺼져 있어요. Pro를 들이면 기기 간 동기화, 클라우드 저장, Email이 켜져요.',
822 // 거절당한 꾸러미. 무엇이 너무 큰지와, 보통 무엇 때문인지를 밝혀요.
823 'sync.too_big': '동기화 멈춤',
824 'sync.too_big_reason': '이 기기의 꾸러미가 너무 커서 보낼 수 없어요. 그래서 여기서 한 일이 밖으로 나가지 않아요. 대개는 아주 큰 Diamond이나 작업 공간 파일 하나가 원인이니, 줄이거나 지우면 동기화는 저절로 다시 돌아가요.',
825 'sync.diamonds_left.one': 'Diamond {n}개가 이 기기의 동기화 꾸러미에 들어가지 못해, 더 작아지기 전까지는 다른 기기로 가지 않아요: {names}',
826 'sync.diamonds_left.other': 'Diamond {n}개가 이 기기의 동기화 꾸러미에 들어가지 못해, 더 작아지기 전까지는 다른 기기로 가지 않아요: {names}',
827 // A file the parcel had no room for, named the way a Diamond that did not fit is
828 // named. The same news in the same shape; not an error -- the budget is doing what
829 // it is for, and nothing at the far end is deleted.
830 'sync.files_left.one': '파일 {n}개가 이 기기의 동기화 꾸러미에 들어가지 못해, 자리가 날 때까지는 다른 기기로 가지 않아요: {names}',
831 'sync.files_left.other': '파일 {n}개가 이 기기의 동기화 꾸러미에 들어가지 못해, 자리가 날 때까지는 다른 기기로 가지 않아요: {names}',
832 // 끝나 버렸고 다시 얻지도 못한 세션. 아래와 같은 이름을 씁니다.
833 'sync.signed_out': '동기화 멈춤',
834 'sync.signed_out_reason': '이 기기는 Daimond 계정 서비스에서 로그아웃된 상태이고 다시 로그인하지도 못해서, 여기서 한 일이 다른 기기로 가지 않아요. 서비스에 닿는 대로 다시 이어져요. 그래도 안 되면 Daimond를 잠갔다가 다시 여세요.',
835 'sync.paused': '동기화 멈춤',
836 'sync.busy_reason': '다른 기기가 같은 계정에 동시에 저장하고 있어서 이 기기의 작업이 아직 보내지지 않았어요. 다음 변경 때 함께 나가요.',
837 'sync.merge_reason': '다른 기기에서 온 것 가운데 일부를 여기서 합치지 못해서, 이 기기가 그 위에 덮어쓰지 않았어요. 페이지를 새로 고치면 대개 풀려요.',
838 'sync.last_synced': '마지막 동기화는 {when}이에요.',
839 'sync.last_never': '이 기기에서는 아직 아무것도 동기화되지 않았어요.',
840 'sync.when_just_now': '방금',
841 'sync.when_mins': '{n}분 전',
842 'sync.when_hours': '{n}시간 전',
843 'sync.when_days': '{n}일 전',
844
845 // ── 계정의 공개 핸들 ───────────────────────────────────────
846 'handle.taken': '그 핸들은 이미 다른 사람이 쓰고 있어요. 다른 것을 시도해 보세요.',
847 'handle.invalid': '핸들은 3~24자예요. 소문자, 숫자, 그리고 그 사이의 하이픈을 쓸 수 있어요.',
848 'handle.reserved': '그 핸들은 Daimond가 보유하고 있어 사용할 수 없어요.',
849 'handle.failed': '지금은 핸들을 바꾸지 못했어요. 잠시 뒤에 다시 시도해 주세요.',
850
851 // ── 클라우드 저장소 정리 ───────────────────────────────────
852 'chunks.sweep_held': '정리 일시 중지',
853 'chunks.sweep_held_reason': '클라우드 저장소에 있는 조각 {m}개 가운데 {n}개는 이 계정의 어떤 파일도 더는 참조하지 않습니다. 삭제하지 않았습니다. 한 번의 요청으로 저장된 것의 절반을 넘게 지울 수 없기 때문입니다. 사용자의 것은 하나도 사라지지 않았고, 전부를 설명할 수 있는 다음 동기화에서 공간이 확보됩니다.',
854 'chunks.upload_refused': '올리기 일시 중지',
855 'chunks.upload_refused_title': '클라우드 저장소가 올리기를 거부했습니다',
856 'chunks.sweep_confirm_ask': '지금 삭제하시겠습니까? 아직 보이는 것은 하나도 건드리지 않으며, 공간이 확보됩니다.',
857 'chunks.sweep_confirm_ok': '조각 삭제',
858 'chunks.sweep_confirm_title': '어디서도 참조하지 않는 조각을 정리하시겠습니까?',
859
860 // ── 두 번째 기기 연결 ──────────────────────────────────────
861 // 버튼 이름을 감싸는 따옴표는 한국어 관례대로 “ ”를 써요.
862 'pair.link_another': '다른 기기 연결',
863 'pair.link_this': '이 기기 연결',
864 'pair.have_code': '페어링 코드가 있나요?',
865 'pair.making_code': '한 번만 쓰는 코드를 만드는 중…',
866 'pair.scan_lead': '다른 휴대폰의 카메라를 여기에 대면 Daimond이 열리고 연결돼요:',
867 'pair.no_camera': '카메라가 없다면 그 기기에서 Daimond을 열고 “페어링 코드가 있나요?”를 고른 다음, 이것을 입력하세요:',
868 'pair.type_lead': '다른 기기에서 Daimond을 열고 “페어링 코드가 있나요?”를 고른 다음, 이것을 입력하세요:',
869 'pair.code_expiry': '이 코드는 한 번만 쓸 수 있고 약 {mins}분 뒤에 만료돼요. 다른 기기는 늘 쓰던 암호문구로 잠금을 풀면 돼요.',
870 'pair.code_ph': '페어링 코드',
871 'pair.code_check': '다른 기기에서 나온 코드예요. 그쪽에 보이는 것과 같아야 해요.',
872 'pair.scanned_lead': '다른 기기에서 읽어 왔어요. 아래 “이 기기 연결”을 누르면 계정이 여기로 와요.',
873 'pair.manual_lead': '이미 쓰고 있는 기기에서 “다른 기기 연결”을 고르고, 거기에 뜨는 코드를 여기에 입력하세요.',
874 'pair.linked': '이 기기가 연결됐어요',
875 'pair.linked_note': '이제 계정이 여기에 있어요. 잠금 해제를 누르고, 새 것이 아니라 다른 기기에서 쓰는 것과 같은 암호문구를 입력하세요.',
876 'pair.linked_named': '이제 계정 “{name}”이(가) 여기에 있어요. 잠금 해제를 누르고, 새 것이 아니라 다른 기기에서 쓰는 것과 같은 암호문구를 입력하세요.',
877 // 연결하는 김에 이름을 붙여요. 선택 사항이라, 이름이 없어도 동기화돼요.
878 'pair.name_this': '이 기기에 이름 붙이기 (선택)',
879 'pair.name_ph': '예: 주방 노트북',
880 'pair.named_note': '이 기기는 기기 목록에 “{name}”(으)로 나와요. 이름은 나중에 거기서 바꿀 수 있어요.',
881 'pair.err_no_identity': '이 기기에는 연결할 신원이 없어요.',
882 'pair.err_unreadable_local': '이 기기의 신원을 읽을 수 없었어요.',
883 'pair.err_sign_in_first': '다른 기기를 연결하기 전에, 이 기기에서 먼저 로그인하세요.',
884 'pair.err_enter_code': '다른 기기에 뜬 페어링 코드를 입력하세요.',
885 'pair.err_bad_code': '그 코드는 잘못됐거나 만료됐어요. 다른 기기에서 새로 만들어 주세요.',
886 'pair.err_bundle_unreadable': '연결된 신원을 읽을 수 없었어요.',
887 'pair.err_bundle_import': '연결된 신원을 가져올 수 없었어요.',
888 'pair.err_create': '페어링 코드를 만들 수 없었어요.',
889 'pair.err_link': '이 기기를 연결할 수 없었어요.',
890 // 겉모습 설정을 한 번만 넘기는 일. 그런 일이 있었다는 것과, 이제부터는
891 // 이 기기가 자기 것으로 가진다는 걸 밝혀요.
892 'pair.look_carried': '테마와 언어, 패널 배치도 함께 넘어왔어요. 이제부터는 기기마다 따로 가지고 있어서, 한쪽을 바꿔도 다른 쪽은 그대로예요.',
893
894 // ── 모양 메뉴 ──────────────────────────────────────────────
895 'menu.view': '보기',
896 'menu.view_simple': '심플',
897 'menu.view_max': '최대',
898 'menu.view_simple_help': '각 항목은 이름과 실행 여부만 보여주고, 나머지는 한 번 누르면 나옵니다.',
899 'menu.view_max_help': '모델·비용·컨텍스트를 각 항목 옆에 두어 열지 않고 비교합니다.',
900 'menu.view_note': '모든 타일의 모양도 함께 정합니다. 타일마다 다르게 하려면 타일의 톱니바퀴를 쓰세요.',
901 'menu.theme': '테마',
902 'menu.tone_light': '밝게',
903 'menu.tone_mid': '중간',
904 'menu.tone_dark': '어둡게',
905 'menu.theme_light': '종이',
906 'menu.theme_mist': '안개',
907 'menu.theme_linen': '리넨',
908 'menu.theme_lollypop': '사탕',
909 'menu.theme_sage': '세이지',
910 'menu.theme_dusk': '황혼',
911 'menu.theme_dark': '잉걸불',
912 'menu.theme_amber': '호박빛',
913 'menu.theme_amber_help': '따뜻하고 푸른빛이 적어 밤에 읽기 좋아요.',
914 'menu.theme_midnight': '자정',
915 'menu.theme_forest': '숲',
916 'menu.theme_plum': '자두',
917 'menu.text_size': '글자 크기',
918 'menu.smaller': '글자 작게',
919 'menu.larger': '글자 크게',
920 'menu.dock_tiling': '독 분할',
921 'menu.dock_auto': '자동',
922 'menu.dock_auto_help': '창이 충분히 넓어지면 두 번째 열이 생겨요',
923 'menu.dock_grid_help.one': '{cols}열, 패널 {cells}개까지',
924 'menu.dock_grid_help.other': '{cols}열, 패널 {cells}개까지',
925 'menu.language': '언어',
926 'menu.language_help': 'Daimond이 쓰는 말이에요. 아직 번역이 없는 언어는 영어로 남아요.',
927 'menu.language_pending': '아직 번역 없음',
928 'menu.currency': '통화',
929 'menu.currency_help': '금액을 어떤 통화로 보여 줄지예요. 결제는 언제나 미국 달러예요.',
930 'menu.this_diamond': '이 Diamond',
931 'menu.arrangement_update': '저장한 배치 업데이트',
932 'menu.arrangement_keep': '이 배치를 {name}에 남겨 두기',
933 'menu.arrangement_keep_this': '이 배치를 이 Diamond에 남겨 두기',
934 'menu.arrangement_forget': '남기지 않기',
935 'menu.arrangement_note': '이 Diamond을 다시 열면 작업하던 패널이 되살아나요. 부탁하기 전에는 아무것도 기억하지 않아요.',
936
937 // ── 글자 크기 단계 ─────────────────────────────────────────
938 'size.small': '작게',
939 'size.normal': '기본',
940 'size.large': '크게',
941 'size.larger': '더 크게',
942
943 // ── 독 분할 ────────────────────────────────────────────────
944 'dock.one_column': '한 열',
945 'dock.2x2': '2 × 2',
946 'dock.2x3': '2 × 3',
947 'dock.3x2': '3 × 2',
948 'dock.automatic': '자동',
949
950 // ── 패널 모음의 구역 ───────────────────────────────────────
951 'gallery.search_ph': '패널 검색',
952 'gallery.no_match': '그런 이름의 패널은 없어요.',
953 'gallery.zone_rail': '레일',
954 'gallery.zone_stage': '채팅 옆',
955 'gallery.zone_dock': '독',
956 'gallery.note': '고정한 패널은 상단 바에 놓여요. <kbd>Ctrl</kbd> <kbd>K</kbd>를 누르면 어느 패널이든 키보드로 갈 수 있어요.',
957 'gallery.state_unrevealed': '아직 안 씀',
958 'gallery.state_full': '가득 참',
959 'gallery.state_open': '열림',
960 'gallery.state_no_room': '바에 자리 없음',
961 'gallery.pin': '상단 바에 {name} 두기',
962 'gallery.unpin': '상단 바에서 {name} 빼기',
963
964 // ── 지출 ───────────────────────────────────────────────────
965 'spend.intro': '주머니가 둘로 나뉘어 있어요. 추론은 직접 쓰는 제공자 키로 돌아가고, 크레딧은 브라우저 밖으로 나가는 몇 가지 일에 대해 게이트웨이에 내는 값이에요.',
966 'spend.inference': '추론',
967 'spend.inference_hint': '직접 쓰는 제공자 키로 청구돼요',
968 'spend.credits': '크레딧',
969 'spend.credits_hint': '게이트웨이 서비스: 웹, 메일, 동기화',
970 'spend.no_usage': '기록된 사용량이 없어요.',
971 'spend.no_account': '아직 게이트웨이 계정이 없어요. 크레딧은 브라우저 밖으로 나가는 몇 가지 일에 쓰여요. 웹 페이지 가져오기, 메일 보내기와 동기화, 기기 간 동기화예요. 암호문구와 크레딧을 더하면 시작할 수 있어요.',
972 'spend.this_week': '이번 주',
973 'spend.this_month': '이번 달',
974 'spend.session': '이번 세션',
975 'spend.balance': '잔액',
976 'spend.tok': '토큰',
977 // 레일 지출 줄의 세 칸. 숫자 아래에 놓이니 짧게 둬요.
978 'spend.period_day': '오늘',
979 'spend.period_week': '주',
980 'spend.period_month': '달',
981 'spend.no_turns': '이 기간에는 아직 턴이 없어요.',
982 'spend.nothing_yet': '아직 없어요.',
983 'spend.nothing_spent': '여기서 쓴 것은 아직 없어요.',
984 'spend.no_movements': '아직 크레딧 변동이 없어요.',
985 'spend.where_credits_went': '크레딧이 어디로 갔나',
986 'spend.unknown_model': '(알 수 없음)',
987 'spend.meter_help': '지출이 어디로 가는지 보기',
988 'spend.rates_note': '금액은 어림 환율({date})로 환산했어요. 결제는 미국 달러예요.',
989 // 표 머리글. 좁은 칸에서 숫자 위에 놓이니 짧게 둬요.
990 'spend.col_model': '모델',
991 'spend.col_turns': '턴',
992 'spend.col_tokens': '토큰',
993 'spend.col_cost': '비용',
994 'spend.col_key': '키',
995 'spend.col_left': '남음',
996 'spend.col_period_spend': '지출',
997 'spend.provider_keys': '제공자 키',
998 'spend.left_auto': '이 키에 얼마 남았는지 제공자가 말해 준 값이에요.',
999 'spend.left_manual': '본인이 적어 둔 금액에서, 그 뒤로 쓴 것으로 Daimond이 어림한 만큼을 뺀 값이에요.',
1000 'spend.left_unknown': '이 제공자는 얼마 남았는지 말해 주지 않고, 당신도 Daimond에 알려 주지 않았어요.',
1001 'spend.all_reported': '이 기간의 턴은 모두 제공자가 알려 준 비용을 달고 왔어요. 그러니 실제로 청구된 금액이에요.',
1002 'spend.part_reported': '이 가운데 {amount}은(는) 제공자가 알려 준 금액이고, 나머지는 Daimond의 요금표로 매긴 값이에요.',
1003 'spend.none_reported': 'Daimond의 요금표로 매긴 값이에요. 이 턴들에 대해 비용을 알려 준 제공자가 없어요.',
1004 'spend.none_reported_unknown': 'Daimond의 요금표로 매겼는데, 이 모델 가운데 하나가 표에 없어서 이 숫자는 대략의 눈대중이에요.',
1005 'spend.repriced': '요금표를 바로잡기 전에 매긴 어림값은 이 기기에서 다시 계산했어요. 예전 요금표로는 이 기간이 {amount}으로(로) 나왔어요.',
1006 'spend.col_when': '시각',
1007 'spend.col_what': '내용',
1008 'spend.col_amount': '금액',
1009 'spend.col_balance': '잔액',
1010 // 게이트웨이가 붙이는 크레딧 분류.
1011 'spend.cat_web': '웹 페이지',
1012 'spend.cat_search': '웹 검색',
1013 'spend.cat_mail': '메일',
1014 'spend.cat_sync': '기기 간 동기화',
1015 'spend.cat_storage': '저장된 파일',
1016 'spend.cat_infer': '추론(크레딧)',
1017 'spend.cat_other': '기타 서비스',
1018 'spend.cat_topup': '크레딧 구매',
1019 'spend.cat_refund': '환불',
1020 'spend.cat_grant': '선물·지원',
1021 'spend.cat_adjust': '조정',
1022 'spend.cat_fallback': '기타',
1023 'spend.cat_unlisted': '분류되지 않음',
1024
1025 // ── 도구 ───────────────────────────────────────────────────
1026 'tools.unlock_price': '{price}에 잠금 해제',
1027 'tools.unreachable': '계정 서비스에 연결할 수 없어서, 여기서 무엇이 풀려 있는지 알 수 없어요.',
1028 'tools.no_service': '계정 서비스를 쓸 수 없어요.',
1029
1030 // ── 앱이 사람 말로 고쳐 쓰는 오류 ──────────────────────────
1031 'err.unreachable': '그 엔드포인트에 닿을 수 없었어요. 설정의 기본 URL과 연결 상태를 확인하세요.',
1032 'err.rejected_401': 'API 키가 거부됐어요(401). 설정을 열어 확인하세요.',
1033 'err.denied_403': '제공자가 접근을 거부했어요(403). 키와 요금제를 확인하세요.',
1034 'err.notfound_404': '제공자가 404 를 반환했습니다. 이번 차례의 앞 단계가 잘 됐다면 기본 URL 은 문제가 없고, 모델이 이 요청만 처리하지 못한 것입니다 — 대개 이미지가 들어간 요청입니다. 그렇지 않다면 설정에서 기본 URL 을 확인하세요.',
1035 'err.ratelimit_429': '제공자가 요청 속도를 제한하고 있어요(429). 잠시 뒤에 다시 해 보세요.',
1036 'err.server_5xx': '제공자 쪽에서 서버 오류가 났어요. 잠시 뒤에 다시 해 보세요.',
1037 'err.generic': '문제가 생겼어요. 다시 해 보세요.',
1038 'err.reply_cut': '답변이 {max} 토큰에서 자리를 다 써서, 도구 호출이 잘린 채 도착해 실행되지 못했어요. 설정에서 답변 길이를 늘리거나, 더 작은 변경을 요청해 주세요',
1039
1040 // ── 답변 길이 ──────────────────────────────────────────────
1041 'settings.max_tokens': '가장 긴 답변',
1042 'settings.max_tokens_auto': '자동',
1043 'settings.tokens': '토큰',
1044 'settings.max_rounds': '한 턴의 단계 수',
1045 'settings.crystal_limits': '크리스털 용량',
1046 'settings.crystal_cap': '크리스털 크기 제한',
1047 'settings.crystal_cap_note': '크리스털은 Diamond의 요약이므로 상한이 있습니다. 이를 넘으면 daimon이 세부 내용을 Diamond 범위의 파일에 씁니다.',
1048 'settings.crystal_cap_auto': '기본값',
1049 'settings.crystal_page_cap': '페이지 크기 제한',
1050 'settings.crystal_page_cap_note': 'Diamond의 데이터를 보여 주는 페이지입니다. 동기화할 때마다 함께 오가므로 데이터와 용량을 나눠 씁니다.',
1051 'settings.max_rounds_auto': '기본값',
1052 'settings.steps': '단계',
1053 'settings.max_rounds_note': '한 턴이 멈추기 전까지 에이전트가 도구를 쓸 수 있는 횟수. 멈출 때 그렇게 알려 주며, 계속하라고 지시할 수 있습니다.',
1054 'settings.fold_at': '대화를 접는 시점',
1055 'settings.fold_at_auto': '기본값',
1056 'settings.fold_at_note': '컨텍스트 창이 얼마나 찼을 때 Daimond가 대화의 앞부분을 요약으로 바꿀지. 바꿀 때는 대화창에서 그렇게 알려 줍니다. 낮으면 더 일찍 자주 접고, 높으면 대화를 원문 그대로 더 많이 남깁니다.',
1057 'settings.max_tokens_note': '한 번의 답변이 길어질 수 있는 한도예요. 너무 낮으면 큰 파일이 반쯤 잘려서 옵니다.',
1058 'settings.max_tokens_ceiling': '최대 허용',
1059
1060 // ── 대화가 저장되지 않을 때 ────────────────────────────────
1061 'store.alarm': '대화가 저장되지 않고 있어요.',
1062 'store.alarm_advice': '화면에 있는 것은 아직 남아 있지만, 새로 고치면 사라집니다. 지금 사본을 내려받으세요.',
1063 'store.alarm_download': '사본 내려받기',
1064 'store.alarm_retry': '다시 시도',
1065 'store.full': '이 브라우저의 이 사이트 저장 공간에 남은 자리가 없어요',
1066 'identity.err_no_sealing_key': '이 기기에는 봉인 키가 없어서 봉인된 메시지를 열 수 없어요. 아이덴티티를 한 번 잠금 해제하면 키가 만들어집니다.',
1067 'store.empty_read': '이 브라우저가 가지고 있는 대화 {n}개 중 하나도 돌려주지 않았어요',
1068 // ── 권한 단계 ──────────────────────────────────────────────
1069 'permmode.title': '권한 모드',
1070 'permmode.lead': 'Daimond가 묻지 않고 하는 일',
1071 'permmode.chip_help': 'Daimond이 묻지 않고 하는 일',
1072 'permmode.chip_aria': '권한 모드: {mode}. 바꾸기.',
1073 'permmode.astat': '권한: {mode}',
1074 'permmode.never': '어떤 모드도 울타리, Diamond의 폴더, 기록을 옮기지 않습니다.',
1075 'permmode.failed': '그 권한 모드를 설정하지 못했어요. 아무것도 바뀌지 않았습니다.',
1076 'permmode.net_head': '명령과 네트워크',
1077 'permmode.net_open': '밖에서 읽은 것이 없어 막고 있는 것도 없습니다.',
1078 'permmode.net_cut': '남이 쓴 것을 읽어서 명령이 네트워크 없이 실행됩니다.',
1079 'permmode.net_allowed': '명령이 네트워크에 나갈 수 있습니다.',
1080 'permmode.net_refused': '명령이 네트워크 없이 실행됩니다.',
1081 'permmode.net_bypass': '‘묻지 않음’에서는 아무것도 막지 않습니다.',
1082 'permmode.net_each': '채팅마다 한 번 묻기',
1083 'permmode.net_always': '항상 허용',
1084 'permmode.net_never': '허용 안 함',
1085 'permmode.net_cut_mark': '네트워크 없음',
1086 'permmode.ask': '매번 묻기',
1087 'permmode.ask_blurb': '모든 명령을 먼저 당신에게 묻습니다. 웹에 닿는 것도 대화마다 한 번 묻습니다.',
1088 'permmode.guarded': '지킴',
1089 'permmode.guarded_blurb': '명령은 실행됩니다. 남이 쓴 것을 읽은 뒤로는 밖으로 나가기 전에 묻습니다.',
1090 'permmode.bypass': '묻지 않음',
1091 'permmode.bypass_blurb': '무엇을 읽었든 묻지 않습니다.',
1092 'permmode.bypass_title': '그만 물어볼까요?',
1093 'permmode.bypass_body': '명령은 당신의 기계에서 실행되고 페이지도 묻지 않고 가져옵니다. Daimond이 남이 쓴 페이지, 메일, 빌드 로그를 읽은 뒤에도 마찬가지입니다.\n\n내주는 것은 바로 그 마지막 경우입니다. 당신이 쓰지 않은 무언가가 당신의 작업을 어딘가로 보내도록 Daimond을 설득할 수 있는 경우입니다.\n\n그대로인 것: 명령이 실행되는 울타리, 각 Diamond 자신의 폴더, 시스템 호출 필터, 나중에 확인할 수 있는 기록. 밖에서 온 글은 여전히 남의 말로 표시됩니다.\n\n다시 묻지 않습니다.',
1094 'permmode.bypass_ok': '묻지 않음 사용',
1095 'permmode.run_title': '이 명령을 실행할까요?',
1096 'permmode.run_body': 'Daimond가 당신의 기기에서 명령을 실행하려고 합니다.\n\n{cmd}\n\n위치: {cwd}\n\n‘매번 묻기’ 권한 모드는 모든 명령을 먼저 보여 드립니다.',
1097 'permmode.run_ok': '실행',
1098 'permmode.net_title': '이 명령이 네트워크에 접근하도록 할까요?',
1099 'permmode.net_body': 'Daimond이 남이 쓴 것을 읽어서 명령이 네트워크 없이 실행되고 있습니다. 읽은 내용이 이 명령의 목적지를 정했을 수 있습니다.\n\n{cmd}\n\n위치: {cwd}\n\n예는 이 명령 한 번만 통과시킵니다. 아니요를 골라도 명령은 실행되지만 네트워크는 없습니다. 아무 말도 하지 않아도 마찬가지입니다.',
1100 'permmode.net_ok': '네트워크 허용',
1101 'permmode.net_remember': '모든 대화에서 허용하고 다시 묻지 않기',
1102 'permmode.act_worker_title': '에이전트가 페이지에서 조작하려고 합니다',
1103 'permmode.act_worker_body': '혼자서 일하는 에이전트가 {host}에서 무언가를 누르려고 합니다. 당신이 움직이는 것이 아니고, 그 에이전트는 스스로 당신에게 물어볼 수 없어서 Daimond이 대신 묻습니다. 누르는 것만으로 당신의 돈이 쓰이거나, 메시지가 보내지거나, 양식이 제출될 수 있고, 그 어느 것도 되돌릴 수 없습니다. 예라고 하면 이 한 번의 누름만 허용하고, 그 뒤로는 아무것도 허용하지 않습니다.',
1104 'permmode.type_worker_body': '혼자서 일하는 에이전트가 이 글을 {host}에 입력해 보내려고 합니다:\n\n{text}\n\n당신이 움직이는 것이 아니고, 그 에이전트는 스스로 당신에게 물어볼 수 없어서 Daimond이 대신 묻습니다. 사이트로 보낸 글은 되돌릴 수 없습니다. 예라고 하면 이 한 번만 허용하고, 그 뒤로는 아무것도 허용하지 않습니다.',
1105 'permmode.net_not_fetch': '여기는 명령에 관한 것입니다. Daimond가 스스로 가져오는 페이지는 따로 묻는 질문으로, 대화마다 한 번 묻고, 거기서의 예는 그 대화가 끝날 때까지 모든 사이트에 적용됩니다.',
1106 'pal.kind_permmode': '권한',
1107 'chat.compacted': '대화를 접었어요',
1108 'chat.compacted_help': '대화가 모델의 문맥 창에 들어가도록 Daimond가 앞부분을 요약으로 바꿨습니다.',
1109 'chat.fold_boundary': '이 선 위의 내용은 쓰인 그대로는 모델에 남아 있지 않습니다. 대신 이 메모의 요약과 가장 최근 메시지 {kept}개가 있습니다. 위쪽 내용은 화면에 그대로 있으므로 읽고 인용할 수 있습니다.',
1110 'chat.shortened': '모델에게 보낼 답변을 줄였어요',
1111 'chat.shortened_help': '대화가 모델의 문맥 창에 들어가도록 Daimond가 이전 답변을 줄여서 보냈습니다. 그 한 마디 한 마디는 화면과 기록에 그대로 남아 있습니다.',
1112 'chat.working_more': '+{n}자',
1113
1114 // ── 전달 확인 ──────────────────────────────────────────────
1115 // 페이지가 스스로를 확인해요. 확인 항목의 이름은 눈으로 훑는 것이라 짧게 두고,
1116 // 자세한 사정은 실패했을 때 그 아래 나오는 문장이에요.
1117 'verify.page_title': 'Daimond 검증',
1118 'verify.page_lede': '이 페이지를 보낸 Daimond이 공개된 오픈 소스인지 확인해요. 증거는 직접 재현할 수 있는 해시예요.',
1119 'verify.checking': '이 빌드를 확인하는 중…',
1120 'verify.recheck': '다시 확인',
1121 'verify.hashing': '전달된 파일을 해싱하는 중… {done} / {total}',
1122 'verify.ids': '빌드 {build} · 번들 {bundle}',
1123 'verify.verdict_ok': '이 빌드는 공개된 소스이고, 봉인되어 있어요.',
1124 'verify.verdict_no': '이 빌드는 공개된 소스와 일치하지 않아요.',
1125 'verify.verdict_partial': '끝까지 확인하지는 못했어요. 이유는 아래 항목에 있어요.',
1126 'verify.independent': '독립적인 확인.',
1127 'verify.independent_body': '페이지는 스스로를 온전히 보증할 수 없어요. 공개된 소스를 빌드해 검증 도구를 실행하세요. 이 서버가 손댈 수 있는 것은 그 과정에 하나도 없어요:',
1128 'verify.this_site': '이 사이트',
1129 'verify.green_means': '초록은 이 사이트가 보낸 바이트가 방금 직접 빌드한 소스와 같고, 그 빌드가 <a href="{url}">공개 투명성 로그</a>에 봉인된 항목이라는 뜻이에요.',
1130 'verify.check_manifest': '매니페스트',
1131 'verify.check_self': '매니페스트 자체 일치',
1132 'verify.check_log': '공개 투명성 로그',
1133 'verify.check_sealed': '공개 로그에 봉인됨',
1134 'verify.check_files': '전달된 모든 파일이 매니페스트와 일치',
1135 'verify.no_manifest': '이 빌드는 manifest.json 없이 전달돼서 확인할 수 없어요',
1136 'verify.self_mismatch': '매니페스트의 번들 해시가 파일 목록과 맞지 않아요',
1137 'verify.log_broken': '공개 로그가 끊기지 않은 사슬이 아니에요: {reason}',
1138 'verify.log_unreachable': '공개 로그에 닿지 못했어요 (오프라인이거나 정책에 막혔어요). 확실히 하려면 verify/check.mjs를 실행하세요',
1139 'verify.on_record': '기록에 남은 릴리스 {n}건',
1140 'verify.never_published': '전달된 이 번들은 공개 이력에 없어요. 한 번도 공개된 적이 없어요',
1141 'verify.unreadable': '(읽을 수 없음)',
1142 'verify.files_differ': '{n}개 다름: {list}',
1143 'verify.files_ok': '파일 {n}개',
1144 'verify.chain_order': '{n}번 항목의 순서가 어긋나요',
1145 'verify.chain_break': '{n}번 항목이 {prev}에 이어지지 않아요',
1146 'verify.chain_hash': '{n}번 항목의 해시가 맞지 않아요',
1147 'verify.caveat': '페이지는 스스로를 보증할 수 없어요. 손댄 서버라면 이 확인에도 손댈 수 있으니까요. 독립적인 결론이 필요하면 공개된 소스를 빌드해 verify/check.mjs를 실행하거나, 전달 검증 브라우저 확장을 쓰세요. 이 서버는 둘 다 건드릴 수 없어요.',
1148
1149 // ── 버전과 릴리스 이력 ─────────────────────────────────────
1150 'rel.version': '버전',
1151 'rel.prerelease': '사전 공개',
1152 'rel.unsealed': '봉인 안 됨',
1153 'rel.update_ready': '업데이트 준비됨',
1154 'rel.not_published': '공개 안 됨',
1155 'rel.planned': '예정',
1156 'rel.next': '다음',
1157 'rel.you_are_here': '지금 여기',
1158 'rel.today': '오늘',
1159 'rel.yesterday': '어제',
1160 'rel.days_ago.one': '{n}일 전',
1161 'rel.days_ago.other': '{n}일 전',
1162 'rel.months_ago.one': '{n}개월 전',
1163 'rel.months_ago.other': '{n}개월 전',
1164 'rel.years_ago.one': '{n}년 전',
1165 'rel.years_ago.other': '{n}년 전',
1166 'rel.title_named': '{name}, 빌드 {build}, {date} 공개.',
1167 'rel.title_prerelease': '사전 공개, 빌드 {build}, {date} 공개.',
1168 'rel.title_behind': '더 새로운 빌드가 공개됐어요. 새로고침하면 적용돼요.',
1169 'rel.title_click': '무엇이 바뀌었는지 보려면 누르세요.',
1170 'rel.title_unlogged': '이 빌드는 공개된 로그에 없어요. 이력을 보려면 누르세요.',
1171 'rel.no_date': '아직 공개되지 않았고, 날짜도 약속되지 않았어요.',
1172 'rel.no_history': '공개된 이력을 읽지 못했어요.',
1173 'rel.none_declared': '아직 선언된 릴리스가 없어요. 첫 릴리스보다 앞선 빌드를 쓰고 계세요.',
1174 'rel.sealed_no': '봉인 #{n}',
1175 'rel.sealed_builds.one': '봉인된 빌드 {n}개',
1176 'rel.sealed_builds.other': '봉인된 빌드 {n}개',
1177 'rel.foot': '릴리스는 선언하는 것이고, 빌드는 배포하는 것이에요. 여기 있는 모든 빌드는 깨뜨리지 않고는 고쳐 쓸 수 없는 사슬에 기록돼 있어요. 예전 것으로 돌아가는 길은 일부러 두지 않았어요.',
1178
1179 // ── 업데이트 ───────────────────────────────────────────────
1180 'update.checking': '업데이트를 확인하는 중…',
1181 'update.latest': '최신 버전을 쓰고 계세요',
1182 'update.ready': '업데이트 준비됨',
1183 'update.click_now': '지금 업데이트하려면 누르세요.',
1184 'update.ready_help': '업데이트 준비됨. 이 일이 끝나면 적용되고, 눌러서 바로 적용할 수도 있어요.',
1185 'update.updated': 'Daimond을 업데이트했어요',
1186 'update.stale': 'Daimond이 오래돼서, 계속 쓰려면 새로고침해야 해요. 눌러서 새로고침하세요.',
1187
1188 // ── Typst ──────────────────────────────────────────────────
1189 // {reason}은 컴파일러 자신의 진단 메시지라, 온 그대로 둬요.
1190 'typst.load_failed': 'Typst 컴파일러를 불러오지 못했어요: {reason}',
1191 'typst.no_pdf': 'Typst이 PDF를 내놓지 않았어요 (원인 모를 컴파일 오류).',
1192 'typst.compile_error': 'Typst 컴파일 오류: {reason}',
1193 'typst.pack_locked': '조판은 이 계정이 구매하지 않은 도구 팩에 들어 있어요. 이름과 가격은 도구 패널에 나와요. 한 번 사면 계속 쓸 수 있고, 크레딧이 아니라 돈으로 결제해요.',
1194 'typst.watch.starting': '페이지를 조판하고 있어요…',
1195 'typst.watch.building': '다시 빌드하는 중…',
1196 'typst.watch.live_preview': '실시간 미리보기',
1197 'typst.watch.stale': '마지막으로 성공한 빌드를 보여 주고 있어요',
1198 'typst.watch.held': '다시 빌드를 멈췄어요',
1199 'typst.watch.dead': '컴파일러가 멈췄어요',
1200 'typst.watch.rebuild': '다시 빌드',
1201 'typst.watch.nothing': '컴파일러가 아무것도 내놓지 않고 이유도 말하지 않았어요.',
1202 'typst.watch.heap': '컴파일러가 {heap} MB를 쓰고 있고, 다시 빌드하면 {more} MB가 더 필요할 수 있어요. 이 페이지에 허용된 {budget} MB를 넘어서요. 저장할 때마다 다시 빌드하는 것을 멈췄고, 아래 페이지는 마지막으로 빌드된 것이에요. 컴파일러는 그 메모리를 돌려주지 못해요. 페이지를 새로 고쳐 처음부터 시작하거나, 그래도 한 번 해 보려면 다시 빌드를 누르세요.',
1203 'typst.watch.spin': '지켜보는 파일이 계속 바뀌었다고 하는데, 너무 커서 다시 읽어 확인할 수 없어요. 그 파일 때문에 {n}번 연속으로 페이지를 다시 짰어요. 컴파일러 메모리를 채우지 않도록, 저장할 때마다 다시 빌드하는 것을 멈췄어요. 페이지가 다시 필요하면 다시 빌드를 누르세요. 그 파일은 {what}이에요.',
1204 'typst.watch.page': '쪽',
1205 'typst.watch.zoom_out': '작게',
1206 'typst.watch.zoom_in': '크게',
1207 // 버튼에는 한 단어만 두고, 긴 설명은 가리켰을 때의 제목으로 보냈어요.
1208 'typst.watch.fit_width': '너비에 맞추기',
1209 'typst.watch.fit_page': '페이지 전체에 맞추기',
1210 'typst.watch.paper_dark': '어둡게',
1211 'typst.watch.paper_light': '밝게',
1212 'typst.watch.paper_dark_why': '어두운 종이, 밤에 읽기 좋아요',
1213 'typst.watch.paper_light_why': '밝은 종이',
1214 'typst.watch.sections': '섹션',
1215 'typst.watch.sections_none': '이 문서에는 나열할 제목이 없어요.',
1216 'typst.watch.dead_why': '이 문서에서 컴파일러의 메모리가 바닥났고, 페이지를 새로 고치지 않으면 다시 시작할 수 없어요. 아래 페이지는 마지막으로 빌드된 것이에요. 새로 고친 다음 같은 파일을 다시 여세요.',
1217
1218 // ── 알림 ───────────────────────────────────────────────────
1219 'toast.copied': '복사했어요',
1220 'render.copy_failed': '실패',
1221
1222 // ── 관리 서랍의 머리말 ─────────────────────────────────────
1223 // 서랍 맨 위에 붙는 이름으로, 담긴 내용에 따라 바뀌어요.
1224 'drawer.admin': '관리',
1225 'drawer.models': '모델',
1226 'drawer.version': '버전',
1227 'drawer.credits': '크레딧',
1228 'drawer.push': '푸시',
1229
1230 // ── 대화 상자 ──────────────────────────────────────────────
1231 'dlg.are_you_sure': '정말 할까요?',
1232 'dlg.ok': '확인',
1233 'dlg.done': '완료',
1234 'dlg.not_now': '나중에',
1235
1236 // ── 관리 서랍의 첫 메뉴 ────────────────────────────────────
1237 'home.connect_model': '모델 연결하기',
1238 'home.connect_note': 'Daimond이 답하려면 제공자 키나 크레딧이 있어야 해요.',
1239 'home.locked': '잠겨 있어요. 암호문구를 넣어 이 기기의 잠금을 풀어 주세요.',
1240 'home.sec_account': '계정',
1241 'home.sec_prompts': '프롬프트',
1242 'home.sec_accounts': '계정 목록',
1243 'home.create_account': '계정 만들기…',
1244 'home.account_note': '계정은 이 기기에 두는 암호문구예요. API 키를 암호화하고, 크레딧을 쓸 때 서명이 돼요. 브라우저 밖으로 나가는 것은 없어요.',
1245 'home.fingerprint': '이 기기의 신원 지문',
1246 'home.change_name': '이름 바꾸기…',
1247 'home.handle_help': '당신의 공개 이름이에요. 다른 사람에게 보이는 이름이고, 이 계정의 모든 기기에서 같아요.',
1248 'home.change_handle': '공개 이름 바꾸기…',
1249 'handle.rename_title': '공개 이름 바꾸기',
1250 'home.change_passphrase': '암호문구 바꾸기…',
1251 'home.add_passkey': '패스키 추가하기…',
1252 'home.remove_passkey': '패스키 지우기',
1253 'home.export_backup': '백업 내보내기',
1254 'home.import_backup': '백업 가져오기…',
1255 'home.dashboard': 'Daimond 대시보드 ↗',
1256 'home.signed_in_as': '{role} 역할로 로그인해 있어요.',
1257 // {role}은 프롬프트 역할의 이름이고, 부르는 쪽에서 소문자로 바꿔요.
1258 'home.edit_prompt': '{role} 프롬프트 편집…',
1259 'home.prompt_opens': '문서 패널에서 {path} 파일을 열어요.',
1260 'home.prompts_note': '에이전트마다 따르는 지시이고, 작업 공간에 파일로 있어요. 하나를 고치면 다음 턴부터 적용되고, 지우면 원래 것이 돌아와요. 무엇을 쓰든 규칙 둘은 그대로예요. 페이지나 메일은 자료일 뿐 지시가 아니라는 것, 그리고 되돌릴 수 없는 일은 먼저 물어본 뒤에 한다는 것이에요.',
1261 'home.switch_to': '{name}(으)로 전환',
1262 'home.unnamed_account': '이름 없는 계정',
1263 'home.add_account': '+ 다른 계정 추가',
1264 'home.accounts_note': '계정마다 채팅, 키, 크레딧, 파일이 따로예요. 전환하면 지금 것은 잠기고 다른 것이 열려요. 어느 계정도 다른 계정의 자료를 볼 수 없어요.',
1265 'home.log_out': '로그아웃',
1266 'home.sec_devices': '기기',
1267 'home.sec_console': '콘솔',
1268 'home.console_open': '운영 콘솔 열기',
1269 'home.console_note': '이 계정은 {role} 역할을 가지고 있어요. 콘솔은 새 탭에서 열리며 이 로그인을 따라가요.',
1270 'home.sec_push': '푸시',
1271 'home.push_setup': 'git push 설정…',
1272 'home.push_to': '{host}의 푸시 토큰 바꾸기…',
1273 'home.push_help': '토큰이 있으면 Daimond가 커밋한 것을 푸시할 수 있어요. 없어도 커밋은 되지만 푸시는 모두 거부돼요.',
1274
1275 // ── The credential a push travels with ─────────────────────
1276 // Two boxes and no more: the user name a token travels as is a per-forge
1277 // constant, so it is inferred from the host rather than asked for. Every line
1278 // here says what happens if it is skipped, because "no credential" and
1279 // "authentication failed" look identical from inside a refused push.
1280 'push.lead': '토큰이 있으면 Daimond가 커밋한 작업을 푸시할 수 있어요. 없어도 커밋은 되지만 푸시는 모두 거부되고, 작업은 이 기기에 남아요.',
1281 'push.host': '호스트',
1282 'push.host_ph': 'github.com',
1283 'push.host_note': 'github.com처럼 이름만 적어 주세요. https://도, 포트도, 경로도 없어요. 인증되는 것은 이 호스트뿐이고, 다른 곳의 저장소는 거부되며 토큰이 그리로 가지 않아요.',
1284 'push.token': '토큰',
1285 'push.token_ph': '푸시할 수 있는 토큰을 붙여넣기',
1286 'push.token_note': '푸시 권한이면 충분하고, 토큰에 그 이상은 필요 없어요. Daimond는 푸시만, 빨리 감기만, origin으로만 보내요. 토큰이 허용하더라도 force, delete, mirror와 다른 리모트는 거부돼요. 이 칸을 비우고 저장하면 지워져요.',
1287 'push.save': '저장',
1288 'push.privacy': '토큰은 암호문구로 암호화되어 이 브라우저에 있어요. 다시 보여 주지 않고, 저희에게 보내지 않고, 모델에게도 주지 않아요. 계정이 없으면 암호화할 것이 없어서 이 탭에서만 유지되고, 새로 고치면 다시 물어봐요.',
1289 'push.set': '설정됨. 푸시는 {host}로 가요.',
1290 'push.none': '설정 안 됨. 여기에 토큰을 저장하기 전까지 푸시는 모두 거부돼요.',
1291 'push.saved': '저장했어요. 암호문구로 암호화되고, 잠금을 풀 때마다 쓰여요.',
1292 'push.cleared': '지웠어요. 여기에 토큰을 저장하기 전까지 푸시는 다시 거부돼요.',
1293 'push.session_only': '이 탭에서만 유지돼요. 계정이 없으면 암호화할 것이 없어서 새로 고치면 다시 물어봐요. 계속 두려면 계정을 만들어 주세요.',
1294 'push.err_host': '푸시가 갈 호스트를 github.com처럼 적어 주세요. 자격 증명을 지우려면 토큰 칸을 비우면 돼요.',
1295 'push.err_not_held': '받아들여지지 않아서 푸시 자격 증명이 없어요. 호스트와 토큰을 확인해 주세요.',
1296 'push.not_resealed': '암호문구는 바뀌었지만 푸시 토큰을 새 암호문구로 다시 암호화하지 못했어요. 새로 고치기 전까지는 푸시가 돼요. 계속 쓰려면 토큰을 다시 설정해 주세요.',
1297 'push.the_token': '푸시 토큰',
1298
1299 // ── 이 계정을 동기화하는 기기 ──────────────────────────────
1300 'devices.on_platform': '{platform}의 {brand}',
1301 'devices.unknown': '이 기기',
1302 'devices.this_device': '이 기기',
1303 'devices.only_this': '이 계정을 동기화하는 기기는 이것뿐이에요.',
1304 // 기기에 이름을 붙이는 곳. 이름은 쓰는 사람이 직접 고른 말이라 암호화된
1305 // 자료 안에서만 오가니, 문구로 그 점을 밝혀요.
1306 'devices.rename_title': '이 기기에 이름 붙이기',
1307 'devices.rename_body': '다른 기기와 구별하려고 붙이는 이름이에요. 칸을 비우면 “{derived}”(으)로 돌아가요. 이름은 본인의 암호화된 자료와 함께 저장되고, 본인의 다른 기기로만 전해져요.',
1308 'devices.rename_aria': '{name} 이름 바꾸기',
1309 'devices.note': '이 계정을 동기화한 기기들이에요. 계정을 가지고 있어도 한 번도 동기화한 적이 없는 기기는 목록에 없어요. 여기서는 어떤 기기도 로그아웃시킬 수 없어요. 연결된 기기는 이 기기와 같은 키를 가지고 있어서, 그 기기에서 처리해야 해요.',
1310 'devices.remove_aria': '{name} 목록에서 빼기',
1311 'devices.remove_body': '“{name}”이(가) 이 목록에서 빠져요. 그 기기가 로그아웃되는 것은 아니에요. 이 기기와 같은 키를 가지고 있어서, 다음 동기화 때 다시 올라와요.',
1312 'devices.remove': '목록에서 빼기',
1313 'devices.remove_title':'이 기기를 목록에서 빼기',
1314
1315 // ── 레일 아래의 상태 줄 ────────────────────────────────────
1316 'astat.offline': '오프라인',
1317 'astat.service_unreachable': '계정 서비스에 연결 안 됨',
1318 'astat.no_account': '크레딧 계정 없음',
1319 'money.daimond_credits': 'Daimond 크레딧',
1320 'money.own_key': '내 {provider} 키',
1321 'money.own_keys': '내 자체 키',
1322 'money.left_at_rate': '이 속도로 약 {mins}분',
1323 'money.spent_so_far': '{amt} 사용',
1324 'money.spent_help': '제공업체가 잔액을 알려주지 않으므로, Daimond가 집계를 시작한 이후 이 키로 사용된 금액입니다.',
1325 'money.estimate_help': '직접 입력한 금액에서 이후 사용분을 뺀 값입니다. 충전하면 모델 화면에서 갱신하세요.',
1326 'astat.locked': '잠김',
1327 'astat.credits': '크레딧',
1328 'astat.credits_help': '크레딧을 사거나, 직접 쓰는 제공자 키를 연결해요',
1329 'astat.pro_owned': '보유함',
1330 'astat.pro_owned_help': 'Daimond Pro를 가지고 계세요. 동기화, 클라우드 저장, Email이 켜져 있어요.',
1331 'astat.pro_ended': '라이선스 종료',
1332 'astat.pro_ended_help': 'Pro 라이선스가 끝났어요. 동기화, 클라우드 저장, Email은 꺼져 있고, 이 기기에 있는 것은 그대로예요.',
1333 'astat.pro_upgrade': 'Pro로 올리기',
1334 'astat.pro_upgrade_help': 'Pro 5년치를 사면 동기화, 클라우드 저장, Email이 켜져요.',
1335 'astat.tools': '도구 · {have}',
1336 'astat.tools_of': '도구 · {all}개 중 {have}개',
1337 'astat.tools_help': 'Daimond이 할 수 있는 일, 그리고 나머지는 얼마인지.',
1338 'astat.workspace_browser': '작업 공간 · 브라우저',
1339 'astat.workspace_native': '작업 공간 · 이 기기',
1340 'astat.evictable': '지워질 수 있음',
1341 'astat.store_of': '이 브라우저가 허용하는 {quota} 가운데 {used}.',
1342 'astat.store_persistent': '영구로 표시돼 있어서 브라우저가 지우지 않아요.',
1343 'astat.store_evictable': '영구 저장이 아니에요. 저장 공간이 빠듯해지면 브라우저가 이 작업 공간을 지울 수 있어요. 눌러서 영구 저장을 요청하세요.',
1344 'astat.not_connected': '연결 안 됨',
1345 'astat.native_help': '에이전트가 이 기기의 실제 폴더에서 일하게 해요.',
1346 'astat.n_files': '파일 {n}개',
1347 'astat.counting': '세는 중이에요. 누르면 멈춰요.',
1348 'astat.part': '(일부)',
1349 'astat.counted': '{folder} 아래에 파일 {n}개.',
1350 'astat.counted_partial': '{folder} 아래에 파일 {n}개. 멈추라고 하신 데까지 센 값이에요.',
1351 'astat.count_again': '누르면 다시 세요.',
1352 'astat.count_offer': '누르면 세기 시작해요. 실제 폴더가 얼마나 큰지는 브라우저가 알려 주지 않고, 세려면 파일을 하나하나 읽어야 해서 큰 폴더는 오래 걸려요. 언제든 멈출 수 있어요.',
1353
1354 // ── Pro가 스스로 하는 말 ───────────────────────────────────
1355 'pro.owned_plain': 'Daimond Pro를 가지고 계세요. 기기 간 동기화, 클라우드 저장, Email이 켜져 있어요. 구독은 없고, 갱신되는 것도 없어요.',
1356 'pro.offer_plain': '한 번 결제하면 Pro가 5년 동안 이어져요. 기기 간 동기화, 클라우드 저장, Email을 켜 줘서, 작업 공간에서 내 메일을 읽고 보낼 수 있어요. 구독은 없고, 갱신되는 것도 없어요. 5년이 지나면 다시 살지 직접 정하시면 돼요. 추론과 데이터 전송처럼 쓴 만큼 내는 부분은 그대로 크레딧에서 빠져요.',
1357 'pro.checkout_failed': '결제를 시작하지 못했어요',
1358 'pro.term_note': 'Pro는 구입일로부터 5년 동안 이어져요.',
1359 'pro.ends_on': 'Pro 라이선스는 {date}에 끝나요.',
1360 'pro.ended_on': 'Pro 라이선스가 {date}에 끝났어요. 동기화, 클라우드 저장, Email은 꺼져 있고, 이 기기에 있는 것은 그대로이며, 이미 저장해 둔 것은 지금도 내려받을 수 있어요.',
1361 'pro.buy_again': '5년 더 사기',
1362 'pro.buy_again_priced': '{price}에 5년 더 사기',
1363
1364 // ── 밖으로 나가는 관문 ─────────────────────────────────────
1365 // 유도된 에이전트와, 사용자 정보를 실어 나르는 요청 사이의 마지막 문이에요.
1366 // {host}는 호스트 이름이니, 읽는 사람이 찾을 자리에 두세요.
1367 'egress.type_title': '{host}에 입력할까요?',
1368 'egress.type_body': '이번 턴은 작업 공간 밖의 내용을 읽었어요. Daimond이 이제 {host}의 페이지에 입력하려고 하는데, 그러면 그대로 보내질 수도 있어요.\n\n넣으려는 것은 이거예요:\n\n{text}\n\n예상하지 못한 일이라면 거절하세요.',
1369 'egress.type_ok': '입력하기',
1370 'egress.nothing': '(없음)',
1371 'egress.act_title': '{host}에서 조작할까요?',
1372 'egress.act_body': '이번 턴은 작업 공간 밖의 내용을 읽었어요. Daimond이 이제 {host}의 페이지에서 조작하려고 해요.\n\n페이지의 링크는 그 페이지를 쓴 사람이 쓴 것이라, 따라가면 정보가 함께 실려 나갈 수 있어요.\n\n예상한 일일 때만 허용하세요.',
1373 'egress.act_ok': '{host}에서 조작 허용',
1374 'egress.heavy_title': '이것을 {host}에 보낼까요?',
1375 'egress.heavy_body': '이번 턴은 작업 공간 밖의 내용을 읽었어요. Daimond이 이제 유난히 긴 주소로 {host}에 닿으려고 해요.\n\n주소도 정보를 실어 나를 수 있어요. 이 주소가 싣고 있는 것은 이거예요:\n\n{text}\n\n예상하지 못한 일이라면 거절하세요. 잃는 것은 이 요청 하나뿐이에요.',
1376 'egress.heavy_ok': '그래도 보내기',
1377 'egress.reach_title': '{host}에 닿을까요?',
1378 'egress.reach_body': '이번 턴은 작업 공간 밖의 웹 페이지나 메시지를 읽었고, 그 안의 무언가가 Daimond을 조종하고 있을 수도 있어요.\n\n이제 전에 가 본 적 없는 {host}에 닿으려고 해요. 알고 있는 무엇이든 그 주소에 실릴 수 있어요.\n\n예상한 일일 때만 허용하세요.',
1379 'egress.reach_ok': '{host} 허용',
1380 'egress.any_title': '어떤 웹사이트든 닿아도 될까요?',
1381 'egress.any_body': '이 대화는 다른 사람이 쓴 웹 페이지나 메시지를 읽었고, 그 안의 무언가가 Daimond을 조종하고 있을 수도 있어요.\n\n지금은 {host}에 닿으려고 해요.\n\n예라고 하면 이 대화가 이어지는 동안 이 사이트뿐 아니라 어떤 웹사이트에도 닿을 수 있고, 여기서 다시 묻지 않아요. Daimond이 아는 것은 무엇이든 웹 주소에 적어 넣을 수 있으니, 닿은 페이지가 당신의 말을 가져갈 수 있어요.\n\n새 채팅에서는 다시 묻고, 새 다이몬도 마찬가지예요. 유난히 긴 주소는 지금 무엇이라 답하든 늘 따로 여쭤봐요.',
1382 'egress.any_ok': '여기서는 모든 사이트 허용',
1383 // 검색에서 나가는 것은 주소가 아니라 검색어예요. {query}는 제 문단에 혼자 두고,
1384 // 따옴표로 감싸지 않아요 -- 검색어 자체가 따옴표를 품고 있을 수 있으니까요.
1385 'egress.search_title': '웹에서 검색할까요?',
1386 'egress.search_body': '이번 턴은 작업 공간 밖의 내용을 읽었어요. Daimond이 이제 웹에서 검색하려고 해요.\n\n찾으려는 것은 이거예요:\n\n{query}\n\n검색은 {engine}에서 해요. 직접 정한 설정이에요. 이 기기에서 나가는 것은 검색어예요.\n\n예상하지 못한 일이라면 거절하세요. 잃는 것은 이 검색 하나뿐이에요.',
1387 'egress.search_ok': '이 검색 실행하기',
1388
1389 // ── 레일의 채팅 타일 ───────────────────────────────────────
1390 'chat.tool_refused': '거부됨',
1391 'chat.tool_failed': '실패',
1392 'chat.copy_message': '메시지 복사',
1393 'chat.include_turn': '접을 때 이 턴도 넣기',
1394 'chat.connect_to_chat': '이 모델로 이야기하려면 제공자를 연결하거나 잠금을 풀어 주세요.',
1395 'tile.cost_estimated': '어림값이에요. 이 모델은 가격표에 없어요.',
1396 'tile.cost_so_far': '이 채팅에 지금까지 든 비용이에요.',
1397 'tile.click_to_open': '누르면 열리고, 두 번 누르면 이름을 바꿔요',
1398 'tile.settings': '이 타일 설정',
1399 'tile.settings_named': '"{name}" 설정',
1400 'tile.close_named': '"{name}" 닫기',
1401 'tile.dlg_name': '이름',
1402 'tile.dlg_name_hint': '이름 없음. 레일에는 시간이 나와요',
1403 'tile.dlg_running': '실행',
1404 'tile.dlg_detail': '표시 정도',
1405 'tile.spend_help': '이 Diamond의 비용({turns}턴).',
1406 'tile.detail_default': '기본값 ({what})',
1407 'tile.detail_default_help': '모양에서 설정한 보기와 그 뒤의 변경을 따릅니다.',
1408 'tile.detail_simple': '단순',
1409 'tile.detail_simple_help': '이름과, 실행 중인지와, 기다리는 것.',
1410 'tile.detail_max': '최대',
1411 'tile.detail_max_help': '모델, 컨텍스트, 비용, 버전, 마지막으로 움직인 때.',
1412 'tile.detail_note': '여기서 다르게 정하지 않으면 타일은 보기 설정을 따릅니다.',
1413 'tile.dlg_delete': '삭제',
1414 'tile.start': '시작',
1415 'tile.start_help': '모델을 확인하고 이 채팅을 시작해요',
1416 'tile.workers': '일꾼',
1417 'tile.worker_model_help': '일꾼이 도는 모델이에요. 그대로 두면 채팅 자신의 모델로 돌아요.',
1418 'tile.folded': '접힘',
1419 'tile.fold_all': '모두 접기',
1420 'tile.folded_help': '이미 “{name}”에 접혀 있어요. 다시 접으면 그 뒤에 생긴 것을 더해요.',
1421 'tile.fold_all_help': '이 채팅 전체를 Diamond으로 접어 넣어요',
1422 'tile.dlg_colour': '색상',
1423 'tile.colour_bg': '배경',
1424 'tile.colour_fg': '글자',
1425 'tile.colour_clear':'테마 색으로 되돌리기',
1426 'tile.colour_faint':'이 둘의 대비는 {ratio}:1로, 이만한 크기의 글자에 보통 요구되는 {min}:1보다 낮아요. 고른 대로 두었어요.',
1427
1428 // ── 지출 조절기 ────────────────────────────────────────────
1429 'gov.past_budget': '한 번 실행 예산을 한참 넘었어요',
1430 'gov.faster': '평소보다 빨리 쓰고 있어요',
1431 'gov.per_min': '{rate}/분',
1432 'gov.run_spent': '이번 실행은 {budget} 속도 예산 가운데 {spent}만큼 썼어요. 크게 펼칠 때는 돌리기 전에 물어봐요.',
1433 'gov.fanout_body.one': '이 Diamond이 에이전트 {n}개를 약 {total}에 (하나당 약 {each}) 돌리려고 해요.',
1434 'gov.fanout_body.other': '이 Diamond이 에이전트 {n}개를 약 {total}에 (하나당 약 {each}) 돌리려고 해요.',
1435 'gov.burst_spent': '이번에 몰아 쓴 것만 벌써 {spent}만큼이에요.',
1436 'gov.would_pass': '그러면 한 번 실행에 정해 둔 {budget} 속도 예산을 넘어요.',
1437 'gov.run_n.one': '에이전트 {n}개 돌리기',
1438 'gov.run_n.other': '에이전트 {n}개 돌리기',
1439 'spend.includes_estimate': '어림값이에요. 여기 있는 모델 가운데 적어도 하나가 가격표에 없어요.',
1440
1441 // ── 레일의 Diamond과 채팅 ──────────────────────────────────
1442 'rail.no_diamonds': '아직 Diamond이 없어요.',
1443 'rail.no_match': '맞는 Diamond이 없어요.',
1444 'rail.no_chats': '아직 채팅이 없어요.',
1445 'rail.not_synced': '아직 동기화되지 않음',
1446 'rail.not_synced_help': '이 대화는 다른 기기에 있고 아직 여기로 오지 않았어요.',
1447 // 아무 태그도 없을 때 검색창 아래에 나와요. 비어 있는 갈래가
1448 // 갈래 자체가 없는 것으로 읽히지 않도록.
1449 'rail.tag_hint': '아직 태그가 없어요. Diamond에 태그를 붙이면 거를 수 있는 태그가 여기에 나타나요.',
1450 'rail.tag_hint_help': 'Diamond을 열고 그 결정체에서 태그를 여세요. 처음 쓸 태그가 준비돼 있어요: {tags}.',
1451 'rail.dblclick_rename': '두 번 누르면 이름을 바꿔요',
1452 'rail.rename_diamond': 'Diamond 이름 바꾸기',
1453 'rail.rename': '이름 바꾸기',
1454 'rail.rename_failed': '이름을 바꾸지 못했어요',
1455 'rail.delete_failed': '지우지 못했어요',
1456 'rail.create': '만들기',
1457 'rail.name': '이름',
1458 'rail.model': '모델',
1459 'rail.worker_model': '일꾼이 쓸 모델',
1460 'rail.worker_model_help': 'daimon은 일꾼을 한 번에 여럿 내보내요. 그대로 두면 Diamond 자신의 모델로 돌아요.',
1461 'rail.err_no_key_worker': '일꾼 쪽 제공자에는 아직 읽을 수 있는 키가 없어서 Diamond 자신의 모델로 되돌아가요. 키의 잠금을 풀거나, 다른 제공자를 고르세요.',
1462 'rail.err_name': 'Diamond에 이름을 붙여 주세요.',
1463 'rail.err_model': '이 Diamond이 생각할 모델을 골라 주세요.',
1464 'rail.err_no_key': '그 제공자에는 아직 읽을 수 있는 키가 없어요. 잠금을 풀거나 키를 추가하세요.',
1465 'rail.create_failed': 'Diamond을 만들지 못했어요',
1466 'rail.created_unreadable': 'Diamond은 만들어졌지만 읽히지 않아요',
1467 'rail.created_unreadable_body': '“{name}”은(는) 기록됐지만 도로 읽히지 않아서 레일에 없어요. 페이지를 새로고침해 주세요. 그래도 안 보이면, 이 기기의 저장소가 받아 놓고 내주지 않는 거예요.',
1468
1469 // ── 채팅이 언제 있었는지, 그리고 남기기 ────────────────────
1470 'rail.day_today': '오늘',
1471 'rail.day_yesterday': '어제',
1472 'rail.day_earlier': '그 이전',
1473 'rail.when_now': '방금',
1474 'rail.when_min': '{n}분 전',
1475 'rail.when_hr': '{n}시간 전',
1476 'rail.a_chat': '채팅',
1477 'rail.chat_from': '{when}의 채팅',
1478 'rail.show_preview': '첫 메시지 보여주기',
1479 'rail.show_preview_help': '각 채팅에서 처음 한 말을 시간 아래에 보여줘요. 끄면 레일에는 시간만 남아요.',
1480 'tile.keep': '남기기',
1481 'tile.keep_help': '이 채팅을 Diamond으로 만들고, 대화 전체를 첫 산출물로 담아요.',
1482 'keep.title': 'Diamond으로 남기기',
1483 'keep.body': '이름을 지으면 이 대화가 통째로 그 안에 남아요. 채팅은 기한이 지나면 사라지지만, Diamond은 사라지지 않아요.',
1484 'keep.ok': '남기기',
1485 'keep.gone': '그 채팅은 이제 없어요',
1486 'keep.gone_body': '이 기기나 다른 기기에서 완전히 지워졌어요. 만들어진 것은 없어요.',
1487 'keep.made': '{name}을(를) 남겼어요. 대화도 안에 있어요.',
1488 'keep.made_bare': '{name}을(를) 만들었지만, 대화를 안에 쓰지 못했어요.',
1489
1490 // ── PPTW: 일시정지 · 재개 · 신호등 ─────────────────────────
1491 'pause.everything': '전체',
1492 'pause.everything_help': '비용이 드는 모든 것을 일시정지하거나 재개해요. 모든 Diamond, 모든 채팅, 워커, 메일함, 그리고 대신 가져오는 페이지가 대상이에요.',
1493 'pause.act_pause': '{name} 일시정지',
1494 'pause.act_play': '{name} 재개',
1495 'pause.state_play': '실행 중',
1496 'pause.state_pause': '일시정지됨',
1497 'pause.state_mixed': '일부 일시정지됨',
1498 'pause.this': '이것',
1499 'pause.workers': '워커',
1500 'pause.mail': '메일',
1501 'pause.mail_polling': '메일함 확인',
1502 'pause.unnamed_chat': '이름 없는 채팅',
1503 'pause.web': '웹',
1504 'pause.refused_title': '일시정지됨',
1505 'pause.refused.turn': '{node}이(가) 일시정지됐어요. 턴을 시작하지 않았고 비용도 들지 않았어요. 재개하려면 해당 항목의 재생을 누르세요.',
1506 'pause.refused.dispatch': '{node}이(가) 일시정지됐어요. 워커를 보내지 않았고 비용도 들지 않았어요. 재개하려면 해당 항목의 재생을 누르세요.',
1507 'pause.refused.web': '{node}이(가) 일시정지됐어요. 페이지를 가져오지 않았고 비용도 들지 않았어요. 재개하려면 해당 항목의 재생을 누르세요.',
1508 'pause.refused.mail': '{node}이(가) 일시정지됐어요. 메일함에 접속하지 않았고 비용도 들지 않았어요. 재개하려면 해당 항목의 재생을 누르세요.',
1509 'pause.state_idle': '여기서 스스로 움직이는 것은 없음',
1510
1511 // ── 태그 ───────────────────────────────────────────────────
1512 'tag.only_agents': '“{tag}” 태그가 붙은 에이전트만 보기',
1513 'tag.only_diamonds': '“{tag}” 태그가 붙은 Diamond만 보기',
1514 'tag.clear_filter': '“{tag}” 거르기 해제',
1515 'tag.remove': '“{tag}” 떼기',
1516 'tag.add': '“{tag}” 붙이기',
1517 'tag.starters': '사람, 프로젝트, 주제, 조직',
1518 'tag.add_btn': '추가',
1519 'tag.add_ph': '태그 붙이기',
1520 'tag.on_diamond': '이 Diamond의 태그',
1521 'tag.all': '모든 태그',
1522 'tag.all_used': '가진 태그가 모두 이 Diamond에 붙어 있어요.',
1523 'tag.none_yet': '아직 태그가 없어요.',
1524 'tag.save_failed': '태그를 저장하지 못했어요',
1525 // 레일의 거르기. 원하는 태그, 빼고 싶은 태그, 그리고 원하는 태그가 둘
1526 // 이상일 때 묶는 방식. 레일의 칩은 없음, 원함, 뺌, 없음으로 돌고,
1527 // 요약의 칩은 거르기에서 아예 빠져요.
1528 'tag.exclude_next': '“{tag}” 태그가 붙은 Diamond을 보는 중이에요. 다시 누르면 숨겨요',
1529 'tag.clear_exclude': '“{tag}” 태그가 붙은 Diamond을 그만 숨기기',
1530 'tag.not_tagged': '“{tag}” 태그 없음',
1531 'tag.mode_all': '모두',
1532 'tag.mode_any': '하나라도',
1533 'tag.mode_all_help': '이 태그를 모두 지닌 Diamond만 보기',
1534 'tag.mode_any_help': '이 태그 중 하나라도 지닌 Diamond 보기',
1535 'tag.mode_aria': '고른 태그를 어떻게 묶을지',
1536 'tag.clear_all': '해제',
1537 'tag.clear_all_help': '모든 태그를 거르기에서 빼기',
1538 // 검색 상자 아래, 태그 칩 무리를 접어 둔 한 줄. 태그가 하나라도 있으면
1539 // 늘 있어요. 안 보이는 거르기는 아무도 못 찾으니까요. 한 줄로 그치는
1540 // 건, 태그 서른 개가 펼쳐져 있으면 레일의 두 목록이 화면마다 네 줄을
1541 // 잃기 때문이에요. {n} 자리에는 뒤에 접혀 있는 태그 수가 들어가요.
1542 'tag.pool_toggle': '태그로 거르기({n})',
1543 'tag.pool_show_help': '거를 수 있는 태그를 모두 보기',
1544 'tag.pool_hide_help': '태그를 접어 둬요. 거르고 있는 것은 그대로 켜져 있고, 계속 보여요.',
1545 // 지금 거르고 있는 칩. 태그를 접어 둔 동안에는 이것만 나와요.
1546 'tag.active_aria': '레일이 거르고 있는 태그',
1547 // 목록에서 태그를 지우는 일. 그 태그가 붙은 Diamond 모두에서 떼어져요.
1548 'tag.delete_help': '“{tag}” 태그를 어디에서나 지우기',
1549 'tag.delete_title': '이 태그를 지울까요?',
1550 'tag.delete_body_used.one': '“{tag}” 태그를 지울까요? 이 태그를 단 Diamond {n}개에서 떼어져요. 그 Diamond의 다른 것은 그대로예요.',
1551 'tag.delete_body_used.other': '“{tag}” 태그를 지울까요? 이 태그를 단 Diamond {n}개 모두에서 떼어져요. 그 Diamond들의 다른 것은 그대로예요.',
1552 'tag.delete_body_unused': '“{tag}” 태그를 지울까요? 이 태그를 단 Diamond이 없어서, 목록에서만 빠져요.',
1553 'tag.delete_ok': '태그 지우기',
1554 'tag.deleted': '“{tag}” 태그를 지웠어요.',
1555 'tag.deleted_from.one': '“{tag}” 태그를 Diamond {n}개에서 지웠어요.',
1556 'tag.deleted_from.other': '“{tag}” 태그를 Diamond {n}개에서 지웠어요.',
1557 'tag.editor_note': '태그는 이 Diamond을 레일에서 갈래지어 두는 것이에요. 모델에 보내지도 않고, 결정체에 들어가지도 않아요.',
1558
1559 // ── 턴을 시작하고 멈추기 ───────────────────────────────────
1560 'chat.choose_model': '이 채팅을 시작할 모델을 골라 주세요.',
1561 'chat.no_key_start': '그 제공자에는 아직 읽을 수 있는 키가 없어요. 잠금을 풀거나 키를 추가하면 이 채팅을 시작할 수 있어요.',
1562 'chat.connect_start': '이 채팅을 시작하려면 제공자를 연결하세요.',
1563 'chat.pending_hint': '이 채팅 타일에서 모델을 고르고 ▶ 시작을 누르세요.',
1564 'chat.start_selected': '고른 모델로 시작',
1565 'chat.stop': '멈추기',
1566 'turn.interrupted': '끊겼어요. 끝나기 전에 브라우저가 닫혔어요.',
1567 'turn.interrupted_early': '답하기도 전에 끊겼어요.',
1568 'turn.offline': '연결이 끊겨 끝까지 완료되지 못했습니다. 사라진 것은 없습니다. 멈춘 곳부터 이어가세요.',
1569 'turn.offline_early': '연결이 끊겨 답변이 도착하지 못했습니다. 사라진 것은 없습니다. 여기서 다시 물어보세요.',
1570 'turn.continue': '이어서',
1571 'turn.continue_help': '보낸 메시지부터 이 턴을 다시 돌려요.',
1572 'astat.no_model': '연결된 모델 없음',
1573 'astat.model_help': 'Daimond이 돌릴 수 있는 모델과, 그 뒤의 키',
1574
1575 // ── 채팅을 Diamond으로 접어 넣기 ───────────────────────────
1576 'fold.nothing': '접을 것이 없어요',
1577 'fold.chat_empty': '이 채팅은 비어 있어요. 메시지를 먼저 보내고 나서 Diamond으로 접어 넣으세요.',
1578 'fold.turns_empty': '고른 턴에는 접어 넣을 내용이 없어요.',
1579 'fold.agent_empty': '이 에이전트는 접을 요약을 내놓지 않았어요.',
1580 'fold.into': '접어 넣을 곳…',
1581 'fold.n_turns_into.one': '턴 {n}개를 접어 넣을 곳…',
1582 'fold.n_turns_into.other': '턴 {n}개를 접어 넣을 곳…',
1583 'fold.no_diamonds': '아직 Diamond이 없어요. 하나 만들어 주세요:',
1584 'fold.new_diamond': '+ 새 Diamond…',
1585 'fold.connect_first': 'Diamond으로 접어 넣으려면 제공자를 연결하세요.',
1586 'fold.create_and_fold': '만들고 접기',
1587 'fold.no_key': '그 Diamond의 제공자에는 읽을 수 있는 키가 없어요. 잠금을 풀거나 키를 추가하면 접어 넣을 수 있어요.',
1588 'fold.nothing_new': '새로 접을 것이 없어요',
1589 'fold.nothing_new_body': '“{chat}”은(는) “{diamond}”에 접힌 뒤로 바뀌지 않았어요.',
1590 'fold.proposing': '접는 방법을 궁리하는 중…',
1591 'fold.busy_title': '그 Diamond은 작업 중이에요',
1592 'fold.busy_body': '“{diamond}”에 진행 중인 턴이 있고, 접기는 같은 crystal을 다시 씁니다. 끝난 뒤에 접어 주세요.',
1593 'fold.diamond_gone': 'Diamond이 없어졌어요',
1594 'fold.diamond_gone_body': '이 에이전트를 내보낸 Diamond이 이제 없어요.',
1595 'fold.diamond_gone_chat_body': '고른 Diamond이 이제 없어요. 다른 탭에서 지워졌을 수 있어요. 아무것도 접히지 않았어요.',
1596 'fold.empty_reply': '모델이 접을 것을 하나도 돌려주지 않아서, 제안된 게 없어요. 다시 해 보세요.',
1597 'fold.proposed_toast': '접기를 제안했어요. 아래에서 수락하거나 거절하세요.',
1598 'fold.proposed_elsewhere': '“{diamond}”에 접기를 제안했어요. 열어서 수락하거나 거절하세요.',
1599 'fold.pending_badge': '접기 대기',
1600 'fold.pending_badge_help': '이 Diamond에 제안된 접기가 기다리고 있어요. 열어서 바뀐 데를 수락하거나 거절하세요.',
1601 // 접기 차이의 머리말. 한 문장에 이음말을 붙이는 대신 네 가지를 따로 둬요.
1602 // 대상을 앞에 놓는 언어는 조각을 다시 배열할 수 없으니까요.
1603 'diff.folding_chat': '“{chat}”을(를) 접는 중이에요. 바뀐 데를 보고 수락하거나 거절하세요.',
1604 'diff.folding_chat_into': '“{chat}”을(를) “{diamond}”에 접는 중이에요. 바뀐 데를 보고 수락하거나 거절하세요.',
1605 'diff.proposed': '접기 제안이에요. 바뀐 데를 보고 수락하거나 거절하세요.',
1606 'diff.proposed_into': '“{diamond}”에 접자는 제안이에요. 바뀐 데를 보고 수락하거나 거절하세요.',
1607 'diff.no_change': '제안된 변경이 없어요. 결정체가 이미 담고 있어요.',
1608 'diff.no_change_into': '“{diamond}”에 제안된 변경이 없어요. 결정체가 이미 담고 있어요.',
1609 'diff.accept': '접기 수락',
1610 'diff.reject': '거절',
1611 'diff.nothing_to_apply': '적용할 것이 없어요. 제안이 지금 결정체와 같아요.',
1612 'fold.keys_lost': '이걸 받아들이면 다음이 없어져요: {keys}',
1613
1614 // ── 결정체 ─────────────────────────────────────────────────
1615 'crystal.page': '페이지',
1616 'crystal.page_help': '이 크리스털의 내용이 아니라 모양을 바꾸도록 데이몬에게 요청합니다',
1617 'crystal.page_note': '이 Diamond의 페이지(crystal.html)를 바꾸세요. 기억(crystal.json)이 아닙니다. crystal.html을 먼저 읽고 나서 편집하고, crystal.json은 그대로 두세요. 자체 완결로 유지하세요: CSS와 JavaScript는 모두 인라인, 이미지는 data: URI만, fetch 없음, 외부 파일 없음, eval 없음. ready, rendered, height 메시지를 유지하고, rendered가 내용이 있는 데이터의 모든 최상위 키를 지목하게 하세요. 페이지는 save 메시지로 이 Diamond에 파일을 저장하고 asset으로 다시 읽을 수 있으므로, 상호작용하는 페이지는 사용자가 한 일을 보존할 수 있습니다. 제가 원하는 것: ',
1618 'crystal.history': '이력',
1619 'crystal.tags': '태그',
1620 'crystal.tags_help': '이 Diamond을 레일에서 갈래지어 둬요',
1621 'crystal.marks_unread': '첨부를 읽지 못해서 이번 차례는 Diamond 안에서만 작업합니다.',
1622 'crystal.empty': '결정체가 비어 있어요. 아래에서 이끌어 시작하세요.',
1623 'crystal.empty_paren': '(비어 있음)',
1624 'crystal.save_failed': '결정체를 저장하지 못했어요',
1625 'crystal.back': '결정체로 돌아가기',
1626 'crystal.no_history': '아직 이력이 없어요.',
1627 'crystal.view': '보기',
1628 'crystal.restore': '되살리기',
1629 'crystal.restore_v': 'v{v} 버전으로 되살리기',
1630 'crystal.restore_title': '버전 되살리기',
1631 'crystal.restore_body': '결정체를 v{v} 버전으로 되돌릴까요? 지금 글은 이력에 남으니, 이것도 되돌릴 수 있어요.',
1632 'crystal.restore_failed': '되살리지 못했어요',
1633 'crystal.at_version': 'v{v} 시점의 결정체',
1634 'crystal.read_version_failed': '그 버전을 읽지 못했어요',
1635 'crystal.delta': '델타',
1636 'crystal.delta_help': '이 접기의 바탕이 된 날것의 입력',
1637 'crystal.delta_at': 'v{v}에서 접어 넣은 델타',
1638 'crystal.read_delta_failed': '델타를 읽지 못했어요',
1639 'crystal.steering': '이끄는 중…',
1640 'crystal.no_key_steer': '이 Diamond의 제공자에는 읽을 수 있는 키가 없어요. 잠금을 풀거나 키를 추가하면 이끌 수 있어요.',
1641 'crystal.page_failed': '이 Diamond의 페이지가 뜨지 않아서 대신 데이터를 보여 드려요.',
1642 'crystal.page_partial': '이 Diamond에 담긴 내용이 페이지에 다 나오지 않아서 대신 데이터를 보여 드려요.',
1643 'crystal.page_reset': '페이지를 기본으로 되돌리기',
1644 'crystal.page_reset_confirm': '이 Diamond의 페이지를 기본 페이지로 바꿀까요? 데이터는 건드리지 않아요.',
1645 'crystal.ask': '다이몬에게 이 페이지를 바꿔 달라고 하기',
1646 'crystal.edit_json': 'JSON으로 편집',
1647 'crystal.json_invalid': '올바른 JSON이 아니라서 아무것도 저장하지 않았어요.',
1648 'crystal.field_title': '제목',
1649 'crystal.field_summary': '요약',
1650 'crystal.field_sections': '섹션',
1651 'crystal.field_facts': '사실',
1652 'crystal.field_open': '남은 물음',
1653 'crystal.field_links': '링크',
1654 'crystal.field_heading': '소제목',
1655 'crystal.field_body': '본문',
1656 'crystal.add_section': '섹션 추가',
1657 'crystal.remove': '제거',
1658 'crystal.other_fields': '다른 항목',
1659 'crystal.other_fields_note': '그대로 두고, 아무것도 사라지지 않도록 여기에 보여 드려요.',
1660
1661 // ── 산출물 ─────────────────────────────────────────────────
1662 'arte.count.one': '산출물 {n}개',
1663 'arte.count.other': '산출물 {n}개',
1664 'arte.strip_help': '이 Diamond이 만들었거나 살펴본 것',
1665 'arte.refer_help': '이끄는 칸에서 이것을 가리켜요',
1666 'arte.drop_help': '이 Diamond의 산출물이 아니에요',
1667 'arte.drop_named': '산출물에서 "{name}" 빼기',
1668 'arte.file_fenced': '이 경로는 이 Diamond가 읽을 수 있는 범위 밖입니다',
1669 'arte.file_fenced_body': '펜스가 읽기를 막았습니다. 이 폴더를 이 Diamond에 허용하거나, 이미 허용된 폴더로 파일을 옮기세요.',
1670 'arte.file_gone': '그 파일은 이제 없어요',
1671 'arte.file_gone_body': '“{path}”은(는) 이 Diamond의 산출물인데, 지금은 읽히지 않아요. 이름이 바뀌었거나, 옮겨졌거나, 지워졌을 수 있어요.',
1672 'arte.nothing_to_open': '열 것이 없어요',
1673 'arte.no_viewer': '이 산출물은 “{kind}”인데, 이 버전에는 그것을 볼 수단이 없어요.',
1674
1675 // ── 포커스에 첨부 (ATTACH_CONTRACT.md) ────────────
1676 'attach.to_focus': '현재 포커스에 첨부',
1677 'attach.note': '메모',
1678 'attach.read': '읽기',
1679 'attach.note_help': '경로를 알아 두면 좋아요. 토큰 몇 개면 돼요.',
1680 'attach.read_help': '지금 내용이 필요해요. 파일 하나가 수천 토큰에 이를 수 있어요.',
1681 'attach.add': '첨부',
1682 'attach.view_stack': '스택',
1683 'attach.view_icons': '아이콘',
1684 'attach.prefix_note': '{paths} 메모해줘',
1685 'attach.prefix_read': '{paths} 전체를 읽어줘.',
1686 'attach.cleared': '첨부를 지웠어요',
1687 'attach.list': '첨부',
1688 'attach.pick_title': '파일과 폴더 첨부',
1689 'attach.pick_empty': '여기에는 아무것도 없어요.',
1690 'attach.already': '이미 첨부됨',
1691 'attach.ws_mark': '작업 공간',
1692 'attach.ws_add': '폴더를 작업 공간에 넣기',
1693 'attach.add_mark': '폴더 넣기',
1694 'attach.mark_note': '폴더에 체크하면 작업 공간에 들어가고, 이 작업 공간이 안의 것을 읽고 바꿀 수 있게 됩니다. 파일에 체크하는 것은 모델 앞에 놓기만 합니다.',
1695 'attach.mark_focus': '이 폴더를 {name}에 넣어 그 daimon이 안의 것을 읽고 바꿀 수 있게 합니다',
1696 'attach.not_here': '이 대화가 가지고 있지만 {where} 있어서, 지금 열어 둔 작업 공간이 아닙니다. 여기서는 닿을 수 없어요.',
1697 'attach.ws_help': '이 대화가 읽고 바꿀 수 있는 폴더입니다. 여기에 넣는 것이 곧 허가이고, 다시 묻지 않습니다.',
1698 'attach.ws_on': '이 대화의 작업 공간에 있습니다. 안에 있는 것을 읽고 바꿀 수 있어요. 누르면 빼냅니다.',
1699 'attach.ws_off': '작업 공간에 없어서 이 대화가 열 수 없어요. 누르면 넣습니다.',
1700 'attach.ws_empty': '넣어 둔 폴더가 없습니다. 이 대화는 당신의 것에 닿지 못하고 자기 작업 폴더만 씁니다. 클립이나 위의 + 로 하나 넣어 주세요.',
1701 'attach.group_prompt': '모델 앞에 놓인 것',
1702 'attach.group_prompt_help': '보낼 때 프롬프트에 경로를 적거나 내용을 인용합니다. 권한은 늘지 않아요.',
1703 'attach.read_block': '{path} 의 내용:',
1704 'attach.read_cut': '{path} 는 여기까지만 들어갑니다.',
1705
1706 // ── 이 Diamond의 작업 공간 ─────────────────────────────────
1707 'dws.title': '이 Diamond의 작업 공간',
1708 'dws.count.one': '{n}개',
1709 'dws.count.other': '{n}개',
1710 'dws.none_yet': '아직 여기에 둔 것이 없습니다',
1711 'dws.mode_all': '전체',
1712 'dws.mode_diamond': '이 Diamond',
1713 'dws.empty': '아직 이 Diamond에 둔 것이 없어요. 여기에 두는 것이 그 daimon이 열 수 있는 것이에요.',
1714 'dws.not_here': '이 Diamond에 두었지만, 지금 열어 둔 작업 공간이 아니라 {where}에 있어요. 여기서는 그 daimon이 닿지 않아요.',
1715 'dws.in_machine': '이 기기의 "{name}" 폴더',
1716 'dws.in_browser': '브라우저 작업 공간',
1717 'dws.a_folder': '폴더',
1718 'dws.attach_dir': '이 폴더를 {name}에 두기',
1719 'dws.detach_dir': '이 폴더를 {name}에서 빼기',
1720 'dws.kits': '툴체인',
1721 'dws.kits_help': '이 Diamond의 명령이 컴퓨터에서 어떤 컴파일러와 패키지 관리자에 닿을 수 있는지. 허용하기 전까지는 꺼져 있고, 이것을 daimon이 고르지는 않습니다.',
1722 'dws.kit_on': '{kit} 툴체인을 {name}에 허용',
1723 'dws.kit_off': '{kit} 툴체인을 {name}에서 회수',
1724 'dws.kit_failed': '그 툴체인은 저장되지 않았습니다',
1725 'dws.kit_none': '툴체인 없음. 명령은 이 Diamond의 파일에만 닿고 컴퓨터의 다른 것에는 닿지 않습니다.',
1726 'dws.elsewhere': '작업 공간에 있어요',
1727 'dws.readonly': '읽기 전용',
1728 'dws.showing': '표시 중',
1729 'dws.reach': '닿는 범위',
1730 'dws.reach_help': '이 Diamond의 daimon이 쓸 수 있는 폴더. 두 트리 모두에서 같은 사실이므로 양쪽에 표시됩니다.',
1731 'dws.reach_own': '자기 폴더',
1732 'dws.reach_search': '경로를 적지 않은 검색은 여기만 보고 다른 곳은 보지 않습니다.',
1733 'dws.reach_none': '다른 것이 하나도 들어 있지 않아서 {name}의 daimon은 당신의 다른 곳에는 쓸 수 없고, 경로를 적지 않은 검색도 여기만 봅니다.',
1734 'dws.mark_here': '“{name}” 넣기',
1735 'dws.mark_here_help': '지금 보고 있는 폴더를 {name}의 작업 공간에 넣습니다. 그 daimon은 안의 것을 읽고 바꿀 수 있게 되며, 경로를 적지 않은 검색도 그곳을 봅니다.',
1736
1737 // ── Diamond 사이의 연결 ────────────────────────────────────
1738 'link.count.one': '연결된 Diamond {n}개',
1739 'link.count.other': '연결된 Diamond {n}개',
1740 'link.strip_help': '이 Diamond이 다른 Diamond과 어떻게 이어져 있는지',
1741 'link.none': '아직 다른 Diamond과 연결된 것이 없어요.',
1742 'link.this': '이것',
1743 'link.rel_blank': '연결',
1744 'link.out_help': '이 Diamond → {rel} → “{name}”',
1745 'link.in_help': '“{name}” → {rel} → 이 Diamond',
1746 'link.open_other': '“{name}” 보기',
1747 'link.note_help': '이 연결에 달린 메모 보기',
1748 'link.drop': '연결 지우기',
1749 'link.drop_help': '이 연결을 지워요',
1750 'link.drop_confirm': '“{name}”과(와)의 “{rel}” 연결을 지울까요? Diamond 둘 다 남고, 연결만 사라져요.',
1751 'link.drop_failed': '연결을 지우지 못했어요',
1752 'link.gone': '그 Diamond은 이제 없어요',
1753 'link.gone_body': '“{ref}”은(는) 이 Diamond에서 연결돼 있는데, 그 id의 Diamond을 지금은 읽을 수 없어요. 지워졌을 수 있어요.',
1754 'link.gone_name': '(지워진 Diamond)',
1755 'link.add_btn': '연결',
1756 'link.add_title': '이 Diamond을 다른 Diamond에 연결해요',
1757 'link.pick_label': 'Diamond',
1758 'link.pick_ph': '이름으로 Diamond 찾기',
1759 'link.pick_none': '맞는 Diamond이 없어요.',
1760 'link.pick_empty': '아직 연결할 다른 Diamond이 없어요.',
1761 'link.change_pick': '바꾸기',
1762 'link.rel_label': '관계',
1763 'link.rel_sug_help': '제안일 뿐이에요. 어떤 낱말이든 괜찮아요',
1764 'link.rel_use': '“{rel}” 쓰기',
1765 'link.note_label': '메모',
1766 'link.note_ph': '왜인지 한 문장으로 (선택)',
1767 'link.direction_note': '연결은 이 Diamond에서 고른 Diamond으로 이어져요.',
1768 'link.need_target': '연결할 Diamond을 먼저 고르세요.',
1769 'link.save': '연결 추가',
1770 'link.graph_open': '관계도',
1771
1772 // ── 에이전트 ───────────────────────────────────────────────
1773 'agents.none_yet': '아직 에이전트가 없어요. Diamond에 하나 띄워 달라고 하면 여기에 나와요.',
1774 'agents.no_match': '맞는 에이전트가 없어요. 검색이나 거르기를 지워 보세요.',
1775 'agents.fold_in': '접어 넣기',
1776 'agents.fold_in_help': '이 에이전트의 요약을 “{name}”에 접어 넣어요',
1777 'agents.folded': '접힘',
1778 'agents.already_folded': '이미 접어 넣었어요',
1779 'agents.already_folded_body': '이 에이전트의 요약은 이미 결정체에 접혀 들어갔어요.',
1780 'agents.a_diamond': 'Diamond',
1781 'agents.clear_diamond_filter': 'Diamond 거르기 해제',
1782 'agents.clear_chat_filter': '채팅 거르기 해제',
1783 'instructions.chip_help': '모든 에이전트에게 건네는, 늘 지켜야 할 지시예요. 누르면 열려요.',
1784 'instructions.chip_empty': '아직 아무것도 없어요. 이 파일은 Daimond가 실행하는 모든 에이전트에 전달돼요. 눌러서 작성하세요.',
1785
1786 // ── 에이전트마다 듣는 말 ───────────────────────────────────
1787 'role.chat': '채팅',
1788 'role.chat_help': '말을 거는 상대가 되는 에이전트예요.',
1789 'role.daimon': 'Diamond daimon',
1790 'role.daimon_help': 'Diamond의 결정체를 지키고, 일꾼을 내보내요.',
1791 'role.worker': '내보낸 일꾼',
1792 'role.worker_help': '일 하나, 자기 맥락, 끝나면 보고해요.',
1793 'role.reducer': '결정체 접기',
1794 'role.reducer_help': '델타 하나를 결정체에 접어 넣어요.',
1795
1796 // ── 작업 공간 패널 ─────────────────────────────────────────
1797 'files.rest': '\uc774 \ud3f4\ub354\uc758 \ub098\uba38\uc9c0',
1798 'files.rest_count.one': '{n}\uac1c',
1799 'files.rest_count.other': '{n}\uac1c',
1800 'files.rest_help': '\uc774 \ud3f4\ub354\uc758 \ub098\uba38\uc9c0 \uc804\ubd80\uc785\ub2c8\ub2e4. \uc774\ub984\uc774 \uc810\uc73c\ub85c \uc2dc\uc791\ud558\ub294 \ud30c\uc77c\uacfc \ud3f4\ub354, \uadf8\ub9ac\uace0 Daimond\uac00 \uc790\uc2e0\uc758 \uc77c\uc744 \uc704\ud574 \uad00\ub9ac\ud558\ub294 \uac83\ub4e4\u2014\ub2f9\uc2e0\uc758 \uaddc\uce59\uacfc \uc2a4\ud0ac, \uba54\uc77c, \uac01 \uc885\ub958\uc758 \uc5d0\uc774\uc804\ud2b8\uc5d0\uac8c \uc8fc\ub294 \uc9c0\uc2dc\uc785\ub2c8\ub2e4. \uc5b4\ub290 \uac83\ub3c4 \uae08\uc9c0\ub418\uc9c0 \uc54a\uc558\uc73c\uba70 \ub2e4\ub9cc \uce58\uc6cc \ub454 \uac83\uc785\ub2c8\ub2e4. \uc5f4\uc5b4\uc11c \uc77d\uac70\ub098 \ubc14\uafc0 \uc218 \uc788\uc2b5\ub2c8\ub2e4.',
1801 'files.back': '뒤로',
1802 'files.edit': '편집',
1803 'files.stop_editing': '편집 끝',
1804 'files.line_numbers': '줄 번호',
1805 'files.download': '내려받기',
1806 'files.download_help': '이 기기에 저장해요',
1807 'files.hold_add': '이 파일을 {name}에 두기',
1808 'files.hold_drop': '이 파일을 {name}에서 빼기',
1809 'files.mode_browser': '브라우저',
1810 'files.browser_switch': '에이전트를 브라우저 안의 개인 작업 공간으로 되돌려요.',
1811 'files.browser_help': '에이전트가 브라우저 안의 개인 작업 공간에서 일해요. 동기화되는 건 이쪽이에요.',
1812 'files.mode_machine': '이 기기',
1813 'files.machine_here': '에이전트가 이 실제 폴더를 읽고 써요. 동기화되지 않아요.',
1814 'files.machine_pick': '에이전트가 이 기기의 실제 폴더에서 일하게 해요. 동기화되지 않아요.',
1815 'files.machine_needs_chromium': '실제 폴더는 Chromium 기반 브라우저가 필요해요.',
1816 'files.machine_reconnect': '{name} 다시 연결',
1817 'files.mode_cloud': '클라우드',
1818 'files.cloud_on_machine': '클라우드 저장소가 담는 건 브라우저 작업 공간이지, 이 기기의 폴더가 아니에요.',
1819 'files.cloud_help': '작업 공간이 있는 곳이라, 이 기기보다 커질 수 있어요.',
1820 'files.import_folder': '폴더 가져오기…',
1821 'files.import_folder_help': '이 기기의 폴더를 작업 공간으로 복사해서 동기화되게 해요',
1822 'files.save_copy': '사본 저장…',
1823 'files.save_copy_help': '작업 공간을 이 기기의 폴더로 써내요',
1824 'files.delete': '삭제',
1825 'files.rename_move': '이름 바꾸기 또는 옮기기',
1826 'files.rename_hint': '이름, 또는 다른 곳으로 옮길 경로예요.',
1827 'files.err_name': '이름을 넣어 주세요.',
1828 'files.rename_failed': '이름을 바꾸지 못했어요: {reason}',
1829 'files.no_match': '“{filter}”에 맞는 것이 없어요.',
1830 'files.new_doc_here': '새 문서입니다. 저장하면 {place}에 기록돼요.',
1831 'files.new_file_hint': 'DAIMOND.md로 이름 지으면, 모든 에이전트가 따를 지시를 적어 둘 수 있어요.',
1832 'files.create_failed': '파일을 만들지 못했어요: {reason}',
1833 'files.create_folder_failed': '폴더를 만들지 못했어요: {reason}',
1834 'files.delete_file_body': '“{name}”을(를) 지울까요? 되돌릴 수 없어요.',
1835 'files.delete_folder_body': '폴더 “{name}”과(와) 그 안의 모든 것을 지울까요? 되돌릴 수 없어요.',
1836 'files.delete_failed': '{name} 지우기에 실패했어요: {reason}',
1837 'files.upload_failed': '{name} 올리기에 실패했어요: {reason}',
1838 'files.uploaded.one': '파일 {n}개를 올렸어요.',
1839 'files.uploaded.other': '파일 {n}개를 올렸어요.',
1840 'files.saving': '저장 중…',
1841 'files.saved': '저장했어요.',
1842 'files.save_failed': '저장에 실패했어요: {reason}',
1843 'files.save_cancelled': '저장을 그만뒀어요. 디스크에서 파일이 바뀌었어요.',
1844 'files.discard': '버리기',
1845 'files.discard_title': '고친 것을 버릴까요?',
1846 'files.keep_editing': '계속 편집',
1847 'files.unsaved_body': '{path}에 고친 것이 저장되지 않았어요. 편집기를 닫고 버릴까요?',
1848 'files.editing_stopped': '편집을 멈췄어요. 아무것도 쓰지 않았어요.',
1849 'files.overwrite': '덮어쓰기',
1850 'files.conflict_title': '편집하는 사이에 바뀌었어요',
1851 'files.conflict_body': '이 파일은 연 뒤에 디스크에서 바뀌었어요. 아마 에이전트일 거예요. 그래도 저장해서 그 변경을 덮어쓸까요?',
1852 'files.changed_while_editing': '이 파일이 디스크에서 바뀌었어요. 에이전트가 고쳤어요. 고친 것은 그대로 두고, 저장할 때 덮어쓸지 물어봐요.',
1853 'files.reloaded': '다시 불러왔어요. 디스크에서 파일이 바뀌었어요.',
1854 'files.compile': '컴파일',
1855 'files.compiling': '컴파일 중',
1856 'files.compiling_path': '{path} 컴파일하는 중 …',
1857 'files.compiled': '컴파일했어요 → {path} ({size})',
1858 'files.compile_failed': '컴파일에 실패했어요: {reason}',
1859 'files.binary_note': '{size}짜리 이진 파일이에요. 여기 다른 것들처럼 저장되고 동기화되지만 보여 줄 것은 없어요. 내려받아서 알아보는 프로그램으로 여세요.',
1860 // 작업 공간 패널에서 본 클라우드 저장소.
1861 'files.cloud': '클라우드',
1862 'files.cloud_storage': '클라우드 저장소',
1863 'files.cloud_empty': '클라우드 저장소에 아직 아무것도 없어요. 작업 공간은 이 브라우저가 내주는 만큼으로 묶여요.',
1864 'files.cloud_locked': '클라우드 저장소를 쓰려면 잠금을 풀어 주세요. 그것 없이는 작업 공간이 이 브라우저가 내주는 만큼으로 묶여요.',
1865 'files.cloud_some_away': '클라우드 저장소에 파일 {n}개. 그중 {away}개는 이 기기에 없어요.',
1866 'files.cloud_all_here': '클라우드 저장소에 파일 {n}개. 모두 이 기기에도 있어요.',
1867 'files.cloud_intro': '작업 공간은 클라우드 저장소에 있고, 이 기기는 담을 수 있는 만큼 담고 있어요. 파일 {n}개, 모두 합쳐 {total}.',
1868 'files.cloud_away': '그중 {n}개({bytes})는 이 기기에 없어요.',
1869 'files.cloud_here': '모두 이 기기에도 있어요.',
1870 'files.cloud_none': '클라우드 저장소에 아직 아무것도 없어요. 그것 없이는 작업 공간이 이 브라우저가 내주는 만큼으로 묶여요.',
1871 'files.cloud_none_quota': '클라우드 저장소에 아직 아무것도 없어요. 그것 없이는 이 브라우저가 내주는 공간만 쓸 수 있고, 여기서는 {quota}이에요.',
1872 'files.cloud_cap': '이 브라우저가 내준 것은 {quota}, 그중 쓴 것은 {used}. 고정해 두지 않은 파일은 공간이 차는 대로 자동으로 비워져요.',
1873 'files.reclaim': '공간 비우기',
1874 'files.reclaim_help': '이 기기의 공간을 지금 비워요',
1875 'files.get_help': '이 파일을 이 기기로 가져와요 ({size})',
1876 'files.pinned_short': '이 기기에 고정됨',
1877 'files.pinned_help': '고정됨: 늘 이 기기에 둬요. 누르면 풀려요.',
1878 'files.pin_help': '고정: 자리를 내려고 이것을 비우지 않아요.',
1879 'files.free_help': '클라우드 저장소에는 두고, 여기 사본은 지워요',
1880 'files.fetch': '가져오기',
1881 'files.fetch_body': '“{path}”을(를) 이 기기로 가져올까요? {size}만큼 내려받아요.',
1882 'files.fetching': '{path} 가져오는 중…',
1883 // 에이전트가 일하는 곳 — 뿌리 폴더와 그 범위. 뿌리를 바꾸는 건
1884 // 브라우저 모래판과 디스크 사이를 오가는 것과는 따로예요.
1885 'files.change_root': '폴더 바꾸기…',
1886 'files.change_root_help': '이 기기의 다른 폴더를 에이전트에게 가리켜요',
1887 'files.machine_scope': '에이전트는 {name} 안에서만 일해요. 그 폴더 바깥에 있는 것은 Daimond에 보이지 않아요.',
1888 'files.machine_return': '에이전트를 {name}에서 다시 일하게 해요',
1889 'files.forget_root': '이 폴더 잊기',
1890 'files.forget_root_help': '이 폴더를 더는 내놓지 않아요. Daimond은 그 기록을 갖고 있지 않고, 다음에는 다시 고르라고 물어봐요.',
1891 'files.root_forgotten': '잊었어요. Daimond은 그 폴더의 기록을 더는 갖고 있지 않아요.',
1892
1893 'files.adopted_title.one': 'Diamond 하나를 되찾았어요',
1894 'files.adopted_title.other': 'Diamond {n}개를 되찾았어요',
1895 'files.adopted_body': '이 폴더 안에서 Daimond 자신의 파일을 찾아, 동기화되는 자체 저장소로 다시 복사했어요: {names}. 사본은 diamonds/ 아래에 그대로 두었으니, 확인이 끝나면 지우세요.',
1896 'files.adopted_kept': '다음 파일은 Daimond이 이미 갖고 있던 것과 달라서, 두 사본을 모두 남겼어요:\n{paths}',
1897 'files.adopt_left_title': '폴더에 남겨 둔 파일이 있어요',
1898 'files.adopted_skipped': '다음 파일은 8 MiB를 넘거나 읽을 수 없어서 복사하지 않았어요. 그래서 이 파일이 필요한 Diamond은 그것 없이 있거나, 아예 없어요:\n{paths}',
1899 'fileview.read_failed': '이 파일을 읽지 못했어요: {reason}',
1900 'fileview.disagree': '이름은 {named}, 바이트는 {found}. 보여 주는 쪽은 바이트예요.',
1901 'fileview.empty': '이 파일은 비어 있어요.',
1902 'fileview.too_large': '{size}짜리 {fmt}. 여기 메모리에 다 올리기에는 너무 커요. 아래는 그 바이트예요. 다른 프로그램에서 열려면 내려받으세요.',
1903 'fileview.decode_failed': '이 브라우저는 이것을 해독하지 못했어요: {fmt}.',
1904 'fileview.frame_title': '{name}의 내용',
1905 'fileview.json_bad': '이건 하나의 JSON 값이 아니라서 텍스트로 보여 줘요.',
1906 'fileview.tree_capped': '트리는 여기서 잘렸어요. 파일은 보이는 것보다 커요.',
1907 'fileview.rows_capped': '{total}행 가운데 처음 {shown}행을 보여 줘요.',
1908 'fileview.capped': '{total} 가운데 처음 {shown}을 보여 줘요.',
1909 'fileview.hex_note': '여기에는 이 형식({fmt})을 보여 줄 것이 없어서, 이건 그 바이트예요.',
1910 'fileview.hex_note_unknown': '여기서는 이 파일을 알아보지 못해서, 이건 그 바이트예요.',
1911 'fileview.hex_prev': '이전 바이트',
1912 'fileview.hex_next': '다음 바이트',
1913 'fileview.hex_at': '전체 {total} 가운데 {from}부터 {to}까지',
1914 'fileview.office_too_large': '{size}짜리 {fmt}. 여기서 풀기에는 너무 커요. 아래는 그 바이트예요.',
1915 'fileview.office_failed': '이 문서를 읽지 못했어요: {why}',
1916 'fileview.office_reading': '읽기 보기예요. 문서가 말하는 내용이지, 인쇄했을 때의 모습이 아니에요.',
1917 'fileview.office_tracked': '변경 내용으로 기록된 삽입 {n}건은 적용된 상태로 보여 줘요. 삭제는 보여 주지 않아요.',
1918 'fileview.office_macros': '이 파일에는 매크로가 들어 있어요. 실행하지도, 읽지도 않아요.',
1919 'fileview.office_undrawn': '그리지 않은 것이 {total}개 있어요: {parts}.',
1920 'fileview.sheet_failed': '이 스프레드시트를 읽지 못했어요: {why}',
1921 'fileview.sheet_stored': '값은 파일에 저장된 그대로예요. 수식은 다시 계산하지 않아요.',
1922 'fileview.sheet_capped': '이 시트의 {rows}행 {cols}열 가운데 {shown}을 보여 줘요.',
1923 'fileview.sheet_formulas': '여기에는 수식이 든 셀이 {n}개 있어요. 보이는 값은 저장된 값이에요.',
1924 'fileview.sheet_missing': '이 통합 문서가 이름을 든 시트 가운데 {n}장을 읽지 못했어요: {names}.',
1925 'fileview.save': '사본 저장',
1926 'fileview.save_help': '이것의 사본을 내 기기에 저장합니다. 여기 있는 파일은 바뀌지 않습니다.',
1927 'fileview.save_failed': '저장하지 못했습니다: {why}',
1928 'fileview.save_capped': '이 파일은 앞부분만 화면에 있어서 문서로 내보내지 않습니다. 내보내면 끝이 빠진 문서가 됩니다.',
1929 'fileview.save_as': '문서로 저장',
1930 'fileview.save_as_help': '이 글을 진짜 문서로 써내어 내 기기에 저장합니다. 여기 있는 파일은 바뀌지 않습니다.',
1931 'fileview.save_as_failed': '{fmt}(으)로는 저장하지 못했습니다: {why}',
1932 'fileview.write_left': '이 글의 전부가 문서에 들어가지는 않습니다: {parts}.',
1933 'fileview.left_image': '이미지 {n}개',
1934 'fileview.left_notes': '슬라이드 {n}장의 발표자 노트',
1935 'fileview.left_image_named': '이미지 {n}개: {names}',
1936 'fileview.left_notes_named': '슬라이드 {n}장의 발표자 노트: {names}',
1937 'fileview.edit': '고치기',
1938 'fileview.edit_find': '찾을 말',
1939 'fileview.edit_replace': '바꿀 말',
1940 'fileview.edit_nth': '몇 번째',
1941 'fileview.edit_note': '“{which}”를 비워 두면 찾은 것을 모두 바꿉니다. 파일의 나머지는 1바이트도 달라지지 않습니다.',
1942 'fileview.edit_apply': '적용',
1943 'fileview.edit_failed': '그 수정은 이뤄지지 않았습니다: {why}',
1944 'fileview.edit_nothing': '편집기가 문서를 내놓지 않았습니다',
1945 'fileview.edited': '여기서 {n}번 고쳤습니다. 파일 자체는 그대로입니다 — 남기려면 사본을 저장하세요.',
1946 'fileview.edit_sheet': '시트',
1947 'fileview.edit_cell': '셀',
1948 'fileview.edit_value': '값',
1949 'fileview.edit_cell_note': '“=”로 시작하는 값은 수식으로 저장됩니다. 여기서도 파일에서도 다시 계산하지 않습니다.',
1950 // the nine kinds a reading view names but does not draw
1951 'fileview.undrawn_image': '이미지 {n}개',
1952 'fileview.undrawn_chart': '차트 {n}개',
1953 'fileview.undrawn_diagram': '다이어그램 {n}개',
1954 'fileview.undrawn_textbox': '텍스트 상자 {n}개',
1955 'fileview.undrawn_object': '포함된 개체 {n}개',
1956 'fileview.undrawn_equation': '수식 {n}개',
1957 'fileview.undrawn_footnote': '각주 {n}개',
1958 'fileview.undrawn_endnote': '미주 {n}개',
1959 'fileview.undrawn_comment': '메모 {n}개',
1960
1961 // ── 메시지 하나 읽기 ───────────────────────────────────────
1962 'msg.unknown_sender': '(보낸 사람 모름)',
1963 'msg.reply_to': '회신 주소',
1964 'msg.reply': '답장',
1965 'msg.reply_all': '전체 답장',
1966 'msg.forward': '전달',
1967 'msg.save_help': '작업 공간에 저장해요',
1968 'msg.saved_to': '저장했어요 · {path}',
1969 'msg.save_failed': '{name} 저장에 실패했어요',
1970 'msg.pictures_blocked': '그림과 다른 외부 내용은 막아 뒀어요. 불러오면 보낸 사람에게 열어 봤다는 것이 알려져요.',
1971 'msg.load_pictures': '그림 불러오기',
1972 'msg.no_text': '(이 메시지에는 읽을 수 있는 글 부분이 없어요.)',
1973
1974 // ── 메시지 쓰기 ────────────────────────────────────────────
1975 'compose.new_message': '새 메시지',
1976 'compose.draft': '임시 보관',
1977 'compose.remove_attachment': '이 첨부 빼기',
1978 'compose.err_no_to': '누구에게 가는지 적어 주세요.',
1979 'compose.send_title': '이 메시지를 보낼까요?',
1980 'compose.send_body': '{from}에서 보내지고, 되돌릴 수 없어요.',
1981 'compose.discard_title': '이 임시 보관 메일을 버릴까요?',
1982 'compose.discard_body': '임시 보관 메일은 지워지고, 거기 쓴 것도 사라져요.',
1983
1984 // ── 문 앞의 신원 ───────────────────────────────────────────
1985 'identity.err_enter_pass': '암호문구를 넣어 주세요.',
1986 'identity.err_choose_name': '이름을 정해 주세요.',
1987 'identity.err_confirm_written': '암호문구를 적어 두었는지 먼저 확인해 주세요.',
1988 'identity.err_too_short_gen': '그 암호문구는 너무 짧아요. 다른 것을 만들거나 직접 정하세요.',
1989 'identity.err_too_short': '암호문구는 8자 이상으로 해 주세요.',
1990 'identity.err_mismatch': '두 암호문구가 서로 달라요.',
1991 'identity.err_create': '계정을 만들지 못했어요.',
1992 'identity.err_wrong_pass': '암호문구가 맞지 않았어요. 다시 해 보세요.',
1993 'identity.err_locked': 'Daimond 신원이 잠겨 있어요.',
1994 'identity.err_no_webcrypto': '이 브라우저에서는 WebCrypto를 쓸 수 없어요.',
1995
1996 // ── 화면 위의 패스키 ───────────────────────────────────────
1997 'passkey.have_one': 'Daimond 패스키가 있어요',
1998 'passkey.use_one': '패스키 쓰기',
1999 'passkey.browser_cannot': '이 브라우저에서는 패스키를 쓸 수 없어서, 여기서는 암호문구가 들어오는 길이에요.',
2000 'passkey.adopt_note': '다른 기기에서 패스키를 추가해 두었다면, 페어링 코드나 암호문구 없이도 그 계정이 여기로 와요.',
2001 'passkey.looking': '패스키를 찾는 중…',
2002 'passkey.waiting': '패스키를 기다리는 중…',
2003 'passkey.err_unusable': '이 패스키는 쓸 수 없었어요.',
2004 'passkey.err_did_not_work': '그 패스키는 안 됐어요. 암호문구를 쓰세요.',
2005 'passkey.err_enter_pass': '암호문구를 넣어 주세요.',
2006 'passkey.add_title': '패스키 추가',
2007 'passkey.add_body': '패스키로 지키려면 암호문구를 확인해 주세요. 그다음 기기가 패스키를 만들라고 해요. Face ID, Touch ID, Windows Hello, 보안 키 가운데 하나예요.',
2008 'passkey.continue': '계속',
2009 'passkey.not_added': '패스키를 추가하지 않았어요',
2010 'passkey.err_create_failed2': '패스키를 만들지 못했어요.',
2011 'passkey.err_create_retry': '패스키를 만들지 못했어요. 설정에서 다시 해 보실 수 있어요.',
2012 'passkey.added': '패스키를 추가했어요',
2013 'passkey.added_synced': '이제 패스키로 Daimond의 잠금을 풀 수 있어요. 패스키는 내 기기끼리 동기화되니, 페어링 코드 없이도 새 휴대폰이나 노트북에 이 계정을 데려가요. 암호문구도 그대로 되고, 예비로 남아 있어요.',
2014 'passkey.added_local': '이제 이 기기에서는 패스키로 Daimond의 잠금을 풀 수 있어요. 계정 서비스에 닿지 못해서 지금은 여기서만 통해요. 인터넷에 연결된 뒤 한 번 더 추가하면 다른 기기로도 계정을 데려가요. 암호문구도 그대로 되고, 예비로 남아 있어요.',
2015 'passkey.added_offer': '다음부터 Daimond은 암호문구 대신 패스키를 물어봐요. 설정에서 언제든 뺄 수 있어요.',
2016 'passkey.remove_title': '패스키를 지울까요?',
2017 'passkey.remove_body': '패스키가 이 기기에서 빠지고, 다른 곳에서도 계정을 열지 못해요. 앞으로는 암호문구로 잠금을 풀어요. 패스키 자체는 인증기에서 지우기 전까지 거기에 남아요.',
2018 'passkey.removed': '패스키를 지웠어요',
2019 'passkey.removed_body': '이 기기는 이제부터 암호문구를 물어봐요.',
2020 'passkey.offer_title': '얼굴로 잠금을 풀까요?',
2021 'passkey.offer_body': 'Daimond은 암호문구 대신 Face ID, Touch ID, 기기 PIN으로 잠금을 풀 수 있어요. 패스키는 기기끼리 동기화되니 이 계정도 다른 기기로 함께 가요. 어느 쪽이든 암호문구는 그대로 통해요.',
2022
2023 // ── 계정 지우기 ────────────────────────────────────────────
2024 'forget.credits_title': '크레딧을 먼저 지킬까요?',
2025 'forget.credits_body': '이 계정에는 {amount}이(가) 있고, Daimond 서버에 보관되며 이 신원만 잠금을 풀 수 있어요. 백업은 신원을 암호화해 저장하니 다른 기기가 이어받을 수 있지만, 이 계정의 암호 문구가 있어야 하고 그 문구는 백업에 들어 있지 않아요. 암호 문구를 잃으면 잔액을 되돌릴 방법이 없어요. 지금 백업을 내보낼까요?',
2026 'forget.skip': '건너뛰기',
2027 'forget.title': '이 계정을 지울까요?',
2028 'forget.ok': '모두 지우기',
2029 'forget.body': '암호문구, 암호화된 API 키, 그리고 이 기기에 있는 채팅과 Diamond, 지출 기록이 모두 지워져요.',
2030 'forget.tail': '되살릴 길은 없어요. 전부 사라져요.',
2031 'forget.body_secondary': '이 브라우저에서 계정 “{name}”을(를) 치워요. 암호문구, 키, 채팅, Diamond, 지출, 파일까지요.',
2032 'forget.tail_secondary': '되살릴 길은 없어요. 여기 다른 계정은 그대로예요.',
2033 'forget.abandons': '서버에 있는 {amount} 도 함께 버려요. 이 신원만 잠금을 풀 수 있고, 그 신원의 백업은 이 계정의 암호 문구로만 열려요.',
2034
2035 // ── 이름과 암호문구 바꾸기 ─────────────────────────────────
2036 'rename.title': '이름 바꾸기',
2037 'rename.failed': '이름을 바꾸지 못했어요',
2038 'changepass.lead': '지금 암호문구를 갈아 끼워요. 되살릴 길이 없으니, 이어 가기 전에 새것을 적어 두세요.',
2039 'changepass.gen_note': '이 기기가 무작위로 고른 여덟 낱말이고, 약 {bits}비트라 추측할 수 있는 범위를 훨씬 넘어요. 여기 보관하는 모든 것의 열쇠가 되고, 누구도 대신 되돌려 줄 수 없어요. 종이에 적어 두세요. 비밀번호 관리자가 대신 고쳐 두겠다고 할 수도 있는데, 이만큼 강하면 안전해요.',
2040 'changepass.new_ph': '새 암호문구',
2041 'changepass.again_ph': '한 번 더 입력',
2042 'changepass.change_it': '바꾸기',
2043 'changepass.select_above': '위에서 골라 주세요',
2044 'changepass.err_same_gen': '지금 암호문구와 같아요. 다른 것을 만들어 주세요.',
2045 'changepass.err_short': '8자 이상으로 해 주세요.',
2046 'changepass.err_same': '그건 지금 쓰는 암호문구예요. 다른 것으로 정해 주세요.',
2047 'changepass.failed': '되지 않았어요',
2048 'changepass.failed_body': '지금 암호문구가 맞지 않았어요. 아무것도 바뀌지 않았어요.',
2049 'changepass.careful': '조심하세요',
2050 'changepass.key_not_resealed': '암호문구는 바뀌었지만 API 키를 다시 암호화하지 못했어요. 설정에서 다시 넣어 주세요.',
2051 'changepass.mail_not_resealed': '다음 메일함은 새 암호문구로 다시 암호화하지 못했어요. 비밀번호를 다시 넣어 주세요: {list}.',
2052 'changepass.mail_not_unsealed': '다음 메일함은 예전 암호문구로도 읽지 못했어요. 그래서 비밀번호는 여전히 다시 설정해야 해요: {list}.',
2053 'changepass.post_not_resealed': '새 암호 문구로 비공개 메시지를 다시 암호화하지 못했습니다.',
2054 'changepass.post_not_unsealed': '이전 암호 문구로 비공개 메시지를 읽지 못해 그대로 두었습니다.',
2055 'changepass.models_not_resealed': '다음 제공자는 새 암호문구로 다시 암호화하지 못했어요. 키를 다시 넣어 주세요: {list}.',
2056 'changepass.models_not_unsealed': '다음 제공자는 바꾸기 전부터 키를 읽을 수 없었어요. 그래서 키는 여전히 다시 설정해야 해요: {list}.',
2057 'changepass.all_of_them': '전부',
2058 'changepass.the_api_key': 'API 키',
2059 'changepass.search_not_resealed': '다음 검색 서비스는 새 암호문구로 다시 암호화하지 못했어요. 키를 다시 넣어 주세요: {list}.',
2060 'changepass.search_not_unsealed': '다음 검색 서비스는 바꾸기 전부터 키를 읽을 수 없었어요. 그래서 키는 여전히 다시 설정해야 해요: {list}.',
2061 'changepass.voice_not_resealed': '포지 목소리를 새 암호문구로 다시 암호화하지 못했어요. 포지가 찍어 준 줄에서 다시 설정해 주세요.',
2062 'changepass.voice_not_unsealed': '포지 목소리를 예전 암호문구로도 읽지 못했어요. 그래서 포지가 찍어 준 줄에서 다시 설정해야 해요.',
2063 'changepass.settle_not_resealed': '확정용 목소리를 새 암호문구로 다시 암호화하지 못했어요. 포지가 찍어 준 줄에서 다시 붙여넣어 주세요.',
2064 'changepass.settle_not_unsealed': '확정용 목소리를 예전 암호문구로도 읽지 못했어요. 그래서 포지가 찍어 준 줄에서 다시 붙여넣어야 해요.',
2065 'changepass.rekey_generic': '{who}: {list}.',
2066 'changepass.rekey_failed': '여기 보관된 것 가운데 일부를 새 암호문구로 다시 암호화하지 못했어요. 설정에서 키와 메일함 비밀번호를 확인해 주세요.',
2067 'changepass.changed': '암호문구를 바꿨어요',
2068 'changepass.changed_body': '새 암호문구가 켜졌어요. 저장해 둔 API 키도 그것으로 다시 암호화했어요.',
2069 'changepass.passkey_stale': '패스키를 갱신하지 못해서 새 암호문구를 물어봐요. 설정에서 다시 추가해 주세요.',
2070
2071 // ── 백업 ───────────────────────────────────────────────────
2072 'backup.unreadable': '그 백업 파일을 읽을 수 없었어요.',
2073 'backup.not_a_backup': '그건 Daimond 백업이 아니에요.',
2074 'backup.version_title': '이 백업은 이 Daimond보다 새로워요',
2075 'backup.version_body': '이 파일은 백업 형식 {found}으로 쓰였고, 이 빌드가 읽는 것은 형식 {known}이에요. 아무것도 복원하지 않았고, 파일 안의 것도 바꾸지 않았어요. Daimond을 업데이트한 뒤에 다시 열어 주세요.',
2076 'backup.identity_title': '계정 신원을 복원했어요',
2077 'backup.identity_body': '백업에 “{name}”의 신원이 들어 있어서, 이 브라우저는 이제 그 계정이에요. 서버에 보관된 크레딧과 Pro 라이선스도 함께요. 그 계정의 암호 문구로 잠금을 푸세요. 백업에는 그 문구가 없고, 다른 것으로는 계정을 열 수 없어요.',
2078 'backup.identity_kept': '이 브라우저에는 이미 계정이 있어서, 백업 안의 “{name}” 신원은 그대로 두었어요. 나머지는 모두 복원했어요.',
2079 'backup.identity_failed': '그 백업의 신원을 복원하지 못했어요.',
2080 'backup.restored': '백업을 되살렸어요',
2081 'backup.n_files.one': '작업 공간 파일 {n}개',
2082 'backup.n_files.other': '작업 공간 파일 {n}개',
2083 'backup.n_diamonds.one': 'Diamond {n}개',
2084 'backup.n_diamonds.other': 'Diamond {n}개',
2085 'backup.restored_body': '{files}과(와) {diamonds}을(를) 되살렸어요. Daimond이 다시 불러와서, 되살린 작업 공간을 열어요.',
2086 'backup.n_foreign.one': '그 백업에 든 파일 {n}개는 그 브라우저의 다른 계정 것이라서 되살리지 않았고, 백업 안에만 남아 있어요.',
2087 'backup.n_foreign.other': '그 백업에 든 파일 {n}개는 그 브라우저의 다른 계정 것이라서 되살리지 않았고, 백업 안에만 남아 있어요.',
2088
2089 // ── 제공자 입력 칸 ─────────────────────────────────────────
2090 'models.other': '기타(직접 입력)…',
2091 'models.enter_key_first': 'API 키를 넣으면 모델을 불러와요…',
2092 'models.key_rejected': '그 API 키는 거부됐어요. 확인하고 다시 해 보세요.',
2093 'models.list_failed': '모델을 자동으로 불러오지 못했어요. “기타”를 고르고 모델 ID를 직접 넣으세요.',
2094
2095 // ── 제공자 입력 칸이 되돌려 주는 말 ────────────────────────
2096 'byok.err_provider': '제공자를 먼저 고르세요.',
2097 'byok.err_base_url': '제공자의 기본 URL을 넣으세요.',
2098 'byok.err_bad_url': '그 기본 URL은 웹 주소가 아니에요. https://로 시작하고 제공자의 호스트 이름이 들어가야 해요.',
2099 'byok.err_key': 'API 키를 붙여 넣으세요.',
2100 'byok.err_model': '모델을 고르거나, 목록이 뜰 때까지 잠시 기다리세요.',
2101 'byok.err_rejected': '제공자가 그 API 키를 거부했어요. 확인하고 다시 해 보세요.',
2102
2103 // ── 되돌릴 수 없는 일 확인하기 ─────────────────────────────
2104 'confirm.yes_do_it': '네, 할게요',
2105 'confirm.irreversible': 'Daimond이 되돌릴 수 없는 일을 하려고 해요',
2106 'fold.nothing_chosen': '고른 것이 없어요',
2107 'fold.nothing_chosen_body': '접고 싶은 턴에 표시하고 “선택한 것 접기”를 누르세요.',
2108
2109 // ── 결제에서 돌아온 뒤 ─────────────────────────────────────
2110 'checkout.cancelled': '취소했어요',
2111 'checkout.cancelled_body': '결제된 것은 없고 잔액도 그대로예요.',
2112 'checkout.card_saved': '카드를 저장했어요',
2113 'checkout.card_saved_body': '이제 Daimond이 크레딧을 자동으로 채울 수 있어요. 아래에서 한도를 정하고 켜 주세요. 아직 결제된 것은 없어요.',
2114 'checkout.card_pending_body': 'Stripe가 카드를 받았어요. 여기 뜨기까지 잠시 걸릴 수 있으니, 곧 크레딧을 다시 열어 보세요. 아직 결제된 것은 없어요.',
2115 'checkout.pro_unlocked': 'Pro가 풀렸어요',
2116 'checkout.pro_unlocked_body': 'Daimond Pro를 가지게 되셨어요. 기기 간 동기화, 클라우드 저장, Email이 켜져 있어요. Pro는 구입일로부터 5년 동안 이어져요. 구독은 없고, 갱신되는 것도 없어요.',
2117 'checkout.received': '결제를 받았어요',
2118 'checkout.pro_pending_body': 'Pro 잠금 해제를 확인하는 중이고, 곧 여기 나와요. 잠시 뒤에 크레딧을 다시 열어 보세요.',
2119 'checkout.credits_pending_body': '크레딧을 아직 확인하는 중이에요. 곧 여기 나와요.',
2120 'gateway.acct_unreachable': 'Daimond 계정 서비스에 닿지 못했어요. 잠시 뒤에 다시 시도해 주세요.',
2121 'gateway.session_no_url': '결제 세션이 URL 없이 돌아왔어요.',
2122 'gateway.card_no_url': '카드 세션이 URL 없이 돌아왔어요.',
2123
2124 // ── 작업 공간과 에이전트 패널에서 몇 가지 더 ───────────────
2125 'files.folder_open_failed': '그 폴더를 열지 못했어요.',
2126 'files.import': '가져오기',
2127 'files.import_body': '“{name}”을(를) 작업 공간으로 복사할까요? 그 안의 모든 것이 다른 기기로 동기화되고, 저장 용량에도 들어가요.',
2128 'files.this_file': '이 파일',
2129 'files.unsaved_close': '{path}에 고친 것이 저장되지 않았어요. 닫고 버릴까요?',
2130 'agents.no_diamond': 'Diamond 없음',
2131 'agents.no_diamond_help': '이 실행에는 Diamond이 없어요',
2132 'agents.only_from': '“{name}”에서 나온 에이전트만 보기',
2133 'agents.only_from_chat': '이 채팅에서 나온 에이전트만 보기',
2134 'agents.from_chat': '채팅',
2135 'agents.from_chat_help': '“{name}” 채팅에서 보냈어요.',
2136 'agents.from_chat_help_when': '아직 이름을 붙이지 않은 채팅에서 보냈어요 (마지막 활동: {when}).',
2137 'agents.no_diamond_fold': '이 에이전트는 채팅에서 보낸 것이라, 접어 넣을 크리스털이 없어요. 보고는 그 대화 안에 있고, 전체 글은 ‘읽기’에서 볼 수 있어요.',
2138 'agents.report_one': '보낸 에이전트 하나가 끝났어요.',
2139 'agents.report_n': '보낸 에이전트 {n}개가 끝났어요.',
2140 'agents.no_task': '할 일 없이 에이전트만 요청되어, 아무것도 시작하지 않았어요.',
2141 'changepass.title': '암호문구 바꾸기',
2142 'changepass.enter_current': '지금 쓰는 암호문구를 넣어 주세요.',
2143 'changepass.next': '다음',
2144
2145 // ── 관계도 ─────────────────────────────────────────────────
2146 // Diamond과 그 사이의 연결을 한 장의 정지된 그림으로 그려요. 구조를 살피는
2147 // 도구라서, 문구는 무엇이 있는지만 말해요.
2148 'graph.no_diamonds': '아직 Diamond이 없어서 그릴 것이 없어요.',
2149 'graph.isolated': '연결 없음',
2150 'graph.unnamed': '제목 없음',
2151 'graph.link_mode': '연결',
2152 'graph.link_help': '연결이 시작되는 Diamond를 누른 다음, 가리킬 Diamond를 누르세요. Escape로 취소합니다.',
2153 'graph.organise': '정리',
2154 'graph.organise_help': '교차가 줄도록 Diamond를 다시 배치하고, 새 자리를 유지합니다.',
2155 'graph.pick_source': '출발점을 누른 다음 도착점을 누르세요. Escape로 취소합니다.',
2156 'graph.pick_target': '{name}에서 시작해요. 도착점을 누르거나 Escape를 누르세요.',
2157 'graph.menu_link': '여기서 연결…',
2158 'graph.menu_open': '이 Diamond 열기',
2159 'graph.menu_reset_node': '이 Diamond 제자리로',
2160 'graph.menu_reset_all': '모든 Diamond 제자리로',
2161 'graph.menu_reset_view': '보기 초기화',
2162 'graph.menu_edit_link': '이 연결 편집…',
2163 'graph.menu_drop_link': '이 연결 삭제',
2164 'graph.fit': '전체',
2165 'graph.fit_help': '모든 Diamond이 화면에 들어오도록 크기를 맞춥니다.',
2166 'graph.edit_title': '연결',
2167 'graph.new_title': '새 연결',
2168 'graph.rels_label': '관계',
2169 'graph.rel_add_ph': '일부, 막음… 하나씩',
2170 'graph.rel_add': '이 관계 추가',
2171 'graph.rel_pool': '이미 쓰는 것',
2172 'graph.rel_none': '아직 관계가 없어요.',
2173 'graph.rel_remove': '{rel} 빼기',
2174 'graph.rel_full': '연결 하나에 담기는 관계는 최대 {n}자예요.',
2175 'graph.rel_label': '관계',
2176 'graph.rel_ph': '일부, 막음, 대체함…',
2177 'graph.note_label': '메모',
2178 'graph.note_ph': '관계만으로는 말할 수 없는 것.',
2179 'graph.save': '저장',
2180 'graph.create': '만들기',
2181 'graph.cancel': '취소',
2182 'graph.drop': '삭제',
2183 'graph.self_link': '연결은 서로 다른 두 Diamond를 잇습니다.',
2184 'graph.write_failed': '쓰지 못했습니다: {err}',
2185 'graph.edit_help': '이 연결 편집',
2186 'graph.in_cycle': '이 Diamond은 순환 위에 있어요.',
2187 'graph.back_edge': '이 연결은 순환을 닫아요. 순환은 괜찮고, 보이도록 점선으로 그려요.',
2188 'graph.edge_tip': '{from} → {to}',
2189 'graph.edge_rel': '관계: {rel}',
2190 'graph.failed': '관계도를 읽지 못했어요: {err}',
2191 'graph.artefacts.one': '파일, 페이지, 채팅으로 가는 연결 {n}개',
2192 'graph.artefacts.other': '파일, 페이지, 채팅으로 가는 연결 {n}개',
2193 'graph.stat_diamonds.one': 'Diamond {n}개',
2194 'graph.stat_diamonds.other': 'Diamond {n}개',
2195 'graph.stat_links.one': 'Diamond 사이의 연결 {n}개',
2196 'graph.stat_links.other': 'Diamond 사이의 연결 {n}개',
2197 'graph.stat_cycles.one': '순환을 닫는 연결 {n}개',
2198 'graph.stat_cycles.other': '순환을 닫는 연결 {n}개',
2199 'graph.stat_dangling.one': '사라진 Diamond을 가리키는 연결 {n}개',
2200 'graph.stat_dangling.other': '사라진 Diamond을 가리키는 연결 {n}개',
2201
2202 // ── The terminal ───────────────────────────────────────────
2203 'term.label': '터미널',
2204 'term.menu_copy': '복사',
2205 'term.menu_paste': '붙여넣기',
2206 'term.menu_select_all': '모두 선택',
2207 'term.clipboard_denied': '브라우저가 클립보드를 넘겨주지 않았습니다. 언제나 동작하는 Ctrl-V를 사용하세요.',
2208 'termroot.browse': '변경…',
2209 'termroot.browse_wait': '묻는 중…',
2210 'termroot.browse_use': '사용',
2211 'grantroot.head': 'Daimond 폴더',
2212 'grantroot.note': '모든 명령의 범위. 새로 고침에 적용.',
2213 'termroot.reset': '부여된 폴더',
2214 'termroot.head': '터미널 폴더',
2215 'termroot.note': '터미널은 당신이며 다이몬보다 넓게 닿을 수 있습니다.',
2216 'termroot.pinned': '이 컴퓨터에서 셸로 설정됨.',
2217 'term.hint': '입력하면 키가 프로그램으로 그대로 전달됩니다. Ctrl-Shift-C는 선택 영역 복사, Ctrl-Shift-V는 붙여넣기, Ctrl-Shift-A는 전체 선택이며, Shift와 함께 Page Up 또는 Page Down을 누르면 지나간 내용을 볼 수 있습니다.',
2218 'term.screen_label': '터미널 화면의 텍스트',
2219 'term.screen_now': '화면에는 지금 이렇게 표시되어 있습니다:',
2220 'term.nothing_selected': '선택된 것이 없습니다.',
2221 'term.copied.one': '{n}줄을 복사했습니다.',
2222 'term.copied.other': '{n}줄을 복사했습니다.',
2223 'term.printed_lines.one': '{n}줄이 출력되었습니다.',
2224 'term.printed_lines.other': '{n}줄이 출력되었습니다.',
2225 'term.paste_warn': '이 붙여넣기는 {n}줄입니다. 프로그램이 붙여넣기 알림을 요청하지 않았으므로 첫 줄 이후의 모든 줄은 도착하는 즉시 실행됩니다.',
2226 'term.paste_first': '첫 줄만 붙여넣기',
2227 'term.paste_all': '{n}줄 모두 붙여넣기',
2228 'term.exited': '프로그램이 상태 {code}(으)로 종료되었습니다.',
2229
2230 'term.notices_label': '이 터미널에 대한 알림',
2231 'term.dismiss_notice': '이 알림 닫기',
2232 'term.gaps_count.one': '{n}곳에서 출력이 누락되었습니다.',
2233 'term.gaps_count.other': '{n}곳에서 출력이 누락되었습니다.',
2234 'term.start': '터미널 시작',
2235 'term.restart': '터미널 다시 시작',
2236 'term.stop': '프로그램 중지',
2237 'term.leave_hint': 'F6 키를 누르면 키보드가 터미널 밖으로 나갑니다.',
2238 'term.starting': '터미널을 시작하는 중…',
2239 'term.running': '터미널이 실행 중입니다.',
2240 'term.nothing_running': '이 터미널에서 실행 중인 프로그램이 없습니다.',
2241 'term.not_paired': '이 브라우저에 연결된 머신 핸드가 없어 터미널을 열 기계가 없습니다. Daimond의 나머지 기능은 그것 없이도 작동합니다.',
2242 'term.no_composer': '이 빌드는 터미널이 무엇에 접근할 수 있는지 말할 수 없어 터미널을 열지 않습니다. 그것은 앱의 Rust 쪽에서 계산하는데, 이 페이지가 그보다 오래되었습니다. Daimond를 업데이트하세요. 명령과 파일 도구는 영향을 받지 않습니다.',
2243 'term.unreadable_request': '이 터미널이 무엇에 접근할 수 있는지에 대한 자체 답변을 Daimond가 읽지 못해 아무것도 시작되지 않았습니다. 앱을 새로 고치세요. 다시 발생하면 앱을 업데이트해야 합니다.',
2244 'term.no_relay_script': '터미널 중계가 이 페이지에 로드되지 않아 터미널을 열 수 없습니다. 기계에는 이상이 없습니다. Daimond를 새로 고치세요.',
2245 'term.no_renderer': '터미널 자체가 이 페이지에 로드되지 않아 그릴 대상이 없습니다. 기계에는 이상이 없습니다. Daimond를 새로 고치세요.',
2246
2247
2248 // ── Added 2026-08-07 with the notes2 phases D-H ──────────
2249 'panel.pending': '대기',
2250 'skills.menu': '부를 수 있는 스킬',
2251 'skills.none': '아직 스킬이 없습니다. {dir} 에 마크다운 파일을 두면 그 이름이 명령이 됩니다.',
2252 'skills.draft_badge': '· 초안',
2253 'skills.draft_title': '/{name} 을(를) 설치할까요?',
2254 'skills.draft_ask': 'Daimond가 이 스킬을 초안으로 작성했어요. 설치하면 아래 내용이 그대로 {into} 에 기록되고, /{name} 을 입력하면 실행돼요.',
2255 'skills.draft_install': '설치',
2256 'skills.draft_bad': '이 초안은 설치할 수 없어요',
2257 'tile.dlg_models': '모델',
2258 'tile.model_daimon': '다이몬',
2259 'tile.model_daimon_help': '이 Diamond 가 생각하는 데 쓰는 모델입니다. 대화는 이어집니다. 끝내려면 새 다이몬을 쓰세요.',
2260 'tile.daimon_reset': '새 다이몬',
2261 'tile.daimon_reset_help': '이 다이몬의 대화를 결정체에 접어 넣지 않고 끝냅니다',
2262 'tile.daimon_reset_title': '새 다이몬을 시작할까요?',
2263 'tile.daimon_reset_body': '이 다이몬의 대화({n}개 메시지)는 버려지고, 다음 지시부터 새 대화가 시작됩니다. 결정체에는 아무것도 들어가지 않아요 — 남길 것이 있다면 먼저 접어 넣으세요. 결정체와 파일과 링크는 그대로입니다.',
2264 'tile.daimon_reset_ok': '대화 버리기',
2265 'tile.daimon_reset_done': '새 다이몬입니다. 결정체는 그대로예요.',
2266 'tile.daimon_reset_busy_title': '다이몬이 아직 일하고 있어요',
2267 'tile.daimon_reset_busy': '이 다이몬은 턴 중간이에요. 그 답은 지금 버리려는 대화에 들어가고, 모델이 들고 있는 대화도 마찬가지예요. 그래서 아직 아무것도 버리지 않았어요. 먼저 턴을 멈춰 주세요. 도는 동안에는 입력창 옆 버튼이 멈추기로 바뀌어 있어요.',
2268 'tile.model_workers': '작업자',
2269 'tile.model_vision': '작업자, 이미지',
2270 'tile.model_vision_help': '작업 내용에 이미지가 언급될 때 작업자가 쓰는 모델이자, 지금 쓰는 모델이 그림을 받지 못한다고 드러났을 때 옮겨 갈 모델입니다. Daimond 는 어떤 모델이 볼 수 있는지 미리 알 수 없으므로 선택은 당신 몫이며, 첫 거절을 보고 움직입니다.',
2271 'tile.model_same_as_text': '다이몬과 동일',
2272 'tile.model_none': '없음',
2273 'tile.diamond_model_help': '이 Diamond 는 {model} 로 생각합니다.',
2274 'tile.model_note': '작업자는 시작할 때의 모델을 유지합니다. 새 모델은 다음에 보내는 작업자부터 적용됩니다.',
2275 'tile.model_changed': '다이몬을 {from} 에서 {to} 로 옮겼습니다. 대화는 이어집니다.',
2276 'tile.model_change_note': '다이몬을 {from} 에서 {to} 로 옮겼습니다.',
2277 'tile.model_change_unlogged': '모델은 바뀌었지만 기록 항목을 쓸 수 없었습니다.',
2278 'tile.dlg_context': '컨텍스트',
2279 'tile.context_line': '{all} 중 {used} 사용. {at}% 에서 접습니다.',
2280 'tile.context_unknown': '이 모델은 컨텍스트 창을 공개하지 않으므로, 요청이 거절될 때까지는 견줄 기준이 없습니다.',
2281 'tile.context_used_folds': '컨텍스트 창 사용량: {used} / {all}. {at}% 에서 접습니다.',
2282 'tile.fold_context': '지금 접기',
2283 'tile.fold_context_help': '가득 차기 전에 이 대화의 앞부분을 지금 요약합니다',
2284 'tile.fold_context_title': '이 대화를 접을까요?',
2285 'tile.fold_context_body': '앞부분은 모델이 요약하고(유료 호출입니다), 그 요약이 이 대화가 기억하는 내용이 됩니다. 화면의 메시지는 그대로 남습니다.',
2286 'tile.fold_context_ok': '접기',
2287 'tile.fold_nothing': '접을 것이 없습니다. 이 대화는 이미 더 줄일 수 없습니다.',
2288 'tile.fold_mid_turn': '접기 전에 이 차례가 끝나기를 기다리세요.',
2289 'tile.fold_unavailable': '이 대화에는 아직 아무 말도 없습니다.',
2290 'tile.fold_failed': '접기가 끝나지 않았습니다',
2291 'agent.model_vision': '이 작업은 이미지를 가리키므로 이 Diamond 의 이미지 모델 {model} 로 실행됩니다.',
2292 'agent.model_vision_fallback': '이 작업은 이미지를 가리키지만 이 Diamond에 이미지 모델이 설정되어 있지 않아 텍스트 모델 {model}(으)로 실행됩니다.',
2293 'agent.model_rerouted': '{from} 에는 그림을 보여 줄 수 없어서 이 작업자는 {to} 로 옮겨졌습니다.',
2294 'agent.model_blind': '{model} 에는 그림을 보여 줄 수 없어서 그림은 빠졌습니다.',
2295 'agent.model_blind_none': '{model} 에는 그림을 보여 줄 수 없고, 이 Diamond 에는 이미지 모델이 설정되어 있지 않습니다.',
2296 'pending.empty': '당신을 기다리는 것이 없습니다.',
2297 'pending.sort': '정렬',
2298 'pending.by_priority': '우선순위순',
2299 'pending.by_newest': '최신순',
2300 'pending.by_oldest': '오래된순',
2301 'pending.priority': '우선순위',
2302 'pending.prio_high': '높음',
2303 'pending.prio_normal': '보통',
2304 'pending.prio_low': '낮음',
2305 'pending.no_detail': '더 자세한 설명은 없었습니다.',
2306 'pending.execute': '실행',
2307 'pending.execute_named': '실행: {what}',
2308 'pending.discuss': '먼저 상의',
2309 'pending.discuss_named': '먼저 상의: {what}',
2310 'pending.cancel': '버리기',
2311 'pending.cancel_named': '버리기: {what}',
2312 'pending.noted': '확인했고 목록에서 내렸습니다.',
2313 'pending.opened': '보내려고 열었습니다. 보낼 때까지 여기 남습니다.',
2314 'pending.diamond_gone': '이것을 올린 Diamond 가 사라져서 상의할 상대가 없습니다.',
2315 'pending.discuss_prompt': '승인하기 전에 이것을 더 이야기해야 합니다: “{headline}”',
2316 'crystal.view_switch': '이 Diamond 의 어느 면',
2317 'crystal.view_crystal': '크리스털',
2318 'crystal.view_chat': '대화',
2319 'crystal.full': '전체 화면',
2320 'crystal.full_help': '이 페이지로 화면을 채웁니다',
2321 'crystal.full_exit': '전체 화면 끝내기',
2322 'crystal.full_exit_help': '레일과 상단 막대를 되돌립니다',
2323 'capp.title': '{name}',
2324 'capp.make_body': '‘{name}’ 이라는 Diamond를 만들고 그 안에 {name} 페이지를 넣습니다. 기록한 내용은 이 기기의 그 Diamond에 남습니다.',
2325 'capp.make_ok': '만들기',
2326 'capp.exists_body': '‘{name}’ 이라는 Diamond가 이미 있고, 기록한 내용은 그 안에 있습니다. 두 번째를 만들면 그 기록은 남겨집니다.',
2327 'capp.exists_ok': '열기',
2328 'capp.missing_body': '이 Daimond 빌드에는 {name} 템플릿이 없어서 Diamond에 넣을 것이 없습니다. 아무것도 만들지 않았습니다. 다이몬에게 페이지를 부탁하거나, Daimond를 업데이트한 뒤 다시 시도하세요.',
2329 'capp.page_failed': 'Diamond는 만들어졌지만 페이지를 쓰지 못했습니다: {why}',
2330 // capp 페이지를 최신으로 유지합니다. 바로 바꾸지 않고 물어봅니다. 경고가 아니라
2331 // 제안입니다. ‘lanes’ 는 Life log 페이지 자체의 말이고 그 페이지는 영어라서,
2332 // Diamond처럼 영어로 둡니다.
2333 'capp.legacy_body': '이 {name} 은 capp에 버전이 붙기 전에 만들어져서, 페이지의 어느 부분이 처음 받은 것인지 Daimond가 알 수 없습니다. 페이지를 현재 것으로 업데이트할까요? 당신의 lanes와 기록은 그대로 둡니다.',
2334 'capp.legacy_ok': '페이지 업데이트',
2335 'capp.update_kept': '페이지를 최신으로 맞췄습니다. 다음 파일은 당신의 것이라 그대로 두었습니다: {files}.',
2336 'capp.update_failed': '페이지를 바꾸지 못했습니다: {why}',
2337 // 되돌아가는 곳은 capp 자신의 템플릿이며, 빈 페이지나 기본 페이지가 아닙니다.
2338 'capp.page_reset_confirm': '이 Diamond의 페이지를 현재 {name} 페이지로 바꿀까요? 기록한 내용은 건드리지 않아요.',
2339 'crystal.chat_empty': '아직 아무 말도 오가지 않았습니다. 크리스털은 이 Diamond 가 아는 것이고, 이곳은 어떻게 알게 되었는지입니다.',
2340 'crystal.dispatch_after_error': '차례가 잘못 끝나서 요청된 에이전트는 시작되지 않았습니다.',
2341 'instructions.chip_two': '두 겹이 적용 중입니다. 당신의 것과 이 프로젝트의 것입니다. 눌러서 당신의 것을 엽니다.',
2342 'sys.head': '시스템',
2343 'sys.note': 'Daimond 자신의 파일입니다. 열어 둔 폴더가 아니라 브라우저 안에 있으며, 당신의 기기들 사이를 오갑니다.',
2344 'sys.empty': '여기에는 아직 아무것도 없습니다',
2345 'sys.up': '상위 폴더로',
2346 'trig.head': '이 Diamond 가 움직일 때',
2347 'trig.none': '설정된 것이 없습니다. 이 Diamond 는 당신이 말을 걸 때만 답합니다.',
2348 'trig.activity': '당신의 활동이 {n} 분 쌓인 뒤',
2349 'trig.mail': '{folder} ({mailbox}) 에 메일이 도착할 때',
2350 'trig.edit': '이 동작 편집',
2351 'trig.choose': '어떤 동작',
2352 'trig.opt_on': '▶ {what}',
2353 'trig.opt_off': '⏸ {what}',
2354 'trig.nothing_written': '작성된 내용 없음',
2355 'trig.edit_this': '{what} 편집',
2356 'trig.copy_this': '{what} 복사',
2357 'trig.copy': '지시와 컨텍스트 복사',
2358 'trig.copied': '복사했습니다.',
2359 'trig.copy_failed': '클립보드가 거부했습니다. 동작을 열어 입력란에서 복사하세요.',
2360 'trig.remove': '제거',
2361 'trig.remove_body': '“{what}” 을 제거할까요? 이 Diamond 는 이에 반응하지 않게 됩니다.',
2362 'trig.add': '동작 추가',
2363 'trig.add_kind': '무엇이 일으키는가',
2364 'trig.kind_activity': '내 활동 시간',
2365 'trig.kind_mail': '메일 도착',
2366 'trig.note': '이것들은 {path} 에 있고, 당신과 이 Diamond 가 모두 읽을 수 있습니다.',
2367 'trig.edit_title': '편집: {what}',
2368 'trig.minutes': '분',
2369 'trig.minutes_note': '시계의 분이 아니라 일하고 있는 분입니다. 밤새 열어 둔 탭은 하나도 세지 않습니다.',
2370 'trig.mailbox': '메일함',
2371 'trig.folder': '폴더',
2372 'trig.no_mailbox': '아직 설정된 메일함이 없습니다',
2373 'trig.instruction': '지시',
2374 'trig.instruction_ph': '이것이 발동했을 때 이 Diamond 에게 무엇을 시킬지…',
2375 'trig.context': '컨텍스트',
2376 'trig.context_ph': '처음에 필요한 배경, 그리고 처음에만 필요한 배경…',
2377 'trig.context_note': '첫 지시 앞에 한 번만 보냅니다. 바꾸면 다시 보냅니다.',
2378 'trig.section': '스스로 하는 동작',
2379 'role.compactor': '컨텍스트 접기',
2380 'role.compactor_help': '창을 넘어선 대화를 요약합니다. 그 답이 대화가 기억하는 내용이 됩니다.',
2381 'settings.fold_model': '접을 때 쓸 모델',
2382 'settings.fold_model_own': '그 대화 자신의 모델',
2383 'settings.fold_model_group': '대신 이것으로 접기',
2384 'settings.fold_model_note': '대화가 창을 넘어서면 요약되고, 그 요약이 모델이 기억하는 내용이 됩니다. 여기서는 같은 제공자의 대화에 대해 그것을 쓸 모델을 고릅니다. 나머지 대화는 각자의 모델로 접습니다.',
2385
2386 // The durable trail, shown on the lock screen only when the app is
2387 // actually looping -- three boots in ninety seconds. See breadcrumb.js.
2388 'trail.looping': 'Daimond이 지난 1분 동안 {n}번 다시 시작되었습니다. 아래가 그 기록이니 버그 신고에 붙여넣으세요.',
2389 'trail.copy': '복사',
2390 'trail.copied': '복사됨',
2391 'trail.clear': '지우기',
2392
2393 // A safe start: the app opens without the sync engine, so a device that
2394 // cannot stay open long enough to be used gets to be used. See safe.js.
2395 'safe.armed': 'Daimond가 동기화 없이 시작되었으므로 계속 열려 있어야 합니다. 이 기기의 작업은 안전하며, 동기화를 다시 켜면 다른 기기로도 전달됩니다.',
2396 'safe.offer': 'Daimond가 계속 열려 있지 않으면 동기화 없이 시작하십시오. 작업은 이 기기에 남아 있으며 아무것도 삭제되지 않습니다.',
2397 'safe.turn_off': '동기화 없이 시작',
2398 'safe.turn_on': '동기화 다시 켜기',
2399 'safe.chip': '동기화 꺼짐(안전 시작)',
2400 'safe.chip_reason': 'Daimond가 동기화 없이 시작되어 이 기기의 작업이 다른 기기에 전달되지 않고 있습니다. 잃은 것은 없고, 모두 그대로 있습니다.',
2401 'safe.chip_click': '클릭하면 동기화를 다시 켭니다.',
2402 'safe.turn_on_title': '동기화를 다시 켜시겠습니까?',
2403 'safe.turn_on_ask': 'Daimond가 다시 시작해 다른 기기와의 동기화를 재시도합니다. 저절로 닫히기 시작하면 스스로 안전 시작으로 돌아갑니다.',
2404 'safe.turn_on_ok': '동기화와 함께 다시 시작',
2405
2406 // The sync switch and the durable trail, both reachable from the admin
2407 // panel. See safe.js and breadcrumb.js.
2408 'home.sec_sync': '동기화 및 진단',
2409 'settings.sync': '동기화',
2410 'settings.sync_on_note': '이 기기는 작업을 다른 기기로 보내고 있습니다. 중지는 즉시 적용되고 잃는 것은 없으며, 모두 이 기기에 남습니다.',
2411 'settings.sync_off_note': '이 기기는 동기화하지 않습니다. 작업은 이곳에 안전하게 있으며 다른 기기로 전달되지 않습니다.',
2412 'settings.trail': '진단',
2413 'settings.trail_copy': '앱의 자체 기록 복사',
2414 'settings.trail_note': 'Daimond가 마지막으로 한 일입니다. 이벤트 이름과 시각뿐이고, 키도 메시지 본문도 파일 내용도 없습니다. 버그 보고서에 붙여넣어도 안전합니다.',
2415 'settings.trail_empty': '아직 기록된 것이 없습니다.',
2416 // ── The email doorbell ─────────────────────────────────────
2417 'doorbell.title': '이메일 초인종',
2418 'doorbell.asking': '확인하는 중…',
2419 'doorbell.saving': '저장하는 중…',
2420 'doorbell.turn_off': '이메일 초인종 끄기',
2421 'doorbell.turn_on': '이메일 초인종 켜기',
2422 'doorbell.on_note': '메시지가 도착했는데 Daimond를 어디에도 열어 두지 않았다면, 무언가 기다리고 있다는 내용의 이메일을 계정 주소로 한 통 보낼 수 있습니다. 보낸 사람도 제목도 개수도 없으며, 24시간에 많아야 한 통입니다. 끄면 이미 나갈 준비가 된 것도 함께 멈춥니다.',
2423 'doorbell.off_note': '이메일은 보내지 않습니다. 다음에 Daimond를 열 때 메시지를 보게 되며, 다른 곳에서는 보이지 않습니다.',
2424 'doorbell.default_note': '베타 계정의 기본값이며, 아직 바꾸지 않으셨습니다.',
2425 'doorbell.no_address': '계정에 이메일 주소가 없어, 이 설정과 관계없이 아무것도 보낼 수 없습니다.',
2426 'doorbell.unconfigured': '이 게이트웨이는 이메일을 보낼 수 없어, 이 설정과 관계없이 아무것도 보내지 않습니다.',
2427 'doorbell.err_save': '저장되지 않았습니다. 설정은 그대로입니다. 다시 시도해 주세요.',
2428 'doorbell.notice_title': '이메일 한 통, 많아야 하루 한 번',
2429 'doorbell.notice_body': '누군가 비공개 메시지를 보냈는데 Daimond를 어디에도 열어 두지 않았다면, 무언가 기다리고 있다는 내용의 이메일을 계정 주소로 한 통 보낼 수 있습니다. 보낸 사람도, 제목도, 개수도, 특정 메시지로 가는 링크도 없습니다. 24시간에 많아야 한 통입니다.\n\n언제든 끌 수 있습니다. 이름 옆의 톱니바퀴에서 설정을 열면 “이메일 초인종” 줄이 있습니다. 끄면 이미 나갈 준비가 된 것도 함께 멈춥니다.',
2430 // ── Reporting a message, and sharing a Diamond ─────────────
2431 // i18n-family: report.reason_ = harassment threat spam impersonation other
2432 'post.report': '신고',
2433 'report.title': '이 메시지 신고',
2434 'report.rule': '이 문구가 그대로 운영자에게 갑니다. 보낸 사람의 서명과 이 메시지를 여는 열쇠 하나가 함께 갑니다. 이 대화에서 그 밖의 것은 가지 않습니다. 나머지 스레드도, 그 사람의 다른 메시지도, 당신의 다른 대화도요.',
2435 'report.signed_by': '{fp} 서명',
2436 'report.why': '왜 신고하시나요?',
2437 'report.reason_harassment': '저를 향한 폭언',
2438 'report.reason_threat': '위해를 가하겠다는 협박',
2439 'report.reason_spam': '원치 않는 대량 메시지',
2440 'report.reason_impersonation': '다른 사람인 척함',
2441 'report.reason_other': '그 밖의 것',
2442 'report.send': '이 신고 보내기',
2443 'report.cancel': '취소',
2444 'report.sending': '보내는 중…',
2445 'report.sent': '신고했습니다. 운영자는 이제 이 한 통만 읽을 수 있습니다.',
2446 'report.already': '이미 신고한 메시지입니다. 새로 보낸 것은 없습니다.',
2447 'report.done': '닫기',
2448 'report.err_no_message': '그 메시지는 이 기기가 가지고 있는 것이 아닙니다.',
2449 'report.err_no_artefact': '이 빌드는 그 메시지의 서명된 형태를 보관하지 않아, 누가 보냈는지 증명할 것이 없습니다. 그것 없는 신고는 고발이 되므로 아무것도 보내지 않았습니다.',
2450 'report.err_no_envelope': '이 빌드는 그 메시지의 봉인된 형태를 보관하지 않아, 중계가 나른 것과 대조할 수 없습니다. 아무것도 보내지 않았습니다.',
2451 'report.err_no_bridge': '이 빌드는 보내려는 메시지를 읽을 수 없어 보내지 않습니다.',
2452 'report.err_not_a_post': '그것은 메시지가 아니라 {kind}입니다.',
2453 'report.err_no_reasons': '지금은 신고를 이용할 수 없습니다.',
2454 'report.err_failed': '그 신고는 접수되지 않았습니다. 아무것도 보내지 않았습니다.',
2455 'share.err_no_bridge': '이 빌드는 Diamond를 공유할 수 없습니다. 공유 형식이 로드되지 않았습니다.',
2456 'share.err_no_seal': '이 빌드는 Diamond를 공유할 수 없습니다. 보낼 때 쓰는 봉인이 로드되지 않았습니다.',
2457 'share.err_no_store': '이 빌드는 공유를 읽을 수는 있지만 둘 곳이 없습니다.',
2458 'share.err_locked': '공유하려면 Daimond의 잠금을 해제하세요. 공유는 당신 자신의 키로 서명됩니다.',
2459 'share.err_empty': '그 Diamond에는 아직 보낼 것이 없습니다.',
2460 'share.err_nothing': '공유할 것이 없습니다. Diamond를 지정하거나 보낼 파일을 고르세요.',
2461 'share.err_no_name': '공유에는 내용을 가리키는 이름이 필요합니다.',
2462 'share.err_note_long': '그 메모는 {n}자를 넘어 보내지 않았습니다. 공유는 그것이 무엇인지 한 줄로 전하는 것이고, 편지는 메시지입니다.',
2463 'share.err_too_many_files': '그 Diamond에는 파일이 {n}개 있고, 공유는 최대 {max}개까지 담습니다.',
2464 'share.err_too_big': '그 Diamond는 {mb} MB이고, 공유는 최대 {max} MB까지 담습니다. 잘라내지 않고 거절합니다. 파일이 빠진 사본은 더 작은 사본이 아닙니다.',
2465 'share.err_bad_key': '그 사람에게는 쓸 수 있는 키가 없어 아무것도 보내지 않았습니다.',
2466 'share.err_no_card': '그 사람의 봉인 키가 아직 없어 아무것도 봉인할 수 없습니다. 상대의 코드를 스캔하거나, 자기 것을 보내달라고 하세요.',
2467 'share.err_not_addressed': '그 공유는 이것과 다른 키 앞으로 되어 있습니다.',
2468 'share.err_addr_mismatch': '안내받은 공유와 도착한 공유가 다릅니다.',
2469 'share.err_all_code': '그 공유의 내용은 전부 페이지이고 그 페이지는 받아들여지지 않아, 아무것도 추가되지 않았습니다.',
2470 'share.code_title': '이 공유에는 코드가 들어 있습니다',
2471 'share.code_body': '“{name}”에는 페이지가 들어 있습니다. 다른 사람이 쓴 프로그램이며, 열면 Daimond가 실행합니다. {who}에게서 왔습니다. 그 사람에게서 페이지를 받으려던 것이 맞을 때만 받아들이세요.\n\n추가될 것: {files}',
2472 'share.code_ok': '페이지 받아들이기',
2473 'share.landed_name': '공유받은 Diamond',
2474 'share.landed_title': '공유받은 Diamond를 추가했습니다',
2475 'share.landed_partial': '다음 파일은 Diamond에 쓰지 못했습니다: {list}. 공유의 나머지는 모두 들어 있습니다.',
2476 'share.left_page': '받아들이지 않은 페이지',
2477 'share.landed_ok': '내 Diamond로 추가했습니다. 파일 {n}개가 들어왔습니다.',
2478 'share.panel_take_head': '공유 열기',
2479 'share.panel_take_help': '누군가 건네준 {ext} 파일을 받습니다. 그 안의 페이지는 그 사람이 쓴 프로그램이며, 먼저 묻지 않고는 절대 작업 공간에 쓰지 않습니다.',
2480 'share.panel_take': '공유 파일 열기…',
2481 'share.panel_send_head': 'Diamond 보내기',
2482 'share.panel_no_diamond': '공유하려면 Diamond를 여세요. 공유는 Diamond 하나의 파일을 나르므로, 눈앞에 하나가 열려 있어야 합니다.',
2483 'share.panel_no_people': '아직 봉인 키를 가진 사람이 없어서 공유를 봉해 보낼 상대가 없습니다. 누군가에게 내 코드를 보여주거나, 그 사람의 코드를 읽으세요.',
2484 'share.panel_this': '“{name}”을(를) 공유합니다 — 그 사람의 것이 될 사본이고, 내 것을 들여다보는 창이 아닙니다.',
2485 'share.panel_who': '받는 사람',
2486 'share.panel_send': '공유',
2487 'share.panel_sealing': '봉하는 중…',
2488 'share.panel_sent': '{who}에게 보냈습니다.',
2489 'share.panel_refused': '중계가 받지 않았습니다: {why} 대신 파일로 저장했습니다 — 그 파일을 건네세요.',
2490 'share.by_relay': '이 공유는 {size}이고, 중계를 지나 그 사람에게 바로 갑니다.',
2491 'share.by_file': '이 공유는 {size}이고 중계는 최대 {max}까지만 나릅니다. 그래서 파일로 갑니다: 저장해서 그 파일을 건네세요. 어느 쪽이든 그 사람 앞으로 봉해져 있습니다.',
2492 'share.saved_as': '{name}(으)로 저장했습니다. 그 파일을 건네세요. 그 사람에게만 봉해져 있고 다른 누구도 열 수 없습니다.',
2493 'share.err_not_share': '그 파일은 Daimond 공유가 아닙니다.',
2494 'share.err_no_file': '파일을 고르지 않아서 아무것도 열지 않았습니다.',
2495 'share.err_file_huge': '그 파일은 {size}로, 어떤 공유보다도 커서 열지 않았습니다.',
2496 // ── The Trash ──────────────────────────────────────────────
2497 'panel.trash': '휴지통',
2498
2499 // ── 개선 패널 ──────────────────────────────────────────────
2500 // Daimond에 대한 메모를 쓰고 제안을 읽는 곳이에요. 두 쪽 모두 이제
2501 // Oregami의 포지(제안을 보관하는 서버)를 거쳐요. '포지'와 '목소리'는 이
2502 // 앱의 표현이고, 원어민 검토에서 다른 말로 바꿔도 괜찮아요.
2503 'panel.social': '소셜',
2504 'social.notes': '메모',
2505 'social.proposals': '제안',
2506 'social.messages': '메시지',
2507 'social.people': '사람',
2508 'social.messages_off': '이 빌드에서는 메시지가 켜져 있지 않습니다.',
2509 'social.people_off': '아직 아무도 없습니다. 같은 공간에 있는 사람에게 내 코드를 보여 주거나, 상대의 코드를 읽으세요.',
2510 'social.share': '공유',
2511 'social.share_off': '이 빌드에서는 공유를 쓸 수 없습니다.',
2512
2513 'post.err_no_bridge': '이 빌드에서는 메시지를 작성할 수 없어요. 메시지 형식이 로드되지 않았습니다.',
2514 'post.err_no_draft': '이 빌드에서는 메시지를 작성할 수 없어요. 메시지 인코더가 로드되지 않았습니다.',
2515 'post.err_no_recipient': '봉인된 메시지에는 받는 사람 키가 적어도 하나 필요합니다.',
2516 'post.err_too_many': '한 번에 최대 {n}명에게까지 메시지를 봉인할 수 있어요.',
2517 'post.err_bad_key': '받는 사람 중 한 명에게 쓸 수 있는 키가 없어서 아무것도 보내지 않았어요.',
2518 'post.err_short': '메시지라고 하기에는 너무 짧아요.',
2519 'post.err_not_sealed': '봉인된 Daimond 메시지가 아니에요.',
2520 'post.err_no_sealing_key': '이 기기에는 봉인 키가 없어서 봉인된 메시지를 열 수 없어요. Daimond을 한 번 잠금 해제하면 키가 만들어집니다.',
2521 'post.err_not_for_you': '이 메시지는 이 기기가 가진 어떤 키로도 봉인되지 않았어요.',
2522 'post.err_locked': '메시지를 보내려면 Daimond을 잠금 해제하세요. 본인 키로 서명합니다.',
2523 'post.err_empty': '보낼 것이 없어요.',
2524 'post.err_long': '이 메시지는 본문 {n}자를 넘어서 보내지 않았어요. 잘라내지 않고 거절합니다 — 절반짜리 메시지는 더 짧은 메시지가 아닙니다.',
2525 'post.err_no_card': '아직 그 사람의 봉인 키가 없어서 봉인할 수 없어요. 상대의 코드를 읽거나, 보내 달라고 하세요.',
2526 'post.err_no_groups': '이 빌드에서는 그룹으로 보낼 수 없어요.',
2527 'post.err_group_none': '그 그룹의 아무에게도 메시지가 닿지 않아서 아무것도 보내지 않았어요.',
2528 'post.err_reserved_line': '메시지를 그 줄로 시작할 수는 없어요. Daimond이 그 줄로 그룹의 명단을 실어 나릅니다. 앞에 무언가를 쓰세요.',
2529 'post.err_bad_ref': '메시지가 실을 수 있는 참조 종류가 아니에요.',
2530 'post.err_not_a_post': '이건 메시지가 아니라 {kind}입니다.',
2531 'post.err_not_addressed': '이 메시지는 이 키가 아닌 다른 키 앞으로 되어 있어요.',
2532 'post.err_addr_mismatch': '릴레이가 말한 메시지와 실제로 실어 온 메시지가 다릅니다.',
2533 'post.err_offline': 'Daimond이 릴레이에 닿지 못해서 메시지를 보내지 못했어요.',
2534 'post.err_box_full': '그 사서함이 가득 차서 메시지가 도착하지 않았어요. 안에 있는 것을 먼저 가져가야 다음 것이 들어갑니다.',
2535 'post.err_no_account': '그 키를 가진 계정이 없어서 메시지를 보내지 못했어요.',
2536 'post.err_too_big': '이 메시지는 릴레이가 실어 나르기에 너무 큽니다.',
2537 'post.err_refused': '릴레이가 이 메시지를 받지 않아서 보내지 못했어요.',
2538 'post.locked': '메시지를 읽으려면 Daimond을 잠금 해제하세요. 이 기기에 암호화된 채로 보관됩니다.',
2539 'post.tray_head': '당신의 답을 기다리는 중',
2540 'post.none': '아직 메시지가 없어요.',
2541 'post.you': '나',
2542 'post.someone': '새로운 사람',
2543 'post.unreadable': '이 기기가 열 수 없는 메시지가 도착했어요.',
2544 'post.accept': '수락',
2545 'post.ignore': '무시',
2546 'post.block': '차단',
2547 'post.expired': '보낸 메시지를 아무도 가져가지 않아서 릴레이가 놓아 주었어요.',
2548 'post.expired_group': '당신이 그룹에 보낸 메시지를 받는 사람 가운데 {n}명이 끝내 가져가지 않아서, 릴레이가 그 사본들을 놓아 주었어요.',
2549 'post.notice': '릴레이가 여기에 알림을 남겼어요.',
2550 'post.nobody': '아직 쓸 상대가 없어요. 사람에서 누군가와 코드를 주고받으면 여기에 나타납니다.',
2551 'post.to_label': '받는 사람',
2552 'post.audience': '비공개. 당신과 받는 사람만 읽을 수 있어요.',
2553 'post.audience_group': '이 그룹의 {n}명 각각에게 한 번씩 봉인해요. 공유 키는 없습니다. 나중에 들어온 사람은 이것을 읽을 수 없고, 나중에 빠진 사람은 이것을 그대로 가지고 있어요.',
2554 'post.group_count': '{n}명',
2555 'post.box_label': '비공개 메시지 쓰기',
2556 'post.box_ph': '하고 싶은 말, 그리고 누구에게.',
2557 'post.send': '비공개로 보내기',
2558 'post.err_no_to': '먼저 받는 사람을 고르세요.',
2559 'post.sending': '보내는 중…',
2560 'post.sent': '보냈어요.',
2561 'post.sent_group': '{n}명에게 보냈어요.',
2562 'post.refused_offline': '중계에 닿지 못했음',
2563 'post.refused_full': '상대 편지함이 가득 찼음',
2564 'post.refused_no_account': '그 키를 가진 계정이 없음',
2565 'post.refused_too_big': '중계가 나를 수 있는 크기를 넘음',
2566 'post.refused_other': '중계가 받지 않았음',
2567 'post.group_refused': '다음 상대에게는 중계가 받지 않았습니다: {who}.',
2568
2569 // ── A group, and who is in it ──
2570 // A group is a LIST OF PEOPLE a message is sealed to one by one. No
2571 // shared key, nothing kept on the relay: that decides every line here.
2572 'group.err_unknown': '이 기기는 그 그룹을 몰라요.',
2573 'group.err_left': '당신은 이제 이 그룹에 없어서 여기로는 아무것도 보낼 수 없어요. 이미 여기 있는 메시지는 그대로 있습니다.',
2574 'group.err_closed': '이 그룹은 닫혔으므로 더 이상 아무것도 보낼 수 없어요. 이미 여기 있는 메시지는 그대로 있습니다.',
2575 'group.err_close_not_creator': '그룹을 닫을 수 있는 사람은 그 그룹을 만든 사람뿐이에요.',
2576 'group.err_not_joined': '이 그룹에 글을 쓰기 전에 먼저 가입하세요.',
2577 'group.err_nobody': '이 그룹에는 이 기기가 봉인할 수 있는 사람이 없어요.',
2578 'group.err_locked': '그룹을 만들려면 Daimond을 잠금 해제하세요. 명단은 본인 키로 서명합니다.',
2579 'group.err_no_id': '이 기기가 그룹의 이름을 지어 내지 못했어요.',
2580 'group.err_not_creator': '그룹에 누가 있는지 바꿀 수 있는 사람은 그 그룹을 만든 사람뿐이에요.',
2581 'group.err_no_sealing_key': '이 기기에는 아직 봉인 키가 없어서 그룹을 만들 수 없어요.',
2582 'group.err_too_many': '그룹에는 최대 {n}명까지 들어갈 수 있어요.',
2583 'group.err_no_card': '고른 사람 가운데 {n}명은 봉인 키가 없어서 넣을 수 없어요. 먼저 그 사람의 코드를 읽으세요.',
2584 'group.err_bad_keys': '이것들은 키가 아닙니다: {who}.',
2585 'group.err_pick': '적어도 한 사람은 고르세요.',
2586
2587 // lower case and no full stop: each finishes `group.refused`
2588 'group.skip_blocked': '이 키를 차단했어요',
2589 'group.refused': '봉하지 않은 상대: {who}.',
2590 'group.skip_changed': '상대의 키가 바뀌었고 새 키를 아직 대조하지 않았어요',
2591 'group.skip_disagree': '그룹이 가진 그 사람의 키가 당신이 가진 것과 달라요',
2592
2593 // The two sentences. Each states a LIMIT: what a new member cannot be
2594 // shown, and what somebody taken out keeps. Neither may be softened.
2595 'group.joining_shows_nothing': '가입해도 가입 전에 보낸 것은 아무것도 보이지 않아요. 그 메시지들은 당신의 키로 봉인된 적이 없어서, 어떤 기기도 당신을 위해 열 수 없습니다.',
2596 'group.removing_retracts_nothing': '누군가를 빼도 되돌려지는 것은 없어요. 그 사람은 이미 받은 메시지를 모두 그대로 가지고 있고, 지금부터 보내는 것만 받지 못하게 됩니다.',
2597 'group.close_note': '그룹을 닫으면 모두에게 닫힙니다. 당신을 포함해 누구도 다시 쓸 수 없고, 이미 보낸 메시지는 그대로 남아요. 되돌릴 수 없습니다.',
2598
2599 'group.unnamed': '그룹',
2600 'group.invites_head': '그룹 초대',
2601 'group.head': '그룹',
2602 'group.none_joined': '아직 가입한 그룹이 없어요. 위의 초대에 답하거나, 아래에서 하나 만드세요.',
2603 'group.none': '아직 그룹이 없어요. 그룹은 메시지를 한 사람씩 봉인해 보내는 사람들의 목록이에요. 공유 키는 없고, 릴레이에는 아무것도 남지 않습니다.',
2604 'group.invited_by': '{n}명. 그룹을 만든 사람이 초대했어요.',
2605 'group.join': '가입',
2606 'group.decline': '나중에',
2607 'group.count': '{n}명',
2608
2609 // "stop sending to", never "remove": nothing is taken back
2610 'group.stop_sending': '{who}에게 보내기 중단',
2611 'group.leave': '이 그룹에서 나가기',
2612 'group.gone': '당신은 이제 이 그룹에 없어요. 없어진 것은 아무것도 없습니다. 이미 여기 있는 메시지는 그대로 남고, 새로운 것은 오지 않아요.',
2613
2614 'group.close': '이 그룹 닫기',
2615 'group.close_title': '이 그룹을 모두에게 닫을까요?',
2616 'group.close_ask': '이렇게 하면 “{name}”이 그 안의 모두에게 닫힙니다.',
2617 'group.close_ok': '모두에게 닫기',
2618 'group.closed_said': '닫았고, {n}명에게 알렸어요.',
2619 'group.closed': '이 그룹은 만든 사람이 닫았어요. 없어진 것은 아무것도 없습니다. 이미 여기 있는 메시지는 그대로 남고, 누구도 다시 쓸 수 없어요.',
2620
2621 'group.nobody': '아직 그룹에 넣을 사람이 없어요. 사람에서 누군가와 코드를 주고받으면 여기에 나타납니다.',
2622 'group.name_ph': '이 그룹을 뭐라고 부를지',
2623 'group.name_label': '그룹 이름',
2624 'group.members_label': '이 그룹에 있는 사람',
2625 'group.make': '이 그룹 만들기',
2626 'group.sending_roster': '모두에게 알리는 중…',
2627 'group.roster_sent': '됐어요.',
2628 'group.making': '그룹을 만드는 중…',
2629 'group.made': '만들었어요. {n}명에게 알렸습니다.',
2630
2631 'trust.key_blocked': '차단된 키',
2632 'trust.key_matched_qr': '직접 만나 대조한 키, {when}',
2633 'trust.key_matched_number': '안전 번호로 대조한 키, {when}',
2634 'trust.key_changed': '다른 키 — 대조했던 키는 {when}에 마지막으로 보였어요',
2635 'trust.key_new': '새 키 — 아직 이 키를 대조하지 않았어요',
2636 'trust.no_name': '(이름 없음)',
2637 'trust.calls_themselves': '스스로를 “{name}”이라고 부릅니다',
2638 'trust.lookalike': '이 이름은 이미 대조한 사람의 이름({fp})과 비슷해요. 이름은 신원이 아닙니다 — 키를 확인하세요.',
2639 'trust.held': '이 키에서 온 메시지는 결정하실 때까지 보류됩니다.',
2640 'trust.compare_numbers': '안전 번호 비교',
2641 'trust.unblock': '차단 해제',
2642 'trust.block': '차단',
2643 'trust.show_mine': '내 코드 보여 주기',
2644 'trust.show_lead': '상대가 카메라를 이 코드에 대게 하세요. 직접 읽는 것이 통화 없이 서로를 대조 완료로 표시할 수 있는 유일한 방법입니다.',
2645 'trust.no_card': '이 기기에는 아직 카드가 없어요. 잠금을 해제하고 다시 시도하세요.',
2646 'trust.paste_lead': '카메라가 없나요? 대신 이걸 보내세요. 이렇게 도착한 코드는 새 키이고, 번호를 비교할 때까지 그대로입니다.',
2647 'trust.add': '사람 추가',
2648 'trust.add_lead': '이 기기를 상대의 코드에 대거나, 상대가 보낸 것을 붙여 넣으세요.',
2649 'trust.read_paste': '이걸 읽기',
2650 'trust.bad_card': 'Daimond 코드가 아니거나, 서명 확인에 실패했어요.',
2651 'trust.arrived': '코드가 도착했어요',
2652 'trust.qr_lead': '상대의 화면에서 직접 읽었으니 누군가 사이에 끼어들 통로가 없었습니다. 실제로 그랬을 때만 대조 완료로 표시하세요.',
2653 'trust.mark_matched': '지금 대조 완료로 표시',
2654 'trust.async_lead': '이건 중간의 무언가를 거쳐 왔기 때문에 새 키로 남습니다. 통화로 안전 번호를 소리 내어 읽으면 바뀝니다.',
2655 'trust.numbers': '안전 번호',
2656 'trust.numbers_lead': '이 예순 자리를 통화로, 또는 직접 만나 서로 읽어 주세요. 두 사람이 같은 열두 묶음을 봐야 합니다. 메시지로 읽는 것은 아무것도 증명하지 못합니다 — 키를 바꿔치기할 수 있는 것은 메시지도 바꿔치기할 수 있습니다.',
2657 'trust.numbers_differ': '서로 다릅니다',
2658 'trust.numbers_match': '번호가 같습니다',
2659 'trust.no_number': '이 기기는 아직 번호를 계산할 수 없어요.',
2660 'trust.numbers_differ_note': '그렇다면 누군가 사이에 있습니다. 이 키를 쓰지 마세요. 직접 만나거나, 눈으로 읽은 코드에서 다시 시작하세요.',
2661
2662 'ref.kind_proposal': '제안',
2663 'ref.kind_build': '빌드',
2664 'ref.kind_panel': '패널',
2665 'ref.kind_guide': '안내서',
2666 'ref.proposal': '제안 #{n}',
2667 'ref.build': '빌드 {id}',
2668 'ref.panel': '{name} 패널',
2669 'ref.guide': '안내서: {page}',
2670 'ref.open_proposal': '제안 열기',
2671 'ref.open_build': '릴리스 노트 열기',
2672 'ref.open_panel': '열기',
2673 'ref.open_guide': '페이지 열기',
2674 'ref.expand': '무엇인지 보기',
2675 'ref.reading': '읽는 중…',
2676 'ref.signin': '이걸 열려면 로그인하세요.',
2677 'ref.said': '설명: {text}',
2678 'ref.unopenable': '여기서는 이걸 열 수 없어요.',
2679 'ref.said_n.one': '댓글 {n}개, 공개',
2680 'ref.said_n.other': '댓글 {n}개, 공개',
2681 'ref.build_here': '지금 쓰고 있는 빌드예요.',
2682 'ref.build_other': '지금은 빌드 {id}예요.',
2683 'ref.build_update': '그 빌드로 업데이트',
2684
2685 'dock.unseen.one': '읽지 않음 {n}',
2686 'dock.unseen.other': '읽지 않음 {n}',
2687 'social.info': '이 패널이 무엇인지 안내서에서 보기',
2688 'social.box_label': 'Daimond에 대한 메모 쓰기',
2689 'social.box_ph': '어디였는지, 무엇을 기대했는지, 대신 무슨 일이 일어났는지.',
2690 'social.with': '함께 가는 것',
2691 'social.with_off': '이 메모에서 세부 정보 빼기',
2692 'social.keep': '보관',
2693 'social.keep_help': '이 메모를 이 기기에 저장해요. 아무것도 보내지 않아요.',
2694 'social.send': '보내기',
2695 'social.send_help': '위에 있는 그대로를 Oxedyne에 보내요. 다른 것은 함께 가지 않아요.',
2696 // 메모는 쓴 사람의 '목소리'로 가요. 아이디도 이름도 함께 가지 않으니,
2697 // 여기 어떤 문장도 쓴 사람을 가리켜서는 안 돼요.
2698 'social.as_novoice': '목소리가 없어서 메모는 여기에만 둘 수 있어요.',
2699 // 보내기 버튼 위에, 보내기가 보일 때만 함께 보여요. 저장소가 공개라서 보낸
2700 // 메모는 누구나, 계정 없이, 목소리 이름과 함께 읽을 수 있어요. 이 세 가지는
2701 // 번역에서도 빠지면 안 돼요. `{host}` 는 js/improve.js 가 채우니 그대로 두세요.
2702 'social.publish_body': 'Daimond이 당신 이름으로 이것을 공개하려고 해요. 다른 사람이 읽게 되고, 되돌릴 수 없어요.\n\n{what}\n\n예상하지 못한 일이라면 거절하세요. 잃는 것은 이 한 건뿐이에요.',
2703 'social.publish_ok': '공개하기',
2704 'social.publish_title': '이것을 공개할까요?',
2705 'social.public_note': '보내면 이 메모는 {host}에 공개되고, 당신의 목소리 이름이 함께 붙어요. 거기서는 누구나 계정 없이 읽을 수 있어요. 보관한 메모는 이 기기에 남아요.',
2706 'social.compose_public': '당신의 목소리 이름으로 공개 게시돼요. 누구나 읽을 수 있어요.',
2707 'social.title_hint': '첫 줄이 제안의 제목이에요. 무슨 일이 있었는지는 그 아래에 써요.',
2708 'social.no_title': '첫 줄이 제목이에요. 제목을 쓰고, 그 아래에 무슨 일이 있었는지 써 주세요.',
2709 'social.nothing': '먼저 뭔가 써 주세요.',
2710 // 거절당한 뒤에 나와요. 대기열도 재시도도 없으니, 번역이 다시 시도한다고
2711 // 약속하면 안 돼요.
2712 'social.kept_here': '메모는 여기에 남아 있고, 다시 시도한 것은 없어요.',
2713 'social.copied': '복사했어요.',
2714 'social.state_kept': '여기에만',
2715 'social.state_sent': '{date}에 보냄',
2716 // {n} 뒤의 조사가 숫자에 따라 흔들리지 않도록 '번'을 붙여 두었어요.
2717 'social.state_sent_n': '{date}에 보냈고, 제안 {n}번이에요',
2718 'social.drop': '이 메모 삭제',
2719 'social.drop_ask': '이 메모를 삭제할까요? 이 기기에만 있어서 다른 사본은 없어요.',
2720 'social.drop_ok': '삭제',
2721 'social.no_notes': '아직 메모가 없어요.',
2722 'social.ctx_build': '빌드 {id}',
2723 'social.ctx_touch': '터치',
2724 'social.ctx_pointer': '포인터',
2725 'social.ctx_palette': '팔레트 {name}',
2726 'social.ctx_panels': '열린 패널: {list}',
2727
2728 // 목소리는 포지가 쓴 사람을 알아보는 개인용 비밀이에요. 여기에는 암호문구로
2729 // 암호화해 보관하고, 주소에는 절대 들어가지 않아요.
2730 'social.voice_held': '이 기기에 목소리가 있어요. 당신의 암호문구로 암호화되어 있어요.',
2731 'social.voice_none': '보이스가 없어 다른 사람이 쓴 글은 읽을 수 있지만 글을 남길 수는 없습니다. 내 메모로 할 수 있는 것은 보관뿐입니다.',
2732 'social.voice_replace': '목소리 바꾸기',
2733 'social.voice_help': '트래커가 보여 준 45자입니다. 여기에 암호화되어 보관되며 주소에 들어가지 않습니다.',
2734 'social.voice_ph': '트래커가 보여 준 45자를 붙여 넣으세요',
2735 'social.voice_save': '목소리 저장',
2736 'social.voice_saved': '당신의 목소리를 암호화해서 여기에 보관했어요.',
2737 'social.voice_failed': '그 목소리는 저장할 수 없었어요.',
2738 'social.voice_forget': '잊기',
2739 'social.voice_forget_help': '이 기기의 사본을 지워요.',
2740 'social.voice_forgotten': '이 기기의 사본은 사라졌어요.',
2741 'social.voice_ask_forget': '이 기기의 목소리를 잊을까요? 포지는 한 번만 보여 줬고 다시 보여 줄 수 없어요.',
2742 'voice.err.empty': '포지에 쓰려면 목소리가 있어야 해요.',
2743 'voice.err.shape': '보이스처럼 보이지 않습니다. 보이스는 공백이 없는 45자 한 덩어리입니다.',
2744 'voice.err.short': '포지가 발급하는 어떤 보이스보다도 짧습니다. 45자를 모두 복사하세요.',
2745 'voice.err.long': '이건 목소리가 될 수 있는 길이보다 길어요.',
2746 'voice.err.locked': 'Daimond의 잠금을 먼저 풀어 주세요. 목소리는 당신의 암호문구로 암호화해 보관해요.',
2747 'voice.err.locked_send': '포지에 쓰려면 Daimond의 잠금을 풀어 주세요. 목소리는 당신의 암호문구로 암호화되어 있어요.',
2748 'voice.err.unreadable': '이 암호문구로는 목소리를 읽을 수 없어요. 포지가 찍어 준 줄에서 다시 설정해 주세요.',
2749 'voice.err.inurl': '목소리는 헤더에 넣어요. 주소에는 절대 넣지 않아요.',
2750 'voice.the_voice': '포지 목소리',
2751
2752 'tracker.the_settle_voice': '확정용 목소리',
2753 // 제안은 보는 그때 포지에서 읽어 와요. 답이 달렸는지 알려 주는 것은 없으니,
2754 // 여기 어떤 문장도 알려 준다고 비치면 안 돼요.
2755 'social.live_note': '이건 당신이 보는 그때 포지에서 읽어 와요. 제안에 답이 달려도 알려 주지 않아요. 다시 열어 확인해 주세요.',
2756 'social.loading': '제안을 읽는 중…',
2757 'social.none_shown': '지금은 아무것도 읽지 못했어요.',
2758 'social.none_yet': '여기에는 아직 제안이 없어요. 당신 것이 처음이 될 거예요.',
2759 'social.reading': '읽는 중…',
2760 'social.more': '이전 것 보기',
2761 'social.count.one': '제안 {n}건',
2762 'social.count.other': '제안 {n}건',
2763 'social.by': '{who}에게서',
2764 'social.said_n.one': '답글 {n}개',
2765 'social.said_n.other': '답글 {n}개',
2766 'social.built_on': '빌드 {build}에서 씀',
2767 'social.closed_by': '마크 {mark}로 닫힘',
2768 'social.move_floor': '메모가 파일 경계를 넘어 내용을 따라가는 것은 그 변경이 이동으로 인정될 때뿐이고, 그 하한은 64바이트예요. 그보다 적은 양을 한 파일에서 다른 파일로 잘라 옮기면 이력에는 삭제와 삽입이 남아요. 그래서 거기에 걸어 둔 메모는 내용이 삭제되었다고 정직하게 알려요. 메모도 맞고 이력도 맞아요.',
2769 'social.state_open': '열림',
2770 'social.state_taken': '진행 중',
2771 'social.state_done': '완료',
2772 'social.state_declined': '반려',
2773 'social.tally': '찬성 {yes}, 반대 {no}',
2774 'social.do': '이거 하기',
2775 'social.not': '이건 아님',
2776 'social.vote_novoice': '여기에 투표하려면 목소리를 설정하세요.',
2777 'social.vote_off': '한 번 더 누르면 표를 도로 뺄 수 있어요.',
2778 'social.reply': '보내기',
2779 'social.reply_ph': '이 제안에 대해 한마디 남겨 주세요.',
2780 'social.reply_help': '이 칸에 있는 그대로를 보내요. 다른 것은 함께 가지 않아요.',
2781
2782 // 포지가 왜 거절했는지를 말로 옮긴 것들이에요. 어느 한도가 찼는지는 어디에도
2783 // 쓰지 않아요. 자기 상태를 알려 주는 한도는 남이 재어 볼 수 있는 한도예요.
2784 //
2785 // 번역자에게 — `improve.err_absent`는 표현 취향이 아니라 프라이버시 규칙이에요.
2786 // 포지는 '그런 저장소가 없다'와 '그 저장소는 비공개다'에 대해 일부러, 그리고
2787 // 영구히 똑같이 `absent`로 답해요. 둘을 갈라 주는 표시가 있으면 비공개 저장소가
2788 // 감추고 있는 사실을 그대로 다시 알리는 셈이 되니까요. 그래서 이 문장은 두 경우
2789 // 모두에서 참이어야 해요. '없어요'는 비공개일 때 거짓이고, '비공개예요'는
2790 // 새어 나가요. 당신에게 열려 있지 않다고만 말해 주세요.
2791 // dev/IMPROVE_CONTRACT.md §7 (and the forge contract §3.1) 참고.
2792 'social.err_absent': '이 저장소는 당신에게 열려 있지 않아요.',
2793 'social.err_unvoiced': '포지에 목소리가 전달되지 않아서 거절했어요.',
2794 'social.err_unknown': '포지가 당신의 목소리를 알아보지 못해요. 포지가 찍어 준 줄로 다시 설정해 주세요.',
2795 'social.err_unpermitted': '당신의 목소리로는 여기서 그걸 할 수 없어요.',
2796 'social.err_amend_unpermitted': '이 제안을 연 사람만 수정할 수 있습니다.',
2797 'social.err_throttled': '지금은 요청이 너무 많아요. 조금 기다렸다가 다시 해 주세요.',
2798 'social.err_throttled_address': '지금은 이 주소에서 온 요청이 너무 많아요. 조금 기다렸다가 다시 해 주세요.',
2799 'social.err_throttled_failing': '지금은 실패한 요청이 너무 많아요. 조금 기다렸다가 다시 해 주세요.',
2800 'social.err_malformed': '포지가 Daimond의 요청을 읽지 못했어요. 이건 Daimond의 잘못이고, 당신이 쓴 내용 탓이 아니에요.',
2801 'social.err_no_proposal': '그런 제안은 여기에 없어요.',
2802 'social.err_unsupported': '포지는 그것에 답하지 않아요.',
2803 'social.err_internal': '포지 쪽에서 문제가 생겼어요. 당신 잘못이 아니에요.',
2804 'social.err_gateway': '지금은 Daimond이 포지에 닿지 못했어요.',
2805 'social.err_session': '지금 Daimond이 로그인되어 있지 않아서 포지에 닿지 못했어요.',
2806 'social.err_toolong': '포지가 받는 길이보다 길어요. 줄이거나 두 번에 나눠 보내 주세요.',
2807 'social.err_offline': '지금은 아무것도 보내지 못했어요.',
2808 'social.amend': '이 글 수정',
2809 'social.amend_help': '이 제안의 내용을 바꿉니다. 읽는 사람 모두에게 새 문장이 보입니다.',
2810 'social.amend_title_ph': '무엇에 관한 것인지 한 줄',
2811 'social.amend_body_ph': '무슨 일이 있었고, 대신 무엇을 기대했는지',
2812 'social.amend_save': '수정본 게시',
2813 'social.amend_save_help': '이 두 칸에 있는 그대로만 보냅니다. 다른 것은 함께 가지 않습니다.',
2814 'social.revised_n.one': '1회 수정됨',
2815 'social.revised_n.other': '{n}회 수정됨',
2816 // Drafting from the whole list of kept notes at once (www/js/triage.js).
2817 'social.triage_run': '메모 {n}개 전체로 초안 만들기',
2818 'social.triage_run_help': '보관한 메모와 이미 포지에 있는 제안을 모두 읽고 계획을 씁니다. 초안 중 하나에서 보내기를 누르기 전까지는 아무것도 이 기기를 떠나지 않습니다.',
2819 'social.triage_running': '메모를 읽는 중…',
2820 'social.triage_cost': '메모 {n}개를 {model}로, 본인 키로 읽습니다. 입력 약 {in} 토큰, 출력 최대 {out} 토큰이므로 많아야 {usd}이고 보통은 훨씬 적습니다.',
2821 'social.triage_cost_unknown': '메모 {n}개를 {model}로, 본인 키로 읽습니다. 입력 약 {in} 토큰, 출력 최대 {out} 토큰입니다. 여기에 그 모델의 가격이 없어서 실행 전에는 비용을 알 수 없습니다.',
2822 'social.triage_cost_stop': '초안에서 보내기를 누르기 전에는 포지로 아무것도 가지 않습니다.',
2823 'social.triage_nomodel': '메모로 초안을 만들기 전에 AI에서 모델을 정하세요.',
2824 'social.triage_nonotes': '초안을 만들 보관된 메모가 없습니다.',
2825 'social.triage_unread': '모델이 이 패널이 읽을 수 있는 계획으로 답하지 않았습니다. 아무것도 보내지 않았고 메모도 그대로입니다.',
2826 'social.triage_failed': '초안 작성이 끝나지 못했습니다: {why}',
2827 'social.triage_plan': '{model}이 메모로 쓴 초안 {n}개입니다. 하나씩 읽고, 틀리면 고치고, 원하는 것만 보내세요. 여기 있는 것은 아직 이 기기를 떠나지 않았습니다.',
2828 'social.triage_dropped': '{n}개가 더 있었지만 이 패널이 읽을 수 없는 형태로 와서 보이지 않습니다.',
2829 'social.triage_left': '어느 초안에도 들어가지 않은 메모가 {n}개입니다:',
2830 'social.triage_clear': '이 계획 지우기',
2831 'social.triage_clear_help': '초안을 화면에서 치웁니다. 아무것도 보내지 않고 메모도 바뀌지 않습니다.',
2832 'social.triage_drop': '이건 빼기',
2833 'social.triage_drop_help': '이 초안을 계획에서 뺍니다. 아무것도 보내지 않습니다.',
2834 'social.triage_send_help': '위 상자에 있는 글자만 그대로 보냅니다. 다른 것은 함께 가지 않습니다.',
2835 'social.triage_kept': '아무것도 보내지 않았고 다시 시도하지도 않았습니다. 메모는 그대로입니다.',
2836 'social.triage_from': '메모 {n}개에서',
2837 'social.triage_from_one': '메모 1개에서',
2838 'social.triage_kind_new': '새 제안',
2839 'social.triage_kind_comment': '제안 #{n}에 대한 의견',
2840 'social.triage_kind_revision': '제안 #{n}의 수정',
2841 'social.triage_opened': '제안 #{n}으로 열었습니다.',
2842 'social.triage_said': '제안 #{n}에 남겼습니다.',
2843 'social.triage_revised': '제안 #{n}을 수정했습니다.',
2844 'trash.nothing': '지운 것이 없어요.',
2845 'trash.kept_days': '{days}일 동안 보관한 뒤 완전히 지워요.',
2846 'trash.holding.one': '{n}개, {bytes}',
2847 'trash.holding.other': '{n}개, {bytes}',
2848 'trash.until': '{date}까지',
2849 'trash.deleted_why': '지웠어요. 여기에만 있어요.',
2850 'trash.expired_why': '기한이 다 됐어요. 여기에만 있어요.',
2851 'trash.kind_chat': '채팅',
2852 'trash.kind_diamond': 'Diamond',
2853 'trash.unnamed_chat': '이름 없는 채팅',
2854 'trash.keep': '남기기',
2855 'trash.keep_help': '이 채팅을 Diamond으로 만들고, 대화 전체를 첫 산출물로 담아요.',
2856 'trash.keep_named': '“{name}”을(를) Diamond으로 남기기',
2857 'trash.restore': '되돌리기',
2858 'trash.restore_named': '“{name}” 되돌리기',
2859 'trash.restore_all': '모두 되돌리기',
2860 'trash.purge': '완전히 지우기',
2861 'trash.purge_named': '“{name}” 완전히 지우기',
2862 'trash.purge_ask': '“{name}”을(를) 완전히 지울까요? 모든 기기에서 사라지고 되돌릴 수 없어요.',
2863 'trash.purge_ok': '완전히 지우기',
2864 'trash.empty': '휴지통 비우기',
2865 'trash.empty_ask.one': '휴지통에 있는 {n}개를 완전히 지울까요? 모든 기기에서 사라지고 되돌릴 수 없어요.',
2866 'trash.empty_ask.other': '휴지통에 있는 {n}개를 모두 완전히 지울까요? 모든 기기에서 사라지고 되돌릴 수 없어요.',
2867 'trash.empty_ok': '휴지통 비우기',
2868 'trash.moved': '“{name}”을(를) 휴지통으로 옮겼어요.',
2869 'trash.moved_n.one': '{n}개를 휴지통으로 옮겼어요.',
2870 'trash.moved_n.other': '{n}개를 휴지통으로 옮겼어요.',
2871 'trash.swept.one': '휴지통에 {days}일 동안 있던 것 하나를 완전히 지웠어요.',
2872 'trash.swept.other': '휴지통에 {days}일 동안 있던 {n}개를 완전히 지웠어요.',
2873
2874 // Added 2026-08-12: a worker's consent question parked on the Pending
2875 // panel, the Agents panel's own controls, and the rewritten Tools panel.
2876 'pending.consent.click_head': '에이전트가 {host}에서 무언가를 클릭하려고 합니다',
2877 'pending.consent.type_head': '에이전트가 {host}로 텍스트를 보내려고 합니다',
2878 'pending.consent.reach_head': '에이전트가 {host}에 접속하려고 합니다',
2879 'pending.consent.why': '이 페이지가 눈앞에 없을 때 물었기 때문에, 아무도 보지 못했을 대화창 대신 여기서 질문이 기다리고 있습니다.',
2880 'pending.consent.agent': '에이전트는 {name}입니다. 맡은 일: {task}',
2881 'pending.consent.waiting': '에이전트가 아직 이 답을 기다리고 있습니다.',
2882 'pending.consent.expired': '물었던 에이전트는 사라졌습니다 — 앱을 마지막으로 다시 불러오기 전에 올라온 것입니다. 지금 예라고 해도 그 동작은 일어나지 않습니다.',
2883 'pending.consent.allowed': '허용했습니다. 에이전트에게 진행하라고 전했습니다.',
2884 'pending.consent.gone': '더는 이것을 기다리는 것이 없어, 허용할 것도 없었습니다.',
2885 'pending.consent.nochat': '거절했습니다. 가져갈 대화가 없습니다. 두 에이전트가 돌고 있어 어느 쪽이 물었는지 Daimond가 알 수 없습니다.',
2886 'agents.act_pause': '일시정지',
2887 'agents.act_pause_help': '이 에이전트를 멈추고 지금까지의 작업은 남깁니다. 나중에 이어서 할 수 있습니다.',
2888 'agents.act_stop': '중지',
2889 'agents.act_stop_help': '이 에이전트를 완전히 멈춥니다. 해낸 것은 그대로 남습니다.',
2890 'agents.act_resume': '이어서',
2891 'agents.act_resume_help': '이 에이전트를 멈춘 자리에서 이어 갑니다.',
2892 'agents.act_discard_help': '일시정지된 이 에이전트를 버립니다.',
2893 'agents.tally_running': '{n}개 실행 중',
2894 'agents.tally_paused': '{n}개 일시정지',
2895 'agents.tally_queued': '{n}개 대기',
2896 'agents.live': '{n}개 활동 중',
2897 'agents.dropped.one': '오래된 실행 1건은 보관되지 않습니다.',
2898 'agents.dropped.other': '오래된 실행 {n}건은 보관되지 않습니다.',
2899 'agents.status_queued': '대기',
2900 'agents.status_running': '실행 중',
2901 'agents.status_paused': '일시정지',
2902 'agents.status_done': '완료',
2903 'agents.status_error': '실패',
2904 'agents.status_stopped': '중지됨',
2905 'agents.status_interrupted': '끊김',
2906 'tools.intro': 'Daimond가 해 줄 수 있는 일입니다. 대부분은 포함되어 있습니다. 팩은 새로운 영역을 더하며, 크레딧이 아니라 달러로 한 번만 구입합니다.',
2907 'tools.count': '이 계정에서 <b>{all}개 중 {have}개</b>를 쓸 수 있습니다.',
2908 'tools.sec_included': '포함됨',
2909 'tools.sec_packs': '팩',
2910 'tools.packs_none': '아직 판매 중인 팩이 없습니다. 나오면 여기에 표시됩니다.',
2911 'tools.packs_fine': '팩은 한 번 사면 계속 쓸 수 있습니다. Pro와 같은 결제 창에서 달러로 지불하며, 크레딧에서는 절대 빠지지 않습니다. 그래서 크레딧으로 쓰든 자신의 API 키로 쓰든 팩 가격은 같습니다.',
2912 'tools.status_included': '포함',
2913 'tools.status_owned': '보유함',
2914 'tools.locked_why': '이 계정에서는 구입하지 않았습니다. 이것은 {pack} 팩입니다. Daimond는 어중간하게 하지 않고 거절하며 그 사실을 말합니다.',
2915 'tools.expand': '무엇을 하는지 ({n})',
2916 'tools.collapse': '무엇을 하는지 접기',
2917 'tools.fn_pack': '{pack} 팩에 들어 있음',
2918 'tools.cap.files.name': '당신의 파일',
2919 'tools.cap.files.blurb': 'Daimond는 작업 공간의 파일을 읽고, 쓰고, 고치며 — 스프레드시트의 셀과 문서의 문구까지 — 전체에서 한 번에 찾아내고, 뒤처리도 합니다.',
2920 'tools.cap.cloud.name': '클라우드에 둔 파일',
2921 'tools.cap.cloud.blurb': '이 기기에 없는 파일은 Daimond가 읽어야 하는 바로 그때 클라우드 저장소에서 가져옵니다. 모든 것을 모든 곳에 두지 않습니다.',
2922 'tools.cap.work.name': '일을 한데 묶기',
2923 'tools.cap.work.blurb': 'Daimond는 어떤 파일이 어떤 일에 속하는지 기록합니다. 직접 만든 것도 폴더에 묻히지 않고 그 일과 함께 나열됩니다.',
2924 'tools.cap.asking.name': '질문 드리기',
2925 'tools.cap.asking.blurb': 'Daimond는 한 번에 하나의 결정을 탭해서 답할 수 있는 형태로 드립니다. 각 선택지는 그것이 실제로 무엇을 뜻하는지 말하고, 그중 하나가 이유와 함께 권장안으로 지목되며, 언제든 직접 쓴 말로 답하실 수도 있습니다.',
2926 'tools.cap.show.name': '파일을 보여 주기',
2927 'tools.cap.show.blurb': 'Daimond이 파일을 대화 옆 화면에 띄워 줘요. PDF는 조판된 페이지로, 그림은 그려서, 표는 표로. 말로만 설명하지 않아요.',
2928 'tools.cap.checking.name': '자신의 작업 확인',
2929 'tools.cap.checking.blurb': 'Daimond는 이 프로젝트의 검사를 실행하고 무엇이 통과했는지, 무엇이 실패했는지, 어떤 파괴 테스트가 아무것도 증명하지 못했는지 보고합니다.',
2930 'tools.cap.social.name': 'Daimond에 대해 다른 사람들과 이야기하기',
2931 'tools.cap.social.blurb': 'Daimond는 사람들이 Daimond 자체에 대해 보고하거나 요청한 것을 읽고, 매번 당신의 승인을 받아 무엇이 나가는지 정확히 보여준 뒤에 당신 이름으로 보고하거나 지지해요.',
2932 'tools.cap.machine.name': '당신의 컴퓨터',
2933 'tools.cap.machine.blurb': 'Daimond의 머신 핸드를 설치하면, 허락한 폴더 안에서만 Daimond가 명령줄 도구를 빌드하고 테스트하고 실행합니다.',
2934 'tools.cap.reading.name': '웹 읽기',
2935 'tools.cap.reading.blurb': 'Daimond는 당신이 고른 검색 엔진으로 찾고, 페이지가 실제로 말하는 바를 읽습니다. 둘 다 Daimond를 떠날 필요가 없습니다.',
2936 'tools.cap.browsing.name': '웹사이트 다루기',
2937 'tools.cap.browsing.blurb': 'Daimond는 대화 옆에 페이지를 열고 클릭하고 입력하고 스크롤하며 다룹니다. 그 과정을 지켜볼 수 있습니다.',
2938 'tools.cap.typeset.name': '문서 조판하기',
2939 'tools.cap.typeset.blurb': 'Daimond는 Typst 원본을 브라우저 안에서 제대로 조판된 PDF로 만들어 냅니다.',
2940 'tools.cap.dispatch.name': '작업자 내보내기',
2941 'tools.cap.dispatch.blurb': 'Daimond는 큰 일을 한정된 과제로 나눠 각각에 작업자를 여러 명 동시에 보내고, 그들이 가져온 것을 하나의 답으로 접어 넣습니다.',
2942 'tools.cap.graph.name': '작업이 어떻게 이어지는지',
2943 'tools.cap.graph.blurb': 'Daimond는 Diamond, 파일, 페이지, 대화 사이의 관계를 읽고 기록합니다 — 무엇이 무엇을 대신하고, 무엇이 무엇을 낳았는지.',
2944 'tools.cap.other.name': '아직 설명 없음',
2945 'tools.cap.other.blurb': 'Daimond는 이것들을 갖고 있지만 이 패널은 뭐라고 부를지 듣지 못했습니다. 열어서 무엇인지 확인하세요.',
2946 'legal.terms': '이용약관',
2947 'legal.privacy': '개인정보 처리방침',
2948 'legal.draft_note': '2026년 8월 13일부터 효력이 있어요. [TO CONFIRM] 표시가 된 항목은 아직 정리 중이에요.',
2949 'lapse.hide': '내일까지 숨기기',
2950 'lapse.read_clause': '약관에 뭐라고 적혀 있는지',
2951 'lapse.storage_head': '무료 용량을 넘겨 저장한 파일은 {date}에 삭제돼요.',
2952 'lapse.storage_head_undated': '무료 용량을 넘겨 저장한 파일은 유예 기간이 끝나면 삭제돼요.',
2953 'lapse.storage_why': '크레딧이 지금 쓰고 있는 클라우드 저장을 감당하지 못해서 계량이 멈췄어요. 소급해서 청구하지 않고, 저장해 둔 것은 지금도 읽을 수 있어요.',
2954 'lapse.storage_size': '무료 용량을 넘겨 약 {size}를 두고 있어요.',
2955 'lapse.storage_what': '그때까지 잔액이 회복되지 않으면, 무료 용량을 넘겨 저장한 데이터는 삭제돼요. 이 기기의 파일은 그대로예요.',
2956 'lapse.top_up': '크레딧 충전',
2957 'lapse.credits_pitch': '충전하면 무료 용량을 넘겨 저장한 데이터가 삭제되는 것을 막을 수 있어요.',
2958 'lapse.lic_head': 'Pro 라이선스는 {date}에 끝나요.',
2959 'lapse.lic_head_past': 'Pro 라이선스가 {date}에 끝났어요.',
2960 'lapse.lic_off': '그때 기기 간 동기화, 클라우드 저장, Daimond Email이 꺼져요. 셋 다 저희 쪽에서 돌리는 서비스이기 때문이에요.',
2961 'lapse.lic_off_past': '기기 간 동기화, 클라우드 저장, Daimond Email이 꺼져 있어요. 셋 다 저희 쪽에서 돌리는 서비스이기 때문이에요.',
2962 'lapse.lic_keep': '이 기기에서는 예전 그대로 이어져요. 파일, 대화, Diamond, 신원, 직접 넣은 제공자 키 모두요. 아무것도 삭제되지 않고, 잠기지 않고, 만들어 둔 것이 읽히지 않게 되는 일도 없어요.',
2963 'lapse.lic_pull': '이미 저장해 둔 것을 내려받는 일은 멈추지 않고, 크레딧에도 영향이 없어요.',
2964 });
2965})();