PramukhLib: Javascript library for Indian script is updated

From past few months I was working on updating PramukhLib: Javascript library for Indian Script. This library can provide your Website a power to write in 9 different Indian scripts (not languages). I have done major changes in the library including functional changes as well as character mapping changes.

I have created many tools that depend on PramukhLib library. All of those tools were also updated to use new script. Version number for each tool is increased to match to that of PramukhLib. Here is a list of all tools those were updated

  • PramukhLib: Javascript Library
  • IndicIME TinyMCE plugin
  • IndicIME FCKEditor plugin
  • IndicIME WordPress plugin
  • Pramukh Type Pad: WYSIWYG HTML editor
  • Pramukh Type Pad: Firefox Extension (Add-on)

Here is a list of changes that I made in PramukhLib and hence in all above mentioned tool

Functional Changes

  • ConvertAllToIndicIME is removed and ConvertPageToIndicIME is added which does the same function
  • ConvertPageToDefault and ConvertToDetault functions were added to remove IndicIME functionality from elements
  • Memory optimization when you want to write in your language on whole Webpage.

Script Changes

  • Added “H” to perform same action as “:” for all scripts
  • Added Zero Width Joiner and Zero Width Non Joiner character supports for all scripts
  • Punctuation characters removed from mapping and replaced with less used symbols
  • Symbols with special meaning for Indic script can be printed by suffixing “~”.
  • Added “S” to perform same action as “sh”
  • For all scripts help image is updated
  • For all scripts, typing “a^i” gives separate characters
  • For all scripts, “ou” is now equivalent to “au”
  • For all scripts, R is changed to “Ru” and RR is changed to “RU”
  • For applicable scripts Q and QQ is changed to “Lu~” and “LU~”
  • For applicable scripts, avagrah is now represented with “&”
  • For applicable scripts, chandrabindu is now represented with “M~”
  • Example words are added at the bottom of the help image.
  • Bengali: Added Khand t letter, Changed letter for r, rr and v/w
  • Misspelled “devnagari” is changed to “devanagari”
  • Gurmukhi Script: Tippi and Addak will be printed by M~ and N~ instead of ~ and @.
  • Kannada Script: Swapped characters for e<->E, o<->O. Halant will be retained after consonant. rr character is changed to rx to correctly display rra.
  • Malayalam Script: Swapped characters for e<->E, o<->O. Halant will be retained after consonant. Added chillu character support for N, n, r, l and L
  • Oriya Script: y and Y gives different letters
  • Tamil Script: Swapped characters for e<->E, o<->O. Halant will be retained after consonant. Added kSh letter, 0(zero), f.
  • Telugu Script: Swapped characters for e<->E, o<->O. Halant will be retained after consonant.

Share

24 comments

