Open Bug 338469 Opened 14 years ago Updated 7 years ago

Turn off spell checker when doesn't match language of active keyboard

Categories

(Core :: Spelling checker, enhancement)

x86
Windows XP
enhancement
Not set
normal

Tracking

()

UNCONFIRMED

People

(Reporter: ivan.icin, Unassigned)

Details

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060517 Minefield/3.0a1
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060517 Minefield/3.0a1

If active keyboard is for different language than language of installed dictionary, spell checker should be turned of.

I use both English and Serbian in correspondence, and while it is nice to have spell checker for all English words as it is not my mother's language, marking all Serbian words leaves not so good feeling when writing on Serbian.

Reproducible: Always
In general, spell checker should be made aware of the input language and switch to appropriate spell checker plugin. In case that there is no spell checker for current keyboard setup, it should be disabled.

Severity: normal → enhancement
Summary: Spell checker should check active keyboard → Turn off spell checker when doesn't match language of active keyboard
Assignee: mscott → nobody
IIUC, the English alphabet is a subset of the Serbian one, so typing English text with a Serbian keyboard ought to be no problem. Do you mean that text typed that way ought never to be spell-checked, not even if an English spelling dictionary is installed?

I'm not sure who's responsible to decide whether or not to mark this WONTFIX.
(In reply to comment #2)
> IIUC, the English alphabet is a subset of the Serbian one, so typing English
> text with a Serbian keyboard ought to be no problem. Do you mean that text
> typed that way ought never to be spell-checked, not even if an English spelling
> dictionary is installed?
Full solution is to have language setting like MS Word, but it seems like overkill, rule of finger would be that if you are not using English keyboard, you likely not typing English. I am quite sure that this would help users who don't use English as primary language. Whether it would hurt users with English as primary language, I am not quite sure, but it seems logical that they would use English keyboard layout.
In reply to comment #3:
Users whose native language is not English might nevertheless type a lot of English over the Net, because (for good or bad) English has become a kind of Internet /lingua franca/. Such a user might have more need of an English spelling dictionary than of one for his native language, precisely because he knows his native language better. Yet if his native language uses some variant of the Latin alphabet (or at least if, like Chinese keyboards, it allows typing Latin letters), he might type English text without changing keyboards, putting the lie to your assumption that "if you aren't using an English keyboard, you are likely not typing English".
(In reply to comment #2)
> IIUC, the English alphabet is a subset of the Serbian one, so typing English
> text with a Serbian keyboard ought to be no problem. Do you mean that text

I think here it's being referred to typing Serbian Cyrillic (for example: ово је пример српске ћирилице), so it's not a superset of the English alphabet.

It would make some sense to switch the spelling checker to match the keyboard layout currently in use.  

I don't think that the fact that English is lingua franca on the internet has anything to do with it: if I use Serbian layout in a typing box, I am not typing English; and I want a Serbian checker to be active too.
(In reply to comment #5)
[...]
> I think here it's being referred to typing Serbian Cyrillic (for example: ово
> је пример српске ћирилице), so it's not a superset of the English alphabet.
[...]

Ah, sorry. I guess I confused Serbian with Croatian. But what I said holds not only for Croatian but also for French, German, Spanish, Danish, Czech, Polish, etc... even Turkish and possibly Chinese. (I regularly receive mailing-list posts in English, with a header "Content-Type: text/plain; charset=GB2312".)
(In reply to comment #4)
> Users whose native language is not English might nevertheless type a lot of
> English over the Net, because (for good or bad) English has become a kind of
> Internet /lingua franca/. Such a user might have more need of an English
> spelling dictionary than of one for his native language, precisely because he
> knows his native language better. Yet if his native language uses some variant
> of the Latin alphabet (or at least if, like Chinese keyboards, it allows typing
> Latin letters), he might type English text without changing keyboards, putting
> the lie to your assumption that "if you aren't using an English keyboard, you
> are likely not typing English".
Spell checker is not invented by Mozilla, and it also relates to multiple language behavior.

Microsoft Office has this for ages, and it behaves exactly as proposed: if you switch keyboard it spell checks only if it has spell checker for that language. This what users expect, and over the years it has proved as good practice.

Yes, you can claim that sometimes it is better to spell check document written with non-English keyboard with English dictionary, and it might be well the truth. But this is minor case.

But just several days ago my mother was typing e-mail in Serbian and she got that red waves, and she got scared that something is wrong. This is normal average user behavior. And it is the major case.

(In reply to comment #6)
> Ah, sorry. I guess I confused Serbian with Croatian. But what I said holds not
> only for Croatian but also for French, German, Spanish, Danish, Czech, Polish,
> etc... even Turkish and possibly Chinese. (I regularly receive mailing-list
> posts in English, with a header "Content-Type: text/plain; charset=GB2312".)
Actually, Serbian could be written both with Latin and Cyrillic keyboards, and I was referring to Latin keyboards, so it is not a problem.
(In reply to Ivan Ičin from comment #3)
> ... rule of finger would be that if you are not using English
> keyboard, you likely not typing English. ...

Central european users don't switch the keyboard layout before typing english texts.
(In reply to Hb from comment #8)
> (In reply to Ivan Ičin from comment #3)
> > ... rule of finger would be that if you are not using English
> > keyboard, you likely not typing English. ...
> 
> Central european users don't switch the keyboard layout before typing
> english texts.

If you carefully read this relates to Cyrillic, though I guess it would relate to any Chinese, Arabian, Korean or Japanese layout.

So, please re-read comments so that same answers don't appear again.
Hi,

what about https://addons.mozilla.org/en-US/firefox/addon/dictionary-switcher for this problem? As said I dislike an automatic change.
Well, dislike is not so good argument, unless you are Steve Jobs ;)

I don't see problems - for some users it will improve user experience, for others, it won't be visible after all.

So, I guess you can think of user that has english installation and uses local keyboard, and writes on english without changing keyboard. Well, I don't see this as a typical user case, really.
I would like to revisit this feature request. I type in three languages (English, Polish and German) all Latin-script based. Since all these languages require special characters not available on the standard US keyboard (say the Polish "ł" or the German "ü"), I switch the Windows keyboard/language between the various keyboard/language presets I have set up by hitting Win+Space. 

Internet Explorer 11, since it uses RichEdit, will automatically switch its spellchecking language language to match this chosen keyboard/language pairing. In Firefox, I either have to manually switch the spellchecking language or live with the red underlines.

At least under Windows there is an API which tells which language is in use currently. It would be wonderful if FF could check and automatically adjust its spellchecker to the same setting or switch the default spellchecker off when the language doesn't match and the appropriate dictionary doesn't exist.

Many users don't bother switching the keyboard/language, but if they do, that's usually a statement that they want to be able to type properly with all the diacritics and spellchecking enabled.
Similarly, I type in several Latin-script languages but I don't switch the OS locale, which remains at en_US.UTF-8 . Happily my Belgian keyboard and the Linux keyboard interface allow me to type various accented letters for most European languages by using various combinations of Shift and AltGr, see http://users.skynet.be/antoine.mechelynck/other/keybbe.htm

Sometimes I also mix languages in a single document, as when writing a bilingual dictionary, or when making a quote in a different language than the main text. So (and also thanks to my good "natural" orthography) I happen to prefer spell checking turned off at all times, but if I did want spell checking, the "active keyboard", kept at en_US.UTF-8 at all times, would hardly be a relevant criterion.

For instance in LibreOffice I regularly find myself typing a document in French with a spell checker defaulting to English, which of course adds wavy red underlining to practically every word. Please don't add the same kind of annoyance to Thunderbird (and SeaMonkey Mail), to Firefox (when filling in a text area; and the SeaMonkey browser in similar circumstances).
You need to log in before you can comment on or make changes to this bug.