There are many cases when you have similar content in multiple strings. 

Button “Cancel” is a good example. Usually project have many different keys with the value "Cancel" from all the places where it appears.

Another example is alert dialogs. You might want to use the text of the actions from the dialog as a part of the confirmation message.

To save some of your work, we offer key referencing. By changing a referenced translation, you will instantly update the same values in the referring translations.

Key is referenced using key_id.

[%key_id:1234%]


Reference can be used as a part of a sentence.

Hello, [%key_id:1234%]


Multiple references can be used as well.

[%key_id:12%], [%key_id:34%]!


You can get these snippets in the Clipboard of the key you want to reference.

Example

Let's image a confirmation dialog.

In order to reference the text of the actions you need to set the translation for the title key to the following:

Would you like to [%key_id:3%] or [%key_id:2%]?

Once you add references to your translation, they will be immediately available for preview.

You can Ctrl+Click (Cmd+Click on macOS) on the reference and a new tab with project-wide key search will open.

Cross-project referencing

You can reference a key from other projects in your team.
However, in order to properly preview or export translations, you should have access to the project where the referenced key comes from.

Linking duplicates using referencing

First, switch to language duplicate find view. To do so, click small language triangle on the dashboard and choose "Show duplicates".

In the duplicates view, there is an option to link the keys one by one (make sure to select the "main" one first) or link 'em all using the button on top.

Referencing all languages

So, you are done with base language duplicate hunting and set references for all duplicate translations. You can either repeat the process language by language, or use mass-action in the editor in order to apply it to all languages. Go to the editor, select all keys and choose Cross-reference all languages... from the floating box. This would look up all non-base languages of these keys and in case the content is empty and base language translation is linked to a key, it would do the same for all other languages.

Did this answer your question?