2006年10月02日
川俣晶の縁側ソフトウェア技術雑記 total 4983 count

キーワード一発でブログにWikiPediaの参照を挿入する! Windows Live Writerのプラグインを作成!!

Written By: 川俣 晶連絡先

 Windows Live Writerというソフトがどうも気になっていたので、SDKを使ってプラグインを1つ作ってみました。

Windows Live Writerとは何か? §

 デスクトップアプリケーションとして作成されたブログの編集ツールです。

 Windows Live Spaces専用ではなく、メジャーなブログ用ソフトに対応した汎用品です。

 特殊な編集機能を持ちながら、なぜ汎用品として成立するのかというと、特殊な編集情報をid属性等に詰め込んで送り出すためです。ブログ側は単なるHTMLとして受け取っていますが、Windows Live Writerがブログに送ったテキストをもう一度戻すと、編集情報が残されているので、再度HTMLにはない構造として編集できます。

WikiPediaプラグイン §

 WikiPediaプラグインというのを作ってみました。

 キーワードを書き込むだけでWikiPedia(日本語版)へのリンクを作り出すプラグインです。

 キーワードを書き換えるだけで、URLと見出しの双方が自動的に更新されます。

 ダウンロードは以下のリンクから。ZIPファイルにビルドしたDLLと、C#のソース丸ごと入っています。

 Visual Studio 2005で作成したので、.NET Framework 2.0が必要です。ソースのプロジェクトを開くにはVisual Studio 2005が必要です。

インストール方法 §

 Windows Live Writerをインストールしたフォルダの下のPluginフォルダに、ZIPファイルの中のLiveWriterWikiPediaPlugin001フォルダの下のLiveWriterWikiPediaPlugin.dllをコピーしてください。DLLファイルを1つコピーするだけです。

WikiPediaプラグインの使い方 §

 上記DLLをコピーしたらWindows Live Writerを起動します。

 ウィンドウ右下に黄色いWマークがこのプラグインです。(その上のHはSDKのサンプルです)

p1

 これをクリックすると、キーワードが質問されるので、入力します。

p2

 これでWikiPediaへのリンクが作られました。

 ソースは以下のような感じです。一見無意味なdiv要素と、div要素のclass属性とid属性が再編集のための情報を保持しています。

<div class="wlWriterEditableSmartContent" id="F9E2C43C-1CE8-41bc-9C80-4932C803BD79:3f7a001d-15a3-47a9-a880-0ef77ab9d173" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"><a href="http://ja.wikipedia.org/wiki/%E7%8F%8D%E9%A0%85%E7%9B%AE">珍項目</a></div>

 WikiPediaプラグインで作成した項目を選択すると、以下のようにウィンドウ右側にテキストボックスが表示され、いつでもキーワードを訂正できます。

p3

 ここで訂正を行うと、見出しとURLの双方が同時に修正されます。見出しはF-15なのにURLはF-16になっている……ということはありません。

 以下は、そのままブログにPublishしたケースのスクリーンショットです。

p4

感想と課題 §

 本来ならインラインに展開されると嬉しいのですが、div要素を使っているのでブロックになってしまうのが難点。

 それから、SDKサンプルソースのHアイコンと同じピクセルサイズの画像を作ったはずなのに、なぜか黄色のWアイコンははみ出しています。これは謎です。

 Windows Live Writerは、実はMagSite1では全く使えないわけですが、ソフトそのものに魅力がありますね。特に強引に情報を詰め込んで汎用性を持たせてしまった点が面白いです。プラグインを充実すると面白い使い方もできそうですね。