Advertisement
Guest User

Untitled

a guest
Apr 28th, 2013
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.60 KB | None | 0 0
  1. // ==UserScript==
  2. // @name Typo
  3. // @description Коррекция вводимого текста - кавычки, ударения, всё такое...
  4. // @namespace localhost
  5. // @icon http://i.imm.io/YmPZ.png
  6. // @include *
  7. // @version 0.53
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. document.body.addEventListener ('click', function (e){
  12. var typo_core = function (a, d){
  13. a = a.replace (/[«„»“]/g, '"').replace (/[–—]/g, '-');
  14. for (var n in d = {
  15. '©': (/\([cс]\)/gi),
  16. '®': (/\([rр]\)/gi),
  17. '™': (/\((tm|тм)\)/gi),
  18. '§': (/\((ss|пар)\)/gi),
  19. '°': (/\^o/gi),
  20. '¹': (/\^1/gi),
  21. '²': (/\^2/gi),
  22. '³': (/\^3/gi),
  23. 'µ': (/\(u\)/gi),
  24. '±$1': (/\+-([0-9])/gi),
  25. '$1÷$1': (/([0-9]):([0-9])/gi),
  26. '÷': (/\(-:-\)/gi),
  27. '×$1': (/x([0-9])/gi),
  28. '≠': (/(!=|=\/=)/gi),
  29. '→': (/->/gi),
  30. '←': (/<-/gi),
  31. '$1•$2': (/([\n\r])\*(\s)/gi),
  32. '$1́': (/([eyuioaаеиоуыэюя])['`]/gi),
  33. '¼': (/\(1\/4\)/gi),
  34. '½': (/\(1\/2\)/gi),
  35. '¾': (/\(3\/4\)/gi),
  36. '$1–$2': (/([0-9])-([0-9])/gi),
  37. '$1—$2': (/(^|\s)-(\s|$)/gi),
  38. '«$1»': (/"([a-zа-я0-9]([^"]|"[a-zа-я0-9][^"]*")*)"/gi),
  39. '„$1“': (/"([a-zа-я0-9]([^"]|"[a-zа-я0-9][^"]*")*)"/gi),
  40. }){ a = a.replace (d [n], n) }
  41. return a;
  42. }, typo_setup = function (a){
  43. var handler = function (e){ e.target.value = typo_core (e.target.value) };
  44. a.addEventListener ('blur', handler, 0);
  45. handler ({target: a});
  46. }
  47.  
  48. if (/textarea/i.test (e.target.tagName) && !e.target.hasAttribute ('typo')){
  49. typo_setup (e.target);
  50. e.target.setAttribute ('typo', true);
  51. }
  52. }, 0);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement