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

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

Mail.app の署名に HTML を使ってみる の続き。

リンクを張ったり画像を表示したりもできるようです。
ただし画像を添付ファイルとして埋め込む方法がわからないのでこのブログのディレクトリに画像を置いて IMG 要素で表示させています。画像への直リンクを拒否するサーバだと無理ですね。また、受信側の環境によっても表示されないことがあるようです。
(署名の編集画面に画像をドラッグアンドドロップすることはできるのですが、レイアウトが崩れてしまいます。)

Signatures_html5.jpg

今回使用した HTML はこんな感じ。
Signature.html
これを Safari で Web アーカイブとして保存し前回と同じ要領で置き換えると上の画像のようになります。
(※ FC2 ブログの charset は EUC-JP ですが、リンク先は UTF-8 になっています)

(このエントリここまで。"続きを読む"はありません。)


スポンサーサイト
02/28|Macコメント(0)トラックバック(0)TOP↑

※以下の作業は Mac OS X 10.4.5 の環境下で行っています。

昨日ライブラリの Mail フォルダをなんとなく見ていたら、~/Library/Mail/Signatures に Mail.app の署名がひとつずつ Web アーカイブ書類として保存されているのに気付きました。これを他の Web アーカイブ書類と入れ替えたらその内容を署名として使えそうです。このあいだテーブルの書き方を覚えたのでテーブルを使って試してみました。
(自分の環境で遊ぶだけにしておいた方が無難だと思いますが、ネットやソフトウェアの仕組みに詳しいわけではないのでなんとも言えません。)

  1. トラブルが起きたときのために ~/Library/Mail と ~/Library/Preferences/com.apple.mail.plist をバックアップしておく。
  2. Mail.app の環境設定で新しい署名を作る。
  3. Mail.app を終了する。
  4. こんな感じの HTML を書く。

    signatures_html1.png

  5. 4 の HTML 書類を Safari で開いて Web アーカイブとして保存。

    signatures_html2.png

  6. ~/Library/Mail/Signatures フォルダを開いて 2 で作成した新しい署名に対応する Web アーカイブ書類を探し、その名前(XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX.webarchive みたいの)を 5 で作成した Web アーカイブ書類に付けて、オリジナルと置き換える。
    (普段使っている署名を間違えて置き換えないように注意。)
  7. Mail.app を起動しメールを書いて署名を入れ、"フォーマット"メニューから"リッチテキストにする"を選択。送信。
  8. Mail.app や Yahoo! の Web メールで受信するとこんな風になりました。

    signatures_html3.png

    signatures_html4.png

追記
Mail.app の署名に HTML を使ってみる その2

(このエントリここまで。"続きを読む"はありません。)


02/25|Macコメント(0)トラックバック(0)TOP↑

iTunes Music Store にビクターが参入してからときどき「新居昭乃」で検索かけてるんですが、さっきやってみたらこんな感じで引っかかってきました。

新居昭乃のiTMS検索結果 (iTunes で開きます)

akino.jpg

ファルコムの昔のゲームサントラらしいです。イースぐらいしか知りませんが。

ところで上の画像は PNG のスクリーンショットを Terminal で
sips -s format JPEG -s formatOptions 40% ~/Desktop/akino.png --out ~/Desktop/akino.jpg
ってやったものなんですけど 40% まで画質落としてもそこそこになりますねえ。

(このエントリここまで。"続きを読む"はありません。)


02/23|ネットコメント(0)トラックバック(0)TOP↑

以下は仕様の説明ではありません。「ちょっとやってみたらだいたいこんな感じだった」という話。
実際は、書き出すテキストの長さや使われている文字、改行の有無、そもそも書き出すためのテキストをどうやってどんな形でゲットするか、などによって結果が変わるみたいです。
また文字コードの判定は、各方法で書き出したテキスト書類をテキストエディット、mi、TextWrangler、KEdit で開いてその結果を見ているだけです。OS の言語環境によっても変わるかも。

