Poznámka: Po uložení musíte vyprázdnit mezipaměť vašeho prohlížeče, jinak změny neuvidíte.

function repair(tags) {
  for (h=0;h<tags.length;h++) {
  for (i=0;i<tags[h].length;i++) {
  for (j=0;j<tags[h][i].childNodes.length;j++) {
  if (tags[h][i].childNodes[j].nodeType==3) {
    value = tags[h][i].childNodes[j].nodeValue;

    if (j>0) { k = j - 1;
      previousNode = tags[h][i].childNodes[k].nodeName.toUpperCase();
      previousNodeType = tags[h][i].childNodes[k].nodeType; } // type 8 is comment

    value = value.replace(/([^  	\(\[\n\/])"/g,'$1“');
    if (j>0 && previousNode!='BR' && previousNodeType!=8) { value = value.replace(/^"/,'“'); }
    value = value.replace(/"/g,'„');

    value = value.replace(/'s/g,'’s');
    value = value.replace(/n't/g,'n’t');
    value = value.replace(/([lLdDO])'([a-zA-Z])/g,'$1’$2');
    value = value.replace(/([a-zA-Z])'n'([a-zA-Z])/g,'$1’n’$2');
    value = value.replace(/ 't /g,' ’t ');
    value = value.replace(/'([0-9]{2}[^0-9]+)/g,'’$1'); value = value.replace(/'([0-9]{2})$/g,'’$1');
    for (l=0;l<2;l++) { value = value.replace(/([^  	\(\[\n\/])'/g,'$1‘'); }
    if (j>0 && previousNode!='BR' && previousNodeType!=8) { value = value.replace(/^'/,'‘'); }
    value = value.replace(/'/g,'‚');

    value = value.replace(/\.\.\./g,'…');
    value = value.replace(/[  \n]-([  \n])/g,' –$1');
    value = value.replace(/ \%/g,' %');
    value = value.replace(/([0-9]) ([0-9])/g,'$1 $2');
    for (l=0;l<2;l++) { value = value.replace(/([  „])([aioukszvAIOUKSZV])([ \n])/g,'$1$2 '); }

    tags[h][i].childNodes[j].nodeValue = value; }}}}}

function repairAll() {
  /*var startTime = new Date().getTime();*/

  var all = new Array(
    document.getElementsByTagName('title'),
    document.getElementsByTagName('p'),
    document.getElementsByTagName('h1'),
    document.getElementsByTagName('h2'),
    document.getElementsByTagName('h3'),
    document.getElementsByTagName('h4'),
    document.getElementsByTagName('h5'),
    document.getElementsByTagName('h6'),
    document.getElementsByTagName('li'),
    document.getElementsByTagName('td'),
    document.getElementsByTagName('caption'),
    document.getElementsByTagName('span'),
    document.getElementsByTagName('a'),
    document.getElementsByTagName('em'),
    document.getElementsByTagName('strong'),
    document.getElementsByTagName('i'),
    document.getElementsByTagName('b'),
    Array.filter(document.getElementsByClassName('dablink'), function(elem){return elem.nodeName=='DIV';}))

  repair(all);

  /*var endTime = new Date().getTime();
  var time = endTime-startTime;
  alert(time);*/ }

function hyphen() {
  hyphScript = document.createElement('script');
  hyphScript.src = 'https://hyphenator.googlecode.com/svn/tags/Version 3.3.0/Hyphenator.js?bm=true&displaytogglebox=false&defaultlanguage=cs&orphancontrol=2';
  hyphScript.type = 'text/javascript';
  document.getElementsByTagName('head')[0].appendChild(hyphScript); }

/*function onLoad() {*/
  repairAll();
/*  hyphen(); }

window.onload=onLoad;*/