Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there a naming convention for locale-specific static files?

I have some static resources (images and HTML files) that will be localized. One piece of software I've seen do this is Apache, which appends the locale to the name; for example, test_en_US.html or test_de_CH.html. I'm wondering whether this naming scheme is considered standard, or whether every project does it differently.

like image 784
DNS Avatar asked May 07 '09 20:05

DNS


2 Answers

While there is no documented standard for naming Localized files, I'd recommend using the format filename[_language[ _country]] where

  • language is the ISO-639 2 letter language code
  • territory is the ISO-3166 2 letter country code

For example:

  • myFile.txt (non-localized file)
  • myFile_en.txt (localized for global English)
  • myFile_en_US.txt (localized for US English)
  • myFile_en_GB.txt (localized for UK English)

Why? This is the most typical format used by operating systems, globalization tools (such as Trados and WorldServer), and programming languages. So unless you have a particular fondness for a different format, I see no reason to deviate from what most other folks are doing. It may save you some integration headaches down the road.

like image 117
blahspam Avatar answered Nov 17 '22 12:11

blahspam


While there doesn't appear to a standard conventions as to where in the file name to place them, the international codes for language (e.g. "en") and region (e.g. "en-US") are both very common and very straightforward. Variations I've seen, excluding "enUS" vs. "en_US" vs. "en-US":

  • foo.enUS.ext
  • foo.ext_enUS
  • enUS.foo.ext
  • foo/enUS.ext
  • enUS/foo.ext
  • …ad nauseum

I personally favor the first and last variants. The former for grouping files by name/resource (good for situations in which a limited number of files need localized) and the latter for grouping files by locale (better for situations with a large number of localized files).

like image 39
Ben Blank Avatar answered Nov 17 '22 11:11

Ben Blank