keyboard

Change key mappings | Create your own LFKs

Related pages: lfks.html, xmls, anytamilfont.html, anytamilfont-t.html

LFK - what is it?

  • LFK refers to "'Language + Font Encoding + Keyboard Layout' combination", wherever it appears in this page.

  • Whenever Azhagi+ starts, in the opening screen, you can see a listing of the various LFKs in which you can type using Azhagi+. For e.g.

    • An LFK of "Hindi + Unicode + PhoneticTransliteration" means that you can type in Hindi (Language) in Unicode (Font encoding) in Phonetic mode (Keyboard layout).

    • Similarly, an LFK of "Tamil + Unicode + TamilNet99" means that you can type in Tamil (Language) in Unicode (Font encoding) in TamilNet99 mode (Keyboard layout).

  • A list of all the LFKs available in Azhagi+ (and Azhagi too) can be seen at lfks.html

  • A list of all the XML files available in Azhagi+ can be seen here

  • Important NOTE:

    All said and done, 'Language', 'Font Encoding' and 'Keyboard Layout' are broader concepts. Since primarily Azhagi+ was/is used for typing/transliterating in various world languages, these headings ('Language', 'Font Encoding' and 'Keyboard Layout') were chosen so, initially. Otherwise, 'Language' does not mean one should strictly specify a language's name only as part of 'Language'. Same is the case with 'Font Encoding' and 'Keyboard Layout' too.

    So, for instance, one can have an LFK as 'Grantha+Unicode+PhoneticTransliteration' too where Grantha is a script. In fact, one can have an LFK (carrying mathematical symbols) as 'Maths+English+Symbols' too. It all depends on how the user wants to readily idenitfy his needs with an LFK or how he wants to quickly remember and recall an LFK. If you need more understanding on this, please read the XML primer here.

