egbridge Universalの使い方 3

  • 投稿日:
  • by
  • カテゴリ:

前回、egblidge Universalの使い方 2ということで、 egbridge Universalの新機能であるユニバーサルパレットをカスタマイズして、 自分好みのパレットを作り上げてしまう方法を紹介したりした。 そこで今回は、私が付け加えた昨日の中で一番便利に使っているAタグを作る機能を紹介しちゃったりしてみる。 機能を追加する方法については、前回で説明してある。

さて、Aタグを作る機能として、デフォルトのブログパレットに「Safari」というボタンがある。 このボタンを押すと、Safariの一番前のタブで開いているURLが、 リンク先としてセットされたAタグをバシッと一発で書き込んでくれる、 という素晴らしいボタンだ。 例えば、Google ニュースを表示しておいてボタンを押すと、 下のようなタグが生成される。

<a target="_blank" href="http://news.google.com/news">http://news.google.com/news</a>

しかし、よく見るとタイトルとページ名がうまく読み込めていない。 できれば、下のようになって欲しいのが、人の限りない欲望の証。おおげさ。

<a title="Google ニュース 日本版" href="http://news.google.com/news" target="_top">Google ニュース 日本版</a>

これは、Travellers Taleさんの Travellers Tale: Safari から URL & ページタイトル&テキストを取得 その1を参考にさせてもらったところうまく行ったので、下にソースコードを書いておく。

前回説明した通り、スクリプトエディタで新規ファイルを開いてコピペして、 プラグインフォルダにファイルを「名前を付けて保存」すれば使えるようになる。 デフォルトのブログパレットで使っているAppleScriptは見つからなかったので、 そちらを書き換えてデフォルトのパレットを強化することはできない。 いじらせてくれればいいのにね。

property theElement : "a"

on convert_lines(theLines)

tell application "Safari"
set theURL to URL of document 1 as Unicode text
set theTitle to name of document 1 as Unicode text
end tell

set startTag to "<" & theElement & " title=\"" & theTitle & "\" href=\"" & theURL & "\" target=\"_top\">"
set endTag to "</" & theElement & ">"
set theResult to startTag & theTitle & endTag

return theResult
end convert_lines

さて、Safari以外のブラウザも使う私としては、これを他のブラウザにも対応させたい。 私は特にシイラをよく使っているので、まずシイラに対応させてみよう。

と思ったら、上ののSafariの部分をShiiraに変えるだけで大丈夫だった。ラッキー。 一応ソースを書いておくと、下のようになる。

property theElement : "a"

on convert_lines(theLines)

tell application "Shiira"
set theURL to URL of document 1 as Unicode text
set theTitle to name of document 1 as Unicode text
end tell

set startTag to "<" & theElement & " title=\"" & theTitle & "\" href=\"" & theURL & "\" target=\"_top\">"
set endTag to "</" & theElement & ">"
set theResult to startTag & theTitle & endTag

return theResult
end convert_lines

じゃあ調子に乗ってFirefoxも行ってみよう、と思ったらうまくいかなかった。 で、調べてみると、Firefox 版アンカータグを作成する AppleScriptにそのままズバリのコードが公開されていたので、 ありがたく借用させていただく。

property theElement : "a"

on convert_lines(theLines)

tell application "Firefox"
set theURL to «class curl» of window 1
set theTitle to «class pTit» of window 1
end tell

set startTag to "<" & theElement & " title=\"" & theTitle & "\" href=\"" & theURL & "\" target=\"_top\">"
set endTag to "</" & theElement & ">"
set theResult to startTag & theTitle & endTag

return theResult
end convert_lines

『«』『»』はそれぞれ、『option + ]』『option + shift + ]』で入力できる。

ついでに、クリップボードにURLがコピーしてあるときに、 そのURLをリンク先に設定したAタグを作るソースも載せておこう。

property theElement : "a"

on convert_lines(theLines)

set clipData to the clipboard as string
set startTag to "<" & theElement & " href=\"" & clipData & "\" target=\"_top\">"
set endTag to "</" & theElement & ">"

set theResult to startTag & theLines & endTag

return theResult
end convert_lines

ということで、ブログであるか否かを問わず、サイトを持っている人は「ちょっとリンク張ろうかなー」 と思うことが多いはず。 そんなときにこのボタンがあれば、ちまちま「href=...」と打ち込んだあげく、 「あれ?飛べない。あ、herfになってたorz」 とかならなくて済むのでかなり便利! なのでどんどん使うといいと思います。

でもegbridge Universalを使っている人にしか役に立たないTipsなので、 限りなく需要が小さいけど気にしない!気にしないんだから!

追記:
エルゴソフト サポートでユニバーサルパレットのカスタマイズについて書かれている。 まぁ、ここで書いてるのと同じような話。 だが、こっちのが早かったぜ。勝ってどうする。