気になったので、 Open Live Writer 全体のソースコードを入手して中を覗いてみた。

DhtmkImageVIewers.xml という xml ファイルの中で、どんなものを見つけたら Lightbox を使ったブログだと判断するかが記述されていた。

当該の部分がこれ:

<filePattern>(^|/)lightbox\.js$</filePattern>

つまり、javascript のファイル名は lightbox.js でなければ認識しない。

そこで、使用している lightbox-plus-jquery.js の名前を lightbox.js に変更して試してみた。

2018-12-03

こんな感じに、 Lightbox を認識してくれた。

ファイル名が固定だったとは・・・・・。

実は Open Live Writer だけでなく、 Windows Live Writer も Lightbox を認識した。

ということは、前記事で参考にした Microsoft コミュニティで言われていた「 2.5 から prototype が jQuery に変わったので認識しなくなった」というのは間違いだったということ。 javascript のファイル名が固定だっただけだったのだ。当該記事をよく見ると javascript のファイル名を ‘lightbox-2-6-min.js’ にしているから、そのせいで認識しなかったのだろう。

アプリケーションの開発側が「ファイル名は固定だよ」と一言情報を出してくれていれば済んだことだよなあ・・・。


いろいろなところで紹介されているが(例えばこことか)、 Windows Live Writer は Lightbox に対応しているらしい。

Windows Live Writer でアカウントを作成するときに Lightbox を使用しているブログであると認識されると、画像を貼りつけ選択した状態で画像ツールのプロパティグループにある「リンクオプション」を選ぶと、表示される「ソース画像のオプション」ダイアログに、「Lightbox 2 を有効にする」というチェックボックスが追加され、記事中のタグやエレメントで対応した処理が行われる。

・・・しかし、実際は結局、この機能は動作しないようだ。

2014 年の記事、

Windows live writerのLightbox2.6有効化チェックの表示設定方法

を見ると分かるように、 Lightbox2 では prototype を使用していたが、 Lightbox2.5以降は jQuery を使用するように変わったが、 Windows Live Writer は、 Windows Live Essential 2012 が出た 2012 年以降更新はないまま配布が終了したので、この変更に対応していないため、 Lightbox 対応コードが動作しないようだ。まあ、 Windows Live Writer に関して言えば、問題が発生した 2014 年以前に開発自体が終了していたことから、やむを得ない気がする。

ただ、その後に公開され開発が続いている(はずの) Open live Writer でどうかというと・・・・・私の環境では認識しなかったのだ。 Open Live Writer が初めて公開されたのは 2015 年 12 月 9 日なので、最初の版を開発しているとき、既に Lightbox のこの問題は既知のはずなのだが、なぜかは分からないが動作しない。 Windows Live Writer のコードのままリリースされたのか?

Lightbox2 の動作確認のために、手作業で投稿済みの記事のタグを編集してみたところ、問題なく Lightbox2 が機能したので明らかに Windows/Open Live Writer 側の問題と思われる。現状では、 Lightbox2 を使用したければ、記事を投稿した後に、投稿済み記事を手作業で編集する必要があるが、正直手間で大変である。

まあ、たかがひとつのスクリプトのために、いちいち投稿ツール本体に特別な動作を組み込むという考え方自体非常によろしくないと思うのだが、他に対応する方法が(手作業で大変な労力をかける以外に)ないのだから、この現状は非常に残念である。


参考サイトのようにして管理者として Windows PowerShell を開き、Add-AppxPackage –Register “ほにゃらら” –DisableDevelopmentMode を実行したとき、「マニフェストがない」と怒られて登録できないものがある。

  • Microsoft.Appconnector … アプリコネクター
  • Microsoft.ConnectivityStore … Microsoft Wi-Fi で使われる何か。

ファイル自体は存在するのだが、 WSRESET などを実行しても一向に再登録されないし、スタート>設定>更新とセキュリティ>トラブルシューティング>Windows ストアアプリから「トラブルシューティングツールの実行」をして修復を試みても無駄で、スタート>設定>アプリ>>アプリと機能を選んでも、一覧に出ても来ない。これらのアプリの再登録はもう、どうにもならないのか?


調べてみた。

(1) http://www.google.com/addurl/?hl=ja&continue=/addurl
にアクセスし、 Search Console を開く。

(2) サイトマップを登録する。
いくつかの形式で作成できるが、今回は .xml 形式で作成した。

(3) 所有権の確認をする。

  • google から提供された html ファイルを指定の場所に配置し、確認ボタンを押す。
  • google から提供された html タグを <head>セクションの中、 <body>セクションの開始前に配置し、確認ボタンを押す。
  • google Analytics のアカウントを使用する。
  • google タグマネージャーのアカウントを使用する。
  • ドメイン名プロバイダから確認する。

※上の5つの方法があり、複数の方法で所有権の確認が途絶えないようにした方がいいらしい。

これで検索エンジンからクローラーが巡回するようになる。

あとは、検索エンジン側が DB への登録を完了するまで待てば検索にのるようになる。


    使ってみて気づいた不便な点。

    (1)追記が書けない。
    投稿した記事に後から追記を書きたくなることは多いので、これはかなり不便。

    (2)コメントを受け付ける日数が指定できない。
    コメントを受け付けるか受け付けないかの2択しかできない。

    (3)ブログに投稿済みの過去記事をまとめてローカルに読み込むことができない。
    BlogWrite ではできたので、ないと不便に感じる。

    (4)エディット画面で編集中に改行すると必ず<p>タグで囲まれる。
    改行の場合は<br />タグを挿入し、 SHIFT+改行の場合は<p>タグで囲むなどしてくれるとありがたい。

    (5)過去記事を読み込んできた場合に、公開日時を指定する画面を開いたとき、日時が未入力のまま。
    過去記事の場合は以前公開された日時をもっているので、それを初期入力した状態で開いてくれるとありがたいのだが・・・。

    2018-12-01-publishdate

    (6)新規記事を投稿する前に記事の概要を開いたとき、未入力のまま。
    記事の先頭からこちらで指定した文字数分までが入力された状態で開いてくれるとありがたいのだが・・・。

    2018-12-01-excerpt

    Mac では定番ソフトとして MarsEdit というものが販売されているようで、かなり評判がいいようだが、上記の点についてはどう実装(あるいは未実装?)されているのだろうか?

    キーワード: XML-RPC Windows Live Writer