へーグリースモンキーって

グローバル環境の汚染させてくれないんだー。
せっかくハイライト機能を強化しようとしてたのになー


ということでハイライト機能の強化をしました。

化内容は、アレですよ。
更新ボタン押すと効果切れちゃうじゃ無いですか。
アレ直しました。
でも定期自動更新は改善できず。。。。
ファイルはprintf(" Hell %d World \n", 0)においてあるのでそちらをば。
グローバル環境の汚染ができないからこんなコードになってしまった。

var myCss = document.createElement("style");
myCss.type = "text/css";
myCss.innerHTML = 'strong{background-color: #FFCCCC;}';
var head = document.getElementsByTagName("head")[0];
head.appendChild(myCss);

setResHighlight = function(s){
	return s.replace(/(\(res ([0-9]+)\))/g, 
		function(){
			if(RegExp.$2 == 0){
				return RegExp.$1;
			}else{
				return '<strong>'+RegExp.$1+'</strong>';
			}
		}
	);
}
var rDefinedByUI = document.getElementById("hot_kuchikomi");
rDefinedByUI.innerHTML = setResHighlight(rDefinedByUI.innerHTML);

var replaceDefinedByUI='';
replaceDefinedByUI+='/(\\(res ([0-9]+)\\))/g,';
replaceDefinedByUI+='function(){';
replaceDefinedByUI+=' if(RegExp.\$2 == \'0\'){';
replaceDefinedByUI+='  return RegExp.\$1;';
replaceDefinedByUI+=' }else{';
replaceDefinedByUI+='  return \'<strong>\'+RegExp.\$1+\'</strong>\'; ';
replaceDefinedByUI+=' }';
replaceDefinedByUI+='}';
var rtDefinedByUI='';
rtDefinedByUI+='onComplete:function(request){';
rtDefinedByUI+=' var r=request.responseText.replace(';
rtDefinedByUI+=replaceDefinedByUI
rtDefinedByUI+=' );';
rtDefinedByUI+=' eval(r);';
var sDefinedByUI = document.getElementById('submit');
var rDefinedByUI = sDefinedByUI.getAttribute("onClick").replace(
	/onComplete:function\(request\){/,
	rtDefinedByUI
).toString().replace(
	/evalScripts:true,/,
	''
).toString();
sDefinedByUI.setAttribute('onClick',rDefinedByUI);

途中文字列連結し放題なのは、setResHighlight()をグローバル環境に放り込めないため。
すっげーみズラぃ。