MacHtml for MarsEdit

このエントリーをはてなブックマークに追加 Pocket

AppStoreHelper キタ━(゚∀゚)━!

この週末は AppStoreHelper の話題で持ち切りでしたね。非常に興味深い取り組みだと思います

【30倍速い】iPhone/Macブロガー専用htmlジェネレータAppStoreHelperテスト版 | ひとりぶろぐ
AppStoreHelperは、AppleのApp Store 、Mac App Store(以下App Store)で扱うアプリケーションをブログなどで紹介しまくる人のために作られたアプリケーションです。

スゲ━━━━━━ヽ(゚Д゚)ノ━━━━━━!!!!

さて、自称普通のサラリーマンこと hiro45jp さんにご紹介いただきましたように、わたくし、ヒロさんのブックマークレットなどを MarsEdit から呼び出せるようにいくつかサービスメニューを作成してきております。

AppStoreHelperはAppHtmlの理想系かも知れない♬ | 普通のサラリーマンのiPhone日記
としやさんが、BookmarkletをMarsEditと連携すべく様々な取り組みをなさってます。

ヒロさんのブックマークレットがあってこそなんです。

と・こ・ろ・が、

(・3・)アルェー、MacHtml for MarsEdit がない!

ということで作りました。

こちらからダウンロードしてください。

基本的な導入手順はspring_friendsさんの以下の記事をご覧下さい。

必要に応じて aff 変数に LinkShare のサイトID を設定してください。 テンプレ内の書式 No. の初期値を変更したい場合は fmt 変数の値を変更してください。

設定の画面イメージは以下の記事と同様です。

あとがき

MarsEdit のまとめページを作ったほうがよいでしょうか(;^ω^)

MarsEdit 3.2.2App
Mac OS X 10.6.6以降
カテゴリ: ソーシャルネットワーキング 価格: ¥4,600
更新: 2011/04/25

最新情報はこちら: Happy-Go-Lucky: MarsEdit

Google Contacts と iPhone の同期

このエントリーをはてなブックマークに追加 Pocket
IOSSyncWithGoogle

Google Contacts と iPhone の同期をまえに一度やってみたものの、 どうもイイ感じにならなかったのでずっと放置していました。

iPad 2 を入手して同期対象が増えたこともあり、いっちょ挑戦してみるかと思った次第でございます。

なお、本エントリの内容は 2011-05-16 時点での以下の環境での検証結果です。 将来 Google Contacts および iOS の仕様が変更されると異なる結果が得られる可能性がありますのでご了承ください。

  • Mac OS X 10.6.7
  • iOS 4.3.3

さて、いろいろと情報収集や試行錯誤をした結果、押さえておくべき前提は以下のものと判断しました。

  1. Google Contacts と iPhone の同期開始時は Google Contacts のデータがマスタである
  2. iPhone と Google Contacts では「姓」と「名」の解釈が逆?

それぞれについて補足します。

Google Contacts と iPhone の同期開始時は Google Contacts のデータがマスタである

iPhone で Google Contacts との同期を有効にする際には、iPhone 上のデータを削除するか確認されます。

このとき、iPhone 上のデータを残すという選択もできますが、データの重複への対処が面倒になるのでおすすめしません。

つまり、Google Contacts と iPhone の同期を開始する際には、連絡先データはすべて Google Contacts に集める必要があるのです。

iPhone と Google Contacts では「姓」と「名」の解釈が逆?

Google Contacts で普通に連絡先を作成すると、iPhone に同期した際に「姓」と「名」が逆転します。

GoogleContacts1000000090.png

※正確には逆転することがあります。実は入力方法によって結果が異なるようです。 「姓」と「名」の間にスペースを入れないと iPhone 側では両方共「姓」として扱われます。

つまり、iPhone 側で「姓」と「名」を正しくさせるためには、Google Contacts 側の「姓」と「名」を逆転させる必要があるのです。

以降では、これらの前提を踏まえて Google Contacts と iPhone を同期させる手順について説明します。

連絡先情報を Google Contacts に集める

iPhone ユーザの方であれば、連絡先情報は基本的に iPhone にすべて保存されていると思います。

つまり、iPhone 上の連絡先データを Google Contacts にコピーすることになります。

