Web Diff+GreaseMonkey
ちょっとしたドキュメントの diff をとりたいときに Web Diff というサービスを使わせてもらうことがあります。
わざわざ shell で diff するまでもないときなんかは大変便利でありがたいツールなのですが、連続で使用したいときに diff をとりたい Before と After のテキストを消すのが手間だなぁと感じていました。
テマといってもたいしたテマではないのですが、塵も積もればってことで GreaseMonkey で少しだけラクできるものを作ってみました。
どんなものを作ったのか
- textarea に書いた Before と After のテキストを消す
- diff した結果を消す
というものを作成しました。
具体的には、以下のような処理をしてくれるボタンを画面最下部に追加しました。
- Before と After の textarea を空にして、再び Web Diff ボタンを押す
ソース
初めて GreaseMonkey を使ってみたのでヘンテコなソースかもしれないですが貼り付けておきます。
// ==UserScript== // @name webdiff_clean // @description clean diff word and result // @include http://labs.ceek.jp/diff/diff.cgi // ==/UserScript== (function() { var textArea_before = document.getElementsByName("input_1").item(0); var textArea_after = document.getElementsByName("input_2").item(0); var button_clean = document.createElement("input"); button_clean.setAttribute("type", "button"); button_clean.setAttribute("name", "clean"); button_clean.setAttribute("value", "clean"); button_clean.addEventListener('click', function(){ textArea_before.value = ""; textArea_after.value = ""; var gform = document.getElementsByTagName('form').item(0); gform.submit(); }, true); var div_button_clean = document.createElement("div"); div_button_clean.appendChild(button_clean); document.body.insertBefore(div_button_clean, document.body.lastChild); })();