Standard fallback languages for translation - translation

I have an app that's translated into ~10 languages. Of course we try to keep the translations up-to-date but it's never perfect, many are community-contributions, and we often release updates with translations that are only at various levels of (in)completeness (say 80%).
So missing translations are a fact of life. By default gettext falls back to the source language (English) when a translation is not available.
I have translations for pt_PT, pt_BR, and es_ES among others. In that case I think it would be preferable to fall back
from pt_PT to pt_BR to es_ES and only then english;
from pt_BR to pt_PT to es_ES and only then english;
from es_ES to pt_BR to pt_PT and only then english;
from any other language to english.
My questions are
Is this culturally appropriate?
Is this in any way "worse" than simply falling back to english (as now)?
Is there any standard list of fallback locales like this? "worst-case but better than english"
I saw gettext: How to fall back to the base language? talks about fallback Czech->Slovak->English and Gettext fallbacks don't work with untranslated strings talks about fallback Spanish->English->Russian.

The exact answer depends on how exactly you are retrieving translations.
If you are using a GNU gettext compatible framework, setting the environment variable LANGUAGE, maybe in combination with LANG. Try this:
export LANGUAGE=pt_BR:pt_PT:pt:es_ES:es:en
export LANG=pt_BR
You can find more details in the file ABOUT-NLS which gets installed with internationalized packages, or online for example at http://www.sensi.org/~alec/locale/other/about-nls.html.

Related

Set Hindi as locale in VSCode

I'm unable to set hindi as a locale in VSCode.
I know that it is added in the list of community driven languages as suggested in
https://github.com/Microsoft/Localization/wiki/Visual-Studio-Code-Community-Localization-Project
However, I can't understand how to include and use it in VSCode.
Kindly help with the steps required to add the same.
Btw, there is no hindi language pack available in the marketplace,is there some other way to get it?
As far as it stands there is no other way to get it other than marketplace unless the following is published as stated here on point no. 5:
After translation coverage reach 50% and below files are fully localized, we will publish language pack of this language in Marketplace. We encourage community members to publish language pack by yourself.

Progress 4gl - Dutch Language Conversion to English

We are working on a product which is developed using progress 4gl but with Dutch naming conventions.
Source code has (naming convention, procedure description, on screen messages, table/fields/variable) all in Dutch language. Could anyone suggest if there is some way to map the table/fields to their corresponding English names?
We have tried to google but we didn't reach to a fixed solutions. All suggestions are highly appreciated.
For texts (labels, strings etc) Progress offers translation software.
Take a look at the documentation and if it seems good contact your Progress salesperson for a demo (the translation package is a separate license).
Linking to the 11.3 version of the documentation. If you need to look at another version search for it on community.progress.com
Visual Translator
Translation Manager
The source code is a different thing. Perhaps you can COMPILE with the XREF and LISTING options - perhaps that will create output that you somehow can run through a translator (after some parsing).
COMPILE file.p [SAVE]
XREF xref-file.txt [STRING-XREF string-xref.txt] LISTING listing-file.txt.
You can also replace XREF with XML-XREF and a XML-file will be created instead of a flat text file.
Check in on documentation (link above) on formats for these files.

Searching Chinese in Sitecore using dtSearch/Lucene

Were looking at building a Chinese site (Traditional and Simplified) in Sitecore and was wondering where the possibilities for supporting the search.
From what I have been able to gather so far:
Lucene doesn't support it out of the box but can be extended through development or third party to allow Chinese search
dtSearch should support it but from what I've been able to find it is unreliable/untested.
Does anyone have any experience using Chinese language in Sitecore and performing searches?
Has anyone had any experience implementing Chinese into Lucene?
Any help would be appreciated.
Cheers,
Phil
Cove Enterprise Search supports Chinese and integrates well with Sitecore. You should double check their full language support list if you have other needs.
http://www.coveo.com/en/technology-platform/coveo-platform-version-6-5/connectivity/web-site-search/sitecore-cms
Supported languages on Page 4:
http://www.coveo.com/~/media/Files/Support/Knowledge-Base/information-articles/Administration-Tool-Help_Coveo-Enterprise-Search6.ashx
Sitecore 7 ContentSearch features could help you out of the troubles; the search functionality supports many different languages including Chinese, Arabic, and non-UTF based characters.
I have tried to search Chinese (Traditional and Simplified) in sitecore 7 backend search tab. If you have played sitecore 7, you may notice that every content item has a new search tab. You can try to create a content item with 2 different language versions (zh-TW, zh-CN: Traditional, Simplified), then search some Chinese keyword in the search tab, it works fine.
For different language analyzers configuration, please find the Sitecore.ContentSearch.Lucene.DefaultIndexConfiguration.config in the App_Config/Include folder, there already defined many language analyzers for searching, you can also add the Chinese analyzer (Luncene.Net.Analysis.Cn.ChineseAnalyzer).
There is a "developer's_guide_to_item_buckets_and search_sc7" document on the sdn site(http://sdn.sitecore.net), it provides more details.
Hope these can help you.

Are there localized resource strings available for the JCL (JEDI Code Library)?

Is there a translation/localization sub-project for the JEDI Code Library?
I'm especially looking for German, French and Italian versions of JclResources.pas and JclVclResources.pas (and might be able to contribute to a German translation myself). Is anything like that already in the works or did I even just fail to find it in the original sources?
So far Google has turned up nothing...
I don't know more than what I understand from their Contributing page; it is done through the jvcl.po file that you can get from the repository and that should be installed under \locale :
[...]
Localizing
If you speak another language than english, you can contribute by translating the texts in JVCL into other language(s) you know.
Translating JVCL is a matter of creating a copy of the jvcl.po file in the \locale folder of the JVCL installation and translate it using poEdit (http://poedit.sourceforge.net). Once you are done, you can upload the translated po file to either our bug tracker or to the jedi.binaries newsgroup and a JVCL developer will take care of adding it to CVS.
As far as I have been able to determine there are no translated resource strings available to date.

What is the standard format for localised resource files on different development platforms?

When developing in .Net, the framwork provides resx files as the standard way of storing localised resources (e.g. tranlsations of UI text).
I would like to know if there is a standard format for this in other development platforms (e.g. Java, RoR, etc.) and what that format is.
Thank you!
Please limit each answer to one development technology (e.g Java/C++/PHP etc.)
Java uses Properties, which are key-value pairs.
They can be serialized to the following two formats:
.properties
foo=bar
.XML
<entry key="foo">bar</entry>
Like Java, Adobe Flex also uses ResourceBundles that are serialized to .properties files
See http://www.freebsd.org/doc/en/books/developers-handbook/posix-nls.html
There is a standard, called POSIX, that applies to just about every other non-Windows operating system.
See http://www.php.net/manual/en/book.intl.php for the PHP-specific implementation of internationalization.
Large translation vendors accept the TMX file format for interchange of translation strings. Because they only have to deal with a standard xml file rather than strings embedded in controls, the amount of work these vendors have to do is reduced and so are their fees.
The standard way to do this on Linux is to use the gettext library, which stores its translations in .po files.
Cocoa applications (Mac/iPhone) are distributed as bundles (essentially: folders but with a known file-ish type). Inside a bundle, you can provide copies of strings files or other localized resources in a locale-specific subfolder. The Xcode provides IDE support for this, and the Cocoa frameworks provide many methods to conveniently fetch these resources.
See http://developer.apple.com/mac/library/documentation/MacOSX/Conceptual/BPInternational/Articles/InternatAndLocaliz.html for details.

Resources