gaoluinn

scríbhinní ⁊ deocháin do chuallucht na Gaelainne

previous | next

Microsoft product localisation: background and concepts

Microsoft Corporation makes a wide range of software products (ref) for both the client‑side (the PCs, or workstations, that people actually sit down in front of and use) and the server‑side ('back‑end' computers, more often found in workplaces than in dwelling homes, that tend to be locked away in special rooms and which are never used by anyone to do their work on but which provide support services like backup, network shares, email and mission-critical Internet connectivity).

Linguistic and cultural neutrality

In the past, Microsoft's and, in fairness, a lot of other vendors' products were heavily-based on US English as the core, or even the only, user interface language. Software development could be so culturally and linguistically insular that it was not completely unusual to limit the end-user to character sets that supported only the basic letters, numbers and punctuation marks of US English: no síneadh fadas, no umlauts, no cedillas, no diacritics of any kind. And when I say US English I mean US English. At least as recently as the mid- to late-1980s a consideration in buying a software package or a printer in Ireland or in Britain was whether they could be persuaded to spit out pound signs; that is, Irish or British currency symbols rather than hash signs.

This situation hasn't entirely gone away. To this day, Irish speakers trying, in Ireland, to give some shopkeeper or official their personal details in Irish stand a reasonable chance of being told that 'the computer can't handle the fadas'. In the same way, it is not unknown for point of sale computer systems to force inappropriate English language-specific capitalisation on Irish language names and addresses. No doubt speakers of other minority languages in other countries could tell similar stories. The difference is that these days it is less to do with the abilities of the computers themselves and more to do with the awareness and attitudes of the people programming, configuring and using them. Whatever the reason, so-called 'international characters' and formatting conventions are still a long way from being fully and widely availble on the IT systems of the world even though there's mature technology available to handle them.

Despite this, Microsoft, and other software vendors, are after becoming a way more inclined towards linguistic and cultural neutrality (ref) and some degree of user interface localisation is now available for most, if not all, of Microsoft's current product range — particularly on the client-side. The number of languages supported and the completeness of each localisation varies from product to product but, as we'll see, while quite a few product localisations are only partial and depend on a specified base language (ref) things are after improving tremendously.

Terminology

No more than any other formal discipline, software localisation is loaded with its own specialist jargon. And no more than any other formal discipline, expert opinions sometimes clash. One result of this is that domain-specific terms are occasionally left with multiple or conflicting definitions, and they all in some way authoritative — even within organisations. So for the purposes of this article it might be helpful to bolt-down some of the more common ones.

General terms

Globalisation
Microsoft defines globalisation (ref) as ...designing and coding an application that is culture-neutral and language-neutral, and that supports localized user interfaces and regional data for all users. It involves making design and programming decisions that are not based on culture-specific assumptions.
Internationalisation
Microsoft defines internationalisation (ref) as The process of developing a program core whose feature design and code design don't make assumptions based on a single language or locale and whose source code base simplifies the creation of different language editions of a program.
Localisation
Microsoft defines localisation (ref) as ...the process of translating an application's resources into localized versions for each culture that the application will support.
This definition suffers from a touch of recursion, of course, with 'localisation' being the process of making something 'localised'!
Locale
Microsoft defines a locale (ref) as a collection of language-related user preference information represented as a list of values.
These would be things like user interface language, sort orders, telephone number formats, date and time formats, whether you write from left to right or right to left and so on.
Microsoft also specifies a standard notation (ref) to identify locales: [Locale names generally follow] the pattern <language>‑<REGION>. Here, language is a lowercase ISO 639 language code... REGION specifies an uppercase ISO 3166‑1 country/region identifier. For example, the locale name for English (United States) is "en-US".
The ISO is a separate entity from Microsoft and this notation is in general use in the world of information technology. I'll discuss ISO standards in more detail shortly.

Microsoft-specific terms

Multilingual User Interface (MUI)
Wikipedia defines Multilingual User Interface (ref) as a Microsoft technology for Microsoft Windows, Microsoft Office and other applications that allows for the installation of multiple interface languages on a single system.
Language Pack (LP)
This can be a generic term for any software package that adds one or more localisations to some other software package.
However, it is also used to refer to a particular class of Microsoft localisation packages. It failed me to find an official Microsoft definition but this FAQ page (ref) comes close, telling us that The main difference [between a Language Pack and a Language Interface Pack] is in the level of localization... LIP packages provide the desktop user with the most frequently accessed user interface and basic user assistance support... In addition, LIP is installed as a language add-on on top of an existing LP... (Catalan LIP can only be installed on top of Spanish or French LP, Welsh LIP can only be installed on top of English LP)... LIP relies on the same resource-loading technology that MUI LP is built on, and installs ontop [sic] of one base LP (in most cases).
So, it seems safe enough to infer that a Microsoft Language Pack is a software package that provides a complete localisation of a specific Microsoft product, and which does not depend on another, underlying, language pack having been installed before it.
Language Interface Pack (LIP)
Microsoft defines Language Interface Packs (ref) as a high-quality, localized "skin" for emerging or minority language markets... Based on MUI technology, LIP provides the desktop user with an approximately 80% localized user experience by translating a reduced set of user interface (UI) elements. LIP is installed on a licensed copy of Windows and has a dependency on a base Language Pack of Windows.
The Celtic language localisation package installers for both Microsoft Windows and Microsoft Office are language Interface Packs (ref).

