Features/IndicTypingBooster

From FedoraProject

< Features(Difference between revisions)
Jump to: navigation, search
(Benefit to Fedora)
(Summary)
 
(44 intermediate revisions by 3 users not shown)
Line 8: Line 8:
 
== Summary ==
 
== Summary ==
 
<!-- A sentence or two summarizing what this feature is and what it will do.  This information is used for the overall feature summary page for each release. -->
 
<!-- A sentence or two summarizing what this feature is and what it will do.  This information is used for the overall feature summary page for each release. -->
Indic Typing Booster is predictive text entry system for ibus and scim input method framework. It will start suggesting complete words based on your entered characters, one can simply select word from list and boost his typing speed as well enjoy typing.
+
Indic Typing Booster is a predictive input method for ibus platform. It suggests complete words based on partial input. One can then simply select word from suggestion list and improve typing speed with more accuracy and convenience.
  
 
== Owner ==
 
== Owner ==
 
<!--This should link to your home wiki page so we know who you are-->
 
<!--This should link to your home wiki page so we know who you are-->
* Name: [[User:pravins| Pravin Satpute]]
+
* Name: [[User:pravins| Pravin Satpute]],[[User:nkumar| Naveen Kumar]]
  
 
<!-- Include you email address that you can be reached should people want to contact you about helping with your feature, status is requested, or  technical issues need to be resolved-->
 
<!-- Include you email address that you can be reached should people want to contact you about helping with your feature, status is requested, or  technical issues need to be resolved-->
* Email: psatpute@redhat.com, pravins@fedorapeople.org
+
* Email: psatpute AT redhat DOT com, nkumar AT redhat DOT com
  
 
== Current status ==
 
== Current status ==
 
* Targeted release: [[Releases/15/Schedule |Fedora 15]]
 
* Targeted release: [[Releases/15/Schedule |Fedora 15]]
* Last updated: (22-12-2010)
+
Stape 1: fork ibus-table with customization for indic (ibus-indic-table) :- Minimum required stuff done, new package review request put at https://bugzilla.redhat.com/show_bug.cgi?id=682130 [Done]
* Percentage of completion: 10%
+
  
<!-- CHANGE THE "FedoraVersion" TEMPLATES ABOVE TO PLAIN NUMBERS WHEN YOU COMPLETE YOUR PAGE. -->
+
Step 2: Packaging Marathi, Hindi and Gujarati for Fedora
 +
 
 +
Marathi -> https://bugzilla.redhat.com/show_bug.cgi?id=683725 [Done]
 +
Hindi -> https://bugzilla.redhat.com/show_bug.cgi?id=684112 [Done]
 +
Gujarati -> https://bugzilla.redhat.com/show_bug.cgi?id=688033 [Done]
 +
 
 +
Marathi, Hindhi and Gujarati built for fedora and pushed as a new package in bodhi for f14 and f15
 +
 
 +
Step 3: Initial Testing of Marathi, Hindi and Gujarati and bug fixing in ibus-indic-table and IT booster database i.e. key sequence
 +
 
 +
