Soooo close to getting multilingual field labels working!

Ever so close to setting up a method to allow selecting a language to change the field labels. I have ot working to the point it changes the column labels, but Glide has no method to force using the column labels.

I’ve got the language set to Polish and the column labels have changed and now show in the field’s settings, but field labels only use column name when first created.

So, for my method to work, field labels would need to have an option to use the column name. Not unlike how Rich Text can use the column value or have a manually entered value. (Feature request!)

CleanShot 2020-01-12 at 13.31.57

So, how did I get custom field labels?

Setup a Settings sheet

settings sheet

Create a sorted version of the Settings sheet
This is important as the vlookup() function used below requires sorted data.

sorted settings

Create a sheet for the columns for each language, with a column for the active language
The active language column uses uses a vlookup() to the Sorted Settings and arrayformula() to flag the active language true.

Create a sorted version of the Language columns sheet
Sorted on the Active column so it becomes top row for use below

Replace column titles in our main sheet with the top row (not the header row) of the Sorted Language Columns sheet
custom columns

Created a choices sheet with a Language column
(OOPS! Pressed publish before finished writing this! Sorry. Come back in 10 if this message is still here)

Ever so close to setting up a method to allow selecting a language to change the field labels. I have ot working to the point it changes the column labels, but Glide has no method to force using the column labels.

I’ve got the language set to Polish and the column labels have changed and now show in the field’s settings, but field labels only use column name when first created.

So, for my method to work, field labels would need to have an option to use the column name. Not unlike how Rich Text can use the column value or have a manually entered value. (Feature request!)

CleanShot 2020-01-12 at 13.31.57

So, how did I get custom field labels?

Setup a Settings sheet

settings sheet

Create a sorted version of the Settings sheet
This is important as the vlookup() function used below requires sorted data.

sorted settings

Create a sheet for the columns for each language, with a column for the active language
The active language column uses uses a vlookup() to the Sorted Settings and arrayformula() to flag the active language true.

BTW I used the googletranslate($c2, “en”,“es”) function to quickly enter those translations. (“es” is the language to translate to - Spanish in that example). So you could easily populate your language sheet with dozens of languages.

Create a sorted version of the Language columns sheet
Sorted on the Active column so it becomes top row for use below

Replace column titles in our main sheet with the top row (not the header row) of the Sorted Language Columns sheet
custom columns

Create a Settings screen in your app to edit the settings

And create an edit screen for the language setting
Note: This is only setup for editing the language. For multiple settings, it would require more configuration

(The Add button goes to a form for add a new language to the Language choices)

edit language

Then let’s see if it works (changes the column names in the column drop downs)

Language English:

Language Polish:

Perfect!

Now if only Glide had that functionality to force use of the column names for the field labels. :wink:

Inspiration
Even though this is not working completely as desired, I’ve posted it here as it does gives ideas and inspiration for how we can manipulate, massage and use data in sheets to do cool things in Glide.

Lots of tips in the community (or help docs) have inspired me with ideas on how to achieve things. In fact, this was inspired by something I read in the help docs on “frozen rows”.

6 Likes