return | 文字列 |
改行記号(デフォルト: id 13("\r")) | |
linefeed | 文字列 |
改行記号(デフォルト: id 10("\n"))(Mac OS X10.5以降) | |
tab | 文字列 |
タブ記号(デフォルト: id 9("\t")) | |
space | 文字列 |
半角スペース文字(デフォルト: id 32(" ")) | |
quote | 文字列 |
ダブルクォーテーション (デフォルト: id 34("\""))(Mac OS X10.4以降) |
string値を設定する場合に便利なように用意された、定義済み大域変数。
文字列の中に改行を含めたい場合に、特種文字を使って
"line 1\rline 2"
とすると、構文確認後変換されて、
"line 1
line 2"
となってしまい、読みにくくなるので、
"line 1"&return&"line 2"
として使う。
Mac OS X10.5以降のエディタでは、[文字列中のタブや改行をエスケーブ]オプションを設定しておけば、コンパイル時に展開されない。
またエスケープ文字は日本語環境でも¥(円記号)でなく\(バックスラッシュ)が使われるようになった。
日本語環境では、option + ¥キーでバックスラッシュが入力できる(キーボード設定で変更可能)。
なお、文字列の中に含まれ\(10.5以前の日本語フォントの場合の¥)を使って表される特種文字は以下の通り。
\\ | 「\」エスケープ文字そのもの |
\" | 「"」二重引用符(ダブルクォート) |
\r | 改行(CR)記号 |
\n | 復帰(LF)記号 |
\t | タブ記号 |
これらに含まれない特種文字はidによる指定(もしくはASCII character命令)を使って表すことになる。
全角文字の漢字コードの中に ¥を含むものは、誤動作のもとになっている。良く使われるものとしては、「表」や「予」などがあり ¥がコードに含まれることを確認するには、一旦日本語を書いた後、英字フォントに置き換えると判る。MacOS8.5からはかなり問題は起きにくくなった。
Mac OS X10.5で完全にユニコードへ移行したので、AppleScript本体では、この問題は発生しない。ただし、アプリケーション側でユニコードに対応していない場合に、発生する可能性はある。
(ASCII character 9) = tab
display dialog "" default answer return & return