[https://fedoraproject.org/wiki/Testing-ITB Testing Plan Draft]
 +
 
 +
- Updated comps for Fedora 15
 +
 
 +
Step 4: Testing fixing bugs and Adding database for other language (Assamese, Bengali, Kannada, Malayalam, Oriya, Tamil and Telugu)
 +
 
 +
Step 1-3 are must for feature (other language can added afterwords as a update, since need to create database first for it)
 +
 
 +
 
 +
* Last updated: 2011-03-23
 +
* Percentage of completion: 100%
  
 
== Detailed Description ==
 
== Detailed Description ==
 
<!-- Expand on the summary, if appropriate.  A couple sentences suffices to explain the goal, but the more details you can provide the better. -->
 
<!-- Expand on the summary, if appropriate.  A couple sentences suffices to explain the goal, but the more details you can provide the better. -->
This is a input method engine using scim-table and ibus-table in the background for processing its language database. More information about project can be found at https://fedorahosted.org/indic-typing-booster/
+
This is an input method engine using ibus-indic-table to look words in a dictionary table. More information about project can be found at https://fedorahosted.org/indic-typing-booster/
 +
 
 +
Indic Typing Booster supports currently widely used maps, so the user does not need to switch his existing input maps, like inscirpt, itrans, typewriter. So with this new input method he can type the same way as he did with his older IME's but with prediction.
  
The mission on this project is provide user friendly predictive input text entry for Indic language users.
+
The mission of this project is to provide user friendly predictive text entry for Indic language users.
  
 
== Benefit to Fedora ==
 
== Benefit to Fedora ==
 
<!-- What is the benefit to the platform?  If this is a major capability update, what has changed?  If this is a new feature, what capabilities does it bring? Why will Fedora become a better distribution or project because of this feature?-->
 
<!-- What is the benefit to the platform?  If this is a major capability update, what has changed?  If this is a new feature, what capabilities does it bring? Why will Fedora become a better distribution or project because of this feature?-->
  
User can create content in his native language wit enhanced speed, accuracy.
+
Users can create content in their native language with enhanced speed, accuracy and ease.
  
 
'''Speed''':  
 
'''Speed''':  
  
Since after few characters hits user can get expected work in candidate windows. he can quickly select that.
+
After pressing a few characters the user can get the expected word in the candidate list and quickly select that.
  
 
Example:  
 
Example:  
Entering word 'भारतीय' with itranse keyboard required 'bhaaratiiy' 9 keys press.
+
Entering the word 'भारतीय' with itrans keyboard normally requires 9 keys presses: 'bhaaratiiy'.
 
With Indic Typing Booster
 
With Indic Typing Booster
it will required only 6 key press, after inputting "bhaar" user can get 'भारतीय' in suggestion box, and then just need to press corresponding number key and done.  
+
it will only require 6 key presses, after inputting "bhaar" user can get 'भारतीय' in suggestion box, and then just need to press corresponding number key and done.  
  
  
 
'''Accuracy''':
 
'''Accuracy''':
  
Since the suggestions come from validated words database, the selected words always give 100% accurate word.  
+
Since the suggestions come from a validated word dictionary database, the selected words always give 100% accurate spelling.  
Note: Though present generated database is from random websites data, but in long time from community help, we can review these words and surely make them 100% accurate as per standard.
+
Note: correctly the present generated database is from unreviewed web data, in the long term with community help, they can be reviewed and the correctness checked as per standard.  Also infrequent words which may be mis-spellings can be filtered easily from the dictionaries.
  
  
 
'''Easiness''':
 
'''Easiness''':
  
Indic script are complex since it does not render the way we enter it. It has reordering ( क ि -> कि ), feature conjunct feature ( क ् ष -> क्ष) as well split matras. Many times new user not familiar with these things and can enter wrong or invalid data. Indic Typing Booster give easiness to it. As user not required to enter complete word.
+
Indic scripts are complex since the order of rendering may differ from input order. It has reordering (eg + ि -> कि ), feature conjunct (eg + + ष -> क्ष), as well as split matras. Often new users are not familiar with these subtleties leading to incorrect or invalid text entry. Indic Typing Booster relaxes this as the user need to enter the complete word.
  
 
Adding New Words:
 
Adding New Words:
One can add new words in IME's database. So those will also appear in suggestion box.
+
One can add new words in to the IME's database, and they will also appear in the suggestion box.
  
Its easy with scim-table, type phrase/word and then hit control+'=', user will be prompted for corresponding key just add key and done.
+
This is easy with scim-tables: type phrase/word and then hit "Ctrl + =", then just enter a corresponding input key, and done.
  
 
== Scope ==
 
== Scope ==
 
<!-- What work do the developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
 
<!-- What work do the developers have to accomplish to complete the feature in time for release?  Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?-->
 +
 +
1) Fork ibus-table for adding indic and typing booster specific changes in it.
 +
 +
package added ibus-indic-table [Done]
 +
 +
