Open Live Writer

Microsoftがブログ投稿ツール「Windows Live Writer」をオープンソースにした。現在のバージョンは0.5。

ということで、いろいろ調べもの。

最後のWindows Live Writerは Windows Live Writer 2012で、Windows Live Essentials 2012に含まれている。

Open Live Writerのサイトはこちら

こっから、インストーラーをダウンロードして、インストール。

Windows 8.1で試したところ、普通に動いた。インストール先は、C:\Users[UserName]\AppData\Local\OpenLiveWriterの 中。この中の、app-0.5.0.0/の中に実行バイナリが格納される。

使い勝手は、あたりまえだけど、いままでの、Windows Live Writerとなんらかわらん。

GitHubはこっち

ライセンスはMIT license

普通に、git clone https://github.com/OpenLiveWriter/OpenLiveWriter で回収。

src\managed\writer.slnをVisual Studio 2015 community でビルドできた。

Visual Studioでslnを開くと「Install Visual C++ 2015 Tools for Windows Desktop」なる警告がでるかもしれない。出たら、Visual Studioのセットアップを開いて、Visual C++ 2015 tools and library for Windows DesktopをインストールすればOK。

Solution Explorerで、OpenLiveWriterのプロジェクトを右クリックして、「Set as StartUp Project」を選択してから、ビルドでOK。

コードは、.NET 2.0のころのスタイル。ただ、プロジェクトのTarget frameworkは、.NET Framework 4.5.2になっている。.NET 2.0でのアプリケーションの見本みたいなコード。とっても勉強になるので、一度、読むといい。おすすめ。もちろん、.NET Framework 4.5.2を使う今ならこんな書き方しないよな、って点もいっぱいあるけど、それはそれで、当時のことを思い浮べながら読むと良し。Linqなくても、こうやってかくのね。とか、Taskなくてもそうするのね。みたいな。

で、cagylogicでは、WebThumbnailやら、FileUploadやら、AmazonAssociateJPなるWindows Live Writer用のプラグインを公開しているので、こいつらが、どうなるのかを調査。

プラグインに関しては、Ver 1.0に向けて、まだまだ、いろいろ変更があると思うので、あくまでも参考までに。

C:\Users[UserName]\AppData\Local\OpenLiveWriter\app-0.5.0.0\Pluginsのフォルダに入れればOK。ただし、いままでのプラグインはそのままでは使えない。

プラグインをいろいろ変更する必要がある。

Windows Live Writerのプラグインを作成するときは、Target Frameworkを.NET Framework 2.0にしていたが、Open Live Writerのプラグインは、.NET Framework 4.5.2にする必要あり。

Windows Live Writerのプラグインを作成するときは、Windows Live Writerの実行バイナリ内にある、WindowsLive.Writer.Api.dllを参照にいれているが、Open Live Writerのプラグインを作成するときは、WindowsLive.Writer.Api.dllじゃなくて、Open Live Writerの実行バイナリ内にある、OpenLiveWriter.Api.dllを参照にいれる。

これに伴い、名前空間が、WindowsLive.Writer.Apiから、OpenLiveWriter.Apiに変更になるので、それに併せて、usingを変更する。クラス名やメソッド名、プロパティ名は以前と同じ模様。

とりあえず、それだけ変更してビルドすれば、Open Live Writer用のプラグインは完成。

C:\Users[UserName]\AppData\Local\OpenLiveWriter\app-0.5.0.0\Pluginsのフォルダにコピーして、Open Live Writerを起動しなおせば、使える。

厳密に言うと、SmartContentEditorのサイズが変更になったのか、たまたま、日本語に対応してないからそうなるのか、そのままのサイズだと、はみだすので、ちょっと小さくする必要がある。

あと、SmartContentSourceにつける、WriterPluginAttributeのImagePathの画像サイズのチェックが厳しくなったようで、ちゃんと16×16になってないと、蹴られる。

ということで、FileUploadプラグインとWebThumbnailプラグインはとりあえず、動くことが確認できた。

まだバージョン番号とか、ライセンスの確認とか、その他、いろいろ確認することがあるので、まだ公開はしないけど、ひと安心。

ただ、AmazonAssociateJPはビルドがとおっていない。というのは、Amazonにアクセスするためのsoapまわりが、.net 2.0に依存してて、こいつが、.net 4.5.2に対応してない。というかこのへん書きなおしだな。いろいろ気になるところもあるし。。。

ま、そのうち、やります。

ご報告まで。

コメントを残す