Topic Deleting Previous rule and inserting new on key combination

We have two new locations for Keyman technical support:

The Tavultesoft Forums are now read only.


# Deleting Previous rule and inserting new on key combination   2013-07-21 19:30:33.707
Sougata Das
Hi,
I have been using a Bengali Phonetic typing software "Celcius Keyring" which is now not supported in Win7/Win8 also the product is not available any more for online licensing. Since I have a lot of documents already created in that software which uses a non-unicode proprietary font. I need a way to be able to edit those documents in their Keyboard scheme.

I bought 2 licenses of Keyman Desktop and now find that I need to develop a keyboard of my own so I downloaded Developer trial to roll out my own.

So my questions are:
1. Is the source code (.KMN)for Bangla Isis layout by Gautam Sengupta available ?? (Being close, that would help me learn and customize)
2. For inserting "MATRAs/Aakaars" I have created a store named "forAKAAR" of all the characters in concern. They can be inserted before or after the character. Eg.:
:

any(forAKAAR) +'a' > context U+00A1            c Insert the  Aa-kaar After Character 
any(forAKAAR) +'e' > U+00DD index(forAKAAR,1)  c Insert the E-Kaar before the Character

Now my problem is that the legacy software has a "ee" for another which inserts after the character. The rule of the second line gets fired for the first "e", keypress and updates what is onscreen, for the second "e" which to the user is "ee" the previous rule should be deleted preserving the correct index for the store and the new character inserted after it.
Since the font is non-unicode I am having hard time figuring out what to do. In unicode it would be

Character Typed + 'e' > U+09C7 BENGALI_VOWEL_SIGN_E
Character Typed + 'ee' > U+09C0 BENGALI_VOWEL_SIGN_II

I don't have a clue here, could anyone help.

Regards
Sougata Das
# RE: Deleting Previous rule and inserting new on key combination   2013-07-21 19:38:47.927
Sougata Das
I forgot to mention it is the same as typing "i" and "ii" in Bangla ISIS Keyboard, I just need different combinations with different outputs. BTW is there a FAQ or How to section somewhere here around for those important "GOTCHAS"
# RE: Deleting Previous rule and inserting new on key combination   2013-07-22 09:04:31.037
Marc Durdin
Tavultesoft Staff
Hi Sougata,

Thanks for the questions. The first thing to remember is that Keyman works not on a sequence of keys, but rather on the current context and current keystroke. The context is essentially what is already in the document at the cursor point. So for example, you could do something like this:

:
any(forAKAAR) + 'e' > U+00DD context(1)
U+00DD any(forAKAAR) + 'e' > context(2) $ee_char
   c where $ee_char is the EE-Kaar character


The second rule above will delete the U+00DD, and insert the $ee_char after the forAKAAR character. If it needed to go before the character, then you could do this instead:

:
U+00DD any(forAKAAR) + 'e' > $ee_char context(2)


Note that I am using the context() statement instead of the index() statement, as we just want to emit the exact same character from the context, so we don't need index()'s mapping functionality.

Sorry, but the source to the ISIS keyboards is not available.
# RE: Deleting Previous rule and inserting new on key combination   2013-07-22 16:33:07.910
Sougata Das
[quote="Marc Durdin"]Hi Sougata,
The first thing to remember is that Keyman works not on a sequence of keys, but rather on the current context and current keystroke. The context is essentially what is already in the document at the cursor point.[/quote]
Thanks Marc, this should get things moving and align my approach in the right direction. Till I stumble into something else, thanks.
# RE: Deleting Previous rule and inserting new on key combination   2015-11-23 21:35:09.033
Sougata Das
Long time. I couldn't complete my keyboard back in 2013.I have some spare time now and would like to resume the development.
How can I insert matraas to conjuncts ??

The conjuncts are 2, 3, 4 or 5 key pressed in sequence. The output is a combination of characters or sometimes a single character dedicated to a particular conjunct-combination.

Now a conjunct can have matraas inserted before or after following a single/double vowel key combinations.

For Example (Only KeyCombos and required outputs are shown):

:

's' + 'b'                   > U+00FC
's' + 'h' + 'b'              > U+006E U+00C4
's' + 'h' + 'c' + 'h'           > U+00D5 U+0051
's' + 'h' + 'c' + 'h' + 'h'    > U+00D5 U+0052
's' + 'h' + 'h' + '`' + 'N'    > U+006F U+00B7
's' + 'h' + 'h' + 'N'           > U+006F U+00B7
's' + 'h' + 'h' + 'b'          > U+00D6 U+0068
's' + 'h' + 'h' + 'k'          > U+00D7 U+004C
's' + 'h' + 'h' + 'm'          > U+00D6 U+006A
's' + 'h' + 'h' + 'p'          > U+00D6 U+0066
's' + 'h' + 'h' + 'p' + 'h'    > U+00D6 U+0067
's' + 'h' + 'h' + 'T'           > U+00F8
's' + 'h' + 'h' + 'T' + 'h'    > U+00F9
's' + 'h' + 'l'                > U+006E U+00D4
's' + 'h' + 'm'                > U+006E U+00C8
's' + 'h' + 'n'                > U+006E U+00C0
's' + 'h' + 'r'                 > U+006E U+00CB
's' + 'h' + 't'                 > U+00F7
's' + 'k'                    > U+00FA
's' + 'k' + 'h'                 > U+00D8 U+004D
's' + 'k' + 'r'                 > U+00FB
's' + 'l'                    > U+0070 U+00D4
's' + 'm'                    > U+00D8 U+006A
's' + 'n'                    > U+00D8 U+0065
's' + 'p'                    > U+00D8 U+0066
's' + 'p' + 'h'                 > U+00D8 U+0067
's' + 'r'                    > U+0070 U+00CB
's' + 'T'                    > U+00D8 U+0056
's' + 't'                    > U+00D9 U+00B9
's' + 't' + 'h'                 > U+00D8 U+0062
's' + 't' + 'r'                 > U+00D8 U+0153
's' + 'T' + 'r'                 > U+00D8 U+0056 U+00CC


I guess the right hand side of the equation of line 1 wraps down to line 2 to make keyman work on the context but not sure if context is just the character at cursor or the array till it hits space. The question still remains how do I insert matraas before or after.

This time I have figured upto 272 different combinations for conjuncts. The typing feel in the old software is like transliteration. I wish I could attach a font and some sample.
# RE: Deleting Previous rule and inserting new on key combination   2015-11-23 21:36:55.410
Sougata Das
BTW, Forgot to mention. If I can actually do this can I post this on Github ?