おおまかな流れは以下の通りです。

  1. iPhone と Mac で連絡先を同期させる
  2. Mac のアドレスブックからすべての連絡先を vCard 形式でエクスポートする
  3. Google Contacts に vCard をインポートする

Mac のアドレスブックには Google Contacts との同期機能があります(OS X 10.5.3 以降)。 しかし、アドレスブックと Google Contacts の同期では「ふりがな」が反映されないようです。

そこで、vCard 形式のファイルを経由してデータのコピーを行います。

※ vCard については RFC2426 を参照

iPhone と Mac で連絡先を同期させる

iTunes で同期しましょう。以上。

アドレスブックのデータをバックアップする

作業前にはアドレスブックのデータをバックアップしましょう。

  1. アドレスブックを起動します。
  2. メニューより [ファイル] > [書き出す...] > [アドレスブックのアーカイブ...] を選択します。
  3. ファイルの保存先を選択して [OK] ボタンをクリックします。

Mac のアドレスブックからすべての連絡先を vCard 形式でエクスポートする

  1. アドレスブックを起動して、「すべての連絡先」を選択します。
  2. 「名前」欄のすべての連絡先を選択します(⌘A)。
  3. メニューより [ファイル] > [書き出す...] > [vCard を書き出す...] を選択します。
  4. ファイルの保存先を選択して [OK] ボタンをクリックします。
顔文字などを連絡先に登録している場合

顔文字などを連絡先に登録している場合は、エクスポート前に該当する連絡先をアドレスブックから削除することをおすすめします。エクスポート後に、予めバックアップしておいたアドレスブックのアーカイブからリストアしましょう。

また、顔文字などのみを iPhone と同期するようにしておきましょう。

私はアドレスブックでグループを作成して顔文字を登録しているので、そのグループのみを iPhone に同期するようにしました。

vCard 内の「姓」と「名」を入れ替える

アドレスブックからエクスポートした連絡先データをそのまま Google Contacts にインポートすると iPhone と同期した際に iPhone 側の「姓」と「名」が逆転してしまいます。

そこで、アドレスブックからエクスポートしたデータ内の「姓」と「名」を入れ替えるスクリプトを AWK という言語で書きました。

スクリプトをこちらからダウンロードしてください。

ターミナルを起動して、アドレスブックからエクスポートした vCard ファイルを保存したフォルダに移動してから以下のコマンドを実行してください。

$ tr -d \\r < vCard.vcf | awk -f SwapFirstAndLastName.awk > vCard4Google.vcf

ターミナルって敷居が高いかな… 「$」はプロンプトです。入力する文字ではありません。

Google Contacts に vCard をインポートする

  1. Web ブラウザで GMail にアクセスします。
  2. [連絡先] をクリックします。 GoogleContacts2
  3. [その他の操作] > [インポート...] をクリックします。 GoogleContacts3
  4. AWK スクリプトで変換した vCard ファイルを選択して [インポート] ボタンをクリックします。 GoogleContacts4

iPhone で Google Contacts との同期を設定する

Google Contacts に連絡先データを保存することができたら、iPhone で Google Contacts との同期を設定します。設定手順は以下のページを参照してください。

iOS:Exchange ActiveSync アカウントのクイック設定ガイド

連絡先の同期を選択すると以下の画面が表示されると思いますので、通常は [削除] ボタンをタップしてください。

1000000091.png

顔文字などのみを iPhone に同期している場合は [iPhoneに残す] ボタンをタップしてください。 すると、以下の画面が表示されますので、再度 [iPhone に残す] ボタンをタップしてください。

1000000092.png

まとめ

iPhone 上の「姓」と「名」を正しくすることを優先して Google Contacts と同期する方法を説明させていただきました。

本文中では iPhone にのみ言及していますが iPad でも同様に同期できますので、たとえば iPhone で連絡先の追加・変更を行えば、iPad にも反映されるようにできます。

ただし、Google Contacts の「姓」と「名」を逆転させているので、 GMail でのメール作成時に宛先に入力したアドレスの「姓」と「名」が逆転してしまいます。

iPhone 側で「姓」と「名」を一括して逆転させる方法が確立できればこの点も解決できそうなのですが、おそらく iPhone アプリの作成が必要になるので将来の課題事項としておきたいと思います。

気が向いたら取り組みたいですw

