본문으로 건너뛰기
cccskills
무료GitHub에 공개

update-i18n

Maintain PlainTab runtime UI translations and i18n language packs. Use when adding, editing, formatting, validating, or reviewing UI text in js/i18n/*.js, js/languages.js, data-i18n markup, or t(key) calls; also use when onboarding/help copy or new settings need localized strings.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(2)

  • SKILL.md2.9 KB
  • agents/openai.yaml241 B

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Update PlainTab I18N

Use this skill for PlainTab runtime UI copy. Keep the runtime contract unchanged:

  • js/languages.js is the synchronous language bootstrap and must stay early in index.html.
  • js/i18n/*.js are language packs that assign flat objects to window.I18N["locale"].
  • Runtime code should call t(key) or use existing data-i18n; do not hard-code UI language branches.
  • Keep all language packs key-complete. zh-CN and en need carefully maintained copy, and every supported locale should receive localized UI text for newly added runtime keys. Do not use English as the default fallback for non-English packs; only leave a product name, protocol, shortcut, or technical token in English when that exact token is the UI concept.

Workflow

  1. Read .claude/rules/30-language.md and any touched runtime file.
  2. Add or update flat keys in every js/i18n/*.js file. New user-facing keys must be localized for all supported locales, not copied from en.
  3. Keep language packs multi-line, one key per line:
window.I18N["en"] = {
    "someKey": "Some text",
    "anotherKey": "Another text"
};
  1. In runtime code, reference keys through t("someKey"). Avoid detecting language manually for UI strings.
  2. For generated or mechanical updates, preserve UTF-8 text. Be careful with PowerShell pipelines that can turn non-ASCII text into ?; prefer apply_patch or an ASCII-safe temporary script that is deleted after use.
  3. If adding user-facing behavior, keep first-paint rules intact; do not move js/languages.js or js/preload.js.

Validation

Run these checks before finishing:

Get-ChildItem js\i18n\*.js | ForEach-Object { node --check $_.FullName }
node --check js\languages.js
node --check js\newtab.js
@'
const fs = require('fs');
global.window = {};
global.document = { write() {} };
global.navigator = { language: 'en' };
global.localStorage = { getItem() { return ''; } };
require('./js/languages.js');
for (const file of fs.readdirSync('js/i18n').filter(f => f.endsWith('.js'))) require('./js/i18n/' + file);
const report = window.validatePlainTabI18N({ silent: true });
if (!report.ok) {
  console.log(JSON.stringify(report, null, 2));
  process.exit(1);
}
console.log('validatePlainTabI18N ok');
'@ | node -

If only specific runtime files changed, still run git diff --check on the touched files.

Also audit newly added keys for accidental English fallback in non-English packs. A value that is identical to window.I18N.en[key] should be treated as suspicious unless it is an intentional product name, protocol, shortcut, or technical token.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Claude adapter for bumping the PlainTab version. Use when the user asks "更新版本", "bump version", "upgrade to vX.Y.Z", "发布新版本", or asks to prepare a PlainTab release.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kaininx/PlainTab952026년 5월 27일 업데이트

Use when preparing a PlainTab release or bumping the PlainTab version, triggered by phrases like "更新版本", "bump version", "upgrade to vX.Y.Z", "发布新版本". Updates manifest.json, runtime UI/version constants, localized changelogs, store listings, release notes, validation notes, and current project docs.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kaininx/PlainTab952026년 5월 27일 업데이트

Claude adapter for preparing and creating PlainTab git commits with scoped, detailed Conventional Commit messages. Use when the user asks to commit, 提交, stage changes, or use precise Conventional Commit / Google-style commit messages.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kaininx/PlainTab952026년 5월 27일 업데이트

Prepare and create PlainTab git commits with scoped Conventional Commit subjects and detailed commit bodies. Use when the user asks to commit, 提交, create a git commit, stage changes, or asks for precise Conventional Commits / Google-style commit messages; especially when the worktree may contain unrelated user changes.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kaininx/PlainTab952026년 5월 27일 업데이트

diagnose

무료

Claude adapter for diagnosing PlainTab bugs, broken flows, startup issues, storage or wallpaper regressions, and performance regressions.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kaininx/PlainTab952026년 5월 27일 업데이트

diagnose

무료

Use when diagnosing PlainTab bugs, broken UI behavior, failing extension/web-mode flows, storage or wallpaper regressions, startup issues, or performance regressions.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

kaininx/PlainTab952026년 5월 27일 업데이트

kaininx의 스킬 모두 보기

이 스킬의 문제 신고