Localized folder names are a clusterfuck

topic posted Sun, April 20, 2008 - 9:05 AM by  Jory
In February Daring Fireball linked to Sven-S. Porst's discussion about localized application names in Mac OS X:

At the time, I thought the discussion interesting and was glad he linked to it. Now, having worked in Leopard with my fiancee's computer localized into Norwegian Bokmål, I'm finding that localized apps are just the beginning of what is not only inconsistent, but a total clusterfuck for the user.

I've been setting up a network backup solution for my fiancee's new MacBook Pro and decided to use Retrospect because of its ability to backup to an FTP server. My backup strategy is simple: I perform an initial backup on my GigE network and let her machine perform nightly incremental backups from whatever internet connection it is attached to. Since she sometimes adds movies to her machine, I decided it would be best if the nightly backup ignored her Movies directory and only tried to back that up once a week.

Retrospect allows me to specify what folders to include or exclude, based on a number of things, including path. But what is the path to the ~/Movies directory on a localized computer?

In the Norsk Bokmål-localized Finder, the OS X reserved folders are renamed thusly (not a complete listing):

* Applications --> Programmer
* Desktop --> Skrivebord
* Documents --> Dokumenter
* Downloads --> Nedlastinger
* Library --> Bibliotek
* Movies --> Filmer
* Music --> Musikk
* Pictures --> Bilder
* Public --> Felles
* Sites --> Websider
* Users --> Brukere

So to the user, everything in the Finder has a totally different name than is generally considered standard. If I jump into the Terminal, everything appears in English instead of the chosen language, so the path does indeed seem to be /Users/julie/Movies/. But if I use the Finder's "Go to..." function, it's /Brukere/julie/Filmer/.

That the Finder's "Go to..." feature uses the localized names makes sense, in general, but which path is Retrospect seeing? I have no way of knowing for sure. How is the user to know which path to trust if they're not using English? And if a non-English speaker is using their native language, how are they to know what the *real* name of a localized folder is?

To make it a little more interesting, try going into Safari and choosing "Open..." from the File menu. Type Shift-Command-A to go to the Applications folder. Aside from the insanity that the 'A' in Shift-Command-A doesn't relate to "Programmer" (the Norsk translation), the toolbar on the left of the Open dialog displays localized folder names, but the folder path popup control says "Applications" until I click on it, at which time it suddenly changes to "Programmer"!

Take it another step further. Click on the user's home folder in the left-side toolbar. You'll note that everything is localized. Click on "Bilder" in the dialog in order to navigate into the Pictures folder and yet again the popup control states the English version instead!

Now, I do the same thing with Retrospect, which is not only non-localized, but is PowerPC code running in Rosetta. The application itself is not localized at all, but the Open dialog is. And even the popup control is properly populated with the localized names Applications and Documents.

So which path does Retrospect see and how is the user to know?

Certainly, part of the problem is Retrospect's UI doesn't let you select the folder and instead requires the user to type in the path from their own knowledge, but even Apple's applications can't get localization straight.

There's one more major aspect to this clusterfuck that occurred to me a few minutes later: duplicate file/directory names.

Can I create a directory named "Desktop" in ~ when the Desktop folder is called "Skrivebord"? Can I create a "Skrivebord" directory when there's already one in the home directory?

The answer is simple and the results just add to the confusion of the clusterfuck: I cannot create a folder called "Desktop" in ~ even when the localized one is called something else, as I am told by the Finder (in Norwegian, in this case) that there is already a folder with the same name! Of course, the user cannot see this folder name being used, so there's a great source of confusion.

But it gets better! I *can* create a directory called "Skrivebord", which leaves me with TWO directories of the same name within the same folder.