[Mac] 同じアプリケーションのウィンドウをキーボードで切り替える方法(標準機能)

このエントリーをはてなブックマークに追加 Pocket

Windows ユーザが Mac に乗り換えた場合、キーボードでのウィンドウ切り替えの動作が気になる点ではないでしょうか?

私もそうでした。

Windows と Mac の違い?

Windows では Alt+Tab でウィンドウを順番に切り替えることができます。

Mac では command+Tab が該当しますよね。

しかし、Mac の command+Tab はアプリケーションの切り替えであり、 複数のウィンドウを開いているアプリケーションの特定のウィンドウを選択することはできません。

Mac はそういう仕様なんだー。とずっと思っていました。5年ほどw

実は同じアプリケーションのウィンドウを切り替えるキーボードショートカットがある

あるのです。見つけました。

KeyboardShortcut

そう。command+F1 で現在のアプリケーションの別ウィンドウに切り替えることができるのです。

ただし、フルキーボードアクセスを「すべてのコントロール」にする必要があるのでご注意ください。

なお、command+F1 はタイプしにくいので、私は option+Tab に変更しました。

KeyboardShortcut2

こんなときに役立ちます

以下の記事で紹介した MarsEdit で過去記事のリンクを貼り付けの際に役に立ちます。

[MarsEdit] TextExpander で過去記事のリンクを貼り付ける

キーボード操作も含めたリンク貼り付けの手順は以下の通りです。

  1. エントリ編集中に「command+1」で MarsEdit の Main Window を表示
  2. 「option+command+F」で検索フィールドを選択
  3. 検索するテキストを入力して「return」
  4. 「Tab」を 2 回タイプしてエントリの一覧を選択
  5. 必要に応じて「↓」/「↑」でエントリを選択
  6. 「option+Tab」でエディタウィンドウに戻る
  7. 「perm;」とタイプ

文字で見ると複雑な気がしますが、慣れれば流れるように操作できるようになると思います。

もっと一般的なケースを考えると、 複数のウィンドウを開いた複数のアプリケーションを行ったり来たりしながら行う作業であれば、 command+Tab でアプリケーションを切り替え、option+Tab でウィンドウを切り替え、 マウス(トラックパッド)まで手を移動させることなく目的のウィンドウを選択することができるということです。

Exposé でもキーボードのみで同じアプリケーションの別ウィンドウを選択できますが、 キーボードショートカットの方が速いです。

あとがき

実は最近、WindowFlow という無料アプリを試していました。

WindowFlow 1.3.0(無料)

Mac OS X 10.6.0以降

WindowFlow 1.3.0
カテゴリ: ユーティリティ
価格: 無料 App
更新: 2011/04/17


Mac

このアプリを使うことで、Windows と同様、すべてのウィンドウの一覧から目的のウィンドウを選択して切り替えることがキーボードでできます。

これはこれで悪くはないのですが、常駐アプリは極力少なくしたいですし、 OS 標準の機能で対処できるならばそちらを採用したいなと。

[MarsEdit] TextExpander で過去記事のリンクを貼り付ける

このエントリーをはてなブックマークに追加 Pocket

ひとりぶろぐさんで MarsEdit を強化するハックが取り上げられていました。

最強ブログエディタMarsEdit3をさらに強化するハック2種、SIMBLもあるんだよ | ひとりぶろぐ
さきほどの「InsertTitleAndPermalinkOfSelectedPost」をTypeIt4Me向けに改変したスクリプトを書きました。

これ、いいですね。

いままで MarsEdit のエディタの AppleScript インターフェースしか見ていませんでしたw

自分の記事に関しては Google でサイト検索するより MarsEdit から URL とタイトルを取得した方が速いですね。

でもって、ひとりぶろぐさんでは TypeIt4Me からスクリプトを呼び出す方法が紹介されています。

おお!これは!

しかし、私は TypeIt4Me を持っておりませんので、TextExpander でやってみました。

TextExpander も TypeIt4Me と同じく、省略形を AppleScript の実行結果で置換することができます。

私は省略形を「perm;」としました。

TypeIt4Me の場合と同じく、

  1. エントリ編集中に「command+1」で MarsEdit の Main Window を表示
  2. 検索して目当てのエントリを選択
  3. エディタに戻って「perm;」とタイプ
