Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stop using Transifex for abbreviations #1050

Closed
8 tasks done
1ec5 opened this issue Jan 20, 2018 · 3 comments
Closed
8 tasks done

Stop using Transifex for abbreviations #1050

1ec5 opened this issue Jan 20, 2018 · 3 comments
Labels
build Issues related to builds and dependency management. topic: instructions topic: localization

Comments

@1ec5
Copy link
Contributor

1ec5 commented Jan 20, 2018

We’ve been shoehorning the list of turn banner abbreviations into Transifex, with the assumption that translators would be more inclined to provide them directly in the same site as all the other localizable strings than to open a pull request here. But the Transifex interface isn’t well suited for tables – indeed, we have to convert from plist to an ad-hoc format just to be flexible about the number of abbreviations that a localization can provide. While we do document the format, the documentation is undiscoverable in Transifex’s interface. Translators have complained about the format in the past.

We could move the abbreviations into the OSRM Text Instructions repository and pull them into this SDK as part of the release process. Instead of pushing the table up to Transifex, we’d periodically encourage translators at Transifex to head over to GitHub to also provide abbreviations. (Google Documents would have a lower barrier to entry for translators, but I think we’d prefer GitHub-style version control.) If JSON would be too unfriendly to translators, OSRM Text Instructions could use CSV format and convert it to JSON at build time.

This would be a first step toward moving the abbreviation functionality to the server side. (Picture the Directions API providing a list of alternative forms for a word, and the navigation SDK choosing whichever one fits.) That would make it possible for the abbreviations to be based on the language of the region through which the route runs, rather than the user’s current system language. It would also make it much easier for the Android navigation SDK to abbreviate words in the turn banner.

/ref #1047 (comment)
/cc @mapbox/navigation @mapbox/guidance

@1ec5 1ec5 added build Issues related to builds and dependency management. topic: instructions topic: localization labels Jan 20, 2018
@bsudekum
Copy link
Contributor

We could move the abbreviations into the OSRM Text Instructions repository and pull them into this SDK as part of the release process.

This sounds like a great first step IMO.

@1ec5
Copy link
Contributor Author

1ec5 commented Feb 22, 2018

We could move the abbreviations into the OSRM Text Instructions repository

The first step is happening in Project-OSRM/osrm-text-instructions#221. Along the way, @danpaz discovered that this SDK’s Brazilian Portuguese localization contained an entirely English abbreviations file, so that file is being omitted.

@1ec5
Copy link
Contributor Author

1ec5 commented Mar 20, 2018

Sent an announcement to Transifex’s Mapbox GL Native team (which is assigned to the iOS navigation SDK project there).

OSRM Text Instructions

Thank you for your help translating the Mapbox Maps and Navigation SDKs! In recent months, we’ve reorganized the iOS navigation SDK project, moving some strings related to guidance instructions to the OSRM Text Instructions project. This way you can translate these strings just once; your translations will appear on the Web and will be read aloud on both Android and iOS.

https://www.transifex.com/project-osrm/osrm-text-instructions/

Some time ago, we added a “localizableabbreviations” resource to the iOS navigation SDK that contained lists of abbreviations. The SDK used these abbreviations to shorten long road names to fit in the top banner. Now these abbreviations have also moved to OSRM Text Instructions. Please note that, although OSRM Text Instructions has a Transifex project, we’re managing translations of the abbreviations in JSON format on GitHub, not Transifex:

https://github.com/Project-OSRM/osrm-text-instructions/tree/master/languages/abbreviations/

GitHub has an online JSON editor, so you can add and update your language’s abbreviations without leaving your browser. If you experience difficulty editing the abbreviations on GitHub, please open an issue and we’ll work with you to complete the process.

Here’s a complete guide to adding or updating your localization of the iOS navigation SDK and OSRM Text Instructions:

https://github.com/mapbox/mapbox-navigation-ios/blob/master/CONTRIBUTING.md#adding-or-updating-a-localization
https://github.com/Project-OSRM/osrm-text-instructions/blob/master/CONTRIBUTING.md#adding-or-updating-a-localization

If you have any questions, please reply to this announcement, open an issue in one of the repositories below, or send me a message directly.

https://github.com/mapbox/mapbox-navigation-android/
https://github.com/mapbox/mapbox-navigation-ios/
https://github.com/Project-OSRM/osrm-text-instructions/

Thanks again!

The Mapbox Navigation Team


We’ve not only stopped managing abbreviation translations in Transifex, but we’ve also moved much of the abbreviation functionality to the server side, which was the impetus for this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues related to builds and dependency management. topic: instructions topic: localization
Projects
None yet
Development

No branches or pull requests

2 participants