If that's not confusing, i don't know what is!
posted by:
SF Bay Area
  • Re: Localized folder names are a clusterfuck

    Sun, April 20, 2008 - 10:24 AM
    Alright, but say you are a developer creating an application that needs to access a reserved folder... say the user's desktop. You need to code your application to have that fixed path, but also need your application to work over any of the languages installed.

    There's a reason why English is not a delete-able language.
    • Re: Localized folder names are a clusterfuck

      Sun, April 20, 2008 - 2:35 PM
      The problem is that localized folder names are incredibly confusing. I'm not casting aspersions on the fact that English is the underlying language, but that the current implementation, while well-intentioned, is very very poorly done.
      • Re: Localized folder names are a clusterfuck

        Mon, April 21, 2008 - 3:30 AM
        true Jory ,
        uniX is showing it's age as a ≠ 1986 developed operating system now
        aiX Version 1, was introduced in 1986 for the IBM 6150 RT workstation ,
        and IBM has more - or - less abandoned it . Where is hpuX these days ?
        linuX aside , we need a new O S - not Java® either. Let's hope Apple®
        will sparc , [ pun in tended =] , some thing new with better chipsets from
        their traditional sources . The IBM \ Motorola PowerPC consortium
        brought them v e r y far along .for 15 years any way . The Mars NASA Rovers
        are that type of chipset , and they still run around up there

        • Mel
          offline 0

          Re: Localized folder names are a clusterfuck

          Mon, April 21, 2008 - 4:54 PM
          Stosh, this problem is mostly unrelated to the underlying operating system, and even less a problem with any hardware. It's a design decision that picked a middle ground when middle ground meant doing it halfway. In order to implement localization all the way, someone would have to spend some time making items in the filesystem act as though they had multiple names, and making it transparent for applications, even those created without localization in mind. This would be... cumbersome, since applications tend to assume one name per file. And it wouldn't eliminate all the confusions, either, because now instead of just non-English localizations having seemingly non-existant items block renaming, all of them would. The less elegant solution is to stop pretending folders and applications are named things that they aren't. This isn't ideal, either, since it inserts English names into an otherwise localized interface, which is especially unfortunate for users of non-Latin alphabets (and non-alphabets), who may have some difficulty identifying files in a script they're not used to. But it does have the advantage of making sure when you or applications go looking for something, it's always in one place, and there are no mysterious non-files preventing you from naming things what it would otherwise seem you should be able to name them.
    • Re: Localized folder names are a clusterfuck

      Tue, April 22, 2008 - 3:16 AM
      Nope. Using hardcoded paths sucks - why is it required my ever-growing movies folder resides on the (non-terabyte) buildt-in harddisk?

      In OS 9 there was an API called folder manager exactly for that reason - retrieving folders like e.g. the "Movies" folder. Of course, most "modern" developers forgot (or never learned, as it is "evil" Carbon land) it's existence and prefer to concatenate ~ with Movies/.
  • Re: Localized folder names are a clusterfuck

    Tue, April 22, 2008 - 3:24 AM
    It gets even better. If you move out some of the default localized folders out of our home directory (like your huge music directory), install a new system on another partition and migrate the user account, there is no chance to get localized folder names back.
  • Re: Localized folder names are a clusterfuck

    Tue, April 22, 2008 - 10:03 AM
    I remember in MacOS 7, there was an interesting technique that Apple used.

    Inside the System folder, the Arabic version of the OS used proper Arabic names for everything. As far as I could tell, they were simply normal folders, with 100% Arabic names.

    On most people's systems, there would also be a "Preferences" folder in there - Latin, English name. It would have one to three files inside of it.

    There was a system call you could use to get a handle of some sort of the Preferences folder. That was the right way to do things. The wrong was was to get a handle to the System folder and then hard-code "Preferences" as the sub-folder. A few apps on everybody's system would do that.

    Another interesting pathname-related problem was a bug in an older Version of Word, I think it was Word 4-something. If you had a floppy with the same name as your hard drive, it would put the file on your hard drive no matter where you navigated to in the Save dialog.

    In this case it seems clear that Microsoft used the Save dialog to generate a pathname and then passed that to the OS, rather than grabbing a file handle.

    Yet another interesting issue came up with Windows and the 8+3 / long file name switch. "private personal notes.txt" was stored on disk with two names, "privat~1.txt" and the long name. If you had a web server configured so that any file starting with "private" was password protected, you would be able to get the file "privat~1.txt" without a password since it wouldn't match.

    Can you reboot into different languages on OS X? I'm fairly sure that OS 7 didn't allow that, so they could get away with simply changing folder names.

    Perhaps some sort of symbolic or hard links would be appropriate here. The current solution seems like the sort of convoluted hack that I expect out of Microsoft, with guaranteed annoying problems.
    • Re: Localized folder names are a clusterfuck

      Tue, April 22, 2008 - 12:32 PM
      > Can you reboot into different languages on OS X? I'm fairly sure that OS 7 didn't allow that, so they could get away with simply changing folder names.

      Yep, all you have to do to switch languages is go to System Prefs -> International and choose the languages you want. You can order them in preference, so you'll get whatever languages are available for each app.

      Prior to OS X, localization of the OS was left to having that language's specific installer. ADC members received discs of all language System installers so they could use them for development and testing.

Recent topics in "Mac OS X"