MultilingualGH - plugin for translating component names

MultilingualGh adds component name translations ontop of the component, this is meant as an educational tool to help ease the learning process of non-native-english users.

This plugin originally took inspiration from Bifocals, and later from Sunglasses, so you’ll see a lot of similarities.
image image

The main flair that I’ve added is the ability to display other languages. Translations are listed in standalone fies in either JSON or pure text format. These translation files are seperate from the plugin, so you can decided which translations files to download and use.

Originally this is something I only share with my students, but I think it’s at a point where it’s stable and versatile enough that I’m comfortable with sharing it publically.
I do still have some features planned, though I’m not sure when I’ll have time to add it in, so stay tuned!

It’s available for download from YAK (package manager), Food4Rhino and github

Source code is also open source on github.
Also on github are the instructions on how to use the translation files and the plugin itself

*Side note: I’ve not included any translation files with the plugin itself to keep the size down, and to let users have options. You’ll have to download translations separately from github (or create your own).

While the development of this plugin is more around the usage for my teachings, if you use the plugin and have thoughts and/or have found bugs, please do let me know below or open an issue on github, and I’ll try to work on it when possible thanks.

Just sharing my work with everyone, my apologies if this isn’t the correct place to share.


Great job! Really important work. Maybe the plugin itself can support multiple languages too?

:wink: I hope more and more plugins may have built-in multilingual support


that’s a good idea, never thought of making the plugin itself multilingual.
any recommended method on how best to do it?
I took a look at pancake and wow it’s impressive, how do i install language packs for it?

Visual Studio Resources. [better tool to manipulate it] That’s what I did. But due to the natural of Grasshopper, you may need to do some manual assembly resolving.

:shushing_face: I haven’t completed most other language packs though.

1 Like

quick question, how would users install a language pack with ResXManager?
My understanding is that resource files are hardcoded at compilation?

I’ve implemented UI translation using the most basic way I can think of, using static class properties, it’s probably not the best, but I only have 16 UI elements that can be translated, so it’s all good.


VS would also compile the resources and output extra DLL files in the corresponding folder (marking the language). One language (neutral language, usually English) is hardcoded into the main assembly.