write theText to file thePath (theTexttext の場合)
(基本。大抵はこれで十分なんですがユニコードオンリーの文字がネック……)
文字コード Shift JIS (Mac OS?)
ユニコード文字の表示 不可
TextEdit.app の自動エンコーディングで開く
Finder のカラム表示でプレビュー

write theText to file thePath (theTextUnicode text の場合)
(as Unicode text と明示しなくてもユニコード文字が含まれていると自動的にこうなるみたい。逆に as Unicode text と明示すると mi で化けることもあった。表はある程度の長さを持った日本語混じり文の場合。)
文字コード UTF-16
ユニコード文字の表示
TextEdit.app の自動エンコーディングで開く
Finder のカラム表示でプレビュー 不可

do shell script "echo " & (quoted form of theText) & " > " & (quoted form of thePath)
(英語だと長文であってもエディタによって文字コード判定が違うことが。表は日本語混じり文の場合。)
文字コード UTF-8
ユニコード文字の表示
TextEdit.app の自動エンコーディングで開く 不可
Finder のカラム表示でプレビュー

do shell script "echo " & (quoted form of theText) & " | iconv -f UTF-8 -t UTF-16 > " & (quoted form of thePath)
(アルファベット1文字から多言語の長文まで、ほぼ確実に UTF-16 で書き出せる模様。)
文字コード UTF-16
ユニコード文字の表示
TextEdit.app の自動エンコーディングで開く
Finder のカラム表示でプレビュー

表中の「ユニコード文字」とは、「ユニコードでないと表示できない文字」の意味で使っています。
Unicode text という呼称は文字コードがユニコードである文字(列)のことを指すようなので、こういう場面では使えませんよね。何かうまい呼び名はないものか……

(このエントリここまで。"続きを読む"はありません。)


02/21|AppleScriptコメント(0)トラックバック(0)TOP↑

⌘ (⌘)
または
⌘ (⌘)

clover1.jpg文字パレット

clover2.jpgUnicodeChecker

ついでに林檎マーク  ()


02/19|Macコメント(0)トラックバック(0)TOP↑

Safari の前面ページをマカー用。で開く

Safari で開いている URL をマカー用。で開こうと試みます。
マカー用。の「URLを開く」メニューで開くことができる BBS のみ有効。
それ以外の URL を開こうとすると「ヴァー」になります。

(このエントリここまで。"続きを読む"はありません。)


02/15|AppleScriptコメント(0)トラックバック(0)TOP↑

これなんですけど。

img20041022095811.jpg

1年ちょっと前に某掲示板で「この画像をマカー用。で表示できない」という人がいまして。
やってみると確かに、マカー用。だけでなく、 QuickTime Player でも表示できないし、PhotoPathfinder に至っては表示しようとしただけで落ちる始末。
「へ~」と思いながら色々試した結果、メタデータ(というか EXIF 情報)を除去すると問題なく表示できたため、その旨書き込んだら「では QuickTime の不具合だろう」と言われました。
そのことをさっきふと思い出して久しぶりに画像を開いてみたら、いつの間にかどのアプリでも正常に表示できるようになっていたみたいなので、ま、報告です。

やっぱり QuickTime がバージョンアップしたから直った、ということなのかな?

(このエントリここまで。"続きを読む"はありません。)


02/11|Macコメント(0)トラックバック(0)TOP↑

