Spaces:
Configuration error
Configuration error
File size: 17,936 Bytes
af12fb4 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 |
# AIGODLIKE-ComfyUI-Translation
A plugin for multilingual translation of [ComfyUI](https://github.com/comfyanonymous/ComfyUI)๏ผThis plugin implements translation of resident menu bar/search bar/right-click context menu/node, etc
## ComfyUI users in other languages, I need your help
I hope ComfyUI can support more languages besides Chinese and English, such as French, German, Japanese, Korean, etc. However, I believe that translation should be done by native speakers of each language. So I need your help, let's go fight for ComfyUI together!
**[Korean] Korean translation needs help~**
**[Japanese] Japanese translation needs help~**
## Language supported
|COMFYUI Translation|็ฎไฝไธญๆ|็น้ซไธญๆ|English|ๆฅๆฌ่ช|ํ๊ตญ์ด|ะ ัััะบะธะน|Your language|
|:----|:----|:----|:----|:----|:----|:----|:----|
|Menu|โ|โ|โ|โ|โ|โ|TODO|
|NodeCategory|โ|โ|โ|โ|โ|โ|TODO|
|Nodes|โ|โ|โ|โ|โ|โ|TODO|
## Function
1. Translate all UI of ComfyUI



2. Direct language switching (limitation: custom names will be removed)
https://github.com/AIGODLIKE/AIGODLIKE-COMFYUI-TRANSLATION/assets/116185401/e43182b7-8932-4358-bc65-ade7bddf27c5
3. Support for adding other languages
4. Support translation custom nodes
5. **(2023/8/16)** Support one-click switching between English/currently set language
6. **(2023/8/19)** Support for multilingual translation of custom nodes * (in production)
|Custom Node Name|็ฎไธญ|็นไธญ|English|ๆฅๆฌ่ช|ํ๊ตญ์ด|ะ ัััะบะธะน|
|:----|:----|:----|:----|:----|:----|:----|
|[3D-Pack](https://github.com/MrForExample/ComfyUI-3D-Pack)|โ|TODO|โ|TODO|TODO|TODO|
|[Advanced Encode](https://github.com/BlenderNeko/ComfyUI_ADV_CLIP_emb)|โ|โ|โ|TODO|TODO|TODO|
|[Advanced ControlNet](https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet)|โ|โ|โ|TODO|TODO|TODO|
|[AGL-ComfyUI-Translation](https://github.com/AIGODLIKE/AIGODLIKE-COMFYUI-TRANSLATION)|โ|โ|โ|โ|TODO|TODO|
|[AlekPet Nodes](https://github.com/AlekPet/ComfyUI_Custom_Nodes_AlekPet)|โ|โ|โ|โ|TODO|TODO|
|[AnimateAnyone](https://github.com/MrForExample/ComfyUI-AnimateAnyone-Evolved.git)|โ|TODO|โ|TODO|TODO|TODO|
|[AnimateDiff](https://github.com/ArtVentureX/comfyui-animatediff)|โ|โ|โ|โ|TODO|TODO|
|[AnimateDiff-Evolved](https://github.com/Kosinkadink/ComfyUI-AnimateDiff-Evolved.git)|โ|โ|โ|TODO|TODO|TODO|
|[AnyLine](https://github.com/TheMistoAI/ComfyUI-Anyline.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Automatic CFG](https://github.com/Extraltodeus/ComfyUI-AutomaticCFG.git)|โ|TODO|โ|TODO|TODO|TODO|
|[BiRefNet](https://github.com/viperyl/ComfyUI-BiRefNet.git)|โ|TODO|โ|TODO|TODO|TODO|
|[BrushNet (kijai)](https://github.com/kijai/ComfyUI-BrushNet-Wrapper.git)|โ|TODO|โ|TODO|TODO|TODO|
|[BrushNet (nullquant)](https://github.com/nullquant/ComfyUI-BrushNet.git)|โ|TODO|โ|TODO|TODO|TODO|
|[CCSR](https://github.com/kijai/ComfyUI-CCSR.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Champ](https://github.com/chaojie/ComfyUI-Champ.git)|โ|TODO|โ|TODO|TODO|TODO|
|[CLIP Seg](https://github.com/biegert/ComfyUI-CLIPSeg)|โ|โ|โ|โ|TODO|TODO|
|[ComfyRoll](https://github.com/RockOfFire/ComfyUI_Comfyroll_CustomNodes)|โ|โ|โ|TODO|TODO|TODO|
|[ControlNet LLLite](https://github.com/kohya-ss/ControlNet-LLLite-ComfyUI)|โ|โ|โ|TODO|TODO|TODO|
|[ControlNet Preprocessors](https://github.com/Fannovel16/comfy_controlnet_preprocessors)|โ|โ|โ|โ|TODO|TODO|
|[ControlNet Preprocessors AUX](https://github.com/Fannovel16/comfyui_controlnet_aux)|โ|โ|โ|โ|TODO|TODO|
|[Crystools](https://github.com/crystian/ComfyUI-Crystools.git)|โ|TODO|โ|TODO|TODO|โ|
|[Cutoff](https://github.com/BlenderNeko/ComfyUI_Cutoff)|โ|โ|โ|โ|TODO|TODO|
|[Custom-Scripts](https://github.com/pythongosssss/ComfyUI-Custom-Scripts)|โ|โ|โ|TODO|TODO|TODO|
|[cg-use-everywhere](https://github.com/chrisgoringe/cg-use-everywhere.git)|โ|TODO|โ|TODO|TODO|TODO|
|[cg-image-picker](https://github.com/chrisgoringe/cg-image-picker.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Davemane42 Nodes](https://github.com/Davemane42/ComfyUI_Dave_CustomNode)|โ|โ|โ|โ|TODO|TODO|
|[Dagthomas Nodes](https://github.com/dagthomas/comfyui_dagthomas)|โ|โ|โ|โ|TODO|TODO|
|[DynamiCrafter (kijai)](https://github.com/kijai/ComfyUI-DynamiCrafterWrapper.git)|โ|TODO|โ|TODO|TODO|TODO|
|[DynamiCrafter (ExponentialML)](https://github.com/ExponentialML/ComfyUI_Native_DynamiCrafter.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Dynamic Thresholding](https://github.com/mcmonkeyprojects/sd-dynamic-thresholding)|โ|โ|โ|TODO|TODO|TODO|
|[Easy Animate](https://github.com/chaojie/ComfyUI-EasyAnimate.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Easy Tools](https://github.com/jafshare/ComfyUI-Easy-Tools)|โ|TODO|โ|TODO|TODO|TODO|
|[Easy Use](https://github.com/yolain/ComfyUI-Easy-Use)|โ|TODO|โ|TODO|TODO|TODO|
|[Efficiency Nodes](https://github.com/LucianoCirino/efficiency-nodes-comfyui)|โ|โ|โ|โ|TODO|TODO|
|[ELLA(ExponentialML)](https://github.com/ExponentialML/ComfyUI_ELLA.git)|โ|TODO|โ|TODO|TODO|TODO|
|[ELLA(Tencent)](https://github.com/TencentQQGYLab/ComfyUI-ELLA.git)|โ|TODO|โ|TODO|TODO|TODO|
|[EllangoK Postprocessing](https://github.com/EllangoK/ComfyUI-post-processing-nodes)|โ|โ|โ|TODO|TODO|TODO|
|[Essentials](https://github.com/cubiq/ComfyUI_essentials.git)|โ|TODO|โ|TODO|TODO|TODO|
|[ExLlama nodes](https://github.com/Zuellni/ComfyUI-ExLlama-Nodes)|โ|โ|โ|TODO|TODO|TODO|
|[experiments](https://github.com/comfyanonymous/ComfyUI_experiments)|โ|โ|โ|TODO|TODO|TODO|
|[Face Analysis](https://github.com/cubiq/ComfyUI_FaceAnalysis.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Fast Decode](https://github.com/nagolinc/ComfyUI_FastVAEDecorder_SDXL)|โ|โ|โ|โ|TODO|TODO|
|[Flowty CRM](https://github.com/flowtyone/ComfyUI-Flowty-CRM.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Flowty TripoSR](https://github.com/flowtyone/ComfyUI-Flowty-TripoSR.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Frame Interpolation](https://github.com/Fannovel16/ComfyUI-Frame-Interpolation.git)|โ|TODO|โ|TODO|TODO|TODO|
|[FreeU Advanced](https://github.com/WASasquatch/FreeU_Advanced)|โ|TODO|โ|TODO|TODO|TODO|
|[IC-Light (kijai)](https://github.com/kijai/ComfyUI-IC-Light.git)|โ|TODO|โ|TODO|TODO|TODO|
|[IC-Light-Wrapper (kijai)](https://github.com/kijai/ComfyUI-IC-Light-Wrapper.git)|โ|TODO|โ|TODO|TODO|TODO|
|[IF AI tools](https://github.com/if-ai/ComfyUI-IF_AI_tools.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Image Resize](https://github.com/palant/image-resize-comfyui.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Instant Mesh](https://github.com/jtydhr88/ComfyUI-InstantMesh.git)|โ|TODO|โ|TODO|TODO|TODO|
|[IPAdapter](https://github.com/laksjdjf/IPAdapter-ComfyUI)|โ|โ|โ|TODO|TODO|TODO|
|[IPAdapter_plus](https://github.com/cubiq/ComfyUI_IPAdapter_plus)|โ|โ|โ|TODO|TODO|TODO|
|[Image Grid](https://github.com/LEv145/images-grid-comfy-plugin)|โ|โ|โ|TODO|TODO|TODO|
|[Impact Pack](https://github.com/ltdrdata/ComfyUI-Impact-Pack)|โ|โ|โ|TODO|TODO|TODO|
|[Impact Subpack](https://github.com/ltdrdata/ComfyUI-Impact-Subpack)|โ|โ|โ|TODO|TODO|TODO|
|[Inpaint Nodes](https://github.com/Acly/comfyui-inpaint-nodes.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Inspire Pack](https://github.com/ltdrdata/ComfyUI-Inspire-Pack)|โ|โ|โ|TODO|TODO|TODO|
|[InstantID (cubiq)](https://github.com/cubiq/ComfyUI_InstantID.git)|โ|TODO|โ|TODO|TODO|TODO|
|[InstantID (ZHO)](https://github.com/ZHO-ZHO-ZHO/ComfyUI-InstantID.git)|โ|TODO|โ|TODO|TODO|TODO|
|[KJ Nodes](https://github.com/kijai/ComfyUI-KJNodes.git)|โ|TODO|โ|TODO|TODO|TODO|
|[kkTranslator](https://github.com/AIGCTeam/ComfyUI_kkTranslator_nodes.git)|โ|TODO|โ|TODO|TODO|TODO|
|[LaMa Preprocessor](https://github.com/mlinmg/ComfyUI-LaMA-Preprocessor)|โ|TODO|โ|TODO|TODO|TODO|
|[Latent2RGB](https://github.com/bvhari/ComfyUI_LatentToRGB)|โ|โ|โ|โ|TODO|TODO|
|[LayerDiffuse](https://github.com/huchenlei/ComfyUI-layerdiffuse)|โ|TODO|โ|TODO|TODO|TODO|
|[LayerStyle](https://github.com/chflame163/ComfyUI_LayerStyle)|โ|TODO|โ|TODO|TODO|TODO|
|[LCM](https://github.com/0xbitches/ComfyUI-LCM)|โ|TODO|โ|TODO|TODO|TODO|
|[Literals](https://github.com/M1kep/ComfyLiterals.git)|โ|TODO|โ|TODO|TODO|TODO|
|[LoadLoraWithTags](https://github.com/Extraltodeus/LoadLoraWithTags.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Logic](https://github.com/theUpsider/ComfyUI-Logic.git)|โ|TODO|โ|TODO|TODO|TODO|
|[LoraAutoTrigger](https://github.com/idrirap/ComfyUI-Lora-Auto-Trigger-Words.git)|โ|TODO|โ|TODO|TODO|TODO|
|[MagicClothing](https://github.com/frankchieng/ComfyUI_MagicClothing.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Manager](https://github.com/ltdrdata/ComfyUI-Manager)|โ|โ|โ|TODO|TODO|โ|
|[Marigold](https://github.com/kijai/ComfyUI-Marigold.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Masquerade Nodes](https://github.com/BadCafeCode/masquerade-nodes-comfyui)|โ|โ|โ|TODO|TODO|TODO|
|[Math](https://github.com/evanspearman/ComfyMath.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Mixlab Nodes](https://github.com/shadowcz007/comfyui-mixlab-nodes.git)|โ|TODO|โ|TODO|TODO|TODO|
|[MoonDream](https://github.com/kijai/ComfyUI-moondream.git)|โ|TODO|โ|TODO|TODO|TODO|
|[MotionCtrl](https://github.com/chaojie/ComfyUI-MotionCtrl)|โ|TODO|โ|TODO|TODO|TODO|
|[MotionCtrl-SVD](https://github.com/chaojie/ComfyUI-MotionCtrl-SVD)|โ|TODO|โ|TODO|TODO|TODO|
|[MTB](https://github.com/melMass/comfy_mtb.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Noise](https://github.com/BlenderNeko/ComfyUI_Noise)|โ|โ|โ|TODO|TODO|TODO|
|[NormalLighting](https://github.com/TJ16th/comfyUI_TJ_NormalLighting.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Perturbed-Attention](https://github.com/pamparamm/sd-perturbed-attention.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Portrai Master](https://github.com/florestefano1975/comfyui-portrait-master.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Power Noise Suite](https://github.com/WASasquatch/PowerNoiseSuite)|โ|TODO|โ|TODO|TODO|TODO|
|[Prompt Composer](https://github.com/florestefano1975/comfyui-prompt-composer.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Prompt MZ](https://github.com/MinusZoneAI/ComfyUI-Prompt-MZ.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Prompt Reader](https://github.com/receyuki/comfyui-prompt-reader-node)|โ|TODO|โ|TODO|TODO|TODO|
|[PuLID (cubiq)](https://github.com/cubiq/PuLID_ComfyUI.git)|โ|TODO|โ|TODO|TODO|TODO|
|[QR](https://github.com/coreyryanhanson/comfy-qr)|โ|โ|โ|TODO|TODO|TODO|
|[OneButtonPrompt](https://github.com/AIrjen/OneButtonPrompt)|โ|TODO|โ|TODO|TODO|TODO|
|[ReActor](https://github.com/Gourieff/comfyui-reactor-node)|โ|TODO|โ|TODO|TODO|TODO|
|[ResAdapter](https://github.com/jiaxiangc/ComfyUI-ResAdapter.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Restart-Sampling](https://github.com/ssitu/ComfyUI_restart_sampling)|โ|โ|โ|TODO|TODO|TODO|
|[Roop](https://github.com/Navezjt/ComfyUI_roop.git)|โ|TODO|โ|TODO|TODO|TODO|TODO|
|[rgthree](https://github.com/rgthree/rgthree-comfy.git)|โ|TODO|โ|TODO|TODO|TODO|
|[SD-Latent-Interposer](https://github.com/city96/SD-Latent-Interposer)|โ|TODO|โ|TODO|TODO|TODO|
|[SDXL_prompt_styler](https://github.com/twri/sdxl_prompt_styler)|โ|โ|โ|TODO|TODO|TODO|
|[SeargeSDXL](https://github.com/SeargeDP/SeargeSDXL)|โ|โ|โ|TODO|TODO|TODO|
|[Segment Anything](https://github.com/storyicon/comfyui_segment_anything.git)|โ|TODO|โ|TODO|TODO|TODO|
|[StabilityNodes](https://github.com/Stability-AI/stability-ComfyUI-nodes)|โ|โ|โ|TODO|TODO|TODO|
|[SUPIR](https://github.com/kijai/ComfyUI-SUPIR.git)|โ|TODO|โ|TODO|TODO|TODO|
|[TiledDiffusion](https://github.com/shiimizu/ComfyUI-TiledDiffusion)|โ|TODO|โ|TODO|TODO|TODO|
|[TiledKSampler](https://github.com/BlenderNeko/ComfyUI_TiledKSampler)|โ|โ|โ|โ|TODO|TODO|
|[TinyTerra](https://github.com/TinyTerra/ComfyUI_tinyterraNodes.git)|โ|TODO|โ|TODO|TODO|TODO|TODO|
|[ToonCrafter](https://github.com/AIGODLIKE/ComfyUI-ToonCrafter.git)|โ|TODO|โ|TODO|TODO|TODO|TODO|
|[TripoAPI](https://github.com/VAST-AI-Research/ComfyUI-Tripo.git)|โ|TODO|โ|TODO|TODO|TODO|
|[UltimateSDUpscale](https://github.com/ssitu/ComfyUI_UltimateSDUpscale)|โ|โ|โ|TODO|TODO|TODO|
|[Vextra Nodes](https://github.com/diontimmer/ComfyUI-Vextra-Nodes)|โ|โ|โ|TODO|TODO|TODO|
|[Video Matting](https://github.com/Fannovel16/ComfyUI-Video-Matting.git)|โ|TODO|โ|TODO|TODO|TODO|
|[Visual Style Prompting](https://github.com/ExponentialML/ComfyUI_VisualStylePrompting.git)|โ|TODO|โ|TODO|TODO|TODO|
|[VLM Nodes](https://github.com/gokayfem/ComfyUI_VLM_nodes.git)|โ|TODO|โ|TODO|TODO|TODO|
|[WAS Suite](https://github.com/WASasquatch/was-node-suite-comfyui)|โ|โ|โ|TODO|TODO|TODO|
|[WD14-Tagger](https://github.com/pythongosssss/ComfyUI-WD14-Tagger)|โ|โ|โ|TODO|TODO|TODO|
|[zfkun](https://github.com/zfkun/ComfyUI_zfkun.git)|โ|TODO|โ|TODO|TODO|TODO|
The above only includes translations for the UI. If you are a developer and need me to help you translate your interface, you can go directly to the [ComfyUI Plugins List](https://github.com/WASasquatch/comfyui-plugins) to add your custom node project, or send an issue, as long as I can see it, I will translate it (it will take some time)
## How to install
AIGODLIKE-COMFYUI-TRANSLATION is equivalent to a custom node, you can use any method you like, just put it in folder custom_nodes
Then run:
```sh
cd ComfyUI/custom_nodes
git clone https://github.com/AIGODLIKE/AIGODLIKE-COMFYUI-TRANSLATION.git
```

## How to use
Launch ComfyUI and open the menu. Click on the language option to switch languages.

## How to add other languages๏ผtranslator๏ผ
1. Create a new 'Language Name' folder in the plugin directory (e.g. example folder)

2. Find the LocaleMap.js file and add the language code with the same name as the first step folder in it

```js
export const LOCALES = {
"zh-CN": {
"nativeName": "ไธญๆ",
"englishName": "Chinese Simplified"
},
"en-US": {
"nativeName": "English (US)",
"englishName": "English (US)"
},
"example": {
"nativeName": "exampleDisplayName",
"englishName": "enName"
},
}
```
3. After completing the above two steps, restart the ComfyUI service to find the 'exampleDisplayName' language type in the 'AGLTranslation language' settings bar

## How to add custom node translations๏ผtranslator๏ผ
1. Translation files are currently divided into three types
1. Node information translation (including node name, node connector, node component) corresponding translation file `Your language folder/Nodes/somenode.json`
2. Node classification information (used for right-click the new node menu) corresponds to the translation file `Your language folder/NodeCategory.json`
2. Menu information (including resident menu, settings panel, right-click context menu, search menu, etc.) corresponds to translated files `Your language folder/Menu.json`
2. Node information translation can be placed in multiple JSON files under 'Your language folder/Nodes/' based on different nodes
3. All translation files are in JSON format, please fill in strictly according to the JSON file format
### Translation examples
1. Node Translation Format
```json
{
"KSampler": {
"title": "KSampler[example translation]",
"inputs": {
"model": "ๆจกๅ",
"positive": "ๆญฃๅๆ็คบ่ฏ",
"negative": "ๅๅๆ็คบ่ฏ",
"latent_image": "ๆฝ็ฉบ้ด"
},
"widgets": {
"seed": "้ๆบ็ง",
"control_after_generate": "่ฟ่กๅๆไฝ",
"steps": "ๆญฅๆฐ",
"cfg": "CFG",
"sampler_name": "้ๆ ทๅจ",
"scheduler": "่ฐๅบฆๅจ",
"denoise": "้ๅช"
},
"outputs": {
"LATENT": "ๆฝ็ฉบ้ด",
}
},
"Load VAE": {}
}
```
2. Node classification translation format
```json
{
"Add Node": "Add Node[example]",
"Add Group": "Add Group[example]",
"Search": "Search[example]",
"Queue size:": "Queue size[example]:",
"Queue Prompt": "Queue Prompt[example]",
"Extra options": "Extra options[example]"
}
```
3. Menu information translation format
```json
{
"conditioning": "conditioning[example]",
"latent": "latent[example]",
"loaders": "loaders[example]",
"image": "image[example]"
}
```
## Limitations
1. Supports direct switching of any language node to the target language, but will lose custom names
2. A small portion of options that use Enum type data cannot be translated

|