blog

Firefox JSActions 用 アンカー作成スクリプト

こんばんは、信次です。

最近アンカータグをよく使うので、オートアンカーのようなスクリプトが欲しくなりました。まあ Make Link とか使えばいいんですけど、わざわざそのためだけにアドオン入れるの嫌だったので。

んで、かなり昔 に作ったスクリプトを改造して動くようにしました。JSActions が必要なので使う人は限られてると思いますが、自分の備忘録という意味も込めて晒しておきます。(実際今回のスクリプト作るのに、昔に公開してたのが役に立ったしね)

一応、フレームページの場合にはトップの URL とタイトルを使う仕様になってます。それが嫌な方は「フレーム対策ここから」から「フレーム対策ここまで」を消して下さい。

あ、作りが荒いのは、僕の腕ももちろんありますが、メンテとかデバッグしやすいようにです。ちなみにですね、

page_url
そのページの URL
page_title
そのページのタイトル
Select_word
選択語句
link_url
リンクの URL
link_text
リンクのテキスト

となってます。いじりやすい形になってると思うので、各自好きにいじって下さい。

//Firefox 10 対応  JsActions 用 アンカー作成スクリプト

function makeanchor(){
  var page_title = window.document.title;
  var page_url = window.document.location.href;
  
  //フレーム対策ここから
  var top_url = window.top.location.href;
  var top_title = top.document.title;
  if( top_url != page_url ){
    page_url = top_url;
    page_title = top_title;
  }
  //フレーム対策ここまで

  //タイトルが空だったらURLをタイトルに
  if(page_title == ''){
    page_title = page_url;
  }
  
  page_title = page_title.replace(/&/g,'&');//実態参照文字に変換
  
  if ( _jsaCScript.context.isTextSelected ) {
    var Select_word = document.getSelection().toString();
    Select_word = Select_word.replace(/&/g,'&');//実態参照文字に変換
    Select_word = Select_word.replace(/</g,'&lt;');//実態参照文字に変換
    Select_word = Select_word.replace(/>/g,'&gt;');//実態参照文字に変換
    Select_word = Select_word.replace(/\"/g,'&quot;');//実態参照文字に変換
  }

  if ( _jsaCScript.context.onLink ) {
    var link_url = _jsaCScript.context.link.href;
    var link_text = _jsaCScript.context.link.text;
    link_text = link_text.replace(/&/g,'&amp;');//実態参照文字に変換
  }
  
  if ( ( _jsaCScript.context.onLink ) && ( _jsaCScript.context.isTextSelected ) ) {//文字列を選択してリンク上で
    var anchor_txt = '<a href="' + link_url + '" title="' + link_text + '">' + Select_word + '</a>';
  } else if ( _jsaCScript.context.isTextSelected ) {//文字列選択時
    var anchor_txt = '<a href="' + page_url + '" title="' + page_title + '">' + Select_word + '</a>';
  } else if ( _jsaCScript.context.onLink ) {//リンク上
    var anchor_txt = '<a href="' + link_url + '">' + link_text + '</a>';
  } else {//普通の右クリック
    var anchor_txt = '<a href="' + page_url + '">' + page_title + '</a>';
  }
  
  return anchor_txt;
}

var template=makeanchor();

_jsaCScript.setClipBoardString(template);

不具合とかがあったら教えてくれると助かります。


2012/02/05 の雑記

こんにちは、信次です。

最近の更新を見ていれば分かると思いますが、プログラミングが楽しくて仕方ないです。何かツールを作りたいから目的を探す、って感じに、目的と手段が入れ替わっちゃったりしてますw

しかしアレですね。自分の作ったツールを説明するのは難しいですね。そういう仕組みで動いてるか分かっているので、どこまで説明したらいいのかわかんなくなります。

kokomade 公開

また新しいツールを作りました。

というかですね、本来こっちが先にできていて自分だけで使っていたんですが、どうせならこっちもということで、公開に至った訳です。実は FFbookmark は、このツールの副産物だったりするんですよね。

んで説明ですが、簡単に言うと「ここまで見た」を一元管理する目的のツールです。独自の関連付け機能もついてます。

例えば自炊したコミックとか、YouTube からダウンロードした動画とか、そういう続き物を見て途中でやめて次に見ようとしたときに「あれ、どこまで見たっけ?」っていうのを無くす目的ですね。

それだけなら適当なフォルダにショートカットでも作っておけばいいんですが、システムの関連付けとは違うツールで開きたい場合、もしくはコマンドラインオプションを設定して起動したい場合があるじゃないですか。そのために、独自の関連付け機能も付けました。

kokomade の配布ページにも書きましたが、拙作 keychoiceParamChoice などと併せて使うと、色々捗りますよ。

本来の目的とは離れますが、単純にシステムの関連付けとは違うファイルのブックマークとしても使えると思います。

もしよければ是非。

FFbookmark バージョンアップ

こないだ公開した FFbookmark をバージョンアップしました。内容は

  • F2キーでリストの Name 部分を編集できるように
  • Name 部分を編集中に Delete キーを押すと、アイテムごと削除されてしまう問題を修正

となってます。


FFbookmarkというソフトを作りました

こんばんは、信次です。

いや~、放置しちゃいましたね。ニコニコにはまったりゲームにはまったりしてました。

FFbookmark

いきなりですけど、最近マウスでごろごろしながら PC をいじることが多くなってきたのです。んで、僕が以前作った SelectOpen というツールがですね、キーボード操作に特化していてマウスだと使いづらかったんですね。

と言うわけで、同じようなソフトでキーボードからもマウスからも使いやすいのが欲しくて自分で作っちゃいました。

基本的には SelectOpen と同じで、よく開くパスを登録して指定したツールで開く、というものです。僕はファイラの外部ブックマークに使ってます。

「よく使うフォルダがあるなら、一つフォルダを登録して、そこによく使うフォルダのショートカットを集めればいいじゃん」と思った方、正解ですw でもそのやり方は自分に合わなかったんですよね。

まあそんな訳で、自分用に作ったツールですけどせっかくなので公開してみようかと思いまして。

詳細は FFbookmark のページに書いてあります。もしよろしければどうぞ。あ、.NET Framework 4.0 が(多分)必要です。


Page 1 of 1: 1

info

moewe はオンラインソフト紹介や PC ・ネット関連雑記サイトです。詳しくは about をご覧下さい。

RSS も配信しています。更新チェックにご利用下さい。

RSS 1.0 -moewe-

Twitter

about.me

latest entries

categories

archives

ブログ化以前の雑記ログは log をご覧下さい。