class | クラス識別子[r/o] |
値の属するクラス(当然alias) | |
POSIX path | 文字列[r/o] |
/区切りのパス(Mac OS X10.1.2以降) |
ファイルを特定するための情報を持った値。
alias "ファイルのパス"
という形で表される。詳しくは、ファイルのパスを参照して欲しい。
aliasクラスの場合は、特殊な形として":"(又は"")がスクリプトを実行しているアプリケーションが含まれるフォルダ(又はポリューム)を表し、「:」を重ねることで、一つ上の階層を示す(例:alias "::")、又その後にファイルを付けて相対指定もできる(例:alias ":test")
構文確認の際に変換されるので、アプレットからの相対指定に使いたい場合は、一旦変数にパス情報を代入しておいてから使うとアプレット上で変換される。また文字列からの変換が可能なので、as演算子を利用するのもいい(例1,2を参照)逆に、文字列に変換することもできる。
エイリアスとは、参照先のファイルをフォルダなどの位置ではなく、ファイルそのものとして記憶したものである。
つまり、位置を調べるのは最初だけで、その後はファイルの名前や位置を変えても正確にファイルを特定できる。
逆に、存在していないファイルを指定することはできない。
aliasは値のクラスであるので、ファイル参照(file)とは違い、a reference to演算子を使わなくても変数に代入することができる。
AppleScriptそのものが持つクラスであるので、Finderのtellブロック以外でも使える。
Finderにはエイリアスファイルというオブジェクトが存在するが、あれはエイリアスをデータに持っているファイルであり、エイリアスそのものではない。
POSIX pathの逆の事をやるには、POSIX file命令を使う。
【バグ情報】
ボリュームの参照を変換すると余計な/が付いてしまう。
POSIX path of (path to startup disk)
-->"//"
どうも、変換ルーチンの作りが荒いようだ。
今後、もうちょっとマシなものに変えられると思うので、変な変換を前提にしたスクリプトを書かない方がいいだろう。
set x to ":"
class of alias x
":" as alias