1台の機械だけスクリプトが使えない

[2879]1台の機械だけスクリプトが使えない | 投稿者:コバ | 投稿日:2009/04/24(Fri) 15:27:27
お教え下さい
社内で3台のMacG5使用
Mac OS X バージョン10.4.11
デュアル2.3Ghz Power PC G5
メモリ 1.5GB
InDesign CS2 バージョン4.05
にて囲み罫のスクリプトを使用したい

InDesign →ウインドウ→自動化→スクリプト内の
スクリプトの指示は出ているが
スクリプトが作動しない
他の2台の機械では使用できる、1台の機械だけ使用出来ない
3台のMacとも仕様はほぼ同じ

スクリプトを余り使っていないが、原因が解らず困っています。
» 1
[2880]Re: 1台の機械だけスクリプトが使えない | 投稿者:ちこ | 投稿日:2009/04/24(Fri) 16:12:32
» 2
[2881]Re: 1台の機械だけスクリプトが使えない | 投稿者:お~まち | 投稿日:2009/04/24(Fri) 16:31:19
わたしの連絡フォームから同じ内容が送られて来ました。
で、「囲み罫のスクリプト」とあるのはこれのことです。
http://www15.ocn.ne.jp/~preopen/idjs/idjskakomi.html

具体的にどう作動しないのか定かではないのですが、もしダイアログが表示されず、何事もなかったかのようになってしまうのであれば、原因は多分これです。
名もないテクノ手 - [InDesign][script]dialogが出ない?
http://d.hatena.ne.jp/seuzo/20080721

これはAppleScriptですがJavaScriptでは次のようになります。
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.interactWithAll;
とりあえずこれを実行してみてください。

そうではなくて、エラーがでるという状況でしたら、エラーメッセージと実行後の画面の状況を教えてください。このスクリプトでは、一度テキストフレームを作成し、その後削除しています。テキストフレームが残っている状態かどうか確認したいのです。
» 3
[2882]Re: 1台の機械だけスクリプトが使えない | 投稿者:コバ | 投稿日:2009/04/24(Fri) 16:32:22
早々の返信有難う御座居ます。
書き忘れたのですが、
Ilustratorのスクリプトはこの機械で使えます。

使用したいInDesignのスクリプトはダウンロードをしたものですが、
何度かダウンロードし直し、機械自体も再起動もかけてみました。

上の可能性サイトをもう少し理解して、試してみますが
よろしくお願い致します。
» 4
[2883]Re: 1台の機械だけスクリプトが使えない | 投稿者:コバ | 投稿日:2009/04/24(Fri) 16:49:00
お~まち様
有難うございます。
お~まち様の連絡フォームにも私が投稿しました。
使わせていただいているスクリプトも同一のものです。

症状はご指摘のものと同じ、スクリプトは選択出来る所まで、行くのですが
ダイアログが表示されず、何事もなかったかのよう
そのままです。

hatenaのサイトを見させて頂きました。
Scriptの構文を直すのでしょうか?

Scriptを今まで余り使っていなかったので
その後どうしたら良いか解りません。
お手数ですが、ご指導下さい。
» 5
[2884]Re: 1台の機械だけスクリプトが使えない | 投稿者:いき | 投稿日:2009/04/24(Fri) 16:57:17
   > お~まち様の連絡フォームにも私が投稿しました。
マルチポストとは若干意味が違いますが、こことお~まちさんへの両方に投稿というのはお~まちさんに対して失礼だと思います。

情報共有を主目的に、ここで投稿するのなら、どんなスクリプトを使っていて1台だけ動かなかったのか最初に示すべきです。

サポートしていただくことだけが目的なら、お~まちさんに直接連絡ということになるかと。ただし、お~まちさんはフリーで公開なさっていますので、お~まちさんにはサポートする義務がないことをお忘れなく。
» 6
[2885]Re: 1台の機械だけスクリプトが使えない | 投稿者:コバ | 投稿日:2009/04/24(Fri) 16:57:55
出来ました?
ちこさん
お~まちさん

有難う御座居ます
お~まちさんのご指摘を自分ながら、かんがえて
Apple Scriptで出来ました。
InDesignで囲み罫Scriptが使える様になりました。

皆様の素早い対応本当に感謝致します。
お騒がせ致しました。
有難う御座居ます。
» 7
[2886]Re: 1台の機械だけスクリプトが使えない | 投稿者:お~まち | 投稿日:2009/04/24(Fri) 17:00:08
わたしから差し上げたメールの添付ファイルに

app.scriptPreferences.userInteractionLevel = UserInteractionLevels.interactWithAll;

だけを書き込んだスクリプトファイル(dialog_all.jsx)があるはずです。そのスクリプトを実行してください。

