忍者ブログ

ぼんぷろぐ

InDesignとかイラレとかのスクリプトよもやま話

新しいブログに引っ越しました。

こちらのブログはもう更新しませんが、コメント欄は生きてますので疑問、ご指摘などありましたらどうぞ。

[ExtendScript]
#includeはどこに書いてもよく、コードの断片でもいい

ExtendScriptの#includeって、案外自由度が高くて、

①行頭でさえあればどこに書いてもよく、書いた場所にインクルードしたファイルの内容が展開される。

②インクルードする側、される側のコードがそれぞれJavascriptのコードとして成立していなくてもいい(インクルード後に成立していれば)

という特徴があります。




①は割と重要です。ひょっとしたら#includeは冒頭に書かなきゃいけないと思ってる方もいるのではと思いますが、たとえば

(function (){
    #include "nanka.jsx"
    …
})()

のように書けば、nanka.jsxを関数内のローカルスコープで読み込むことができます。




②はどういうことかと言うと、たとえば、

alert(1

という")"が抜けたコードがあって、

)

という1文字だけのテキストファイルkakkotoji.txtがあったとして、

alert(1
#include "kakkotoji.txt"

を実行すれば、

alert(1
)

と同じになって1がアラートされるのです(kakkotoji.txtは実行するjsxファイルと同じフォルダに入れます)。
だからどうしたという感じですが…

唯一役に立ちそうな使い道として思いついたのが、jsonファイルの読み込みです。
ExtendScriptのオブジェクトとしてそのまま読めるようなjsonファイルであれば、

var hoge=
#include "hoge.json"

とするだけで、変数hogeにhoge.jsonをパースしたオブジェクトが入ります。

他になんか面白い使い道思いついた方は教えてくださーい
PR

コメント

お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード Vodafone絵文字 i-mode絵文字 Ezweb絵文字

プロフィール

kawamoto_α
(あるふぁ(仮))


InDesignで新聞組版のようなことをしています。

ツイッタ

※ブラウザによっては当ブログからDLしたzipファイルが拡張子なしになることがあるようですが、.zipを補って開いてください。



イラレ用トーンカーブスクリプト(¥1500)



クロソイド式角丸長方形スクリプト(¥500)
Illustrator用
InDesign用



イラレスクリプトをキーボードショートカットで実行するやつ(Win用)