[izpack-devel] Finnish language (was: Patch 5/6 patch against the current trunk)
Ari Voutilainen
ari.voutilainen at iki.fi
Wed Jan 10 22:43:23 CET 2007
Hi Klaus,
> thank you for your comment. Are you a Finn?
Yes I am.
> Our common language file for Finn is a little bit out of date
> (3.5 years, half of entries are missing). Do you can revise it?
I have noticed that and I have updated it twice! At the first
time (a year ago) it wasn't succesfull (see: [Bug #9844]
Localized texts are taken from old lang file (fin.xml)). The
second time is "now": I have sent patch ([Patch #1789] Update for
Finnish language pack (2)) and if I understood correct it is in
cvs now ([izpack-changes] r1686) (but see: [Bug #9844]).
Regards,
Ari
> Hi Ari,
> thank you for your comment. Are you a Finn?
> Our common language file for Finn is a little bit out of date
> (3.5 years, half of entries are missing). Do you can revise it?
> It is $IZ_HOME/bin/langpack/installer/fin.xml. There is
> testLangpacks.ksh in the same directory. With a kornshell you can
> dump out the missing entries.
>
> Cheers
>
> Klaus
>
> Am 10.01.2007, 21:44 Uhr, schrieb Ari Voutilainen <ari.voutilainen at iki.fi>:
>
>> Hi all,
>>
>> I think taking language from OS is the best guess to offer
>> readable texts to user. But this should be offered via language
>> selection dialog. So situation is this:
>>
>> langFromOS=yes && lang pack found => You have to make your
>> installation with that language.
>>
>> What about if I go to Germany and let's assume I can understand
>> only Finnish. My friend have German as regional settings and
>> langFromOS is yes and lang pack is found so installer gives me
>> German and I would say something... well, at least I wouldn't
>> thank developers. This is only one example where this feature
>> isn't very good. We cannot be 100 % sure the _user_ wants to use
>> that language which is set in a operating system.
>>
>> If someone wants to offer only one language in the installation I
>> think he/she should edit install XML file so that there will be
>> only one language and that is used regardless of the regional
>> settings. If there is multiple languages let's have a selection
>> dialog with the language which is in the system (or english if
>> not matched). So I vote for the original behaviour.
>>
>> Regards,
>> Ari
>>
>> Markus Schlegel wrote:
>>> Hi Julien
>>>
>>> I've also made a patch against the current trunk for the
>>> "langFromOS"-Feature.
>>>
>>> I can not understand why this feature is a problem for the izpack team,
>>> since it does not change current behavior. I can understand when the
>>> commandline switch (in my original post) was a problem for you. But I
>>> changed the implementation to use gui-modifiers. Also I have added the
>>> Documentation for it.
>>>
>>> Please concern, that the Language Selection Dialog is the only part of
>>> your installer (except for the uninstaller) that can not be replaced by
>>> an other component and that cannot be omitted (if you want to support
>>> multiple installer languages).
>>>
>>> Mabe there is someone on the users-list that would vote for this
>>> feature?
>>>
>>>
>>> Regards
>>> Markus
>>>
>>>
>>>
>>> -----Original Message-----
>>> From: izpack-devel-bounces at lists.berlios.de
>>> [mailto:izpack-devel-bounces at lists.berlios.de] On Behalf Of Julien Ponge
>>> Sent: Tuesday, January 09, 2007 8:40 AM
>>> To: izpack-devel at lists.berlios.de
>>> Subject: Re: [izpack-devel] Next release will be 3.10.0
>>>
>>> Hi Markus,
>>>
>>> ...
>>>
>>> About 5/6: I will have a look again to make my mind, but I am mildly in
>>> favour of this patch since there is no consensus about it.
>>>
>>> ...
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> Index:
>>> C:/deron/tools_/IzPack_TRUNK/src/lib/com/izforge/izpack/installer/GUIInstaller.java
>>>
>>> ===================================================================
>>> ---
>>> C:/deron/tools_/IzPack_TRUNK/src/lib/com/izforge/izpack/installer/GUIInstaller.java
>>> (revision 1698)
>>> +++
>>> C:/deron/tools_/IzPack_TRUNK/src/lib/com/izforge/izpack/installer/GUIInstaller.java
>>> (working copy)
>>> @@ -1,5 +1,5 @@
>>> /*
>>> - * $Id:$
>>> + * $Id$
>>> * IzPack - Copyright 2001-2006 Julien Ponge, All Rights Reserved.
>>> *
>>> * http://www.izforge.com/izpack/
>>> @@ -205,35 +205,57 @@
>>> List availableLangPacks = getAvailableLangPacks();
>>> int npacks = availableLangPacks.size();
>>> if (npacks == 0) throw new Exception("no language pack
>>> available");
>>> - String selectedPack;
>>> + String selectedPack = null;
>>> +
>>> + //if modifier langFromOS is set to "yes", we may not display
>>> a dialog and take instead the language from the OS
>>> + //The Langugedialog is displayed anyway, if the installer
>>> does not contain the language that the system runs with.
>>> + if (useLanguageFromOS()){
>>> + Locale l = Locale.getDefault();
>>> + String osCode = l.getISO3Language().toLowerCase();
>>> + if (availableLangPacks.contains(osCode)){
>>> + selectedPack = osCode;
>>> + }else{
>>> + //now let's try the countrycode for backward
>>> compatibility. Think we should take langcode instead...
>>> + osCode = l.getISO3Country().toLowerCase();
>>> + if (availableLangPacks.contains(osCode)){
>>> + selectedPack = osCode;
>>> + }else{
>>> + //noop, let the user choose the language...
>>> + }
>>> + }
>>> + }
>>> +
>>> + if (selectedPack==null){
>>> + // Dummy Frame
>>> + JFrame frame = new JFrame();
>>> + frame.setIconImage(new
>>> ImageIcon(this.getClass().getResource("/img/JFrameIcon.png"))
>>> + .getImage());
>>>
>>> - // Dummy Frame
>>> - JFrame frame = new JFrame();
>>> - frame.setIconImage(new
>>> ImageIcon(this.getClass().getResource("/img/JFrameIcon.png"))
>>> - .getImage());
>>> + Dimension frameSize = frame.getSize();
>>> + Dimension screenSize =
>>> Toolkit.getDefaultToolkit().getScreenSize();
>>> + frame.setLocation((screenSize.width - frameSize.width) / 2,
>>> + (screenSize.height - frameSize.height) / 2 - 10);
>>>
>>> - Dimension frameSize = frame.getSize();
>>> - Dimension screenSize =
>>> Toolkit.getDefaultToolkit().getScreenSize();
>>> - frame.setLocation((screenSize.width - frameSize.width) / 2,
>>> - (screenSize.height - frameSize.height) / 2 - 10);
>>> + // We get the langpack name
>>> + if (npacks != 1)
>>> + {
>>> + LanguageDialog picker = new LanguageDialog(frame,
>>> availableLangPacks.toArray());
>>> +
>>> picker.setSelection(Locale.getDefault().getISO3Country().toLowerCase());
>>> + picker.setModal(true);
>>> + picker.toFront();
>>> + //frame.setVisible(true);
>>> + frame.setVisible(false);
>>> + picker.setVisible(true);
>>>
>>> - // We get the langpack name
>>> - if (npacks != 1)
>>> - {
>>> - LanguageDialog picker = new LanguageDialog(frame,
>>> availableLangPacks.toArray());
>>> -
>>> picker.setSelection(Locale.getDefault().getISO3Country().toLowerCase());
>>> - picker.setModal(true);
>>> - picker.toFront();
>>> - //frame.setVisible(true);
>>> - frame.setVisible(false);
>>> - picker.setVisible(true);
>>> -
>>> - selectedPack = (String) picker.getSelection();
>>> - if (selectedPack == null) throw new
>>> Exception("installation canceled");
>>> + selectedPack = (String) picker.getSelection();
>>> + if (selectedPack == null) throw new
>>> Exception("installation canceled");
>>> + }
>>> + else
>>> + {
>>> + selectedPack = (String) availableLangPacks.get(0);
>>> + }
>>> }
>>> - else
>>> - selectedPack = (String) availableLangPacks.get(0);
>>> -
>>> +
>>> // We add an xml data information
>>> this.installdata.xmlData.setAttribute("langpack",
>>> selectedPack);
>>>
>>> @@ -440,6 +462,20 @@
>>> return (true);
>>> }
>>>
>>> + /**
>>> + * Returns whether the Language Selection Dialog should be
>>> displayed even if the Installer contains a language matching the
>>> System's language.
>>> + *
>>> + * @return true if the gui-modifier "langFromOS" was set to
>>> "yes", false otherwise
>>> + */
>>> + protected boolean useLanguageFromOS()
>>> + {
>>> + if (installdata.guiPrefs.modifier.containsKey("langFromOS")
>>> + && "yes".equalsIgnoreCase((String)
>>> installdata.guiPrefs.modifier.get("langFromOS")))
>>> + return (true);
>>> + else
>>> + return (false);
>>> + }
>>> +
>>> /**
>>> * Returns the type in which the language should be displayed in
>>> the language selction dialog.
>>> * Possible are "iso3", "native" and "usingDefault".
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> Index: C:/deron/tools_/IzPack_TRUNK/src/doc-ng/XHTML/node5.html
>>> ===================================================================
>>> --- C:/deron/tools_/IzPack_TRUNK/src/doc-ng/XHTML/node5.html
>>> (revision 1698)
>>> +++ C:/deron/tools_/IzPack_TRUNK/src/doc-ng/XHTML/node5.html
>>> (working copy)
>>> @@ -273,6 +273,16 @@
>>> language will be used if possible, else the notation of the
>>> default locale. Using "default"
>>> will be presented the language in the notation of the
>>> default locale of the VM.
>>> </li>
>>> +
>>> + <li>
>>> + <tt>langFromOS</tt>:<br />
>>> + possible are "yes" or "no". Default (when ommitted) is "no".
>>> If it is set to "yes",
>>> + the installer first checks if the system runs with a
>>> language supported by the installer
>>> + and ommits the Lanugage Selection Dialog if so. If the
>>> System runs with a Language not
>>> + supported by the installer, the Language Selection Dialog is
>>> displayed neverthless. <br />
>>> + Example: If you have an Installer supporting German and
>>> English with "langFromOS=yes",
>>> + the dialog will show up on french systems but not on german
>>> or english ones.
>>> + </li>
>>> </ul>
>>>
>>> <h2><a id="modifyingPanels" name="modifyingPanels">Modifying
>>> IzPack Panels</a></h2>
>>>
>>>
>>> ------------------------------------------------------------------------
>>>
>>> _______________________________________________
>>> izpack-devel mailing list
>>> izpack-devel at lists.berlios.de
>>> https://lists.berlios.de/mailman/listinfo/izpack-devel
>>
>> _______________________________________________
>> izpack-devel mailing list
>> izpack-devel at lists.berlios.de
>> https://lists.berlios.de/mailman/listinfo/izpack-devel
>>
>> __________ NOD32 1.1392 (20060202) Information __________
>>
>> Diese E-Mail wurde vom NOD32 Antivirus System geprüft
>> http://www.nod32.com
>>
>>
>
>
>
> --Erstellt mit Operas revolutionärem E-Mail-Modul:
> http://www.opera.com/mail/
>
More information about the izpack-devel
mailing list