GM_getValue: Cyrillic letters

31st March 2006 - 22:42

Для работы с Великим и Могучим в Greasemonkey (GM_getValue), сниппет на будущее:

// ==UserScript==
// ... ... ...
// ==/UserScript==
(function () {
  function _c(_s,x,y,z) {
    var const208 = String.fromCharCode(x);
    var const896 = x==208 ? 896 : 960;
    for (var i = y, j = y + z; i < j; i++)
      _s = _s.replace(new RegExp(const208 + String.fromCharCode(i), "g"),
                              String.fromCharCode(i+const896));
    return _s;
  }
  
  function uConvert(_s) {
    return _c(_c(_c(_c(_s,
           209,145,1), // yo
           209,128,16),// Cyrillic Small letters
           208,129,1), // YO
           208,144,48);// Cyrillic Capital letters
  }
  
  // ... ... ...
  
  var words = GM_getValue("words", "__3anoJIHu__MeHJa__");

  if (words == "__3anoJIHu__MeHJa__")
    return GM_setValue("words", words);
  
  words = uConvert(words);
  
  // ... ... ...
  
})();

«На коленке», но вроде как работает.

Categories: dHtml | comments: (0)

Комментарии временно отключены.