2) Create dictionary tables from wikipedia dumps for Marathi, Hindi, and Gujarati.  More languages will follow later.
 +
 +
Added packages marathi-typing-booster, hindi-typing-booster and gujarati-typing-booster [Done]
 +
 +
3) Testing and improving user experience. [Going On]
  
 
== How To Test ==
 
== How To Test ==
Line 77: Line 108:
 
3. What are the expected results of those actions?
 
3. What are the expected results of those actions?
 
-->
 
-->
 +
 +
* $sudo yum install *typing-booster -y
 +
* Add input-methods to ibus from preferences
 +
* Activate input method and type with predictions in applications.
  
 
== User Experience ==
 
== User Experience ==
 
<!-- If this feature is noticeable by its target audience, how will their experiences change as a result?  Describe what they will see or notice. -->
 
<!-- If this feature is noticeable by its target audience, how will their experiences change as a result?  Describe what they will see or notice. -->
 +
1) predictions for entered words
 +
 +
2) easy typing of complex words
 +
 +
3) improved typing speed
 +
 +
4) often native users type their language's words using latin script (transliteration), so with this IME I think they will be able to type words in there own script easily.
  
 
== Dependencies ==
 
== Dependencies ==
 
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel feature)? -->
 
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this feature depends?  In other words, completion of another feature owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel feature)? -->
 +
 +
This feature requires some improvements to be made to ibus-table.
 +
 +
It is already working well with scim-tables.
  
 
== Contingency Plan ==
 
== Contingency Plan ==
 
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "None necessary, revert to previous release behaviour."  Or it might not.  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
 
<!-- If you cannot complete your feature by the final development freeze, what is the backup plan?  This might be as simple as "None necessary, revert to previous release behaviour."  Or it might not.  If you feature is not completed in time we want to assure others that other parts of Fedora will not be in jeopardy.  -->
 +
 +
As these are new input methods, no contingency plans necessary.
  
 
== Documentation ==
 
== Documentation ==
 
<!-- Is there upstream documentation on this feature, or notes you have written yourself?  Link to that material here so other interested developers can get involved. -->
 
