ひぐらしbookmarklet改良版

javascript:s=document.body.innerHTML+"<";t="";l=s.length;b=c=false;for(i=j=0;i<l;i++){v=s.charCodeAt(i);if(b){c=c^(v==34);if(!c&&v==62){b=!b;t+=s.substr(j,i-j+1);j=i+1;}}else if(v==60){b=!b;t+=s.substr(j,i-j).replace(/な/g,'<span style="color:red">な</span>');j=i;}}document.body.innerHTML=t;focus();

kosakに指摘されたバグを修正+ちょっと短くした(Javascript Lintは通してある)。「な」が2byteとすると、ちょうど300byte。JavaScriptの評価順序とかまで手を出したくなかったのでこんなところ。