feed:で始まるURLをa
要素のhref
属性に記述することによって、RSSのsubscribeを行わせようという動きがマイナーながらも存在する(SeeAlso: feed and rss protocols format)わけですが、Bloglinesは対応してません(サービス側でどうにかできるわけではないので、やるとしたらBloglines Notifierによってだとは思いますが)。で、VBScriptで無理やり対応してみる。
まずは何はともあれ、VBScriptを作成します。こんなんで、引数からBloglinesにsubscribeするためのURLを作り、
Dim ObjArgs, StrPath, WshShell Set ObjArgs = WScript.Arguments StrPath = ObjArgs(0) StrPath = StrPath StrPath = Replace(StrPath, "feed:", "") If Left(StrPath, 2) = "//" Then If Left(StrPath, 6) <> "//http" Then StrPath = "http:" & StrPath Else StrPath = Replace(StrPath, "//http", "http") End If ElseIf Left(StrPath, 4) <> "http" Then StrPath = "http://" & StrPath End If Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.Run "http://www.bloglines.com/sub/" & StrPath Set ObjArgs = Nothing Set WshShell = Nothing WScript.Quit
SubscribeFeed.vbsと名前を付けて、パスの通ったフォルダに保存します。
次に、feed:で始まるリンクをクリックした場合、SubscribeFeed.vbsを起動するように、レジストリへの登録を行います。以下のようなレジストリファイルを作成し登録します。
REGEDIT4 [HKEY_CLASSES_ROOT\feed] @="URL:Feed Protocol" "URL Protocol"="" [HKEY_CLASSES_ROOT\feed\shell] @="open" [HKEY_CLASSES_ROOT\feed\shell\open] [HKEY_CLASSES_ROOT\feed\shell\open\command] @="wscript.exe SubscribeFeed.vbs %1"
これで、feed:で始まるリンクをクリックすると、BloglinesにRSSが登録され、のMyBlogsのページが開きます。
正直、無意味に近いです。feed protocolは広まってないですしね。ちなみに、引数にRSSのURLを渡すとSubscribeできるRSSリーダーなら、
WshShell.Run "http://www.bloglines.com/sub/" & StrPath
の部分を、適当に編集してやれば対応できるはず。試す気ないですが。
feed protocol URLのシンタックスをかなり誤解しており、うまくhttp:で始まるURLに変換できないっぽいので、VBScriptを更新しました。この更新によって、
などの記述に対応しました。feed protocol extensionsへも対応してみようかな・・・。面倒すぎる・・・。