最近、キーボードのキーでよく使う機能を呼び出すのが便利だなぁと思ってます。
で、多用する"ページのタイトルとURLをコピー"する機能が欲しい。
過去にRakuCopyブックマークレットをつくりましたが、やはりショートカットキーでダイレクトにクリップボードに転送したい。
Firefoxにはその用途のためのCopyURL+という便利な拡張があります。
ただ、現在Firefox2.0に対応しておらずインストールが面倒なのと、ショートカットキーに割り当てられるのかわからず。
そこで、以前にやったkeyconfig拡張で”Gmailで送信”と同様に、keyconfigを使ってショートカットキーに割り当てる方法。
使い方
keyconfigエクステンションをインストール。
"ツール" → "キーボードショートカットのカスタマイズ" で "新しいキーを追加"
/* CODE */と書かれている部分に以下のように書く。
var w = window._content;
var d = w.document;
var txt = d.title + '\n' + d.location.href;
const CLIPBOARD = Components.classes["@mozilla.org/widget/clipboardhelper;1"].getService(Components.interfaces.nsIClipboardHelper);
CLIPBOARD.copyString(txt);
これをお好きなキーに割り当てればおk。とりあえず"C"に割り当ててワンキーのみで"ページのタイトルとURLをコピー"できるようになりました。
HTMLにしたい場合は、三行目を↓のように変更。
var txt = d.title + '\n' + '<a href="' + d.location.href + '" title="' + d.title + '">' + d.location.href + '</a>';
書式は簡単に変更できるのでよく使うもの(例えばAmazonのアソシエイト用HTMLコード生成とか)を入れといてもいいかも。
内容解説みたいなもの
まず、いつものようにGreasemonkeyでやろうかと思ったときに、すぐ思いついたのはこの方法。
最速インターフェース研究会 :: Firefoxでテキストをクリップボードにコピーする方法
http://la.ma.la/blog/diary_200601100445.htm
この方法はFlashのセキュリティが変更されて、dataスキームで読み出したFlashファイルはローカルから読み出したものと同様に扱われるらしく現在動作しない。
仕方ないのでKeyconfigエクステンションでできないか、とりあえず、調べる。
Keyconfig extension: Firefox - MozillaZine Knowledge Base
http://kb.mozillazine.org/Keyconfig_extension:_Firefox
readFromClipboardはあるんだけど、writetoClipboardみたいな機能がない!!
こりゃ、無理かもと思ったが、userChrome.jsというJavascriptでFirefoxを機能拡張しちゃう機能拡張用のコードを発見。
SCRAPBLOG » Blog Archive » [userChrome.js] Copy Title + URL
http://amb.vis.ne.jp/mozilla/?p=51
このクリップボードに転送するコード使えるんじゃね?
Keyconfigにぶちこんでみる。
ktkr!
Keyconfig エクステンション前提だが、どうにかワンキーでクリップボードに転送完了。
以下、余談
うーん、素人考えだけど、クリップボードを読むのはセキュリティ的に問題が大きいけれど、クリップボードに転送するのはもう少し緩やかにしてもいいんじゃないかと思ったり。
追記:
↓クリップボードに転送するのがなぜ危険か?
セキュリティホール memo - 2006.02
http://www.st.ryukoku.ac.jp/%7Ekjm/security/memo/2006/02.html#20060225_various
つまり、トロイなどのローカルアプリは、クリップボードを監視しているだけで、外部からのコマンドを入手できる、と……。
ってことらしい。可能性はゼロではないからなぁ。
ほんじゃ、クリップボードに転送できるIEって・・・orz
ワンキーでコピーできるのはいいですね。
話は少し逸れてしまいますが,Firefox2対応のCopyURL+はhttp://btcorp.dyndns.org/Tools/FireFoxExtensions/FF_2.0_extensions/から入手できます.
現状,ボクはCopyURL+の機能をよく利用していますが,確かにキーボードショートカットで何でも実現できたらいいな!と思います
CopyURL+機能をショートカットに割り当てられたら便利ですよね。キーボードから手離すのダルいです。
> june29 さん
おお、2.0対応したものが公開されてたんですね。
情報ありがとうございます。
入れてみました。
うむ、この機能が欲しかったのです。
ショートカットキーの割り当てはできないけれど、
右クリック→U→T で呼び出せますね。
> ラル さん
> キーボードから手離すのダルいです。
たしかに。
目指すはマウス使わず片手で操作です(^^;