-
-
Notifications
You must be signed in to change notification settings - Fork 179
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New Hindi layout #313
New Hindi layout #313
Conversation
res/xml/devanagari.xml
Outdated
<?xml version="1.0" encoding="utf-8"?> | ||
<keyboard> | ||
<row> | ||
<key shift="0.35" width="0.9" key0="क" key1="ख" key2="घ" key3="ङ" key4="ग"/> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The biggest difference between my layout and the current Hindi layout is the following:
The devanagari characters are organized by mouth/tongue movements https://omniglot.com/writing/devanagari.htm . So for example ग=g, क=k (these are similar tongue movements). I've grouped all similar-tongue-movement characters into the same key
The previous layout has some of these characters grouped together in the same key, but not always
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I talked to one of my hindi-speaking friends, and he said that this grouping (by tongue movements) is the best way to organize the alphabet (and thus also a keyboard layout)
res/xml/devanagari.xml
Outdated
<key width="0.9" key0="च" key1="छ" key2="झ" key3="ञ" key4="ज"/> | ||
<key width="0.9" key0="ट" key1="ठ" key2="ढ" key3="ण" key4="ड"/> | ||
<key width="0.9" key0="त" key1="थ" key2="ध" key3="न" key4="द"/> | ||
<key width="0.9" key0="प" key1="फ" key2="भ" key3="म" key4="ब"/> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
another example: म=m, फ=f, ब=b, प=p (these are all lip-movements)
res/xml/devanagari.xml
Outdated
@@ -0,0 +1,30 @@ | |||
<?xml version="1.0" encoding="utf-8"?> | |||
<keyboard> | |||
<row> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This row contains only the the consonants https://omniglot.com/language/articles/devanagari.htm
res/xml/devanagari.xml
Outdated
<key width="0.9" key0="र" key1="ज्ञ" key2="ल" key3="य" key4="व"/> | ||
<key width="0.9" key0="ह" key1="श" key2="ळ" key3="स" key4="ष"/> | ||
</row> | ||
<row> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this row contains only the devanagari vowels https://omniglot.com/language/articles/devanagari.htm
res/xml/devanagari.xml
Outdated
<key width="0.9" key0="ह" key1="श" key2="ळ" key3="स" key4="ष"/> | ||
</row> | ||
<row> | ||
<key shift="0.35" width="0.9" key0="ा" key1="अ" key2="आ"/> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I shifted to make it easier to swipe up&left, down&left on the first key (and similarly for the last key)
res/values/arrays.xml
Outdated
@@ -61,7 +61,7 @@ | |||
<item>Bone</item> | |||
<item>ЙЦУКЕН (Українська)</item> | |||
<item>বাংলা</item> | |||
<item>हिन्दी</item> | |||
<item>देवनागरी (हिंदी)</item> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Regarding the spelling of Hindi https://forum.unilang.org/viewtopic.php?t=10200
@@ -281,7 +281,62 @@ private static String apply_fn_char(char c) | |||
case 'ס': return "segol"; | |||
case 'ב': return "hataf_segol"; // reduced segol | |||
case 'צ': return "tsere"; | |||
// other | |||
// Devanagari symbols |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So I'm using the fn
key to allow a second "layer". Before, I tried to squeeze all the symbols into a single layer (kinda like the previous hindi layout), but I didn't like how congested/squeezed it turned out.
So for my layout, the original, non-fn
layer contains the most-used characters, and the fn
layer contains seldom used characters
res/xml/devanagari.xml
Outdated
<key key0="ं" key1="ॐ" key2="ऽ" key3="ः" key4="""/> | ||
<key key0="।" key1="," key2=";" key3="!" key4="\?"/> | ||
<key key0="़" key1="॰" key2="०" key3="-" key4="॒"/> | ||
<key key0="५" key1="१" key2="३" key3="७" key4="९" key5="४" key6="६" key7="२" key8="८"/> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wasn't really sure how to add the numbers, so I just threw them in a number pad
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your great work! The layout looks nice and well researched.
@Raj9039852537 Do you still use this app ?
In case someone wants the previous "hindi" layout back, how should we call it ?
You need to change the default_layout
of the hindi subtype (hi_IN
) in res/xml/method.xml. If that makes sense, you can also add support for the languages you mentionned (Nepali, Marathi, Konkani).
I removed some of the ASCII characters in the previous layout (like [, ], (, ..., #, &).
That's not a problem. The "secondary layout" option can be used to bring a layout suitable for passwords.
Good point - give users the choice of which layout. There are probably users who are used to the current Hindi layout. I followed the naming pattern of your Hebrew layouts. |
Yes, I am using it. As for naming the layout I suggested is inscript layout used vastly in PC.
Providing old layout is usefuI for peoples who are more comfertable with that layout. Also if it is possible, a choice to edit layout at runtime (just like Multiling O Keyboard ) will be an awesome addition. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
I just wanted to post an update about this: I still use this layout daily mainly to text my Indian friends. I did make one tweak: Finally I did write a blog about this https://www.lrvideckis.com/blog/2023/08/21/devanagari_keyboard.html |
Thanks for the update. Could you open a new PR to update the layout for everyone ? |
Hi! First thank you for creating/maintaining a great keyboard!
Next my credentials: I'm an American (native English speaker) learning Hindi. I have a few friends from Goa, India who are fluent in Hindi, and have given me advice on this layout.
Some misc things:
shift
as it isn't used in Devanagari script (and also caps lock)Some possible downsides of this layout:
[
,]
,(
, ...,#
,&
). One of my hindi-fluent friends said these characters are never used in the language, besides borrowed characters https://blogs.transparent.com/hindi/punctuation-in-hindi/ which I did include. Despite this I see your point about these characters being useful for passwords. I did create a version where I crammed in many ASCII symbols, but then the layout looked cluttered overall. I guess it is a preference, and my preference is the cleaner look (without these symbols). I did leave some empty spaces in some keys if you want to re-add these ASCII charactersloc
characters.