で過去記事へのリンクがエディタに挿入されます。 エラー発生時はエラーメッセージがエディタに挿入されます。

私が作成したスクリプトは以下の通りです。 せっかくなのではてブ数の表示も追加しました。

tell application "MarsEdit"
 if not (exists selected post) then
  return "MarsEdit のポストを選択してください。"
 end if
 
 set resultText to ""
 try
  set sp to selected post
  if (permalink of sp is not equal to missing value) then
   set pl to permalink of sp
   set tl to title of sp
   set resultText to ¬
    "<a href=\"" & pl & "\""¬
    & " target=\"_blank\">" & tl¬
    & "</a>"¬
    & "<a rel=\"nofollow\" target=\"_blank\""¬
    & " href=\"http://b.hatena.ne.jp/entry/" & pl¬
    & "\">"¬
    & "<img border=\"0\""¬
    & " src=\"http://b.hatena.ne.jp/entry/image/"¬
    & pl & "\" alt=\"\"/></a>"
  else
   set resultText to "公開されたポストを選択してください。"
  end if
 on error
  set resultText to "Local Draftsではなく、Posts、Pagesのエントリを選択してください。"
 end try
 return resultText
end tell

このスクリプトを TextExpander に設定する手順は

  1. TextExpander のスニペットを新規作成(ツールバーの「New Snippet」をクリック)
  2. スニペットのタイプ(Content の部分)を「アップルスクリプト」に変更する
  3. スクリプトをコピペする
  4. ラベル(Label)を適当に設定する(私は「MarsEdit::InsertTitleAndPermalinkOfSelectedPost」としました。長いw)
  5. 省略形(Abbreviation)を適当に設定する(上述のように私は「perm;」としました。)
です。

画面イメージを貼っておきます。

TextExpander

MarsEdit がまたひとつ便利になりました♪

MarsEdit 3.2.2App
Mac OS X 10.6.6以降
カテゴリ: ソーシャルネットワーキング 価格: ¥4,600
更新: 2011/04/25
TextExpander for Mac 3.2.4App
Mac OS X 10.6.6以降
カテゴリ: 仕事効率化 価格: ¥4,000
更新: 2011/04/17

YouTube の動画をブログに貼り付ける - YouTubeHtml

このエントリーをはてなブックマークに追加 Pocket

GW 最後のプロダクトは inspired by @feelingplace さんで YouTubeHtml です。

YouTubeの動画をブログに貼りつけるためのブックマークレット、YouTube2HTMLをバージョンアップ!出力をiframeタグとobjectタグの2種類から選択可能になりました!さらに…。 | Feelingplace
YouTubeの動画をブログに貼りつけるためにはそれなりの手間が掛かります。共有をクリックして、その他モゴモゴしてクリックを繰り返してようやくコードを取得できるようになります。iPhoneからだとデスクトップ用のページに移管しないと取得すらできません。それらを簡単に済ませようとしたのが今回のブックマークレット、YouTube2HTMLです。

YouTube2HTML との違いは、

  1. YouTube を表示してない状態で動画を貼り付ける HTML を取得する
  2. 対象の動画は特定のアカウント(自分のアカウントを想定)がアップロードした動画のみ
  3. 出力される HTML は object タグのみ(iframe タグはなし)

です。

対象の動画は共有設定が「公開(誰でも検索、表示可能 - 推奨)」となっていなければならない点にご注意ください。 限定公開などになっていると API での検索にヒットしないからです。

フロントエンドは 2 種類用意しました。

フロントエンドの導入

設定が必要な項目は YouTube のアカウント名です。

各フロントエンドの設定方法は以下の通りです。

Windows/Mac/iPhone 汎用ブックマークレット

ブックマークレット内の userID という名前の変数に YouTube のユーザID を設定してください。

YouTubeHtmlBMUserID

上記の画像では私のアカウント名が設定されています。

MarsEdit 用サービスメニュー

Automator で workflow ファイルを開き、userID という変数に YouTube のユーザID を設定してください。

YouTubeHtmlAutomator

上記の画像では私のアカウント名が設定されています。

実行例

実行時の流れは PicasaHtml とほぼ同じです。

Windows/Mac/iPhone 汎用ブックマークレット

ブックマークレットを起動すると、取得する動画の最大件数を入力する画面が表示されます。

