以前ここで紹介したPRE/CODEタグ挿入ブックマークレット。
IEで動かなかったりしたので改良。
ついでに、Firefoxで置換後カーソルがテキストエリアのTOPに戻る調子の悪さも解消。
忍者ブログもデフォルトそうすると良いのに、とか思う。
つぅか、テンプレート設定/編集のテキストエリアもリサイズ出来るようにすれば良いのに。
Firefoxや、ブックマークレット、グリモン使えばどうにかなる、と言うのはサービス提供側としては言い訳にならん気がする・・・。
ちゃんとしてくれれば、俺のこんなブックマークレットも要らんワケだし・・・。
http://jn.orz.hm/precode_change.htmlfunction r(s) {
return s.replace(/([<>&\"])/g, function(m0,m1) {
return {'<': '<', '>': '>', '\"': '"', '&': '&'}[m1];
});
}
function replaceCode() {
var d=document;
var o='<pre><code>';
var c='</code></pre>';
if (d.selection) {d.selection.createRange().text=o+r(d.selection.createRange().text)+c;}
else {
var t=d.getElementsByTagName('textarea');
for (var i=0;i<t.length;i++) {
if (t[i].value) {
var s=t[i].selectionStart;
var e=t[i].selectionEnd;
if (s!=e) {
var u=t[i];
var v=u.value;
var p = u.scrollTop;
u.value = v.slice(0,s)+o+r(v.slice(s,e))+c+v.slice(e);
u.scrollTop=p;u.setSelectionRange(s,e);
}
}
}
}
}
IE
function r(s) {
return s.replace(/([<>&\"])/g, function(m0,m1) {
return {'<': '<', '>': '>', '\"': '"', '&': '&'}[m1];
});
}
function replaceCode() {
var d=document;
d.selection.createRange().text='<pre><code>'+r(d.selection.createRange().text)+'</code></pre>';
}