The essential thing is that pressing a dead key produces no output by itself, but tells the operating system to treat the next key differently, and to produce something different from what it would otherwise produce.
The most common types of dead keys are fairly simple, just modifying the next key stroke, producing output and returning to state “none”. However, it is possible to have a second dead key triggered after the first, so that you go to a second dead key state. There is no limit to the length of such a chain of dead keys, but it is rarely practical to go beyond two or three.
Another important concept with dead keys is the “terminator”. Consider the case of ⌥e producing an acute accent. What happens if the user types ⌥e followed by a digit? We don’t expect to get an accented digit, so the system does something different. Each dead key has a special string called the terminator, and it will produce the terminator when nothing is defined for that combination. So, if the terminator for the acute state is a free-standing acute accent, ́, typing ⌥e and then 5 will produce ́5. In other words, if we don’t have any sensible character to produce, we put out the terminator followed by the character associated with the key that the user typed.
Note that a terminator can be the empty (or null) string. So, if you have a dead key state with the null string for the terminator, then, when the user types a combination of the dead key plus a key that doesn’t produce any output in the dead key state, it is as though the dead key was not typed at all.
Thank you! I have read through the .pdf manual and still trying to think of ways to achieve this...Is there any way to have the keyboard enter a new dead-key state while giving an output? Perhaps I could just write a new state for every key if need be... Would it be possible to simply edit the .keylayout file afterwards using Visual Studio code?
To give a concrete example how this could work:Top left on the keyboard is a key labeled ̀ (on US keyboards).If you can spare this key, you could make it into a dead key for the second variants for the vowels.So typing an A gives the first variant, typing ̀ then A gives the second.Also: typing an E gives the first variant, typing ̀ then E gives the second.This can be extended further by making the sequence ̀ ̀ enter a second-level dead key state.
Then typing an A gives the first variant, typing ̀ then A gives the second, typing ̀ ̀ then A gives the third variant –
I hope you don’t mind that I post your PM here, so the thread is coherent:Thank you! I have read through the .pdf manual and still trying to think of ways to achieve this...Is there any way to have the keyboard enter a new dead-key state while giving an output? Perhaps I could just write a new state for every key if need be... Would it be possible to simply edit the .keylayout file afterwards using Visual Studio code?My advice is not to squeeze too hard :)I mean, some non-standard things may be possible by editing the XML code, but usually you end up with a freak or an unreliable thing – e.g. a layout that works in some applications and not or differently in others, or it stops working when a new OS version comes around.As to your question: I’m pretty sure there is no way to have a keypress do both things: enter a dead-key state & producing output.The only exception would be if you are in a dead-key state and the key you press is 1. not defined in that state and 2. itself a dead key in state 0. Then the terminator of the active dead-key state would be produced onscreen & the dead-key state of the second keypress is entered.
What’s the name of the language you are talking about?
--
You received this message because you are subscribed to the Google Groups "Ukelele Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukelele-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukelele-users/77072203-109e-44e3-9705-3c3d4f4ed29e%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Ukelele Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukelele-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukelele-users/9207817f-5543-4c7a-87b3-499606cc8fee%40googlegroups.com.
Hm... I do not think that is can be ‘as simple as QWERTY’ for such a script.
On 14 May 2020, at 23:07, codo dev <codo....@gmail.com> wrote:
Unless we create a keyboard that feels as simple to use as QWERTY, it is unlikely that regular people will use it on a regular basis.
On Thursday, May 14, 2020 at 4:05:30 PM UTC-4, codo dev wrote:The language is Telugu.
On Thursday, May 14, 2020 at 2:37:50 PM UTC-4, Tom wrote:What’s the name of the language you are talking about?
> On May 14, 2020, at 11:24 AM, codo dev <codo....@gmail.com> wrote:
>
>
>
> The reason that I am working so passionately on this project is because I'm working on an Indian language--
You received this message because you are subscribed to the Google Groups "Ukelele Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukelel...@googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to ukelele-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukelele-users/94a92a9a-f53b-4d42-8d37-c243147a6d72%40googlegroups.com.
I do not know Telugu, it is quite clear that you need an input method which cannot be created, I’m afraid, with UKELELE. Perhaps you should contact Apple engineering for this. Or Michael Everson:
On 14 May 2020, at 23:35, codo dev <codo....@gmail.com> wrote:
It can be! By looking at how current Telugu speakers use QWERTY to write their script in Roman (English) characters. There are many habitual ways of writing which are known to all speakers, so the keyboard can be condensed & arranged in a way that feels more natural to how the language is currently used. I've already created one potential layout concept..... but I'm sure it could be improved upon.Some examples.... in Telugu, each letter has a secondary form. So the keyboard currently looks a bit too busy. But it is possible to have a keyboard where every letter only shows the primary/base-form, but is coded to automatically output the correct form based on when it is typed.... Condition: If a vowel comes directly after a consonant, then it is secondary. If a vowel comes directly after a space, then it is primary. The only character that can follow a vowel is a consonant or a special vowel ("am" or "aha"). Syllable clusters always end in a vowel, except for at the end of a word where it can end with a consonant in base form using a virama....Many vowels have a long-form. When Telugu is written in English, we can imagine these vowels as: a, aa, i, ii, u, uu, ru, ruu, e, ee, (ai), o, oo, (au), (am), (aha). As you can see, many of the vowels are simply a longer version and are usually written as doubled in English characters. So, what if a Telugu keyboard only had the short version: a, i, u, ru, e, o... Then the user simply taps the key once for the short version & twice for the long version. This user-experience relates the most to how Telugu is typed today using English characters - making the switch to the keyboard much more natural. It also more closely matches the experience of typing to how the characters are produced when speaking. The rhythm of typing would more closely match the rhythm of speaking.Also, all hard-breath consonants would simply be shift, which is how it is typically written in English texts when users can't add the dot below. It feels more natural to add something extra for a hard-breath consonant, as we add something extra when speaking.I am no scholar, but I did study music & percussion, which is all about how things feel...I believe we can find a way to make this happen. :) And I've definitely discovered a new passion through this project.
On Thursday, May 14, 2020 at 4:08:45 PM UTC-4, Cattus Thraex wrote:Hm... I do not think that is can be ‘as simple as QWERTY’ for such a script.On 14 May 2020, at 23:07, codo dev <codo....@gmail.com> wrote:Unless we create a keyboard that feels as simple to use as QWERTY, it is unlikely that regular people will use it on a regular basis.
On Thursday, May 14, 2020 at 4:05:30 PM UTC-4, codo dev wrote:The language is Telugu.
On Thursday, May 14, 2020 at 2:37:50 PM UTC-4, Tom wrote:What’s the name of the language you are talking about?
> On May 14, 2020, at 11:24 AM, codo dev <codo....@gmail.com> wrote:
>
>
>
> The reason that I am working so passionately on this project is because I'm working on an Indian language--
You received this message because you are subscribed to the Google Groups "Ukelele Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukelel...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukelele-users/9207817f-5543-4c7a-87b3-499606cc8fee%40googlegroups.com.
--
You received this message because you are subscribed to the Google Groups "Ukelele Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukelel...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukelele-users/94a92a9a-f53b-4d42-8d37-c243147a6d72%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to ukelele-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukelele-users/18cb263e-9203-4ff1-84a6-c2610462368b%40googlegroups.com.
Thanks for that info, the project sounds interesting. It seems like you should be able to do something with ukelele. Did you start from Apple’s Telugu Qwerty layout? Are you familiar with how that works? Is your goal basically to eliminate the need to type viramas to create various forms?
--
You received this message because you are subscribed to the Google Groups "Ukelele Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ukelele-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ukelele-users/73058a03-b229-4256-a5ac-7bfdbf4357c1%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to ukelel...@googlegroups.com.
Now that, I can rule out this, I am looking to try other options. I understand from the earlier discussions that Ukelele might not work for this case.
On Nov 11, 2022, at 12:53 AM, Baskaran Sankaran <bask...@gmail.com> wrote:Now that, I can rule out this, I am looking to try other options. I understand from the earlier discussions that Ukelele might not work for this case.