How to change (modify/add/delete/customize) the key mappings for any LFK?

  • Important Note:

    • The facility to change key mappings has been available in Azhagi+ since January 2012.

    • If you know to read Tamil, then, apart from the information below, please read this Facebook post (in Tamil - தமிழில்) too - https://www.facebook.com/groups/Azhagi/permalink/1562481310458090 - by user/well-wisher Sri Vijaya Sarathy - giving step-by-step instructions in Tamil to modify an existing XML file of Azhagi+ - in a much easier manner, using Microsoft EXCEL. If you need further clarifications on Sri Vijaya Sarathy's methodology, kindly contact him at cvijayasarathy@gmail.com

    • Please do not feel overwhelmed by seeing the instructions below (starting with the 'Modify key mappings' section), even before reading them or even without reading them fully.

    • As such, it is just a 'simple task' of opening a file and typing out the necessary modifications (which is what you anyway do with Azhagi+ whenever you wish to type out a document/email/tweet/etc. Is n't it?). I have put this aforesaid 'very simple task' as various steps below (that too classified under various sections as 'modify', 'add', 'delete', etc.) only for your better understanding. If you go through the steps, you yourself will realise the same.

    • Even users who are not computer/tech-savvy and even users who are very old (for instance, Mr. Basanna from Bangalore, aged more than 80 years) have been able to successfully change the key mappings and type using Azhagi+ with their own customised mappings. For e.g., Mr. Gitarta Bordoloi (from Assam) changed the key mappings successfully and he now types Assamese using Azhagi+ with his own customised mappings. So, it is not anything difficult at all. If you feel the definite need to change the key mappings, please do go ahead and give a try.
      [ Kindly note however that the existing key mappings for 'Tamil+Unicode+PhoneticTransliteration' LFK alone cannot be modified, since Azhagi+ provides it's own exclusive unique Tamil transliteration scheme. But the good news is that you can still modify the existing key mappings for 'Tamil+Unicode+UserDefinedPhonetics1' LFK and thus create an entirely new keyboard layout of your own for Tamil Transliteration, for which instructions are here. Furthermore, starting Azhagi+ 10.25, the process of creating your own file to transliterate in Tamil using ANY Tamil font has been made super-easy. It is not even an XML file. It is a simple text file of just about 30 lines. As simple as that. Please read instructions here in English or here in Tamil. ]
  • The PORTABLE Azhagi+

    • For carrying out your tasks of changing existing key mappings and creating your own new keyboard layouts, I strongly suggest that you please install the portable version of Azhagi+ and use only the same. While installing, please do not install the portable version in system folders like 'Program Files (x86)' but only in ordinary folders (like 'C:\MyFavoritePortableApps\AzhagiPlus\'). If you need instructions in Tamil to install the portable version, please see steps-in-tamil-portable.html
  • The 'azXMLs' folder

    • The installation folder of Azhagi+ holds a directory called "azXMLs" wherein you can (should) store all your self-created XMLs (in other words, your own new key mappings for any Language/Font/KeyboardLayout (LFK) combination).
    • Whatever XML files you put in here, Azhagi+ will automatically take them into it's system as a new LFK.
    • And, if you decided later to remove any of the XML files you stored in the "azXMLs" directory, Azhagi+ will automatically take them (LFKs) out of it's system.
    • This way, you have absolute control over the organisation of your XML files.
    • For any further help on the above, kindly please join Azhagi's Facebook Group. That would be the best thing to do, if you are really keen on creating your own XML. I can interact with you directly and can take you step-by-step on how to easily create the XML file. I can do the same for creating the small text file related to effecting 'Tamil phonetic transliteration in ANY Tamil font'. There are lot of updated information (overriding some [not all] of the instructions below) which I can share with you which can help you accomplish your task in an easier and faster manner. So, please join Azhagi's facebook group. This is a very humble request from me.
  • Modify key mappings

    • Let us suppose you want to change the key mappings for Hindi. For the sake of this example, let us consider just one change only.

    • Say, you want to change the key mapping for letter 'A' from आ to ॐ. Perhaps you always type 'aa' to get आ and never use 'A' at all and hence you feel that the unused 'A' can be used to get ॐ hereafter.

    • Then, the procedure to effect your desired change in key mapping for 'A' is as follows:

      1. Start Azhagi+ and in the opening window of Azhagi+, click on 'Settings->Preferences' menu item.

      2. Click on 'OTHER LANGUAGES' and ensure that "Use my own keyboard layout" box is unchecked/unticked (i.e. this box should NOT be kept ticked). Close the 'Settings' screen but keep Azhagi+ open and running.

      3. Using 'Windows Explorer', navigate to the 'data' folder in the directory in which you have installed Azhagi+. In your case, the 'data' folder may be in "C:\MyFavoritePortableApplications\Azhagi+\data".

      4. In the 'data' folder, you will find many files with extension ".xml". For our example, the file for us to focus is "Aplus-Devanagari-Unicode-PhoneticTransliteration.xml".

      5. Open "Aplus-Devanagari-Unicode-PhoneticTransliteration.xml" in NOTEPAD (in 'Notepad' only; NOT in 'WordPad' or 'Microsoft Word').

      6. Locate the line having "<om>A आ</om>". Please see snapshot below for a better understanding.



      7. Keep your cursor after आ and press backspace key once to delete आ.

      8. Now, press Ctrl+1 (default hotkey to start typing in Hindi).

      9. Type 'Aum' to get ॐ. Now, the modified line will/should look like "<om>A ॐ</om>". Please see snapshot below for a better understanding.



      10. Click on 'File->Save' to save the file.

      11. Click on 'File->Exit' to close and exit 'Notepad'.

      12. In Azhagi+, in 'Settings->Preferences->OTHER LANGUAGES', check (i.e. TICK) the "Use my own keyboard layout" box. Close the 'Settings' screen.

      13. With Azhagi+ running, open any application (say 'MS-Excel').

      14. Press the required hotkey (Ctrl+1 is the default) for Hindi.

      15. You can now see that whenever you press 'A', ॐ gets typed and not आ.
  • Add key mappings

    • Let us suppose you want to add a key mapping for Hindi. For the sake of this example, let us consider just one addition only.

    • Say, you want to add a key mapping so that whenever you type ~~, you get ॐ. i.e. whenever you type the 'tilde' character twice consecutively, you want to get ॐ.

    • Then, the procedure to add your desired key mapping for '~~' is as follows:

      1. Start Azhagi+ and keep it open and running.

      2. Using 'Windows Explorer', navigate to the 'data' folder in the directory in which you have installed Azhagi+. In your case, the 'data' folder may be in "C:\MyFavoritePortableApplications\Azhagi+\data".

      3. In the 'data' folder, you will find many files with extension ".xml". For our example, the file for us to focus is "Aplus-Devanagari-Unicode-PhoneticTransliteration.xml".

      4. Open "Aplus-Devanagari-Unicode-PhoneticTransliteration.xml" in NOTEPAD (in 'Notepad' only; NOT in 'WordPad' or 'Microsoft Word').

      5. Locate the line having "<om>~ ~</om>"

      6. Keep your cursor at the beginning of the abovementioned line and press 'Enter' key once.

      7. You will/should see a blank line now (above the line having "<om>~ ~</om>")

      8. In the blank line, just type out the following: "<om>~~ ॐ</om>"

      9. In order to type the above line, use the usual procedure. i.e. Type "<om>~~ " first; press Ctrl+1 (default hotkey to start typing in Hindi); type 'Aum' to get ॐ; press Ctrl+1 again; type "</om>".

      10. Now, your additional line will/should look like "<om>~~ ॐ</om>"

      11. Click on 'File->Save' to save the file.

      12. Click on 'File->Exit' to close and exit 'Notepad'.

      13. In Azhagi+, in 'Settings->OTHER LANGUAGES', ensure that "Use my own keyboard layout" box is kept ticked. Close the 'Settings' screen.

      14. With Azhagi+ running, open any application (say 'MS-Word').

      15. Press the required hotkey (Ctrl+1 is the default) for Hindi.

      16. You can now see that whenever you press '~~', ॐ gets typed and not '~~'.
  • Delete key mappings

    • Let us suppose you want to delete a key mapping for Hindi. For the sake of this example, let us consider just one deletion only.

    • Say, you want to delete the key mapping you just now added following the abovementioned procedure for 'Add key mappings'.

    • Then, the procedure to delete the key mapping for '~~' is as follows:

      1. Start Azhagi+ and keep it open and running.

      2. Using 'Windows Explorer', navigate to the 'data' folder in the directory in which you have installed Azhagi+. In your case, the 'data' folder may be in "C:\MyFavoritePortableApplications\Azhagi+\data".

      3. In the 'data' folder, you will find many files with extension ".xml". For our example, the file for us to focus is "Aplus-Devanagari-Unicode-PhoneticTransliteration.xml".

      4. Open "Aplus-Devanagari-Unicode-PhoneticTransliteration.xml" in NOTEPAD (in 'Notepad' only; NOT in 'WordPad' or 'Microsoft Word').

      5. Locate the line having "<om>~~ ॐ</om>". Delete the line.

      6. Click on 'File->Save' to save the file.

      7. Click on 'File->Exit' to close and exit 'Notepad'.

      8. In Azhagi+, in 'Settings->OTHER LANGUAGES', ensure that "Use my own keyboard layout" box is kept ticked. Close the 'Settings' screen.

      9. With Azhagi+ running, open any application (say a new message's compose area in 'Gmail').

      10. Press the required hotkey (Ctrl+1 is the default) for Hindi.

      11. You can now see that whenever you press '~~', only '~~' gets displayed and not 'ॐ'.
  • Customize key mappings

    • Let us suppose you want to customize the key mappings for Hindi. For the sake of this example, let us consider just one customisation only.

    • Say, your name is 'Balaji' and you want to get 'बालाजी' whenever you type 'balaji' and not 'बलजि'.

    • Then, the procedure to effect the above customisation is as follows:

      1. Start Azhagi+ and keep it open and running.

      2. Using 'Windows Explorer', navigate to the 'data' folder in the directory in which you have installed Azhagi+. In your case, the 'data' folder may be in "C:\MyFavoritePortableApplications\Azhagi+\data".

      3. In the 'data' folder, you will find many files with extension ".xml". For our example, the file for us to focus is "Aplus-Devanagari-Unicode-PhoneticTransliteration.xml".

      4. Open "Aplus-Devanagari-Unicode-PhoneticTransliteration.xml" in NOTEPAD (in 'Notepad' only; NOT in 'WordPad' or 'Microsoft Word').

      5. Locate the line having "</Mappings>".

      6. Keep your cursor at the beginning of the abovementioned line and press 'Enter' key once.

      7. You will/should see a blank line now (above the line having "</Mappings>")

      8. In the blank line, just type out the following: "<om>balaji बालाजी</om>"

      9. In order to type the above line, use the usual procedure. i.e. Type "<om>balaji " first; press Ctrl+1 (default hotkey to start typing in Hindi); type 'baalaajii' to get बालाजी; press Ctrl+1 again; type "</om>".

      10. Now, your additional line will/should look like "<om>balaji बालाजी</om>"

      11. Click on 'File->Save' to save the file.

      12. Click on 'File->Exit' to close and exit 'Notepad'.

      13. In Azhagi+, in 'Settings->OTHER LANGUAGES', ensure that "Use my own keyboard layout" box is kept ticked. Close the 'Settings' screen.

      14. With Azhagi+ running, open any application (say 'MS-Powerpoint').

      15. Press the required hotkey (Ctrl+1 is the default) for Hindi.

      16. You can now see that whenever you type 'balaji', 'बालाजी' gets displayed and not 'बलजि'.
  • Points you should keep in mind

    • Before making any major modifications, I suggest you click the .xml file (say, "Aplus-Devanagari-Unicode-PhoneticTransliteration.xml") from 'windows explorer' and view it in your favorite browser (say, Google Chrome). Spend some time studying it, to understand the way I have ordered the various mappings. Give special attention to the comments I have made for '&', '<' and '>' characters.

    • To begin with, make your modifications one by one to see how the changes get reflected while you type.

    • Make your modifications by always opening your '.xml' file in NOTEPAD (in 'Notepad' only; NOT in 'WordPad' or 'Microsoft Word'). Once you wish to save the file, always click on 'File->Save'. I have created all the .xml files in 'Unicode' (not UTF-8) encoding and they should always remain in that encoding only.

    • All mappings should be enclosed between '<om>' and '</om>'. Azhagi processes only those mappings which are enclosed in this manner.

    • Any line with '<om>' in it followed by a mapping string and '</om>' will be considered by Azhagi+ and the mapping string specified will be processed. In other words, even if a line with "<om>.........</om>" is commented out, it will still be considered by Azhagi+. So, if you want Azhagi+ to not to process a particular line containing mappings, you have to delete that line entirely. If you do not wish to delete, then change the tag name from <om> to any other name you prefer. For e.g. if you change it to <omc> or <omcommented>, Azhagi+ will not process that line.

    • Every line shld have only one '<om>.........</om>' in it. So, care should be taken while editing so that inadvertently you do not delete the line-feed at the end of </om> in some line which results in the following line shifting to the end of the current line and thus leading to more than one '<om>.........</om>' in the same line.

    • Please note that the mappings for the characters '<', '>' and '&' are always commented and should remain commented. Though Azhagi+ can process those lines even if they are not commented, your browsers cannot process those lines if they are not commented and will throw errors if your .xml file is viewed in them.

    • As long as you do not disturb the structure of your '.xml' file, you can keep making any number of modifications to it. To check whether the structure is broken because of your modifications, you can just click your '.xml' file (say, "Aplus-Devanagari-Unicode-PhoneticTransliteration.xml") at any time from 'windows explorer'. If it opens without any errors in your favorite browser (say, Google Chrome), then all is fine.

    • I have not tried too many of customisations myself. So, I have no idea how fast Azhagi+ will be if the .xml file is overloaded with 1000s of user-defined customisations. In case you do make 1000s of customisations and Azhagi+ still typed fast enough, kindly let me know the same by emailing me.

    • You have to be careful and prudent while adding customisations. It should not interfere with already existing words of a language. For e.g. if you intend to add a customisation so that whenever you type 'kalam', the name 'कलाम' gets displayed, you should realise that this would interfere with an already existing word (कलम meaning 'pen') in Hindi. In other words, if you indeed introduce your intended customisation, then whenever you type 'kalam', you will always get 'कलाम' only and not 'कलम'.

    • Please read Mr.Koteshwar's mail here below which will help you realise that if you really feel the need to change the key mappings and have the time/interest/mood/situation to work on the same, then it IS indeed possible to easily modify the key mappings as much as you want - to suit all your requirements perfectly.

How to create and add your own 'Language + Font + Keyboard Layout' combination?

And/Or

How to add your own fonts [even custom-made] and start typing in them?

  • The facility to create an entirely new LFK ('Language + Font + Keyboard Layout' combination) has been available in Azhagi+ since January 2012 itself.

  • If you know to read Tamil, then, apart from the information below, please read this post (in Tamil - தமிழில்) too - https://www.facebook.com/groups/Azhagi/permalink/1562481310458090 - by user/well-wisher Sri Vijaya Sarathy - giving step-by-step instructions in Tamil to create a new XML file for Azhagi+ - in a much easier manner, using Microsoft EXCEL. If you need further clarifications on Sri Vijaya Sarathy's methodology, kindly contact him at cvijayasarathy@gmail.com

  • To start with, kindly go through the procedure for modifying key mappings, as explained here. Please read the whole topic fully, including the 'Points you should keep in mind' section. Then, read the following.

  • If you have grasped (not difficult, as such) the procedure for modifying key mappings, you would have realised by now that by modifying the key mappings "as much as you want" - to fully suit your own requirements and preferences, you can "have your own new keyboard layout" ready to a T. Is it not?

    1. SUPPOSE you want to create 'Tamil+Unicode+TypewriterNew' keyboard layout.

    2. Create the .xml file separately using 'NOTEPAD'. You have to necessarily name this particular .xml file starting with 'AzhagiPlus'. For e.g., you can name it as 'AzhagiPlus-Tamil-Unicode-TypewriterNew.xml'. If you need any help/reference for creating this file, you can always open and view the contents of an already existing XML file from either the 'data' folder or the 'azXMLs' folder of Azhagi+. You can find both the 'data' folder and 'azXMLs' folder under the directory in which you have installed Azhagi+. In your case, the installation directory may be in "C:\MyFavoritePortableApplications\Azhagi+".

    3. As a general rule, my suggestion to you will be to make a copy of any suitable file you choose - either from the 'data' folder or from the 'azXMLs' folder (for e.g. the file 'AzhagiPlus-Tamil-Unicode-TypewriterOld.xml' from the azXMLs folder) - to some other directory (say C:\WorkInProgress), rename the copied file correctly (i.e. as 'AzhagiPlus-Tamil-Unicode-TypewriterNew.xml' for our specific case), carry out the modifications and save it finally in 'azXMLs' directory. This will ensure that all newly created XML files exist in 'azXMLs' folder and the files in the 'data' folder remain untouched.

    4. The filename convention for any xml file is: AzhagiPlus-Language-FontEncoding-KeyboardLayout. So, there should be EXACTLY only three parts after 'AzhagiPlus' with three hyphens separating them. Neither below 3 parts nor above 3 parts. In other words, a filename like 'AzhagiPlus-Tamil-Unicode-TypewriterOld.xml' is correct (it has only 3 hyphens) whereas 'AzhagiPlus-Tamil-Unicode-Typewriter-Old.xml' is NOT correct (since it has 4 hyphens). 'AzhagiPlus-Tamil-TypewriterOld.xml' is also NOT correct (since it has only 2 hyphens)

    5. Once you have finished creating your new XML file ('AzhagiPlus-Tamil-Unicode-TypewriterNew.xml') to your fullest satisfaction, go to the 'azXMLs' directory in which you have installed Azhagi+.

    6. Copy/paste the 'AzhagiPlus-Tamil-Unicode-TypewriterNew.xml' in the abovementioned 'azXMLs' folder.

    7. Start Azhagi+. In the opening screen of Azhagi+, in the listbox captioned "List of set hotkeys (only the checked ones available for use)", scroll down and you can now see the LFK 'Tamil+Unicode+TypewriterNew' automatically added therein. Select this LFK with a single click of your mouse so that the line 'Tamil+Unicode+TypewriterNew: None' is highlighted.

    8. In 'Settings->OTHER LANGUAGES', ensure that "Use my own keyboard layout" box is kept ticked. Close the 'Settings' screen.

    9. Do not close the 'Azhagi+' opening screen. In other words, do not exit 'Azhagi+'. Keep Azhagi+ running. You can minimize 'Azhagi+' of course, if you wish to.

    10. Now, open any other application (say 'MS-Word').

    11. Press the required global hotkey (F10 or F11, as the case may be).

    12. Start typing and you can see that action takes place according to the data in the XML file (AzhagiPlus-Tamil-Unicode-TypewriterNew.xml) you created. That is all to it.

    13. To set a separate hotkey to type in 'Tamil+Unicode+TypewriterNew' LFK, it is very simple again. The instructions are here - oper-plus.html#changehotkey with screen snapshots.

    14. If you need further help, please see this to get a good idea. Or, as suggested & requested earlier, kindly please join Azhagi's Facebook Group. I will be ready to help you out. You can call me over my mobile phone too. Yes. If you wish to have my mobile number, kindly email me at "noblehearted AT gmail DOT com" and I shall email you back my phone number.

  • So, the procedure as such, is very simple. But then, you got to have your own time/interest/mood/situation to work on the same. It all depends on your "need" and it's urgency/importance to you eventually. Mr.Koteshwar (from Secunderabad) felt an urgent need for modifying the key mappings and creating his own keyboard layout - which he could accomplish easily, with the help of Azhagi+. He mailed as follows in Jan 2012:

    ///---///
    From: M.Koteswara Rao
    Date: Tue, Jan 3, 2012 at 8:02 PM
    Subject: Re: some more detls...
    To: "Viswanathan (a z h a g i . c o m)"

    Hello viswanathan garu,

    I have made 'Baraha new.xml' file and very good news is that it is working with your {Azhagi+}10.14 version without any problem. Now your software is superior to all softwares. Hats off to you.

    ... .. . By the way, {apart from Baraha}, 10.14 works with ALL {other softwares} Shrilipi, Pramukh IME, Gamabhana IME, etc. also. But, I got used to your scripts. So, I am not trying them out.

    With regards,
    m.k.rao
    ///---///

    As a matter of fact, Shri.M.Koteshwar switched over to using Azhagi/Azhagi+ only in 2011 (for typing in Hindi and Telugu), after having experienced using almost ALL available Indic softwares in the past. He is an ardent user of Azhagi+ since then.

    Actually, all regular Azhagi+ users should be thanking Shri.M.Koteshwar a LOT, since, only because of his almost unstoppable :) and continued appreciation and suggestions for enhancing Azhagi+ for the past few months (2011-2012), so many interesting and extremely useful features (dynamic help for key mappings, creating own keyboard layout, etc.) have got added to Azhagi+ in quick time.