ブラウザ三国志のGreaseMonkeyを作成。
座標アンカー
2009/1/15 修正:v1.01 書簡に対してアンカーをつける。
namespaceを変更しているので、v1.00をアンインストールの上v1.01をインストールしてください。
- 一言コメントと掲示板内の(xxx,xxx)にアンカーをつける。
- v1.00 / bura3_xylink.user.js
- v1.01 / bura3_xylink.user.js
ユーザーショートカット
2009/1/22 修正:v1.01 複数サーバー対応、ショートカットURL入力時に現在のURLを表示
いろいろ変更しているので、v1.00をアンインストールの上v1.01をインストールしてください。
保存先を変更したので、v1.01ではv1.00のデータは消えます。
- URIのショートカットを表示する。
- v1.00 / bura3_xylink.user.js
- v1.01 / bura3_xylink.user.js
javascriptの作法がまだまだわからなくて酷いことになってるとおもいます。
URIショートカットの使い方
ショートカットのGreaseMonkeyをインストールすると、『ユーザーリンク』という、サイドバーメニューが追加されます。
データの追加は『ユーザーリンク』と表示されている部分をダブルクリックします。
タイトルとURIを入力するダイアログが表示されるので入力してOKを押す。
これでユーザリンクに追加されました。
削除の仕方は、削除したいリンクの右側をダブルクリックします。
真ん中のリンクが削除されました。

スクリプトありがたく使わさせて頂いてるのですが
現在の座標リンカーだとマイナスが含まれる座標がリンクされません
あと全角文字で数字を書く方もたくさん居られて・・・
現在私が修正して使ってるのを記載しておきます
//座標の記載を探す
var posList = elmHtml.match(/[\(|(]?[\u2212|\uFF0D|-]?[\d|\uFF10-\uFF19]{1,3}[,|,][\u2212|\uFF0D|-]?[\d|\uFF10-\uFF19]{1,3}[\)|)]?/g);
//座標をXYに分けて取り出す。
var posX = posTmp.replace(/([\u2212\uFF0D\uFF10-\uFF19])/g, function ($0) {return String.fromCharCode($0.charCodeAt(0) - 65248);}).match(/-?\d{1,3}/g)[0];
var posY = posTmp.replace(/([\u2212\uFF0D\uFF10-\uFF19])/g, function ($0) {return String.fromCharCode($0.charCodeAt(0) - 65248);}).match(/-?\d{1,3}/g)[1];
北東の人間だったので、neg座標に気づきませんでした;;
修正コードを理解してから、修正させていただきます。
roamerさん、ありがとうございます!
どんなコードか書かずにすみません。
書いた時はGreasemonkeyの事あまり分かってなかったので
無駄が多いコードになってしまいました。
座標を探す方のコードですが
-や数字のマルチバイト文字列をUNICODEで検索しています。
座標取り出しの方は
-や数字のマルチバイト文字を検索し
replaceの第2引数に書いてある関数に処理を渡しています
その関数では文字を一端キャラクタコードに変換し
変換したコードから-65248をした値を再度文字に変換しています
これで座標がマルチバイトからシングルバイトに変換されます
マルチバイトが無ければそのまま次の処理にうつります。
とりあえずこんな感じです。
replaceに渡してる無名関数を別の所に定義するとすっきりしますね。