上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

--/--|スポンサー広告||TOP↑

環境: Mac OS X 10.4.9 (PPC)

たぶんこれでいけます。

set ORC to «data utxtFFFC» as Unicode text
--OBJECT REPLACEMENT CHARACTER

tell application "TextEdit"
if exists front document then
set docContents to (text of front document)
if (ORC is in docContents) then
--OBJECT REPLACEMENT CHARACTER が含まれていれば RTFD
set nameExtension to "rtfd"
else
set nameExtension to "rtf"
end if
--activate
--set filePath to (choose file name default name (short date string of (current date)) & "." & nameExtension)
--save front document in filePath
end if
end tell

追記
添付書類がなくても、テキスト中に OBJECT REPLACEMENT CHARACTER があると、「添付書類がある」と判断してしまうので 100% 確実とは言えないすね。

さらに追記
Growl についてくる AppleScript を眺めていて知ったのですが、"ユニコードでないと表示できない文字"をスクリプト中で扱うためには
«data utxt16進数» as Unicode text
という書き方をすれば良いようです。知らなかった。。。
今まではあらかじめパーセントエンコーディングしておいた文字列をスクリプト中でデコード、というやり方をしていました。

参考:
Basic/値のクラス/Unicode text (AppleScript PARK)

16進数の部分は UnicodeChecker で簡単に調べることができます。

雪だるま
set x to («data utxt2603» as Unicode text)
display dialog x

さらに追記
font of attribute run に missing value が含まれるかで判断した方が確実な気がしてきました。
難しく考えすぎてたみたい。

tell application "TextEdit"
if missing value is in (font of attribute run of front document) then
return "rtfd"
else
return "rtf"
end if
end tell

スポンサーサイト

04/25|AppleScriptコメント(0)トラックバック(0)TOP↑
この記事にコメント
名前:
コメントタイトル:
メールアドレス:
URL:
コメント:

パスワード:
管理人だけに表示:
管理者にだけ表示を許可
この記事にトラックバック
プロフィール

AquaBowler

  • Author:AquaBowler
  • 現在の Mac 環境:
    iBook Late2001
    Mac OS X 10.4.11
フリーエリア
最近の記事
最近のコメント
最近のトラックバック
月別アーカイブ
カテゴリー
ブログ内検索
RSSフィード
リンク
del.icio.us
feed meter

RSS feed meter for http://kotoerisan.blog16.fc2.com/

FC2カウンター
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。