LPs and LIPs: proprietory software

As far as I know, Language Packs and Language Interface Packs for Microsoft products can only be created by Microsoft itself. I only looked into this briefly though and I intend to go back to it when I get a chance. If I do find out that you can code your own without violating any EULAs or Ts and Cs I'll update this article.

Even if you can though, formal vendor recognition, localisation and support would be a lot more valuable to any minority language than well-meaning homebrew, no matter how good it is — and especially when the vendor's Microsoft. So if a particular localisation of a particular Microsoft product isn't available then it is up to the language community in question to petition Microsoft to create it (and to urge their local or national governments, who probably have a way better chance of being listened to, to petition Microsoft on their behalf). Obviously, the petition that arrives stapled to formal offers of well-organised, highly-qualified, high-quality linguistic support will stand a better chance of succeeding that the petition that amounts to no more than a bare-footed ask.

ISO Notation

ISO-based notation is widely-used in IT, and not only by Microsoft. There are a lot of ISO standards around but ISO 639‑1 (ref) (language codes) and ISO 3166‑1 (ref) (country / territory codes) are particularly important when working with localisation. (ISO 15924 is also a consideration but it is slightly outside our terms of reference.) These can be used on their own or combined to refer to a locale. A locale is neither a language nor a physical location but more of an abstraction that refers to standardised formats for setting down information in the context of the two. For the purpose of this article the locales we're interested in are:

Only countries and regions recognised under certain United Nations criteria are eligible to be listed in ISO 3166‑1. Ireland, Britain and France are included because they're recognised under those criteria as sovereign states (with Britain also being a unitary one) but so-called 'constituent countries' like Scotland, Wales, Cornwall, Brittany and, it must be said, England are not.

The Isle of Man is a British Crown Dependency (ref) but it is neither a part of England nor Britain (nor even the European Union), which is why it isn't 'gv‑GB'. The English language / the Isle of Man would be 'en‑IM' but I'm not sure if this code is in use anywhere, or if it is formally valid in any widley-used notational system.

There are other living Celtic language L1 speech communities in the world. Their locale codes would be as follows although, as with English and the Isle of Man, I'm not sure if they're in formal use. These might surprise some readers:

Microsoft's internal notation breaks from ISO standards in one significant respect, favouring 'United Kingdom' over 'Great Britain', as you'll see if you go into the regional settings of the Windows 8 Control Panel. The ISO prefers 'Great Britain' though, so it is 'xx‑GB' and not 'xx‑UK', although 'UK' is an exceptional reservation (ref) under ISO 3166‑1 alpha-2. This 'GB' / 'UK' notational divide is fairly common and goes way beyond the world of IT.

Of course, 'Great Britain' and the 'United Kingdom' are two different things (ref) anyway, strictly speaking.

32- and 64-bit software

The terms '32-bit' and '64-bit' pop up a fair bit in the localisation of Microsoft products. I'm not going to discuss them in any detail here because they're outside the terms of reference but since most non-techies won't know what they mean, here's a quick explanation.

Software packages sometimes, though not always, come in 32-bit and 64-bit versions. So, for example, there's Windows 7 32-bit and Windows 7 64-bit; Office 2010 32-bit and Office 2010 64-bit; Internet Explorer 10 32-bit and Internet Explorer 10 64-bit and so on. The 32- and 64-bit versions of a software package are very different under the bonnet but are usually identical to use.

In the same way, software add-ons like localisation packages are sometimes released in two versions, and they tailor-made to the main software package. If the main package is 32-bit you have to use the 32-bit add-on; if the main software package is 64-bit you have to use the 64-bit add-on.

There's a standard notation associated with all these bits. Simplied, it goes like this:

Products with Celtic language localisations

This article is concerned only with the localisation of products that Microsoft has created at least one Celtic language localisation package for. These are:

Operating systems
Microsoft Windows 7
Microsoft Windows 8
Web browsers
Microsoft Internet Explorer 8
Microsoft Internet Explorer 9
Microsoft Internet Explorer 10
Office suites
Microsoft Office 2007
Microsoft Office 2010
Microsoft Office 2013

Well, not exactly...

Exceptions and complications

Pensionable versions of Windows and Office

Welsh and Irish localisation packages are available for Windows XP and Office 2003 but these are less than a year away (ref) from entering the non-supported phase of their product support lifecycles (ref). In other words, they're both well on their way to becoming obsolete and so, even though enterprise IT is only letting go by inches (ref), they aren't discussed here. A Welsh localisation package is also available for Windows Vista but it is Windows Vista and so it isn't discussed here either.

Internet Explorer

This is a bit messy.

