Webブラウザ移行

DonutPから完全にOperaに移行できるようにした。OperaWindowsでもMacでもLinuxでも使える*1ので、これから別のOSに移行するとしてもまず使えるんじゃないかと。とはいえ、企業なので倒産したら使えなくなってしまうか。その点Firefoxの方が良いのか。まあFirefoxでもいいか(なんだそりゃ)

自分はC-iで今見ているWebページのタイトルとURLをクリップボードにコピーできるようにしている。たとえば、http://cross.lib.pref.saitama.jp/ を表示してC-iを押すと、クリップボード

埼玉県内公共図書館等横断検索 : 

- http://cross.lib.pref.saitama.jp/

という文字列が格納できる。Changelogメモを取るときに便利なので、こんな感じになっているのだが、Operaでも同じ機能を実現するのに苦労した。


DonutPではこの機能はメニューにずばりあって、C-iを押すと

埼玉県内公共図書館等横断検索
http://cross.lib.pref.saitama.jp/

という文字列がクリップボードに格納できる。なので、窓使いの憂鬱でC-iを

 key C-i		= &Default &ShellExecute("open", "C:\\ROOT\\TEXT_F\\Perl_F\\urltitlecopy.pl",,, ShowNormal)

という感じでPerlスクリプトを呼び出して適当にクリップボードの文字列操作をすればできた。&Defaultがついているのは、DonutP上ではEmacsEditを指定しているために、C-iがそのままではEmacsEditに上書きされているため(実行すると一瞬コマンドプロンプトの画面が表示されるが、実用上は問題ないのでこのままで愛用していた)。

が、OperaではDonutPと同じ動作をするメニュー項目は存在しないようなので、かなり力技で対応した。

OperaではアドレスバーにF8キーで移動できる。この時、URLは選択状態になるのでそのままコピーすればクリップボードにURLが入る。そのURLをPerlのLWPでgetしてその中からtitileタグにマッチする部分を正規表現で取り出して、タイトルとURLを上記の形式に整形してクリップボードに格納。

手間はDonutPと比べてかなり多いが、でもこのスクリプトを実行するのもほとんど一瞬で終わってしまう。この方式だとアドレスが取得できればどのWebブラウザでも同様に設定できるので、Firefoxにも同じようにC-iにバインドした。

久しぶりにPerlを使ったのでかなり忘れていた。多分OS移行時に最も問題となるのは窓使いの憂鬱xyzzyだと思う。