Translating the CollectionSpace User Interface
Overview
CollectionSpace was built to handle Unicode, ensuring that a full range of languages are supported, from the user interface (UI) all the way down to the database. You can enter your museum information, or metadata, into CollectionSpace in any language or combination of languages.
CollectionSpace also separates out record labels, field labels, and nearly all other text used in its user interface (UI) into configurable resources to help facilitate translation. Existing versions of the software come standard with an English-language UI, but you can readily translate its text into other languages. Translation projects are an excellent opportunity for those who are not software developers to contribute to the community!
GitHub
CollectionSpace uses GitHub as its code repository. Using just a browser, it's possible to check out the source code for a CollectionSpace release, copying it into your own user or organizational account on that system, edit the appropriate files, and save the changes - directly in GitHub - for your own or others' use. (As an alternative, if you're comfortable with them, there are also desktop tools available for making these edits, which allow you to save changes back to your GitHub account.)
A list of relevant files to edit, when creating your translation, appears in the next section, below; just remember to substitute your own GitHub user name in the URL there.
Getting started
To sign up for a GitHub account, go to github.com.
Create a username and password, and then select a free account. You can create either a personal account (the simplest way to get started) or an organizational account.
Once you have an account, follow this link https://github.com/collectionspace/ui to visit the GitHub page for CollectionSpace's user interface (UI) source code.
Select the "Fork" button at the top right of the page, and you'll have a new copy of the code to work on, within your personal or organizational space on GitHub.
Translating
There are several places in the code where text must be translated. To add your translation, substitute your username into one of the links in the table below, e.g.:
github.com/YOURUSERNAME/ui/blob/master/src/main/webapp/defaults/bundle/core-messages.properties
Once the file is opened, select the edit button, and replace any text with the desired translation. For example,
would become
Once you're happy with your changes, select the green "commit changes" button at the bottom of the screen. This will only commit changes to your own copy ("fork") of the code.
Files to edit
GitHub Link |
Text Affected |
---|---|
https://github.com/YOURUSERNAME/ui/blob/master/src/main/webapp/defaults/bundle/core-messages.properties |
Procedures, Authorities, System Messages, Login, Dynamic lists |
Posting your translation
When you're ready to share your translation with the rest of the CSpace community, you can share the links to the files you've changed via the /wiki/spaces/collectionspace/pages/666276158 and on the Translation Repository page.