Anonymous

Changes

From SMC Wiki
m
Reverted edits by Sperminator (talk) to last revision by Nalin.x.Linux
s l 3 6
'''Develop braille module for XKB witch would not include contraction and abbreviations'''It is nice to see that [http://wayland.freedesktop.org/ Wayland] and [http://en.wikipedia.org/wiki/Mir_(software) Mir] also using [http://en.wikipedia.org/wiki/X_keyboard_extension XKB] like X Window System.[http://wayland.freedesktop.org/building.html see hear for wayland ], [http://www.phoronix.com/scan.php?page=news_item&px=MTM1Mzc see hear for MIR] This braille module will use the mapping files of key(to be pressed '''simultaneously''') -> letter.
Eg:
There will be two main lists for each languages. They are beginning list and middle list.
The beginning list will be loaded at first. When user type something the middle list will be loaded will continue in contain consonants and vowels middle list till user press a space or enter. Also there will be a special key to manually switch between the beginning and middle listcontain vowel signs.  
The beginning list will be as follows
f അ
fsk ഓ
djl ഔ
[https://github.com/Nalin-x-Linux/sbw-3/blob/master/share/pyshared/sbw2/data/malayalam/beginning.txt see hear for >> View complete Malayalam Beginning list ]
And middle list will be as follows
fsk ോ
djl ൗ
[https://github.com/Nalin-x-Linux/sbw-3/blob/master/share/pyshared/sbw2/data/malayalam/middle.txt see hear for >> View complete Malayalam Middle list ] '''Add map file for Indian languages.''' '''Add punctuation and numerals as separate map.''' '''Develop plugins for Qt and Gtk which can be used with Qt and Gtk apps.''' These are only for supporting braille layout to enable contractions and abbreviations.these plugin will check current layout and if it is braille it will enable contractions and abbreviations with respect to current braille language.
abbreviation key will be 'a'. Pressing 'a' after typing a abbreviation will replace current word(abbreviation) with it's full wordexpanded form.
abbreviation list will be as follows
ab about
ag again
agr agree
[https://github.com/Nalin-x-Linux/sbw-3/blob/master/share/pyshared/sbw2/data/english/abbreviations.txt view full >> View complete english abbreviation list ] Contractions list will be saved in different maps named with respect to there dots used. Unlike Braille we have to press contraction key before typing the letter to get the word. [https://github.com/Nalin-x-Linux/sbw-3/blob/master/share/pyshared/sbw2/data/english/jkl.txt >> View English Dot 4-5-6 contraction list] '''It is nice to see that [http://wayland.freedesktop.org/ Wayland] and [http://en.wikipedia.org/wiki/Mir_(software) Mir] also using [http://en.wikipedia.org/wiki/X_keyboard_extension XKB] like X Window System.[http://wayland.freedesktop.org/building.html see hear ] for wayland, [http://www.phoronix.com/scan.php?page=news_item&px=MTM1Mzc see hear] for MIR''' === Approach - 1 ===1 - Develop Gtk/Qt modules that will automatically and change the editable to braille mode. Hear we use key-release event from editable to implement this. The beginning list will be loaded at first. When user type something the middle list will be loaded and will continue in middle list till user press a space or enter. In this way the users don't have to switch manually from vowel to vowel sign and vice versa. Also there will be a special key to manually switch between the beginning and middle list. This is really what i have implemented on Sharada-braille-writer. 2 - Develop braille module for XKB witch would not include contraction and abbreviationsthis will be active automatically when we are in none QT/Gtk application. Hear we can't implement a list jumping mechanism which is against the concept of modular approach. So we use an extra key(may be semicolon) to simultaneously pressed with vowels sign to get vowels. Pros : Easy to implement User not to be concern about vowels and vowel signs during typing which make typing simple and fast. Follows Perkins brailler approach in Gtk/Qt apps. Each layers are independent.Cons : User has to switch between layouts while using Gtk/Qt app or others. Duplication exist. === Approach - 2 === 1 - Develop braille module for XKB as mentioned above. 2 - Develop plugins for Qt and Gtk which can be used with Qt and Gtk apps.These are only for supporting braille layout(from XKB) to enable contractions and abbreviations. These plugin will check current layout and if it is braille it will enable contractions and abbreviations with respect to current braille language.
Contractions list will be in the same layer. It will override XKB layer. Unlike Braille we have to press contraction key before typing the letter.
if any contraction map with that combination is available the Gtk/Qt plugin will load corresponding word for next user typed letter. if not it will simply give letter for that combination.
Pros : Same layout in everywhere. There exist no duplication in any of layers. Cons : Implementation is not easy User have to use extra key to get vowels. Not following Perkins brailler  '''Add contraction The gtk and abbreviation maps qt part will be done by creating respective im modules. in this way user can switch to braille mode by setting environmental variable (export QT_IM_MODULE=braille). for English,Malayalam more details [http://radekp.github.io/qtmoko/api/tut-createim-compose.html see hear for QT] and Hindi[http://www.murrayc.com/permalink/2006/12/22/creating-gtk-input-methods/ see hear for Gtk ].'''
'''Create Gui(Gtk) for managing language,adding,editing, removing map files, and editing abbreviation/contraction list.'''=== Additional ===
'''Integrate [https://live.gnome.org/Orca Orca screen reader](via making orca script) along with this so that there exists no accessibility issueAdd map file for other indian languages.'''
== A rough timeline for your progress with phases =='''Add punctuation and numerals as separate map.'''
'''Add contraction and abbreviation maps for English,Malayalam and Hindi.'''
April 22 - May 22 : Create main library. May 23 - 31 : '''Create Gui (Gtk) for managing languages,adding,editing and , removing map using C with Gtk. June 1 - 10 : Create adapter for X11 and Wayland. June 10 - 11 : Add english map June 12 - 20 : Create adapter for QT and Gtk June 21 - 22 : Add english contractions and abbreviations. June 23 - 30 : Make a primary test with the support of mentor. July 1 - 5 : Fix all existing bugs. July 6 - 10 : Add Hindi and malayalam mapsfiles,abbreviations and contractionsediting abbreviation/contraction list. July 11 - 16 : Add punctuation and numerals as separate map. July 16 - 20 : Secondary test in malayalam,hindi and english with native people who know's braille. July 21 - 25 : Add other maps for tamil,kannada and all other languages excluding Urdu and Sinhala. July 25 - 31 : Fix accessibility related problems. Sept 1 - 5 : Try to include contractions and abbreviations for all other languages. Sept 5 - 18 : Review code and database. also fix bugs and get ready for final evaluation.''
'''Integrate [https://live.gnome.org/Orca Orca screen reader](via making orca script) along with this so that there exists no accessibility issue.'''
== A rough timeline for your progress with phases ==
''' This will change with respect to selected approach'''
April 22 - May 12 : Develop braille module for XKB
May 13 - 18 : Add map file for Indian languages.
May 19 - 21 : Add punctuation and numerals as separate map.
May 21 - June 10 : Develop plugins for Qt and Gtk
June 11 - 13 : Add english contractions and abbreviations.
June 14 - 20 : Make a primary test with the support of mentor.
June 20 - 25 : Fix all existing bugs.
June 26 - July 10 : Create Gui(Gtk) for adding,editing and removing maps.
July 11 - 16 : Add Hindi and malayalam maps,abbreviations and contractions.
July 16 - 20 : Secondary test in malayalam,hindi and english with native people who know's braille.
July 21 - 25 : Add other maps for tamil,kannada and all other languages excluding Urdu and Sinhala.
July 25 - 31 : Fix accessibility related problems.
Sept 1 - 5 : Try to include contractions and abbreviations for all other languages.
Sept 5 - 18 : Review code and database. also fix bugs and get ready for final evaluation.
== Tell us about something you have created.==