[lazarus] Localization site
Michal Bukovjan
bukovjan at mbox.dkm.cz
Mon Sep 16 07:33:06 EDT 2002
Mattias Gaertner wrote:
>On Mon, 16 Sep 2002 11:54:43 +0200
>Michal Bukovjan <bukovjan at mbox.dkm.cz> wrote:
>
>
>
>>Mattias Gaertner wrote:
>>
>>
>>
>>>>I've made a temporary
>>>>hack - moving initialization to a proc - in idecomp. But it would be a
>>>>good idea to load all internationalization not from constrctor, but from a
>>>>unit initialization, which must not be the last in unit lists.
>>>>
>>>>
>>>>
>>>>
>>>It doesn't matter for the IDE. The IDE should support language switching at runtime. Of course this needs Translate procs for every dialog.
>>>
>>>
>>>
>>>
>>I wouldn't recommend this. Sounds like a lot of work.
>>
>>
>
>It is very little extra work compared to localization lazarus.
>
>
>
>
>>IMHO, on Unix this
>>should be handled by LC_ALL (and similar) environment variables. If
>>someone wants always a different language just for this application, he
>>can always start it like this:
>>
>>export LC_ALL=cs_CZ; ./lazarus
>>
>>
>
>Hmm. Lazarus is a visual thing. IMO a good IDE should never need to restart and there should be a graphical frontend for _every_ setting. And it's easy to implement.
>
>>i.e., I recommend no explicit language switching inside IDE.
>>
>>
>
>It's open source. If one implements it and it does not bite, it will go into the source. :)
>
Sure, nothing against. It would be the only application to support it,
except maybe for Mozilla, which requires restart anyway.
It's not only message strings (which, going through Translate function,
would slow the IDE down), localization has to include fonts (cyrillic,
different character encodings), bi-di (arabic), sorting, uppercasing,
shortcuts, number formatting, etc. (heck, even default paper size for
printing :-)
MHO:
The nice thing about Unix, is its modularity. This is what I love about
Unix, and hate about Windows (lack of). As I see it, Free Pascal and
potentially Lazarus tend to do a lot of things on its own, still
essentially the same way as others. Sometimes it is needed for
crossplatformness, sometimes just because someone feels like it. This is
not a rant, I myself am curious to see where it leads - maybe it will
show up as a more powerful direction. As I see it, though, there is a
lot of duplication and incosistencies with the rest of the operating
system and its applications (read Linux here) as a result.
It's a number of these little things, for example:
<rant mode>
- just type fpc - it lists 40 lines and wants Enter - why? I can use
fpc|more or fpc|less, I have a bigger terminal, and it bugs me to hit
Enter several times
- sorting, uppercasing, lowercasing procs do not take into account
locale. Sure, it is a lot of work, but it's already in glibc (that's why
it may take about 20MB installed in the system), which all (not just C)
program rely on. FPC does not relay to glibc and rather duplicates the
work, so we end up with unusable sorting for anyone else except Englishmen.
- [I may be misinformed here] - why fpcmake? Why not standard GNU
autoconf/make stuff? It is meant to be programming language independent,
right?
- rewriting of stuff that is in Win32 (I don't mean compatibility
functions, rather desktop integration - stock icons, workspace, etc.)
where GNOME or KDE was created for and fits the bill.
</rant mode>
Please don't react to the above points, they are only illustrative and I
don't want to start a flamewar on any of these points.
The point is, we should always think about whether and how it is
implemented in the OS(es), and follow those practices, if possible. If
we need to change something, then ask lib/OS authors first, and only if
they don't understand our needs, only *then* duplicate their work.
That's the spirit of open source as I see it.
And one day, perhaps, we will not see Lazarus executable 9MB large and
counting...
Michal
More information about the Lazarus
mailing list