<!-- Is there upstream documentation on this feature, or notes you have written yourself?  Link to that material here so other interested developers can get involved. -->
*
+
See the [https://fedorahosted.org/indic-typing-booster/ project website]
  
 
== Release Notes ==
 
== Release Notes ==
 
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
 
<!-- The Fedora Release Notes inform end-users about what is new in the release.  Examples of past release notes are here: http://docs.fedoraproject.org/release-notes/ -->
 
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
 
<!-- The release notes also help users know how to deal with platform changes such as ABIs/APIs, configuration or data file formats, or upgrade concerns.  If there are any such changes involved in this feature, indicate them here.  You can also link to upstream documentation if it satisfies this need.  This information forms the basis of the release notes edited by the documentation team and shipped with the release. -->
*
+
Indic Typing Booster is a predictive input methods for Indian languages. Presently it is supporting Hindi, Marathi and Gujarati languages.
  
 
== Comments and Discussion ==
 
== Comments and Discussion ==
* See [[Talk:Features/YourFeatureName]]  <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->
+
* See [[Talk:Features/IndicTypingBooster]]  <!-- This adds a link to the "discussion" tab associated with your page.  This provides the ability to have ongoing comments or conversation without bogging down the main feature page -->
  
  
[[Category:FeaturePageIncomplete]]
+
[[Category:FeatureAcceptedF15]]
 
<!-- When your feature page is completed and ready for review -->
 
<!-- When your feature page is completed and ready for review -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
 
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->

Latest revision as of 07:17, 25 March 2011


Contents

[edit] Indic Typing Booster

[edit] Summary

Indic Typing Booster is a predictive input method for ibus platform. It suggests complete words based on partial input. One can then simply select word from suggestion list and improve typing speed with more accuracy and convenience.

[edit] Owner

  • Email: psatpute AT redhat DOT com, nkumar AT redhat DOT com

[edit] Current status

Stape 1: fork ibus-table with customization for indic (ibus-indic-table) :- Minimum required stuff done, new package review request put at https://bugzilla.redhat.com/show_bug.cgi?id=682130 [Done]

Step 2: Packaging Marathi, Hindi and Gujarati for Fedora

Marathi -> https://bugzilla.redhat.com/show_bug.cgi?id=683725 [Done] Hindi -> https://bugzilla.redhat.com/show_bug.cgi?id=684112 [Done] Gujarati -> https://bugzilla.redhat.com/show_bug.cgi?id=688033 [Done]

Marathi, Hindhi and Gujarati built for fedora and pushed as a new package in bodhi for f14 and f15

Step 3: Initial Testing of Marathi, Hindi and Gujarati and bug fixing in ibus-indic-table and IT booster database i.e. key sequence

Testing Plan Draft

- Updated comps for Fedora 15

Step 4: Testing fixing bugs and Adding database for other language (Assamese, Bengali, Kannada, Malayalam, Oriya, Tamil and Telugu)

Step 1-3 are must for feature (other language can added afterwords as a update, since need to create database first for it)


  • Last updated: 2011-03-23
  • Percentage of completion: 100%

[edit] Detailed Description

This is an input method engine using ibus-indic-table to look words in a dictionary table. More information about project can be found at https://fedorahosted.org/indic-typing-booster/

Indic Typing Booster supports currently widely used maps, so the user does not need to switch his existing input maps, like inscirpt, itrans, typewriter. So with this new input method he can type the same way as he did with his older IME's but with prediction.

The mission of this project is to provide user friendly predictive text entry for Indic language users.

[edit] Benefit to Fedora

Users can create content in their native language with enhanced speed, accuracy and ease.

Speed:

After pressing a few characters the user can get the expected word in the candidate list and quickly select that.

Example: Entering the word 'भारतीय' with itrans keyboard normally requires 9 keys presses: 'bhaaratiiy'. With Indic Typing Booster it will only require 6 key presses, after inputting "bhaar" user can get 'भारतीय' in suggestion box, and then just need to press corresponding number key and done.


Accuracy:

Since the suggestions come from a validated word dictionary database, the selected words always give 100% accurate spelling. Note: correctly the present generated database is from unreviewed web data, in the long term with community help, they can be reviewed and the correctness checked as per standard. Also infrequent words which may be mis-spellings can be filtered easily from the dictionaries.


Easiness:

Indic scripts are complex since the order of rendering may differ from input order. It has reordering (eg क + ि -> कि ), feature conjunct (eg क + ् + ष -> क्ष), as well as split matras. Often new users are not familiar with these subtleties leading to incorrect or invalid text entry. Indic Typing Booster relaxes this as the user need to enter the complete word.

Adding New Words: One can add new words in to the IME's database, and they will also appear in the suggestion box.

This is easy with scim-tables: type phrase/word and then hit "Ctrl + =", then just enter a corresponding input key, and done.

[edit] Scope

1) Fork ibus-table for adding indic and typing booster specific changes in it.

package added ibus-indic-table [Done]

2) Create dictionary tables from wikipedia dumps for Marathi, Hindi, and Gujarati. More languages will follow later.

Added packages marathi-typing-booster, hindi-typing-booster and gujarati-typing-booster [Done]

3) Testing and improving user experience. [Going On]

[edit] How To Test

  • $sudo yum install *typing-booster -y
  • Add input-methods to ibus from preferences
  • Activate input method and type with predictions in applications.

[edit] User Experience

1) predictions for entered words

2) easy typing of complex words

3) improved typing speed

4) often native users type their language's words using latin script (transliteration), so with this IME I think they will be able to type words in there own script easily.

[edit] Dependencies

This feature requires some improvements to be made to ibus-table.

It is already working well with scim-tables.

[edit] Contingency Plan

As these are new input methods, no contingency plans necessary.

[edit] Documentation

See the project website

[edit] Release Notes

Indic Typing Booster is a predictive input methods for Indian languages. Presently it is supporting Hindi, Marathi and Gujarati languages.

[edit] Comments and Discussion