Cкрипт JSFL для транслитерации русскоязычных имен в библиотеке

JSFL оказалась классной штукой способной значительно облегчить работу с IDE. Вообще я планирую использовать ее при выполнении однотипных задач при работе с уровнями, а пока получился вот такой скриптик для транслитерации русскоязычных имен в библиотеке.

// Flash library names transliteration
 
        var doc = fl.getDocumentDOM();
        var re = new RegExp("[^a-z0-9]*/","gi");
        
        var rusChars = new Array('а','б','в','г','д','е','ё','ж','з','и','й','к','л','м','н','о','п','р','с','т','у','ф','х','ч','ц','ш','щ','э','ю','\я','ы','ъ','ь', ' ', '\'', '\"', '\#', '\$', '\%', '\&', '\*', '\,', '\:', '\;', '\<', '\>', '\?', '\[', '\]', '\^', '\{', '\}', '\|', '\!', '\@', '\(', '\)', '\-', '\=', '\+', '\/', '\\');
        var transChars = new Array('a','b','v','g','d','e','jo','zh','z','i','j','k','l','m','n','o','p','r','s','t','u','f','h','ch','c','sh','csh','e','ju','ja','y','', '', ' ', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '');
        var from = "";
        
        doc.library.selectAll();
        var items = doc.library.items;
        var iLen = items.length;
        
        for (var i = 0; i < iLen; i++) {

                var s = items[i];
                s.name = translate(s.name.replace(re, ""));
                
        }
    
        doc.library.selectNone();
        
        function translate(st)
        {
                from = st;
                from = from.toLowerCase();
                var to = "";
                var len = from.length;
                var character, isRus;
                for(var i=0; i < len; i++)
                {
                        character = from.charAt(i,1);
                        isRus = false;
                        for(var j=0; j < rusChars.length; j++)
                          {
                                if(character == rusChars[j])
                                {
                                        isRus = true;
                                        break;
                                }
                          }
                        to += (isRus) ? transChars[j] : character;
                }
                return to;
        }
        


Если кто-то решит попробовать, то сохранять файлик нужно в кодировке utf-8 с расширением *.jsfl.
Также если кому-то интересно, могу прокомментировать код.
  • +4

Комментарии (0)

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.