"(*"と"*)"でコメントアウトした文字列にパイプ ( | ) が含まれてるとコンパイルできないよ。
でも"--"なら問題ないみたいだよ@OS X 10.4.4
そんだけ(*´ω`*)

(このエントリここまで。"続きを読む"はありません。)


02/11|AppleScriptコメント(0)トラックバック(0)TOP↑

あまりにも初心者レベルの話なのか情報が少なくて、かれこれ半年ほど悩みましたが^^;
「名前に"キャサリン・ゼタ・ジョーンズ"を含む項目をデスクトップから2階層下までに限定して検索」だと、こんな感じ。

set x to (do shell script "echo 'キャサリン・ゼタ・ジョーンズ' | iconv -f UTF-8 -t UTF-8-MAC")
do shell script "find ~/Desktop -name \"*" & x & "*\" -maxdepth 3"

あ~~~ display dialog で検索語を入力するようにしたら Spotlight より便利かも。

参考: Travellers Tale: 文字コードを変換する

(このエントリここまで。"続きを読む"はありません。)


02/10|AppleScriptコメント(1)トラックバック(0)TOP↑

普段カラム表示で使っている人向け。
ちょっと画像のサムネを一覧したくなったとき、実行するたびに
カラム表示+アイコンプレビューオフ

アイコン表示+アイコンプレビューオン
を切り替えます。

tell application "Finder"

if current view of window 1 is column view then
set current view of window 1 to icon view
set (shows icon preview of icon view options of window 1) to true
else
set (shows icon preview of icon view options of window 1) to false
set current view of window 1 to column view
end if
end tell

(このエントリここまで。"続きを読む"はありません。)


02/10|AppleScriptコメント(0)トラックバック(0)TOP↑

フォトレポート:見てびっくり!--これが「アンチ広告ゲーム」だ - CNET Japan

この見出しを見て「アンチ広告ゲーム」の意味が分かりませんでした。
記事を読みに行きました。それでもわかりません。というか画像しかないし。
少し考えて思いつきました。「アンチ広告」のゲームではなくて「広告ゲームに対するアンチ」?
しかし「広告ゲーム」という言葉を聞いたことがないし見かけたこともありません。
企業が自社製品を宣伝するために作らせるゲームとか?

PS2 すら持ってない俺なのでしょうがないんですけど。

「広告ゲーム」という言葉を知らない俺が無知なのか。
「広告ゲーム」などという言葉は一般に定着していないのにいきなり「アンチ広告ゲーム」などという見出しを使う CNET Japan がアフォなのか。
どっちなんでしょ?

と思っていたら、リンク先にちゃんと文章の記事がありました。

社会風刺か学習か--「アンチ広告ゲーム」のちょっとヤバめな主張 - CNET Japan

 ここ数年、熱心なゲーム愛好家から、バーチャルなゲームの世界に大手の消費者ブランドが登場するケースが増えたとの不満の声が上がっていた。このように企業が自社製品の販促をする目的で開発したビデオゲームは「アドバゲーム」と呼ばれる。

 しかし最近、販促とは正反対の目的を持った新ジャンルのゲームが登場した。「反アドバゲーム」と呼ばれるこれらのゲームは、大手企業を皮肉り、さらに畜牛の飼育法から低賃金労働といった企業の方針に疑問の目を向ける。

引用元: 社会風刺か学習か--「アンチ広告ゲーム」のちょっとヤバめな主張 - CNET Japan

ふむふむ、「アドバゲーム=広告ゲーム」「反アドバゲーム=アンチ広告ゲーム」ということなんですね。

(このエントリここまで。"続きを読む"はありません。)


02/08|チラシの裏コメント(0)トラックバック(0)TOP↑

Mac 内のファイルを Safari で開くとアドレスバーにパスが出ますが、空白などがエスケープされているために、(URL of document 1) as POSIX file と書いても Finder などで alias として扱える文字列にならないことがあります。
以下のように書くことで解決できました。

tell application "Safari"
set theURL to (URL of document 1)
if theURL starts with "file:" then
set thePath to (do JavaScript "decodeURIComponent(¥"" & theURL & "¥")" in document 1)
else
return
end if
end tell

set hfsPath to (thePath as POSIX file) --HFSパスにする。

(*
tell application "Finder"
activate
--open container of hfsPath
select hfsPath
end tell
*)

webarchive、html、txt、pdf、jpgの書類で確認。
ただし webarchive か html 以外の書類をドラッグ&ドロップで開いていた場合、
スクリプトを実行すると Safari 上でページが空白になってしまう模様。
実行の過程で変数 theURL に元のパスを入れているので

tell application "Safari" to open location theURL
などとして開き直すことはできます。


追記

「しかしどんなときにこのスクリプトが必要になるんだろう」と、送信した後で考え込んでしまいました。
で、こんなシチュエーションはどうでしょう。
頻繁に参照する覚え書き (Terminal のコマンドとか 頻出するパス品とか) を HTML の DL や UL 要素を使った読みやすいリストにして、ローカルのファイルとして Safari のブックマークに入れているとします。
それを読みながら「ここを編集したい」と思ったときに上記のスクリプトに続けて

tell application "mi"
activate
open hfsPath as alias
end tell
などと書いたスクリプトを実行すれば、いま読んでいるファイルをいちいち Finder に戻って探さなくてもダイレクトにエディタで開けるわけです。
その場合、誤って画像や Web アーカイブをエディタで開こうとしないように
if theURL starts with "file:" then
という行を
if (theURL starts with "file:") and (theURL ends with ".html") then
などとしておいたほうがよいかもしれません。


さらに追記

decodeURIComponent() を使う必要はなく、location.href で簡単に取得できることがわかりました。

tell application "Safari" to do JavaScript "location.href" in document 1
ただし decodeURIComponent() の結果が file:/// となるのに比べて location.href では file:/ とスラッシュの数が少なくなります。どう違うのかわかりませんが、AppleScript で扱う分には問題ないようです。
他にユニコード絡みの問題もあったので、もう少し頑張ってみました。

Safari で開いているローカル HTML を mi で開く AppleScript
(\ ←これが円マークで表示されている場合 backslash に置き換えないと実行できません。)

tell application "Safari" to set theURL to (do JavaScript "location.href" in document 1)

if (theURL starts with "file:") then
--パスの末尾が html#hoge のようなときも HTML として認識するように
set tmp to AppleScript's text item delimiters
set AppleScript's text item delimiters to "."
try
set curStr to every text item of theURL
if last item of curStr starts with "html" then
set curStr2 to "" as Unicode text
--Unicode text だと従来の方法で文字列に戻せない。
--なので repeat を使う。
repeat with i from 1 to ((number of items of curStr) - 1)
set curStr2 to curStr2 & (item i of curStr) & "."
end repeat
set theURL to curStr2 & "html"
else
return
end if
on error
set AppleScript's text item delimiters to tmp
end try
set AppleScript's text item delimiters to tmp
editIt(theURL)
end if

on editIt(pathString)

--起動ディスクの名前
tell application "Finder" to set mDiskName to (name of startup disk)

try --まずは普通に変換してみる
set hfsPath to (pathString as POSIX file)
on error --パスにユニコード文字があるとエラーになるので sed で置換
set hfsPath to (do shell script "echo " & (quoted form of pathString) & " | sed 's/file:\\/Volumes\\///g;s/file:/" & mDiskName & "/g;s/\\//:/g'")
--mDiskName に空白が含まれていても問題ないみたい。
--逆に quoted form of とやるとエラーになる。
end try

try --まずは mi に tell してみる。
tell application "mi"
activate
open hfsPath as alias --ユニコード混じりパスだとここでエラー。
end tell
on error --Finder におまかせ。
tell application "Finder" to open hfsPath using application file (mDiskName & ":Applications:mi2.1(OSX):mi.app")
--mi.app までの正確なパスが必要。
end try

end editIt


さらにさらに追記

アドレスバーから mi にドラドロでいけた_| ̄|○

(このエントリここまで。"続きを読む"はありません。)


02/04|AppleScriptコメント(0)トラックバック(0)TOP↑
プロフィール

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ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。