MarsEditで無理矢理はてなダイアリーを更新してみる
MarsEditは、現在のバージョンでははてなダイアリーにログインできません。
よって直接はてなダイアリーを更新することはできません。
また当然ながらはてな記法にも対応していません。
MarsEditのプレビューをはてな記法に対応させ、かつ投稿を実施してみます。
MarsEditのはてな記法への対応
紹介マニアどらふと版: MarsEdit でプレビューできる文法を追加するで書いたように、文法を追加します。
はてな記法のパーサーがHatenaSyntax \ Package \ Openpearで公開されています。
最新版はanatoo/HatenaSyntax - GitHubです。
MarsEditにそのまま追加できる形式の物をsakito / MarsEditPlugIn / source — Bitbucketに配置しましたので使いたい人は自己責任でご利用ください。
これでMarsEditではてな記法のプレビューが可能になります。
2012/08/01 追記
HTMLも正常表示できるように修正し tar.gz 形式で配布をしています。
https://bitbucket.org/sakito/marseditplugin/downloads
MarsEditにダミーのBlogを追加する
「File」「New Blog…」で新規Blogを追加します。
URLにはてなダイアリーのURLを入力しておきます。
「OK」すると取得不能でエラーになりますが、そのまま継続して設定します。
設定画面の「Editing」で「preview Text Filter」を「HatenaSyntax」にしておいてください。
MarsEditで Local Draftsで記述する時に作成したBlogの設定を利用します。
「Edit Preview Template」でHTML/CSSを変更すればよりはてなダイアリーと同じ状態でプレビューされますので設定は好きにしてください。
はてなダイアリーにはメールで投稿する
はてなダイアリーにはメールで投稿する機能があります。
メールで日記を書く - はてなダイアリーのヘルプ
ここでは MarsEdit から Sparrow を呼び出し、メールを送信するAppleScriptを作成することでメールで更新してみます。
こんな感じ。
set myfrom to "xxxx@example.com" -- 自分のメールアドレス set hatenato to "xxxx@d.hatena.ne.jp" -- 送信先メールアドレス tell application "Sparrow" to activate delay 1 tell application "MarsEdit" activate tell document 1 set tit to get title set cont to get body set cont to cont & (get extended entry) end tell end tell tell application "Sparrow" activate set newMessage to make new outgoing message with properties {subject:tit, sender:myfrom, content:cont} tell newMessage to make new to recipient at end of to recipients with properties {address:hatenato} compose newMessage -- 自動送信はしないので自分で送信してください end tell
これをAppleScriptエディタで書いて、「~/Library/Application Support/MarsEdit/Scripts」以下に保存します。
MarsEditを再起動すると、MarsEditのスクリプトメニュー内に保存したスクリプトがありますので、選択するとSparrowにMarsEditで現在記述している内容が送信され、メール送信前の状態になります。
問題ないようであれば、そのまま送信すると投稿されます。
まとめ
従来はメール投稿は便利ですがプレビューできませんでしたが、この方法ならローカルでプレビューすることが可能です。
スクリプトを組めばいろいろ応用できるでしょう。