How can I auto-select the spellcheck language in Firefox?
Software in general is unfriendly to us bilingual users.
No web browser offers this functionality built-in. Some operating systems do, however. For example, on the Mac, switching your keyboard layout will switch default-dictionary used in any input field implemented using the OS-provided methods. Similarly, if you enter a full sentence into a text field, it can automatically switch dictionary based on that sentence. This works in Opera, Safari, and some other browsers, but not Firefox on the Mac. In Windows 10 (and in modern apps on Windows 8.1), the dictionary used depends on the keyboard layout. There is no attempt at language detection, unlike the Mac. This works in Edge and IE only.
All modern mobile operating systems also use the keyboard layout to determine the spelling dictionary, so this seems to be the way everyone wants to go. (From my own experiences with Mac’s language-auto-detection as a bilingual user, I can say that it’s just awful.) You can add more keyboard layouts in PC Settings / “Control Panel”: “Region and Language”, and switch between them by pressing (Win)+Space.
An alternative relevant to the web would be to switch based on a page’s lang
attribute. However, you may use Google Mail in English but still want to write an email in Italian. So this method is, like Mac’s auto-detection, unreliable, and no web browser implements this.
Checking two languages at the same time, as suggested in one of the comments, lowers the quality of the spellchecker and it may not catch instances where you forget the English word and fill in an Italian word instead without even thinking about it. Different words in the two languages that are spelled slightly differently is a problem a bilingual user is likely to run into all the time. Combining dictionaries will just make this issue worse.
What I actually would suggest you do is to separate off your brain a bit. Put all primary language content in one instance of Firefox, and keep all secondary language content in a separate instance and profile. You can manage this with Firefox profiles and the Profile Manager. Install just one dictionary in each profile and use the two windows for different things.
The add-on you mention has an open-source license. You could grab the source code and try to repair it or change it to work the way you want. More work, but it’s fun to code and learn new things!
In summary, you cannot have nice things in Firefox at the moment. You can, however, search the Mozilla bug database and vote for any relevant improvement you find for handling multiple languages and dictionary switching (there are a few for handling it on keyboard layout switching as other systems do).
Sources: Working on browsers at Opera Software for six years as a bilingual user.
The extension suggested by o0' no longer works since Firefox switched the technology used for addons. However, I also needed this, so I just created and published a new extension for automatically switching to the correct dictionary for spell checking: https://addons.mozilla.org/firefox/addon/automatic-spelling-language/