only stadard.dic appearsby spellchecking. If you want to take an entry direktly with a (red) underlined word by clicking to it, all spellchecking dics appear.
Open Writer (1) Tools > Options > Language Settings > Writing Aids > User-defined dictionaries > New... Create custom dictionaries as follows 1. add_de [Language: German (Germany)] 2. add_en [Language: English (USA)] 3. add_fr [Language: French (France)] 4. add_all [Language: All] (2) Test "AutoSpellcheck" 1. Type some misspelled text [language attribute German (Germany)] 2. Right click on misspelled word 3. Context menu "Add" shows the custom dictionaries: - standard.dic - add_de.dic - add_all.dic [as expected] (3) Test Spelling and Grammar <F7> 1. Same text as before (2) 2. Open "Spelling and Grammar" with <F7> 3. Click on "Add" for a misspelled word; shown custom dictionaries: - standard.dic - add_all.dic Bug: missing add_de.dic (4) Repeat the test cases (2) and (3) with the language attributes French (France) and English (USA). The same bug for "Spelling and Grammar" <F7>: missing add_fr.dic or add_en.dic. You cannot add a word to user-defined dictionaries with a specified language attribute via "Spelling and Grammar" <F7>
Created attachment 46168 [details] Example 1: AutoSpellcheck German (Germany)
Created attachment 46169 [details] Example 2: Spelling and Grammar <F7> German (Germany)
@gerdl: I've tried to guess your intention, and to make the bug reproducible for developers and other. ;) Feel free to modify the summary if I am wrong.
Somehow const LanguageType nLang = aLanguageLB.GetSelectLanguage(); at http://opengrok.libreoffice.org/xref/components/cui/source/dialogs/SpellDialog.cxx#910 results nLang == LANGUAGE_DONTKNOW instead of the correct language code of the checked test. GetSelectLanguage() calls GetSelectEntryPos() on the list box, which returns LISTBOX_ENTRY_NOTFOUND so this is why GetSelectLanguage() returns LANGUAGE_DONTKNOW. Subsequent calls to GetSelectEntryPos() (i.e. clicking on the listbox and select a language) return the good result, but it's too late, the submenu of Add button is populated during initializaton of the dialog. BTW in 3.3.x it is also broken: all dictionaries are listed, not only language independent dictionaries and dictionaries of the given language. So, this is a bug but hardly a blocker.
*** Bug 37409 has been marked as a duplicate of this bug. ***
That bug is pretty annoying for all users with subject-specific custom dictionaries (scientific, literarily,(advertising) slang, colloquial language, etc.) They lose access to these dictionaries via 'Spelling and Grammar'. This situation is worse than the current bug (3.3.x), where *all* custom dictionaries are shown. It would be nice if it will be fixed with LibO 3.4 release.
only tested with windows (w7 64) also in 3.4.1 rc3
You can have it back though, either by re-selecting language in list above, or clicking options and pressing OK.
(In reply to comment #9) Well, I could apply this funny workaround 'Options... > OK'. I do prefer AutoSpellcheck (context menu). ;) Nevertheless, thanks for the hint. (Re-selecting the language in the drop-down list 'Text language' doesn't work for me.) But this is far from being satisfactory in a multilingual document. You have to repeat that step whenever the language has changed, and with every new spell check session. Is there anybody who wants to fix that bug?
gagh, it initializes the info it needs to know the language effectively via Application::PostUserEvent( STATIC_LINK( this, SpellDialog, InitHdl ) ); so its sort of random when the language gets known
/* Initialize, asynchronous to prevent virtial calls from a constructor */
trying to avoid the http://www.artima.com/cppsource/nevercall.html problem
hum, a bit grotesque, but lets put that aside and simply move the code that depends on the Init_Hdl being run into Init_Hdl and then while I'm at it change things so that those language-dependent lists get regenerated when the language is changed from the language drop-drop at the top of the dialog done in master as http://cgit.freedesktop.org/libreoffice/core/commit/?id=c9e6df76fffe84da7529d92cba7bb79e36d9cd15 do we want this in 3-4 as well ?
fixed in master anyway
*** Bug 40215 has been marked as a duplicate of this bug. ***
*** Bug 33875 has been marked as a duplicate of this bug. ***
Tested with LibO 3.4.4 RC1 on WinXP [LibreOffice 3.4.4 OOO340m1 (Build:401). The bugfix works fine for unilingual documents. But it works only with the first checked language in a multilingual document. 1. Create a French text language paragraph with a misspelled word. 2. Create a German text language paragraph with a misspelled word. (You may also use the attached 'sample_fdo#36678.odt') 3. Start <F7> with the French paragraph. Selecting 'Add..' will show the user-defined dictionaries 'add_fr.dic' and 'plus_fr.dic' (see 'Screenshot A: Spelling and Grammar, text language French (France)') 4. Add the word to a French user dictionary, or ignore it. 5. Select 'Add...' again in the next--German--paragraph. It will show again the user-defined dictionaries 'add_fr.dic' and 'plus_fr.dic' instead of the also available user-defined dictionaries 'add_de.dic' and 'plus_de.dic' (see 'Screenshot B: Spelling and Grammar, text language German (Germany)'). @Caolán McNamara I have reopened this bug due to that issue. Maybe it would be better to create a new bug report (follow-up).
Created attachment 52860 [details] Test document: 'sample_fdo#36678.odt'
Created attachment 52861 [details] Screenshot A: Spelling and Grammar, text language French (France)
Created attachment 52862 [details] Screenshot B: Spelling and Grammar, text language German (Germany)
(In reply to comment #17) > *** Bug 33875 has been marked as a duplicate of this bug. *** This bug is *not* a duplicate of bug 36678. Usually, 'Spelling <F7>' in LibO 3.3.x (Calc) will show *all* user-defined dictionaries, irrespective of their language attribute [see also: https://bugs.freedesktop.org/show_bug.cgi?id=33875#c2 ].
"I have reopened this bug due to that issue. Maybe it would be better to create a new bug report (follow-up)." yes, please do that. Mention the related bug in the new one by all means, but unless the very exact bug fixed under this id has returned then reusing the same bug id gets very confusing very quickly if a bunch of similar but technically unrelated bugs end up listed together. Feel free to assign the new bug to me.
(In reply to comment #23) Done. → Bug 42372 - Make *all* user-defined dictionaries with a specified language attribute available during "Spelling and Grammar" <F7>