J-- [ numberOfBeeps ] のビープ
E-- beep numberOfBeeps
Examples
J-- 現在の日付
E-- current date
Examples
----------
現在の日付
--結果は「date "1996年 11月 7日 木曜日 7:32:09 PM"」の様に表されます。
year of ( current date )
の様にすることで可能になります。timeは午前0時ちょうどからの秒数で表されますので、時間や分を求めたい場合には自分で計算することになります。また、月は日本語表現型式では「11月」英語では「November」などとなるため、何月であるかを整数で知りたい場合には、条件文などを用いて12カ月分全てを数に変換する作業が必要になります。
また、dateは文字列に変換することができますが、monthやweekdayは不可能です。例えば
( current date ) as string
は"1997年 2月 23日 日曜日 4:26:45 AM"といった文字列を返しますが、
(month of ( current date )) as string
はエラーとなります。従って、どうしても月や曜日を文字列で表したい場合は、
if month of ( current date ) is January then
といった具合に、全ての月や曜日を一つ一つ変換してやる必要があります。
文字列に変換したdateを1バイト空白文字をデリミタとして文字列のリストに変換するやり方は、スクリプトを利用するユーザの環境によって結果が異なるため止めておいた方が無難です。そのユーザの「日付 & 時刻」コントロールパネルの設定状況を知りたい場合は別ですが。
新しい日付データは、文字列を日付に変換することで得ることができます。
date "1972 4 13" → date "1972年 4月 13日 木曜日 0:00:00 AM"
デリミタは1バイトスペース以外にピリオドやスラッシュも使用できます。
この方法の欠点は、実行されるシステムの言語環境によって左右されることです。例えば英語環境では「年」を「月日」より後に書くため、上の例と同じ結果を得るためには「date "4 13 1972"」とする必要があります。
汎用的な日付データを作成するためには、このcurrent date命令を使って現在の日付を取得してからそれを修正して下さい。
or
current date
注)日付の書式は、コントロールパネルで設定されたものに準じます。日付から西暦や月、日、曜日、時間を得たい場合は、
month of ( current date )
day of ( current date )
weekday of ( current date )
time of ( current date )
set CurMonth to "January"
end if
J-- questionStringを [ [ デフォルトテキスト : answerString ]〜
[ ,ボタン : buttonList ]〜
[ ,デフォルトボタン : buttonNumberOrName ]〜
[ ,アイコン種別 : iconNumberOrName ] で ] 表示する
E-- display dialog questionString
[ default answer answerString ]
[ buttons buttonList ]
[ default button buttonNumberOrName ]
[ with icon iconNumberOrName ]
Examples
----------
“スクリプトを終了します。”を表示する
----------
“好きな食べ物を入力して下さい。”をデフォルトテキスト“カレー”で表示する
----------
“OKボタンをPush!”をボタン{“いや”,“OK”}デフォルトボタン:2で表示する
ボタン名のリストを与えなかった場合、「キャンセル(Cancel)」ボタンをユーザが選択するとスクリプトはエラーを返して停止します。(これはtry構文によって捕まえることが可能)またボタン名に"キャンセル"や"Cancel"を使うと、そのボタンが押されることによりスクリプトが停止してしまいます。これを防ぐためには" キャンセル "、" Cancel "等のように両側に半角のスペースを挿入するといいでしょう。
ボタンの番号は、buttonListを指定しなかった場合「OK」が1になりますが、それ以外の場合はリストの左側(先頭側)から順に番号が付けられます。例えば {"Find","Replace","OK"} を与えた場合、"Find"ボタンが1となり、"OK"ボタンは3になります。
表示の返値は「結果」に入りますが、直接変数に取り込むこともできます。
例:set DResult to ( display dialog "好きなことを書いて下さい。"
「display dialog」の返値は二つのデータから成り立っています。一つは「どのボタンが押されたか(button retured)」であり、もう一つは「どんなテキストが返されたか(text retured)」です。これらは、例えば下記のようにラベルを使って取り出すことができます。
text retured of DResult
アイコンについては、システムに組み込まれている「caution, stop, notify」が使用できるほか、スクリプト自身やtellメッセージを受け取っている最中のアプリケーション、システムファイルのアイコンをリソースID番号で指定することができます。しかし実際には利用可能なはずのアイコン全てを利用できるわけではないようです。
or
display dialog "スクリプトを終了します。"
or
display dialog "好きな食べ物を入力して下さい。" default answer "カレー"
= “OKボタンをPush!”をボタン{“いや”,“OK”},デフォルトボタン:“OK”で表示する
or
display dialog "OKボタンをPush!" buttons {"いや","OK"} default button 2
= display dialog "OKボタンをPush!" buttons {"いや","OK"} default button "OK"
解説)
answerStringを設定すると、編集可能なテキストフィールドが現れます。このフィールドになにも表示したくない場合は、単に“”(英語表現形式では"")をanswerStringに与えて下さい。
default answer "" buttons {"OK"} default button 1)
button returned of DResult
J-- [ [ プロンプト : promptString ] [,デフォルト名称 : defaultName ] で ] 〜
新規ファイル
E-- New File [ with prompt promptString ] [ default name defaultName ]
注)「新規ファイル」で作成したファイルは、アクセスを開始しなければディスク上に書き込まれません。Examples指定したディレクトリとファイル名のファイルがすでに存在していた場合、「ファイルを入れ換えますか?」というダイアログが表示されますが、ここで"OK"を選択してもファイルは置換されません。ファイルの入れ換えを実現するためには、ユーザが自分でスクリプトを組む必要があります。
その例を「Examples」の最後に示します。
----------
FilePathをプロンプト:“ファイルを保存して下さい。”で新規ファイルにする
set FilePath to new file with prompt "ファイルを保存して下さい。"
set NewPath to (new file with prompt "ファイルを保存" default name "新規ファイル")
FilePathをアクセス開始する
FilePathをアクセス終了する
open for access FilePath
close access FilePath
try
tell application "Finder"
delete alias (NewPath as string)
end tell
on error
end try
J-- スクリプティングコンポーネント
E-- scripting components
J-- GMT時差
E-- Time to GMT
GMTとはグリニッジ標準時(Greenwich mean time)の略で、これから何秒ずれているかを表すのが「GMT時差」です。ちなみに日本は+32400で、グリニッジ標準時より32,400秒(つまり9時間)早いのです。
J-- Appleガイド起動
E-- AGStart
J-- 音量設定 volumeLevel
E-- set volume volumeLevel
音量は0〜7までの8段階です。
Examples
----------
音量設定5
or
set volume 5