02-04-2011, 03:42 PM | #1 |
Groupie
Posts: 157
Karma: 1777
Join Date: Sep 2010
Location: Minsk, Belarus
Device: Kindle 4
|
[K3] Hardware keyboard localization
Now it's possible to localize physical K3 keyboard. Currently my hack supports Russian layout, but it's easy to map your own characters to hardware keys.
*Installing*. This hack installs as any other hacks. First of all you must install Jailbreak and then this hack. During installation it places new Booklet to Kindle, creates new keyboard directory at userstore and places keyboard.txt file inti it. Keyboard.txt has key bindings. It must be in UTF-8 format only! *How to use* Simply switch layout by pressing Shift+Space *Simple European mode* Now it's not needed to switch layout to enter European character like Ě,Š,Č,Ř,Ž etc... After install, place keyboard_european.txt into keyboard folder and restart Kindle. Now you can enter Ě by typing Shift+E+E (ie 'EE') to enter ě enter e, Shift+E (ie 'eE'). To enter EE or eE as is, simply do not hold Shift when typing letter. Currently European key mappings are: Code:
EE=Ě SS=Š CC=Č RR=Ř ZZ=Ž YY=Ý AA=Á II=Í UU=Ú TT=Ť DD=Ď NN=Ň LL=Ĺ oO=ó eE=ě sS=š cC=č rR=ř zZ=ž yY=ý aA=á iI=í uU=ú tT=ť dD=ď nN=ň lL=ĺ update_physkeyb_0.04.zip Last edited by Dr. Drib; 06-16-2014 at 10:44 AM. Reason: added simple mode info |
02-07-2011, 05:37 AM | #2 |
Groupie
Posts: 157
Karma: 1777
Join Date: Sep 2010
Location: Minsk, Belarus
Device: Kindle 4
|
New veresion 0.02 released:
+ Added support for "Keyboard and 24h time format hack" + Added new Russian layout * Key combination changed from ALT+SPACE to ALT+. due to conflict with Audio player. |
Advert | |
|
02-07-2011, 06:54 PM | #3 |
Addict
Posts: 219
Karma: 404
Join Date: Nov 2010
Device: Kindle 3G, Samsung SIII
|
I have mapped the central European characters instead of the default Russian ones and it works very well! Thanks!
While it is very useful already, I was wondering whether it could be possible to induce the special characters by pressing a combination of keys rather than by entering a new layout mode. For example, AA+Q could write the character that is currently written by Q in the new layout mode, AA+q could write the character that is currently written by q in the new layout mode etc. The reason for this is that while switching a layout completely is certainly preferable for different alphabets, one usually needs to mix the ASCII latin characters with special characters derived from latin in majority of other European languages - which requires permanently switching the layout there and back with the current implementation... Last edited by janvanmaar; 02-07-2011 at 06:57 PM. |
02-09-2011, 08:58 AM | #4 |
Groupie
Posts: 157
Karma: 1777
Join Date: Sep 2010
Location: Minsk, Belarus
Device: Kindle 4
|
New veresion 0.03 released:
+ Added support for 3.1 firmware * ALT+. changed to Shift+Space due to conflict with new 3.1 firmware *Notice* To preserve your version of keyboard.txt - backup it before upgrade version and restore after. |
02-09-2011, 10:20 AM | #5 |
Guru
Posts: 987
Karma: 8641
Join Date: Aug 2010
Device: Kindle 3G+WiFi
|
|
Advert | |
|
02-09-2011, 10:30 AM | #6 |
Groupie
Posts: 157
Karma: 1777
Join Date: Sep 2010
Location: Minsk, Belarus
Device: Kindle 4
|
|
02-09-2011, 10:32 AM | #7 |
Guru
Posts: 987
Karma: 8641
Join Date: Aug 2010
Device: Kindle 3G+WiFi
|
|
02-11-2011, 01:37 AM | #8 | |
Linux devotee
Posts: 598
Karma: 2069047
Join Date: Feb 2011
Device: Kindle 3, Kindle 4B, Kindle PW2
|
Quote:
I don't think there are any unoccupied modifier keys left. I think that the problem could be addressed by adding special option to the keyboard.txt file (say "auto_switch_back = true"). Once this option is activated, physkeyb would switch the keyboard layout back to the original one after typing single letter. The main drawback of this hack is that it doesn't work in the browser. That limits its usage to making notes and entering search strings. It's nice though that it can happily coexist with keybru and launchpad. Last edited by dsmid; 02-11-2011 at 01:47 AM. |
|
02-11-2011, 02:35 AM | #9 |
Groupie
Posts: 157
Karma: 1777
Join Date: Sep 2010
Location: Minsk, Belarus
Device: Kindle 4
|
|
02-11-2011, 03:59 AM | #10 |
Linux devotee
Posts: 598
Karma: 2069047
Join Date: Feb 2011
Device: Kindle 3, Kindle 4B, Kindle PW2
|
Perfect ! Thanks for the hint.
Do you think it would be possible to implement the 'auto_switch_back' feature I mentioned earlier ? That would make your hack unbeatable. What about implementation like this: Code:
... autoSwitchBack = new File("/mnt/us/keyboard/autoSwitchBack").exists(); ... if (!keyboardEN && trans.containsKey(string)) { keyevent.setKeyChar(((String) trans.get(string)).charAt(0)); cont.MyLog("Translated to: " + keyevent.getKeyChar()); if (autoSwitchBack) { keyboardEN = !keyboardEN; cont.MyLog("Keyboard auto-switched: " + keyboardEN); } } ... Thanks for making all the hacks that make my life much easier. |
02-11-2011, 04:37 AM | #11 | ||
Addict
Posts: 219
Karma: 404
Join Date: Nov 2010
Device: Kindle 3G, Samsung SIII
|
Quote:
Quote:
Another possibility which can be used with the current hack as it is: Disabling the mapping of lowercase characters (removing them from the txt file) and remapping capitals to special lowercase characters (with diacritics etc). That way, one can type the special lowercase characters by Shift+character in the new layout mode while he has to switch back to the original layout when capital letters are needed. Special capital characters may be still typed through Alt+Sym (using the previous localization hack of Sir Alex). Not ideal but I find it useful. |
||
02-12-2011, 04:40 AM | #12 |
Groupie
Posts: 157
Karma: 1777
Join Date: Sep 2010
Location: Minsk, Belarus
Device: Kindle 4
|
New version available: 0.04
+ Added special simple mode for European characters Now it's not needed to switch layout to enter European character like Ě,Š,Č,Ř,Ž etc... After install, place keyboard_european.txt into keyboard folder and restart Kindle. Now you can enter Ě by typing Shift+E+E (ie 'EE') to enter ě enter e, Shift+E (ie 'eE'). To enter EE or eE as is, simply do not hold Shift when typing letter. Currently European key mappings are: Code:
EE=Ě SS=Š CC=Č RR=Ř ZZ=Ž YY=Ý AA=Á II=Í UU=Ú TT=Ť DD=Ď NN=Ň LL=Ĺ oO=ó eE=ě sS=š cC=č rR=ř zZ=ž yY=ý aA=á iI=í uU=ú tT=ť dD=ď nN=ň lL=ĺ |
02-12-2011, 03:07 PM | #13 |
Addict
Posts: 219
Karma: 404
Join Date: Nov 2010
Device: Kindle 3G, Samsung SIII
|
Just perfect! Thanks a lot!
|
02-12-2011, 04:01 PM | #14 |
Linux devotee
Posts: 598
Karma: 2069047
Join Date: Feb 2011
Device: Kindle 3, Kindle 4B, Kindle PW2
|
Yes, it's nearly perfect now.
I don't like playing with the Shift key so I created my own keyboard_european.txt and assigned keys as follows: Code:
ss=š SS=Š However, the problem is that now you can't type words like book or www. No matter how long you wait before entering the second letter, you still get an accented character. How complicated would be to implement a waiting timeout ? I can try to code it myself if you'd be so kind and send me the source code. Whatever suits you best. |
02-22-2011, 09:48 AM | #15 |
Linux devotee
Posts: 598
Karma: 2069047
Join Date: Feb 2011
Device: Kindle 3, Kindle 4B, Kindle PW2
|
If anybody's interested, I've implemented the double-keypress timeout feature. Linked archive contains Czech/Slovak keyboard layout as displayed below.
Now Kindle is able to tell single-keypress from double-keypress and generate different character for both. That's what works the best for me. Last edited by dsmid; 03-31-2011 at 01:42 AM. |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Kindle 3 localization | JirkaS | Kindle Developer's Corner | 287 | 05-20-2018 10:08 AM |
Physical eBooks | Ben Thornton | News | 42 | 04-10-2014 11:46 AM |
Keyboard localization (hack) | Sir Alex | Kindle Developer's Corner | 72 | 04-16-2013 03:05 PM |
Your vote - keyboard or no keyboard on Kindle | mrzerga | Amazon Kindle | 56 | 03-10-2011 07:22 PM |
From physical to digital | maynard | Workshop | 13 | 04-12-2009 03:24 PM |