Create a mechanism to combine dictionaries on the fly (for UTF8 texts)
Create a "mechanism" to combine spell checking dictionaries on the fly, using existing installed dictionaries, if the languages involved have different UTF-8 ranges, so that users using software like Firefox do not have to change spell-checker twice to check a multi-language text or developers do not have to create such combinations. eg. of possible combinations
1. Greek and French(Canadian)
2. Chinese(Mandarin) and French(Canadian) and Urdu
Blueprint information
- Status:
- Not started
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- None
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- New
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
Whiteboard
Theoretically in UTF8 we can have combined dictionaries.
We can have, at some variable or at the beginning of the main (dictionary) file, not only the ISO set but also the range in UTF-8.
If the ranges of two dictionaries are not overlapped then user can combine them.
For example Chinese-like dictionaries can be combined with any Latin based language dictionary
Chinese-French or Chinese-English (US) or Chinese-English (UK) or Chinese-Italian ...
Japan-French or Japan-English (US) or Japan-English (UK) or Japan-Italian ...
My idea came form English-Greek dictionary.(https:/
Greek dictionary can be combined with almost all other dictionaries.
In the existing Greek-English dictionary the idea "falls" into using a conversion to ISO 8859-7 in which Greek characters lay after #x80.
In UTF-8 (/UTF-16) there are such ranges that can be used only by some languages.
We cannot combine Polish and French since they have overlapping characters but we can combine Polish and Greek.
There is no need to create such combined dictionaries separate for all possible combinations.
At that moment the Greek-English dictionary has to be updated every time one of them (either English or Greek) must be updated.
A "mechanism" can be created that will use the existing dictionaries. That way separate dictionaries can always be updated without confusion.
In firefox or gedit, user can check two languages and IF they are not overlapped then firefox (or gedit) will combine their dictionaries. If they are overlapped (either using a javascript alert to notify user or without any user notification other than the "checking-
We can create the mechanism with the ability to combine more (3 or four or any number) not overlapped languages such as:
Greek + Polish + Urdu or
Greek + French(Canadian) + Chinese(Mandarin) + Urdu + Georgian
etc.
In Mozilla applications that use dictionaries the menu will change on the fly to represent that change. Every time user right-clicks to select (in a UTF-8 page) a language for spelling, if that language does not overlap with the current selected dictionary (or the current selected combination of dictionaries), the dictionary will be added-combined. The only "problem" is that if the user wants to select only one dictionary and the current selected can be combined than it will have to select for a second time the dictionary that (s)he wants to be the only one. That way the "mechanism" will find that the new dictionary is not compatible with the current combination and will drop down to the last selected.
Example of what I mean.
* Assuming user has installed all dictionaries that will get involved and selected charset is UTF-8.
* A page with [charset=utf-8] and [BODY LANG="el-GR"] opened for first time. Firefox will use the dictionary that user used in last session.
* Let's say that it was a French(Canadian) dictionary.
* Now user wants to use the English(UK) dictionary.
** Right-clicks and selects English(UK).
** Since dictionaries are overlapped (English(UK) and French(Canadian) both use at least latin characters from #0x41 to #0x7A) Firefox selects to use the last clicked dictionary which is [English(UK)].
* Now user wants to add the Greek dictionary.
** Right-clicks and selects Greek.
*** Firefox (or gedit) creates on the fly a menu called "English(
* Now user wants the words to be checked only in English(UK) dictionary (why? I do not know. Just to make less heavy the program?).
** Right-clicks and selects English(UK)
** "Mechanism" understand that (combined) English(UK)+Greek dict has overlapping chars and makes the English(UK) dict current.
*** Since the new selection is overllaping with the current (which is a combination of English(UK) and Greek) Firefox will drop the menu [English(UK)+Greek] and it will use (and makes it "checked") only the [English(UK)].