Your email address will not be published. Required fields are marked *

  1. Aravind Padmanabhan says:

    Hi ,
    in the convert function can i have a list of the exact names of languages that i need to write in from language and to language

    1. vishal says:

      Hello Arvind,

      You may use “english”/”readableenglish” in one parameter and supported Indian language in another parameter depending on what conversion you are trying to do.

  2. manish joshi says:

    Hello, Thank you for Indian Language javascript for website. I am using your javascript for devanagari typing in contact us form in my website. I have one query. How can I disable hindi typing for specific fields in contact us form ? e.g. for field – Email and Captcha Code ..for which i need english only….

  3. Nizam says:

    Vishal,

    Sorry, my previous question was about TinyMCE. I want to set the language on load in TinyMCE.
    I’ve already set for pramukhIME. Hoping a quick reply from you.

    Regards
    Nizam.

  4. Nizam says:

    Got it 🙂
    Vishal,
    I did it. My another question is.. I want to set a particular language on load itself instead of English. How to do it?

    1. Vishal says:

      On the page load use pramukhIME.setLanguage() function to set it. Please refer to the Javascript documentation for more details.

  5. Nizam says:

    @Vishal
    Vishal,

    I’ve tried with older version. It was working for both textbox & textarea. My main issue is with TinyMCE Textarea & Textbox. When I enable it, it works for textbox but not for textarea. If I don’t enable. It works for textarea, but not for textbox.

    I’ve included .
    Am I missing any thing here?

    Regards
    Nizam

    1. Vishal says:

      Nizam,

      PramukhIME TinyMCE plugin is completely different than PramukhIME Javascript Library. If you are creating TinyMCE from textarea, you can use the plugin but it will not work textbox. For textbox, you need to use PramukhIME javascript library and enable it. Both can work on one page. Your configuration looks good. Please checkout Javascript console to see if you are getting any error.

  6. Nizam says:

    @Vishal
    Hi Vishal,

    I tried with the following, when I click on the textbox.

    pramukhIME.addLanguage(PramukhIndic,”hindi”);
    pramukhIME.enable();

    It working only for textbox.

    This is for textareas.
    tinyMCE.init({
    // General options
    mode : “textareas”,
    theme: “advanced”,
    plugins : “table,advhr,advimage,advlink,inlinepopups,searchreplace,print,paste,directionality,fullscreen,pramukhime”,
    auto_focus: ‘typingarea’,
    // Theme options
    theme_advanced_buttons1: “pramukhime,pramukhimeclick,pramukhimeconvert,pramukhimehelp,print,undo,redo,fontselect,fontsizeselect,bold,italic,underline,forecolor,backcolor,|,link,unlink,image,|,justifyleft,justifycenter,justifyright,bullist,numlist,outdent,indent,|,code,ltr,rtl”,
    theme_advanced_buttons2: “cut,copy,paste,pastetext,pasteword,|,search,replace,|,tablecontrols,|,sub,sup,blockquote,advhr,anchor,cleanup,removeformat,|,fullscreen”,
    theme_advanced_toolbar_location : “top”,
    theme_advanced_toolbar_align : “left”,
    theme_advanced_statusbar_location : “bottom”,
    theme_advanced_resizing: true,
    theme_advanced_resizing_use_cookie : false,
    content_css : “css/ptparea.css”,
    pramukhime_language: [
    {
    jsfile:’pramukhindic.js’,
    kbclassname:’PramukhIndic’,
    kbtitle:’Pramukh Indic’,
    languagelist:[
    {language: ‘assamese’, title:’Assamese’},
    {language: ‘bengali’, title:’Bengali’},
    {language: ‘bodo’, title:’Bodo’},
    {language: ‘dogri’, title:’Dogri’},
    {language: ‘gujarati’, title:’Gujarati’},
    {language: ‘hindi’, title:’Hindi’},
    {language: ‘kannada’, title:’Kannada’},
    {language: ‘konkani’, title:’Konkani’},
    {language: ‘maithili’, title:’Maithili’},
    {language: ‘malayalam’, title:’Malayalam’},
    {language: ‘manipuri’, title:’Manipuri’},
    {language: ‘marathi’, title:’Marathi’},
    {language: ‘nepali’, title:’Nepali’},
    {language: ‘oriya’, title:’Oriya’},
    {language: ‘punjabi’, title:’Punjabi’},
    {language: ‘sanskrit’, title:’Sanskrit’},
    {language: ‘santali’, title:’Santali’},
    {language: ‘sindhi’, title:’Sindhi’},
    {language: ‘tamil’, title:’Tamil’},
    {language: ‘telugu’, title:’Telugu’},
    ]
    }
    ,
    {
    kbtitle:”,
    title:’English’
    }
    ]
    });

    Please guide me. I’m confused with it.

  7. Nizam says:

    Hi Vishal,

    Great job. I’ve been looking for this type of library using TinyMCE. I’ve successfully integrated it to my textarea. But, when I type in textbox, the plugin isn’t integrated. May I know why? Or is it only for textareas? What should I do in order to apply the same for my textbox? I request you to help me in this scenario.

    Thank you,
    Nizam.

  8. Nizam says:

    Hi Vishal,

    Great job. I’ve been looking for this type of library. I’ve successfully integrated it to my textarea. But, when I type in textbox, the plugin isn’t integrated. May I know why? Or is it only for textareas? What should I do in order to apply the same for my textbox? I request you to help me in this scenario.

    Thank you,
    Nizam.

    1. Vishal says:

      Nizam,

      By default, it works for textbox and textareas. You may customize it using PramukhIME.enable() method. Please checkout documentation for further details.

  9. Raj says:

    Hi Vishal,

    The work that you have done it’s really amazing; I have gone through sample that you have given for JS Lib for integration with Web Base projects.
    The constraint what I see is, once you change language to let’s say “English” to “Hindi” , the moment you set the language it starts typing everything based on selected Language, whereas I was looking more like control specific, like there are two inputbox(s) has id “_inputHindiText” and “_inputEnglishText”, once I switch between the controls, the language setting should be applicable. There has to provision where we can set control specific tag or control id to enable language level typing instead of doing switching between languages using “F9”.
    There is call-back method used to manage the Language to set to default i.e “English”.

    Request your help on the same. Looking forward to hearing from you.

    Regards
    Raj

    1. Vishal says:

      Raj,

      I am giving you a brief idea and you can find more information about PramukhIME javascript functions in documentation that is given with the Javascript library. There are multiple ways to do it. 1) Enable hindi only on “_inputHindiText” by providing appropriate parameter in pramukhIME.enable() method. If you completely want to turn off English, use pramukhIME.setToggleKey() function. 2) Using the onfocus event for both the textbox, you can set the language using pramukhIME.setLanguage().

  10. Salman says:

    Hi Vishal,
    how can i add urdu language in it?
    pls help me.

  11. Arijit says:

    Thanks for the great pramukhlib script

  12. kamlesh says:

    Sir, Thanks for nice & useful script

    But I m able to type post in Marathi but in site it shows only ??????? characters. Can you please help

    site http://www.ShareMarket Vrutt.com

  13. Heeren says:

    I want to integrate PramukhLIB in asp.net 2.0 TextBox Control. Is this possible?? Please guide me how to implement it?

  14. Maheedhar Reddy says:

    Hi Vishal,
    Thans for the gr8 scripts
    its very usefull to me ..

  15. Maheedhar Reddy says:

    Hi Vishal,
    Can you please tell me how IndicIME Plugin integrate to FCKeditor , i followed the same steps i nreadme.txt but i didn’t get it ..
    one more thing i tried with your typeeditor but it does not have image browse option .

    Lastly i want to congratulate for this great scripts

  16. Bhavesh says:

    hello sir,
    i want to integrate PramukhLib in FCKeditor using ASP. Net

  17. rhon says:

    Thanks for the FCKeditor plugin. However it seems to be not working or insufficient docs how to set it up in Drupal – where FCK works via WYSIWYG module http://ftp.drupal.org/files/projects/wysiwyg-6.x-2.0.tar.gz in Drupal http://ftp.drupal.org/files/projects/drupal-6.15.tar.gz
    What I did is
    FCKConfig.Plugins.Add( ‘indicime’ );
    FCKConfig.ToolbarSets[“Default”] = [
    [‘indicime’,’indicimehelp’],

    added the above in …\sites\all\libraries\fckeditor\fckconfig.js

    This however did not show up the module and had to add
    ‘indicime’ => array(
    ‘path’ => $editor[‘library path’] . ‘/editor/plugins’,
    ‘extensions’ => array(
    ‘indicime’ => t(‘indicime’),
    ),
    ‘internal’ => TRUE,
    ‘load’ => TRUE,
    ),

    in …\sites\all\modules\wysiwyg\editors\fckeditor.inc

    This shows the module in the admin area but buttons are not seen by the user.
    Any help will be greatly appreciated.