YouTubeHtmlBM1 1

次に動画の横幅を入力します。

YouTubeHtmlBM2 1

結果はプレビューつきのポップアップ画面です。 ×ボタンを押すと結果画面が閉じます。

YouTubeHtmlBM3

MarsEdit 用サービスメニュー

MarsEdit の場合も流れは同様です。

YouTubeHtmlME1YouTubeHtmlME2YouTubeHtmlME3

YouTubeHtml で貼りつけた動画

あとがき

文章や画像よりも動画の方が適している場合もあると思います。

iPhone や Mac で動画を撮影するのは簡単ですよね。 YouTube にアップロードするのも簡単です。 YouTubeHtml でブログに貼り付けるのも簡単になるハズですので、ぜひお試しください。

自分でアップロードしていない動画を貼り付ける場合は @feelingplace さんの YouTube2HTML をご利用いただければと思います。

AppHtml for MarsEdit

このエントリーをはてなブックマークに追加 Pocket

昨日は以下のエントリに泣きました。春友さん、ありがとうございます。

ブログ書いた / 最強ブログエディタ MarsEdit 上でブックマークレットを起動すると便利すぎてヤバい | なまら春友流 http://htn.to/zXXGCQ2011-05-04 22:49 via Hatena

そして今朝、以下のツイートを見て、AppHtml for MarsEdit を作りましたので公開します。

汎用版との違いは結果が MarsEdit のエディタに挿入される点です。

これは導入する!これならAppHtmlはMarsEditだけで完結できる!>>最強ブログエディタ MarsEdit 上でブックマークレットを起動すると便利すぎてヤバい | なまら春友流 http://j.mp/jbGoBF@spring_friends2011-05-05 06:50 via Reeder

AppHtml for MarsEdit はこちらからダウンロード可能です。

導入方法は春友さんの記事がとてもわかりやすいです。

最強ブログエディタ MarsEdit 上でブックマークレットを起動すると便利すぎてヤバい | なまら春友流
設定方法は @toshiya240 さんの上記記事を読めば設定できる。共通した大まかな流れを以下に述べる。3つ全てに共通している設定方法の流れ

丁寧な説明。ありがとうございます。

必要に応じて aff 変数に LinkShare のサイトID を設定してください。 テンプレ内の書式 No. の初期値を変更したい場合は fmt 変数の値を変更してください。

AppHtmlforMarsEdit本エントリとは関係ありませんが、春友さんも仰っているように FavPaste はエラーになることが多いですね。Twitter がもっと安定してくれるとよいのですが…

最新情報はこちら: Happy-Go-Lucky: MarsEdit

PhotoHtml for MarsEdit

このエントリーをはてなブックマークに追加 Pocket

春友(spring_friends)さんからリクエストがありましたので、PhotoHtml for MarsEdit を作りました。

@toshiya240 ちなみにPhotoHtmlのMarsEdit版構想ってあるのですか…?2011-05-04 14:24 via Echofon

こちらからダウンロードしてください。

設定

上記のリンクから ZIP アーカイブをダウンロードして展開してください。

PhotoHtml for MarsEdit.workflow を Automator で開いて、api 変数にご自身の APIキーを、nid 変数に NSID を設定してください。

PhotoHtmlForMarsEdit

PhotoHtml for MarsEdit.workflow を保存して、~/Library/Services に移動させてください。

カスタマイズ

オリジナルの PhotoHtml と同じです。

Flickr画像をタグや件数で一括取得する – PhotoHtml | 普通のサラリーマンのiPhone日記
それ以外の設定項目は以下の通り。fmt (html format)出力テンプレートのパターン(標準で2パターン準備)を指定します。1だと「Flickr2Html」の書式、2だと画像のみ(サイズは幅192)の書式、3だと画像のみ(サイズ指定なし)の書式になります。1〜3共に、Flickr側の画質はMidium500です。

テスト

PictShare で Flickr に写真をアップロードしてテストしてみました。

PictShare - multiple photos uploader 1.4.5App
iPhone、iPod touch および iPad 互換 iOS 4.0 以降が必要
カテゴリ: ソーシャルネットワーキング 価格: ¥230
更新: 2011/04/18

2012-11-23 リンク切れになってしまったので削除しました。