Apache OpenOffice (AOO) Bugzilla – Issue 13376
no iso code for different German orthographies
Last modified: 2013-02-24 20:42:44 UTC
I plan doing a de_DE spelling dictionary for the old German orthography. As there is no iso language code for different spelling rules of the same language, this doesn't seem to be easily handable. On the other hand - StarOffice has support for both old and new German orthography. Any hints what iso code to use for the old spelling rules?
Hi Bjoern, Good to hear from you again (BTW: Did you see the OOo 1.1 final will support Latin) I am very unsure about how to answer this. so for the time being please use the same iso as new German de_DE. I believe there is a Language Property (or spellcheck property?) that the user can set to indicate "old" German versus new German, so I could have MySpell examine that property and decide to spellcheck in either old or new dictionaries (assuming they both exist). Right now I think lingucomponent ignores this property but I can possibly check on that. Please forgive my ignorance of Old German, but can you help by answering these questions: 1. Does old German use the same character encodings (ISO-8859-1) as new German or does it need a special encoding to generate special characters? 2. Is it typical to find both old German and new German in the same document? How does Star Handle this? If so, they we either have to to have a character attribute that sets old verus new German or we have to use a differnt encoding (there is a third field in the locale that is typically not used. We could use that field I suppose?) 3. Under Star, what do the pull-down language menus menus say when you are using Old German? Unfortunately, StarOffice does not run on PPC Linux so I don't know much about how they handle this case. Any guidnace on how best to include this support would be appreciated. Kevin
Hi Kevin! Yes, I read about the latin support, thank you very much for your effort in this topic! About the old German spelling: 1. iso-8859-1 or iso-8859-15 is fine, utf-8 would be okay, too (of cource). BTW - does iso-8859-* or utf-8 produce more overhead when loading the dictionary or does this not matter at all? 2. There may be cases where people use old and new orthography in the same document. I think in Star it behaves the same way as if this would be two different languages. Do you mean setting the locale for old German to something like de_DE.old or de_DE@old? 3. I only knew Staroffice 4.x and 5.x. There it used to be called German (old spelling rules) or ...(new spelling rules). I'm just about to download SO 6.1b1 ... okay ...ah. StarOffice 6.1 does not seem to know anything about old/new German spelling rules. As StarOffice 5.x, which supported both old and new spellings) had quite a different file format it will not help you very much if I send you a sample file in this format I guess. (?) Anyone else knowing more about the OO/SO internals should comment on this.
additional comment for the SUN folks: SO6.1 still ships with both German L&H dictionaries: 49-spell.dat and 49-ospell.dat. The user interface however does not allow selecting the old orthography.
I just installed an old SO 5.2 again here and I have to correct myself. SO 5.2 did not list it as a separate language but as a global linguistic option via a selectbox in the "linguistic" section instead. In OO.o and SO6.1 that option is available at almost the same place (extras->options->languagesettings->germal-spelling-old). In my point of view it would be much nicer to have it selectable as a quasi new language, this way it would also be possible to have different paragraphs to be in old/new orthography. If it would be selectable via a different language (just like English (USA) and English (UK)) there wouldn't be a German orthography option for all users who don't use German at all. Wouldn't that be the cleaner solution?
Hi, I agree a separate language setting is the best. However, I am not sure how we go about it. We should probably ask i18n people how this might be done. From the Myspell end you could register it under any other unused locale but that is a hack. I think we should bring this up on dev@sw.openoffice.org and see what if anything Hamburg thinks here. Kevin
do you have any news on this or can tell me how to mark the dictionary so that myspell recognices it as (old) German dictionary? The dictionary is ready so far, do you think the lingucomponent stuff will get ready for that within the next beta versions for people to test it? Thanks for your work...!
Hi, I am changing ownership of this to the I10n project in case someone there can help. Can anyone there tell us how to create a new (actually old) language support for Old German as its own language? Thanks, Kevin
DL->ER: Could you please takeover?
The subject says it all, there simply is no way to distinguish between old and new German orthography at the ISO level, and also not on the MS-LANGID level. So there's nothing I could do about it, except introduce a new LANGID defined in the user space and support of variants on the ISO level (or "x-..." language identifiers). The entire Office currently is not enabled to handle variants properly, which of course would be a bigger task. A spellchecker-only specific solution might be possible on a short-term range, I therefore forward this to Thomas Lange, please take over.
Thomas, please take over.
Since the spellchecker is called by the application for the specific language of the word nothing can be done on the spellcheckers side without introducing a new language or variant. For example as done in OOo for Latin. TL->BH: To youi since it is a request for enhancement. Set type to enhancement.
OO.o does have an option for old/new German spelling, so what would you suggest to do about this? It would be nice if 1.1final would be able to switch between the 2 variants. Not just the spelling rules are different, also the hyphenation rules are different and I could provide you with the old German hyphenation patterns if you want.
Hi, Those spell checking options do not allow you to mix Old and New German in the same document easily and it seems strange to special case just German that way. The right solution (IMHO) is to allow both de_DE and de_DE(OLD) or something along those lines so that it is treated as its own language and can be properly spellchecked and hyphenatoed even when mixed in the same document with new German. So my vote for what it is worth, is to remove the special case option for Old German and simply make it a recognized locale variant and langauge. My 2 cents, Kevin
I fully agree with you in the long term but as mentioned earlier, this would be a too big task for 1.1. Would a (temporary) solution with the still existing special case option for German be a good idea to be implemented before 1.1final or just forget about the old orthoraphy support before 1.1final?
Hi, I have no idea how much work is needed to get MySpell to understand that option and to properly choose between various dictonaries based on it. I would rather hold out for the right solution here. As it stands, a user of old German can in fact, simply use an unused locale for it as a workaround and then spellcheck in both new and old German inside the same document. I frankly think that special casing the option just for German was the wrong solution frm the beginning and one we should fix. But this is my 2 cents, it is not my decision to make but instead the deciion of the l10n project developers if they agree with us. Thanks, Kevin
Reassigned to Falko as the responsible one for the component L10N.
FT: This issue needs more investigation but will not make it into 2.0
To avoid confusion, the non-functioning "german-spelling-old" option should be removed/hidden in OOo. Could this be done before OOo 2.0? Removing it won't solve the original problem, but users will only be confused about options that do nothing.
not l10n, but lingucomponent issue.
*** Issue 40659 has been marked as a duplicate of this issue. ***
Actually there is no need to remove that checkbox, it could be made functional. What needs to be done is: for German the dictionaries 'de_DE' AND 'de_DE_neu' have to be installed. (As I understand the first one covers old orthography and the second the new orthography.) Then the MySpell/HunSpell implementation needs to choose the dictionary to use according to the current state of that flag. The value that is used for this checkbox can be found in the service com.sun.star.linguistic2.LinguProperties and is named 'IsGermanPreReform'. For a sample usage see the class PropertyHelper_Spell in linguistic/inc/prophelp.hxx. The function 'SetTmpPropVals' is used to override the globaly set values (in the above mentioned service) that got stored in the helper class with the values passed as last arguments to 'isValid' or 'spell' API function calls. However since there is only a single OOo dictionary for German Switzerland nothing similar can be done here. And what still would be somewhat bad is that there are no different hyphenation dictionaries for old and new German orthography. Same thing for the Thesaurus. For both it is not even stated on the lingucomponent website if they are using old or new orthography... If one still likes to disable/remove the checkbox: The code for the checkbox itself is in svx\source\options\optlingu.cxx just look for 'EID_OLD_GERMAN' or 'sOldGerman'.
Adding myself to CC list.
FT: Re-assigned to requirement default user
a few things to correct: - there are hyphenation patterns for old orthography. I converted the old LaTeX patterns some time ago, they are here: http://j3e.de/myspell/ - in Swiss German old/new orthography are not so different as in non-Swiss German but yes - it's also different ;-) As I made a old-orthography de_DE dictionary, it would be easy to make a Swiss old orthography de_CH dictionary, too. - as tl says, there is a simple way to check the state of the "old orthography" checkbox. Laci - do you think it's possible for you to check that flag in hunspell and use the defined dictionary + _old (e.g. de_DE_old.{aff,dic} instead of de_DE in that case?
I will try to solve the problem, also for hyphenation. Laci
We can't solve this for 2.0.2. Please set target accordingly.
I think that - as already suggested - dictionaries for the pre-1996 orthography need to be marked in some way (e.g. "_old", "_historic"), not the dictionaries for the post-1996 orthography, as we presumedly want to keep the defaults. However, if this feature is not going to be included very soon, which I don't think it will, as it has been targetted to "later", I strongly suggest to remove the "Alte deutsche Rechtschreibung" checkbox from the UI (even if it still could be kept in the config files), because it suggests to the user the existance of a non-existing functionality. Note that this checkbox is even dysfunctional in SO since its version 8 (see #i67386#). Or should this be discussed in a separate issue?
TL->nemeth: The way to distinguish between using new or old German spelling up to OOo 2.0 was the option named "German spelling - old" in "Tools/Options/Language Settings/Writing Aids". In the lingupropertyset is a property named "IsGermanPreReform" to get/set that value. What you need to do is to look at run-time what value this property has and choose the specific dictionary accordingly. Also (if you not always want to evaluate that flag) you need to establish a listener so if the property changes you can switch the dictionary in use. (If I'm not mistaken there is a different instance that triggers spell checking again if that value changes thus you would not need to care about that.)
I hope I can solve it for 2.0.4. The checkbox must be disabled, if there is no "_old" dictionary (or if I won't be able to solve this issue). I also prefer the "_old" method because it helps in the generalization of handling alternative orthographies. For example, for French, the default orthography could be a set of the old and new rules and the alternative orthography must be only the new orthography: http://en.wikipedia.org/wiki/Reforms_of_French_orthography#Application) So, instead of "German-spelling prereform", the title "Alternative orthography" (and the file name extension "_alt") would be better. Presumably for hyphenation also need a similar patch. nemeth->TL: thanks for the instructions.
target 2.x.
SBA: As far as I know, in August 2006 the New German ortography was agrreed on nationwide. This "lowers" the need for a new-old German switch in my opinion. However, the general need to switch dictionaries within one language seems to be needed in Dutch and French (at least). I believe that there is many more languages that need such a switch without "getting individual codes" from whatever international authority.
My issue was just redirected here (81788 -> 67386). The situation is that the new user (not me) prefers the old german orthography and stumbled upon the non-functionality of the "use old german orthography" checkbox. Therefore, if it is non-functional, it should be removed/hidden independent on this discussion (therefore my vote). Next, one workaround could be that the old german orthography could be downloaded from somewhere to substitute the OOo files. This way, the spell check would be according to the OOo installation (or user? if user-file). Admittedly, only a work around.
target 3.x (can't be fixed until code freeze)
there is an extension with the old spellin in German so for me => works for me
no response so I do it myself
.