stryhのchangelog

AppleScript改造! – MarsEdit上で関連記事が作れるスクリプト

3449175977 508de61107 m
最近、自宅に帰ってからコードをあれこれ弄るのが楽しい@saita_ryouheiです。

先日のエントリー(MarsEditでサクッと関連記事を作っちゃおぅ〜! | stryhの日記 ~stryh/changelog)でMarsEdit上で関連記事が作れるAppleScript(@takatomoさん謹製)を紹介したと思います。
今まで知らなかった手段だけに非常に素晴らしいツールです。

そんな中、エントリーへの反応でまーくん(@masaya5923)から以下のようなリプライが返ってきました。

@saita_ryouhei あの方法でブログタイトル名を消した設定ってできるんですか?自分がやるときには、関連記事はブログタイトル名って必要ないと思ってやってるんですよ。2012/05/23 22:58 via YoruFukurou


確かに自分のBlogのリンクを貼るのにBlog名は要らないな〜と思いました。
ってことで、AppleScriptを改造しちゃいました (´∀`)

MarsEdit – the blog editor for WordPress, Tumblr, Blogger and more. 3.5.2(¥3,450)App
カテゴリ: ソーシャルネットワーキング, 仕事効率化
販売元: Red Sweater Software – Red Sweater Software(サイズ: 6.4 MB)
全てのバージョンの評価: (3件の評価)

コード

on insert_marsedit(site_infos, select_indexes)
	
	if select_indexes is equal to 0 then
		return
	end if
	
	tell application "MarsEdit"
		
		set insert_text to {"<ul>" & return}
		repeat with select_index in select_indexes
			set site_info to (item select_index) of site_infos
			set site_title to title_key of site_info
			set site_url to url_key of site_info
			
			set split_title to do shell script "ruby -e 't=\"" & site_title & "\";ts=t.split(\"|\");puts ts[0].strip;' "
			set encoded_title to replace_html_entity(split_title) of me
			
			set the end of insert_text to "<li><a slyle=\"color:#0070C5;\" href=\"" & site_url & "\" title=\"" & encoded_title & "\" target=\"_blank\">" & encoded_title & "</a><a href=\"http://b.hatena.ne.jp/entry/" & site_url & "\" target=\"_blank\"><img border=\"0\" src=\"http://b.hatena.ne.jp/entry/image/" & site_url & "\" /></a></li>" & return
		end repeat
		
		set the end of insert_text to {"</ul>"}
		try
			set selected text in document 1 to insert_text as text
		end try
		
		
	end tell
end insert_marsedit

全てを載せると長々となってしまうので一部を載せます。
この処理でMarsEditに挿入するHTMLの部分を生成しています。

ポイントとなる所

AppleScript1
自分のBlogの場合、個別エントリーのタイトルは「|」(パイプ)で区切られています。
そのため | (パイプ)を指定し文字を分割。

↑の画像だとts[0]という部分に | より前の文字が入っています。
このts[0]をそのまま使えばいいのかというと実際の所はそのままでも問題はないのですが、後ろに空白が付いています。
AppleScriptでは他言語をCall出来るということをあずさん(@azur256)から教えてもらい、今回はRubyを使用し空白除去をしています。
きちんと戻り値?を変数に入れる事もできます。
AppleScriptスゲー!

そのRubyを使い、更にstrip関数という空白除去をしてくれる関数を使って文字の前後の余計な空白を除去しています。

もし使いたいなら・・・

  • 前途したように区切り文字が自分と同じ状態(区切り文字が1つしかない場合)
  • MacにRubyがインストールされている
    • ターミナルで ruby -v と入力しバージョンが表示されればインストールされています。

この上な条件が付いてしまいますが、条件がクリアされるのであれば使えると思います。

それと区切り文字の指定も必ずしも自分のと同じとは限らないと思います。
使うのであればその部分は適宜変更して使ってください。

もし、条件が合致しなくて、それでも使いたい!という方があれば@saita_ryouheiまで問い合わせすると良い事があるとかないとか・・・。

ダウンロード

以下のリンクから今回の改造がふくまれたAppleScriptがダウンロードできます。

スクリプトのインストール方法&起動方法

インストール方法、起動方法は先日のエントリーを参考にして下さい。

実際に使ってみた

AppleScript2
| stryhの日記 ~stryh/changelog」が↑ではきちんと除去されているのが分かると思います。
↓が先日のエントリーに載せたキャプチャー。
| stryhの日記 ~stryh/changelog」がまだ付いています。

これで更に関連記事の生成が快適になりました (´∀`)

関連エントリー

↑早速改造したAppleScriptで生成しました〜 \(^o^)/


URL :
TRACKBACK URL :

Comments & Trackbacks

  • コメント ( 0 )
  • トラックバック ( 9 )

No commented yet.

  1. […] 空と海が好き、でもiPhoneはもっと好きです。 by まぐにぃ ※今日から関連記事は以下のスクリプトを使用しております! ありがとうチバニー!!(@saita_ryouhei) AppleScript改造! – MarsEdit上で関連記事が作れるスクリプト | stryhの日記 …コード触れてかっこいい〜〜!! […]

  2. […] ◆ AppleScript改造! – MarsEdit上で関連記事が作れるスクリプト(via stryhの日記 ~stryh/changelog ) [7] […]

  3. […] AppleScript改造! – MarsEdit上で関連記事が作れるスクリプト | stryhの日記 ~stryh/changelog 便利ですね〜〜!!マジですごいっす@azur256さん!! […]

  4. […] 生暖かいネタをTextExpanderで作りやすくするすごいっす!あずさん。AppleScript改造! – MarsEdit上で関連記事が作れるスクリプト | stryhの日記 …ブログ名消したい( ; π ;)MarsEdit […]

  5. […] AppleScript改造! – MarsEdit上で関連記事が作れるスクリプト | stryhの日記 ~stryh/changelog […]

  6. […] May.25,2012 @saita_ryouhei ことさいたくん(さいたさん?)の以下のエントリで AppleScript改造! – MarsEdit上で関連記事が作れるスクリプト | stryhの日記 … […]

Leave a reply

*
*
* (公開されません)

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Return Top