Hackers keyboard for android with greek tonos character — τόνος στο μικρό ελληνικό πληκτρολόγιο του hacker's keyboard

04.09.14

Greek has only one (actually two, but the umlaut (διαλυτικά) is rare) accent character and it is used once in all words with more than one syllable. As such it is waaay faster to type the character before the corresponding letter than long pressing the letter to choose from the alternatives, especially since it is so frequently used. Most people leave this task to the auto-correct but as there are words that differ only at the place of the accent, and as I don't use autocomplete I prefer having a dedicated accent character.

Very few android keyboards have this and I couldn't find an open source one that did, except hacker's keyboard, which unfortunately has it only on the 5-row layout which results in too small keys in portrait, even for the Galaxy Note. Thus I decided to modify it and add the accent character to the 4 row layout too. I disabled the voice typing feature because eclipse complained and wouldn't build so it was easier for me to just comment it out.

Here's an apk if you want to try it and here's the patch

diff -r d716b33b5dab java/res/xml-el/kbd_qwerty.xml
--- a/java/res/xml-el/kbd_qwerty.xml    Tue Dec 24 12:34:10 2013 -0800
+++ b/java/res/xml-el/kbd_qwerty.xml    Thu Sep 04 14:48:32 2014 +0300
@@ -35,7 +35,7 @@
         <Key android:keyLabel="π" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="πΠ" android:keyEdgeFlags="right"/>
     </Row>
     <Row>
-        <Key android:keyLabel="α" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="αΑάΆ" android:horizontalGap="5%p" android:keyEdgeFlags="left"/>
+        <Key android:keyLabel="α" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="αΑάΆ" android:keyEdgeFlags="left"/>
         <Key android:keyLabel="σ" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="σΣς"/>
         <Key android:keyLabel="δ" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="δΔ"/>
         <Key android:keyLabel="φ" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="φΦ"/>
@@ -43,7 +43,9 @@
         <Key android:keyLabel="η" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="ηΗήΉ"/>
         <Key android:keyLabel="ξ" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="ξΞ"/>
         <Key android:keyLabel="κ" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="κΚ"/>
-        <Key android:keyLabel="λ" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="λΛ" android:keyEdgeFlags="right"/>
+        <Key android:keyLabel="λ" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="λΛ"/>
+        <Key android:keyLabel="&#x301;" android:popupKeyboard="@xml/kbd_popup_template" android:popupCharacters="&#x301;&#x308;&#x313;" android:keyEdgeFlags="right"/>
+
     </Row>
     <Row>
         <Key android:codes="@integer/key_shift" android:keyIcon="@drawable/sym_keyboard_shift" android:iconPreview="@drawable/sym_keyboard_feedback_shift" android:keyWidth="15%p" android:isModifier="true" android:isSticky="true" android:keyEdgeFlags="left"/>
@@ -133,4 +135,4 @@
         <Key android:keyLabel="." android:keyIcon="@drawable/hint_popup" android:popupKeyboard="@xml/popup_punctuation" android:isModifier="true"/>
         <Key android:codes="@integer/key_return" android:keyIcon="@drawable/sym_keyboard_return" android:iconPreview="@drawable/sym_keyboard_feedback_return" android:keyWidth="15%p" android:isModifier="true" android:keyEdgeFlags="right"/>
     </Row>
-</Keyboard>
\ No newline at end of file
+</Keyboard>