Windows 7, both 32- and 64‑bit, ships with IE8. If you localise the operating system with a LIP, IE8 gets localised along with it. End of story.

It gets complicated when you upgrade IE on Windows 7 though:

Windows 8, both the 32- and 64‑bit versions, ships with IE10. If you localise the operating system with a LIP, IE10 gets localised along with it. End of story.

Which brings things back to where they started. No doubt there was a reason for all the tally‑ho in Windows 7 but it seems to have settled down now so unless it erupts again when IE11 comes out I'll just leave it where it is.

Office

The Microsoft Office language interface pack overview tells us that (ref) that while Language packs contain localized user interface text for most Office 2010 programs... Language interface packs provide [resources] for five Office 2010 programs: Excel, OneNote, Outlook, PowerPoint, and Word. They do not contain Help/User Assistance. This page seems to have been written when Office 2010 was the current version but I can't find any documentation to suggest that the story has changed since Office 2013 was released. I haven't had a chance to test it for myself.

Sharepoint

I haven't played with localising Sharepoint yet either. The website of the Welsh Language Commissioner provides links (ref) to Welsh localisation package downloads for Sharepoint 2007 and 2010. The link given for Sharepoint 2007 is dead though (last tested 12th September 2013) and it has failed me to find an active one anywhere else.

Microsoft Captions Language Interface Packs

Microsoft Captions Language Interface Packs are available for Scottish Gaelic (ref) and for Breton (ref), and they primarily sourced for Office 2007 but, steps in the right direction as they are, they're not true user interface localisations and so I won't discuss them any more.

Product combinations: what you can wear with what

For the purposes of this article, it can be said that only one version of Windows and one version of Internet Explorer can be installed on any one computer at any one time. I know, if you're a techie you'll be thinking about things like virtualisation, partitioning, GRUB and XP Mode, not to mention all sorts of Registry-hacking black arts. You're right too, but these are all outside this article's terms of reference.

You don't have to have all the various components of Office installed for the Office localisation packages to work. Many people only have Word on their computer, or Word and Excel, or Word and Powerpoint. None of the systems on my own networks have the Office kitchen sink installed but they're all localised.

Microsoft doesn't recommend it but it is possible to install more than one version (ref) of Office on the same machine, provided you have them bought legally and so have the licences. (I'll come back to licences in a minute; they're important.) You can even mix and match Office components from different versions; say, Word 2007 and Excel 2010. If you do have workstations in this condition you'll have to localise each Office version separately but if the truth be told, mixing Office versions is probably something to avoid unless you have a good reason not to.

Localisation installers: file types

Each of the freely-downloadable localisation packages I mentioned earlier comes in the form of a single computer file. To install any product localisation all you have to do is run the appropriate file, one time only and with root privilages, on the computer in question. Microsoft uses different types of files for localisation, depending on the product being localised, and Windows handles each of these in different ways:

exe
Executable files. As opposed to data files, which store information but can't do a bit with it on their own. When exe files are run they execute a programme to make the computer do some specific thing. Software installers are very often packaged in exe files.
Used to localise Office 2003, 2007, 2010 and 2013.
mlc
Microsoft Language Interface Pack Files. Unlike exe files, mlc files aren't executable themselves but provide localisation information to the Language Pack Setup Tool, which is an in-built component of Windows and does exactly what it says on the tin.
Used to localise Windows Vista, 7 and 8.
msi
Windows installer files. Microsoft's proprietory and preferred file format for installing software, particularly over networks. As with mlc files, msi files aren't executable but contain the 'building blocks' needed for installation. The actual 'building work' is done by msiexec, another in-built component of Windows.
Used to localise Windows XP.
msu
Microsoft update package files. Microsoft classifies certain 'add-on' software elements as updates to existing software rather than as software packages in their own right. Again, msu files aren't executable. Rather, they contain information that's used by an in-built Windows component, in this case the Windows Update Standalone Installer, to perform the update.
Used to localise Internet Explorer 9 and 10.

Licensing

The licensing conditions that apply to Language Packs are not the same as those that are applied to Language Interface Packs so remember that all the Celtic language Windows localisations available at the moment are LIPs and not LPs.

Microsoft tells us (ref) that Client language packs need to be licensed to be installed and run on a Windows 7 system... Select editions [of Windows 7] are also licensed to allow more than one language pack on the system at a time. These editions are known as multilingual editions... In Windows Vista and Windows 7, only the Enterprise and Ultimate editions are multilingual.

On the other hand, the same source tells us (ref) that LIPs do not require a licence and can be installed on any genuine client edition of Windows as long as one parent language is present on the system... Corporations and end users can download LIPs from the Microsoft.com download center... LIPs can be integrated in deployment images by OEM, system builders, or enterprises just as any other language pack.

Microsoft also tells us (ref) that If you want to share or redistribute a language pack, you’ll need to download it from the Download Center... Some language packs are sharable and some are not. Use the download links [provided] to download the language packs that can be shared. Although we won't be doing any sharing or redistributing, these are the links referenced in the next section of this article.

previous | next