Translating MonitorControl to Your Language! · MonitorControl/MonitorControl · Discussion #637
Dear translators,
thank you for translating MonitorControl to your native language! Your contribution is highly appreciated!
Note
Please note that MonitorControl is no longer in active development. Translations submitted may make into a service/compatibility release eventually - but there is no guarantee. You might want to consider contributing to the localization of BetterDisplay instead. More info here: waydabber/BetterDisplay#2165
Here are some info regarding translation.
Where are the files for the translation?
Translation files are located here: https://github.com/MonitorControl/MonitorControl/tree/master/MonitorControl/UI
If you see your language in the list (for example the folder hu.lproj contains the Hungarian translation), then you are in luck - you only need to edit the following files in the language folder via Github's own web interface to update an existing translation and then create a pull request:
Localizable.stringsMain.stringsInternetAccessPolicy.strings
IMPORTANT: All three files must be translated!
If you do not see your language, then you have two options:
- Either download Xcode and checkout the project, add a new language and then edit the source files (see the screenshot below) and then commit the changes and create a pull request (this method is more suitable for developers).
- Simply make a copy of the English defaults from here and complete the translation using your preferred text editor (this can be Xcode but you can use BBEdit or any text editor you like) and attach the translated files to this discussion stating the language you want to add and the @MonitorControl/dev team will add it to the project.
How to translate?
Making the translation is very simple. Just edit Localizable.strings, Main.strings and InternetAccessPolicy.strings and change the English text to the desired text in the target language.
- In the
Localizable.stringsandInternetAccessPolicy.stringsfiles the text after the equation sign should be translated, making sure that the quote signs remain intact and no quote signs are used inside the translated text:
- In the
Main.stringsfile you also need to change the text after the equation sign (the format is a little bit different).
The screenshots are from Xcode but you can use your own text editor as mentioned or Github's own editor. You can also review existing completed translation files to get the idea.
How to translate the custom keyboard shortcut box?
The texts for the custom keyboard shortcuts are not available in MonitorControl's repository so these will be left out of the translation.
The custom keyboard shortcuts are handled by a different repository, KeyboardShortcuts, so localizations can be added there. It is optional, but since it is easy to do (only a few lines of text), we recommend contributing to that repo as well:
https://github.com/sindresorhus/KeyboardShortcuts/tree/main/Sources/KeyboardShortcuts/Localization
For more information on how to proceed with this, see this: https://github.com/sindresorhus/KeyboardShortcuts#localization
Once the localization is accepted by the owner of that repository, it will be automatically incorporated into MonitorControl as well upon the next version.
How to try out my translation?
This is optional! You might want to build the app in Xcode (see README.md for instructions) and build the app to see if your translation works well (text is not clipped, etc).
Translation of version 4.0.0
- Translations from v3.0.0 was carried over but due to the number of interface changes over 80% of the interface must be retranslated.
- We will probably to remove incomplete translations from v4.0.0 final (but will add back them later when they are completed).
- Please be prepared that the translation work might take up about 1-2 hours due to the amount of text to be translated. But keep in mind, you help a lot of users with this, your contribution and work makes a difference!
The current list of completed translations for v4.0.0 is the following:
- English - base language
- Chinese - thanks to @dev-coco, @anmoliyang
- Chinese (Traditional, Taiwan) - thanks to @stiiveo, @dororojames
- Czech - thanks to @isametry
- Dutch - thanks to @JoniVR
- French - thanks to @the0neyouseek
- German - thanks to @jajoho, @curana
- Hungarian - thanks to @waydabber
- Italian - thanks to @picov
- Korean - thanks to @zzulu
- Polish - thanks to @Zbynius
- Spanish - thanks to @OliverCG
- Turkish - thanks to @mennan, @ozkanozcan



