none
Custom keyboard layout does not work as intended RRS feed

  • Question

  • I'm trying to create a keyboard layout for a language (lets call it LangX) which at the current moment does not have a standard keyboard layout. LangX is based on the Arabic character set with some extensions. All the letters has their Unicode defined. The language is written from right to left.

    I tried to use Microsoft Keyboard Layout Creature (MKLC) to create the layout I was looking for but since nor Windows or .Net have this language among its supported official languages I had to create a custom culture (locale) using C# and  I have enabled the IsRightToLeft property in the custom culture and installed it in my windows. I used this custom culture as the base of my keyboard layout and created the layout I was looking for.

    After installing it and testing in some text editor I found some strange behavior and specially in word. My layout prints all the letters correctly to the screen but the marker does not move from right to left. It is stuck at the right side and prints the Arabic based characters as it was a left to right language.

    Our analysis shows that the keyboard layout sends the correct codes to windows but it is missing something which tell word (and other programs) that this layout is a right to left Arabic based layout and hence should be treated accordingly.

    PS! The layout works fine in Excel though

    I have not been able to find out what the problem is. Please help .


    • Edited by Kovan The Great Friday, May 25, 2012 11:57 PM
    • Moved by Forrest Guo Tuesday, May 29, 2012 7:45 AM custom culture programming (From:Word for Developers)
    Thursday, May 24, 2012 7:01 PM

All replies

  • You cannot do that with .Net, it is far to deep in the bottom of the OS

    For the remapping of the keyboard layout others than standard given you need for that intel assembler or C. 


    Success
    Cor

    Tuesday, May 29, 2012 9:19 AM
  • Many thanks for the reply Cor Lightert.

    It's not obvious to me why it's not possible create a custom keyboard layout which is right to left based instead of left to right?

    It is possible to create a custom latin keyboard layout based on a custom language and it works fine. Why not be able to create one based on arabic character set? 

    I dont understand what you mean by remapping the keybaord layout? Could you please explain it to me and guide me to a solutions to my problem?

    Would the problem be solved if I create a custom keybaord driver?


    Sunday, June 10, 2012 8:13 PM