ハテナでAmazonのテキストリンクを貼り付ける

のが面倒だったので、xyzzyの奴作ったけどキー設定とかが面倒というか、hatenaモードとか作って関連付けるとかなら別にして、普通にテキストモードで書くと微妙な感じがしたので、あれは使わない予感。最近ははてなのもブラウザから書くことが多いので、逆にグリモンでハテナの編集画面に適当にボタンを追加してみた。

■具体的にすること
 はてなの編集画面にAmazonのタグに変換するボタンを追加する。"$"で囲んだ文字列をAmazonのタグへ変える。使う時はアフィのIDは自分のに適当に変えて使えば他の人も使えるかもしれない。基本的な変換は前に書いたxyzzyの置換lispと同じ感じ。

// ==UserScript==
// @name           Amazon tag
// @namespace      http://d.hatena.ne.jp/himadatanode/
// @description    Amazon Tag maker
// @include        http://d.hatena.ne.jp/*
// ==/UserScript==


//textareaの位置を取得
var inputArea = document.evaluate(
	'//textarea',
	document.body,
	null,
	7,
	null
	);

//inputボタン
var amazonButton = document.createElement('input');
amazonButton.type  = "button";
amazonButton.value = 'Amazon変換';

//EventListener
amazonButton.addEventListener("click", function (){
	var str = inputArea.snapshotItem(0).value;
	str = str.replace(/\$([^$\n]*)\$/g , "<a href='http://www.amazon.co.jp/gp/search?ie=UTF8&keywords=$1&tag=hdn-22&index=blended&linkCode=ur2&camp=247&creative=1211'>$1</a><img src='http://www.assoc-amazon.jp/e/ir?t=hdn-22&amp;l=ur2&amp;o=9' width='1' height='1' border='0' alt='$1' style='border:none !important; margin:0px !important;' />");
	inputArea.snapshotItem(0).value = str;
} , false);

//ボタンの設置
inputArea.snapshotItem(0).parentNode.insertBefore(amazonButton, this.lastChild);

セレクションで選んだ文字列を変換するとかでも良いかなぁとか思ったので、とりあえず使ってみてコレが使いにくかったら変えるかも。