{"id":29142418,"url":"https://github.com/think2011/vscode-react-i18n","last_synced_at":"2025-06-30T19:37:49.124Z","repository":{"id":47974901,"uuid":"204841797","full_name":"think2011/vscode-react-i18n","owner":"think2011","description":"🔖 这个插件能够帮到你方便浏览和编写 React i18n","archived":false,"fork":false,"pushed_at":"2022-12-04T09:28:08.000Z","size":2196,"stargazers_count":22,"open_issues_count":4,"forks_count":7,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-04-13T16:27:51.262Z","etag":null,"topics":["i18n","react","react-i18n","reactjs","vscode","vscode-extension","vscode-i18n","vscode-react-i18n"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=think2011.react-i18n","language":"TypeScript","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/think2011.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-08-28T03:38:28.000Z","updated_at":"2023-03-09T01:58:32.000Z","dependencies_parsed_at":"2023-01-24T03:45:15.361Z","dependency_job_id":null,"html_url":"https://github.com/think2011/vscode-react-i18n","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/think2011/vscode-react-i18n","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/think2011%2Fvscode-react-i18n","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/think2011%2Fvscode-react-i18n/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/think2011%2Fvscode-react-i18n/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/think2011%2Fvscode-react-i18n/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/think2011","download_url":"https://codeload.github.com/think2011/vscode-react-i18n/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/think2011%2Fvscode-react-i18n/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262839770,"owners_count":23372786,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["i18n","react","react-i18n","reactjs","vscode","vscode-extension","vscode-i18n","vscode-react-i18n"],"created_at":"2025-06-30T19:37:34.766Z","updated_at":"2025-06-30T19:37:49.113Z","avatar_url":"https://github.com/think2011.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://raw.githubusercontent.com/think2011/vscode-react-i18n/master/static/logo.png\" alt=\"logo\" width=\"100\"/\u003e\n\u003c/p\u003e\n\u003ch1 align=\"center\"\u003evscode-react-i18n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://marketplace.visualstudio.com/items?itemName=think2011.react-i18n\"\u003e\u003cimg src=\"https://img.shields.io/visual-studio-marketplace/v/think2011.react-i18n.svg?color=blue\u0026amp;label=VSCode%20Marketplace\u0026amp;logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgMjU2IDI1NiI+PGRlZnM+PHN0eWxlPi5he2ZpbGw6I2ZmZjt9LmEsLmd7ZmlsbC1ydWxlOmV2ZW5vZGQ7fS5ie21hc2s6dXJsKCNhKTt9LmN7ZmlsbDojMDA2NWE5O30uZHtmaWxsOiMwMDdhY2M7fS5le2ZpbGw6IzFmOWNmMDt9LmZ7b3BhY2l0eTowLjI1O30uZ3tmaWxsOnVybCgjYik7fTwvc3R5bGU+PG1hc2sgaWQ9ImEiIHg9Ii0wLjE2IiB5PSIwLjY2IiB3aWR0aD0iMjU2LjE2IiBoZWlnaHQ9IjI1NC42OCIgbWFza1VuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHBhdGggY2xhc3M9ImEiIGQ9Ik0xODEuNTMsMjU0LjI1YTE1LjkzLDE1LjkzLDAsMCwwLDEyLjctLjQ5bDUyLjcxLTI1LjM2QTE2LDE2LDAsMCwwLDI1NiwyMTRWNDJhMTYsMTYsMCwwLDAtOS4wNi0xNC40MkwxOTQuMjMsMi4yNEExNS45NCwxNS45NCwwLDAsMCwxNzgsMy43YTE2LjMsMTYuMywwLDAsMC0xLjkxLDEuNjNMNzUuMTUsOTcuMzksMzEuMiw2NGExMC42NSwxMC42NSwwLDAsMC0xMy42MS42MUwzLjQ5LDc3LjQ1YTEwLjY4LDEwLjY4LDAsMCwwLDAsMTUuNzhMNDEuNTksMTI4LDMuNDgsMTYyLjc3YTEwLjY4LDEwLjY4LDAsMCwwLDAsMTUuNzhsMTQuMSwxMi44MkExMC42NSwxMC42NSwwLDAsMCwzMS4yLDE5Mmw0NC0zMy4zNywxMDAuOSw5Mi4wNkExNiwxNiwwLDAsMCwxODEuNTMsMjU0LjI1Wk0xOTIsNjkuODksMTE1LjQ4LDEyOCwxOTIsMTg2LjEyWiIvPjwvbWFzaz48bGluZWFyR3JhZGllbnQgaWQ9ImIiIHgxPSIxMjcuODQiIHkxPSIyNTUuNDIiIHgyPSIxMjcuODQiIHkyPSIwLjc0IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEsIDAsIDAsIC0xLCAwLCAyNTYuMDgpIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjZmZmIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjZmZmIiBzdG9wLW9wYWNpdHk9IjAiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48dGl0bGU+QXJ0Ym9hcmQgMTwvdGl0bGU+PGcgY2xhc3M9ImIiPjxwYXRoIGNsYXNzPSJjIiBkPSJNMjQ2Ljk0LDI3LjY0LDE5NC4xOSwyLjI0QTE1Ljk0LDE1Ljk0LDAsMCwwLDE3Niw1LjMzTDMuMzIsMTYyLjc3YTEwLjY3LDEwLjY3LDAsMCwwLDAsMTUuNzhsMTQuMSwxMi44MmExMC42NywxMC42NywwLDAsMCwxMy42Mi42MUwyMzksMzQuMjNhMTAuNTksMTAuNTksMCwwLDEsMTcsOC40NHYtLjYyQTE2LDE2LDAsMCwwLDI0Ni45NCwyNy42NFoiLz48cGF0aCBjbGFzcz0iZCIgZD0iTTI0Ni45NCwyMjguMzZsLTUyLjc1LDI1LjRBMTUuOTQsMTUuOTQsMCwwLDEsMTc2LDI1MC42N0wzLjMyLDkzLjIzYTEwLjY3LDEwLjY3LDAsMCwxLDAtMTUuNzhsMTQuMS0xMi44MkExMC42NywxMC42NywwLDAsMSwzMS4wNiw2NEwyMzksMjIxLjc3YTEwLjU5LDEwLjU5LDAsMCwwLDE3LTguNDRWMjE0QTE2LDE2LDAsMCwxLDI0Ni45NCwyMjguMzZaIi8+PHBhdGggY2xhc3M9ImUiIGQ9Ik0xOTQuMiwyNTMuNzZhMTYsMTYsMCwwLDEtMTguMi0zLjA5QTkuMzcsOS4zNywwLDAsMCwxOTIsMjQ0VjEyYTkuMzcsOS4zNywwLDAsMC0xNi02LjYzLDE2LDE2LDAsMCwxLDE4LjItMy4wOUwyNDYuOTMsMjcuNkExNiwxNiwwLDAsMSwyNTYsNDJWMjE0YTE2LDE2LDAsMCwxLTkuMDcsMTQuNDJaIi8+PGcgY2xhc3M9ImYiPjxwYXRoIGNsYXNzPSJnIiBkPSJNMTgxLjM4LDI1NC4yNWExNS45MywxNS45MywwLDAsMCwxMi43LS40OWw1Mi43LTI1LjM2QTE2LDE2LDAsMCwwLDI1NS44NCwyMTRWNDJhMTYsMTYsMCwwLDAtOS4wNi0xNC40MkwxOTQuMDgsMi4yNEExNiwxNiwwLDAsMCwxNzcuOCwzLjdhMTYuMywxNi4zLDAsMCwwLTEuOTEsMS42M0w3NSw5Ny4zOSwzMSw2NGExMC42NSwxMC42NSwwLDAsMC0xMy42MS42MUwzLjMzLDc3LjQ1YTEwLjY4LDEwLjY4LDAsMCwwLDAsMTUuNzhMNDEuNDQsMTI4LDMuMzIsMTYyLjc3YTEwLjY4LDEwLjY4LDAsMCwwLDAsMTUuNzhsMTQuMSwxMi44MkExMC42NSwxMC42NSwwLDAsMCwzMSwxOTJMNzUsMTU4LjYxbDEwMC45LDkyLjA2QTE1Ljk0LDE1Ljk0LDAsMCwwLDE4MS4zOCwyNTQuMjVabTEwLjUtMTg0LjM2TDExNS4zMiwxMjhsNzYuNTYsNTguMTJaIi8+PC9nPjwvZz48L3N2Zz4=\" alt=\"Visual Studio Marketplace Version\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://marketplace.visualstudio.com/items?itemName=think2011.react-i18n\"\u003e\u003cimg src=\"https://img.shields.io/visual-studio-marketplace/d/think2011.react-i18n.svg\" alt=\"Visual Studio Marketplace Downloads\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://marketplace.visualstudio.com/items?itemName=think2011.react-i18n\"\u003e\u003cimg src=\"https://img.shields.io/visual-studio-marketplace/i/think2011.react-i18n.svg\" alt=\"Visual Studio Marketplace Installs\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\n\u003cp align=\"center\"\u003e\n为什么要做这个插件？因为写 i18n 真的很啰嗦很麻烦啊 😫\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n这个插件能够帮到你方便查看和编写 \u003ca href=\"https://github.com/i18next/react-i18next\"\u003ei18next\u003c/a\u003e 🎉\n\u003c/p\u003e\n\n\u003ch2 align=\"center\"\u003e ⚡ 主要功能 \u003c/h2\u003e\n\n### 提取并自动翻译文案 (快捷键 ⌘+.)\n![](static/demo.png)\n\n### 直观的看到对应的翻译文案\n![](static/demo1.png)\n\n### 通过翻译中心管理翻译\n![](static/demo2.gif)\n\n\n\u003ch2 align=\"center\"\u003e 🦉 如何使用? \u003c/h2\u003e\n\n### 1. 首先你的目录应该是类似这样的结构\n```\n  locales \n  ├── en.json\n  ├── zh-CN.json\n  ├── zh-TW.json\n  ├── ...\n  └── \u003ccontry-code\u003e.json\n```\n\n或者\n\n```\n  locales\n  ├── en\n  |   ├── common.json\n  |   ├── buttons.json\n  |   ├── ...\n  |   └── \u003cfilenames\u003e.json\n  ├── zh-CN\n  |   ├── common.json\n  |   ├── buttons.json\n  |   └── ...\n  └── \u003ccontry-code\u003e\n      ├── common.json\n      ├── buttons.json\n      └── ...\n```\n\n### 2. 那么安装好插件后就会自动识别目录了\n\u003e 如果不是的话，那请执行如图的命令吧 😝\n\n![](static/demo3.png)\n\n### 3. 但是组件的语法还不支持\n\n像是这样的\n\n```js \n\u003cTranslation ns=\"ns1\"\u003e // 识别不了 🙊\n  {(t) =\u003e \u003cp\u003e{t('my translated text')}\u003c/p\u003e} \n\u003c/Translation\u003e\n```\n\n## 📆 功能列表\n\n- [x] 翻译提示\n- [x] 翻译注释\n- [x] 翻译中心\n- [x] 删除多个语言\n- [x] google、youdao、baidu在线翻译\n- [x] 字段补全\n- [x] 自动配置翻译目录\n- [x] 手动配置翻译目录\n- [x] 可指定翻译源语言\n- [x] 重复、覆盖检测\n- [x] YAML支持\n\n\n\n## QA\n\u003e 怎么安装？\n\n在 `vscode` 插件里搜索 `react-i18n`，或者点击上上方的小徽章安装吧！\n\n\u003e 怎么不开 Issues?\n\n估计很长一段时间里都比较忙，而且懒，如果你遇到了**实在难以解决的问题**或者非要~~提需求~~ **吐槽**，那你给我发封邮件吧 \u003c452125301.hzplay@gmail.com\u003e，要是可以贡献 PR 那真的太棒了 🙂\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthink2011%2Fvscode-react-i18n","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthink2011%2Fvscode-react-i18n","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthink2011%2Fvscode-react-i18n/lists"}