#この問題、いいかげんFAQにしてほしい...
» 8
[2887]Re: 1台の機械だけスクリプトが使えない | 投稿者:こに | 投稿日:2009/04/24(Fri) 18:02:58
以前は、userInteractionLevelの設定で直せることを知らなくて、初期設定を捨ててました。

>#この問題、いいかげんFAQにしてほしい...
InDesignの環境設定の一般タブにある「すべての警告ダイアログをリセット」みたいに、スクリプトの初期設定のリセットボタンがあるといいですね。
あるいは、スクリプトパレットのオプションメニューにあった方が便利かもしれない。
要望をだしたところで、実装してもらえるのはCS5かCS6かはたまたCSNくらいかw
いつのことになることやら。
» 9
>「すべての警告ダイアログをリセット」みたいに、スクリプトの初期設定のリセットボタンがあるといいですね。

ブログにも書きましたが、これは本来、InDesignが再起動したら元に戻るべき設定です。
が、InDesignはその設定を捨ててくれない。
結果として、次以降のダイアログを出すスクリプトが失敗しつづけるわけです。
#スクリプトだけじゃなくて、フォントやリンクのエラーダイアログも一切でなくなります。
スクリプトを書く人は、ここで気がつくかもしれません。しかし、スクリプトを知らない人はパニックに陥ります。


そこで、ひとつ提案。
ダイアログを出すスクリプトを書くときは、一番最初にinteract with allを書いたらどうでしょう? そうすれば、自分のスクリプトが失敗しないだけでなく、誤設定を修正できます。
AppleScriptならapplication直下で
set user interaction level of script preferences to interact with all
JavaScriptなら、お~まちさんが示したとおり、
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.interactWithAll;
とそれぞれ1行入れるだけです。
InDesignが再起動で設定を直してくれるまで、自由参加で。


>#この問題、いいかげんFAQにしてほしい...
この掲示板にもFAQページがあるといいですね。
最近、過去LOG検索の手間を惜しんで安易な質問が続いているようですし... まあ、過去LOGを読まない人はFAQも読まないか^^
» 10
[2889]Re: 1台の機械だけスクリプトが使えない | 投稿者:せうぞー | 投稿日:2009/04/24(Fri) 23:17:33
>ブログにも書きましたが、これは本来、InDesignが再起動したら元に戻るべき設定です。

ちなみに、これはInDesign CS4では直っています。InDesignを再起動すると常にinteract with allに戻ります。
» 11
[2891]質問っ! | 投稿者:PICTRIX | 投稿日:2009/04/25(Sat) 09:42:31
スレ主さん解決して良かったですね。
横道の質問で申し訳ありませんが、ダイアログ停止?について、お詳しい方へ。
このダイアログを表示させない様にしているのは、何かのスクリプトを実行した(そのプログラム内で停止状態にしている)からなのでしょうか?
それともインデザイン操作の中で、何かの拍子にそう設定されてしまうのでしょうか?
» 12
[2892]Re: 1台の機械だけスクリプトが使えない | 投稿者:せうぞー | 投稿日:2009/04/25(Sat) 10:28:31
>このダイアログを表示させない様にしているのは、何かのスクリプトを実行した(そのプログラム内で停止状態にしている)からなのでしょうか?

はい、プログラム内から明示的にエラーダイアログの表示を制限する目的で使用されます。
#複数のドキュメントを扱ったりするような場合、フォントやリンクエラーでいちいち止まらないようにするといった用途です。
おそらく、スクリプト実行が途中で失敗したりしたときに、元に戻す命令まで走らなかったのだと思います。あるいは、キャンセルボタンなどに対して、後始末を怠ったスクリプトがあるとか。
» 13
[2893]Re: 1台の機械だけスクリプトが使えない | 投稿者:PICTRIX | 投稿日:2009/04/25(Sat) 11:47:49
>プログラム内から明示的にエラーダイアログの表示を制限する目的で使用されます。

なるへそ。
せうぞーさんのご提案に納得、1票入れさせて頂きます。(私まだCS3なので
お答え頂きありがとうございました。^o^
» 14
[2902]Re: 1台の機械だけスクリプトが使えない | 投稿者:こに | 投稿日:2009/04/27(Mon) 11:47:37
>ちなみに、これはInDesign CS4では直っています。
確かに直ってました。
CS3の場合は、Startup Scriptsフォルダに
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.interactWithAll;
を記述(他にも線のデフォルトを0.1mmにするなど)したスクリプトを置いて起動時にリセットしておくのがよいかもしれませんね。

あと、スクリプトが中断したりしてUIに制限がかかったのをリセットするために、お~まちさんの作成したdialog_all.jsxのようなのを用意しておくのがよさそうですね。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)

このページをシェア