InDesignのスクリプトに関する質問

[9536]InDesignのスクリプトに関する質問 投稿者:masa_hon 投稿日:2018/10/25 17:09:13
InDesignのJavaScriptに関して質問です。

諸事情ありまして
InDesignの「ページ番号とセクションの設定」をスクリプトで開きたく、次のようにJavaScriptを記述してみました。

var myMenuAction = app.menuActions.item("$ID/Section Options...");
myMenuAction.invoke();

しかし、「ページ番号とセクションの設定」が開くのですが、
「OK」や「キャンセル」を押すと必ずもう一度開いてしまいます。
2回目は「OK」や「キャンセル」で閉じます。
なぜか、必ず2回開いてしまうのです。

InDesign CC2017
Mac OS 10.12.6

どなたかご教示いただけたら幸いです。
[9540]Re: InDesignのスクリプトに関する質問 投稿者:(z-) 投稿日:2018/10/26 12:10:25
手元で試してみました。
CS6では平気でしたがCC2017では、おっしゃる通り2回開かれますね…

※ただの確認ですみません
[9541]Re: InDesignのスクリプトに関する質問 投稿者:masa_hon 投稿日:2018/10/26 18:50:03
(z-)さん

試してみていただきありがとうございます。
依然、解決の糸口が見つからず途方にくれています。
[9542]Re: InDesignのスクリプトに関する質問 投稿者:(z-) 投稿日:2018/10/29 12:43:20
myMenuAction.addEventListener("beforeInvoke", function(e){
e.stopPropagation();});

など仕込んでみたんですが止まらずでした。

どうせスクリプトで制御するなら「ページ番号とセクションの設定」で設定する項目そのものを直接やった方が早いのでは、などと思うのですが…
何か事情がおありなのですね
[9543]Re: InDesignのスクリプトに関する質問 投稿者:masa_hon 投稿日:2018/10/29 19:39:21
(z-)さん

いろいろとお試しいただきありがとうございます。
諸事情ありましてスクリプトで設定そのものをやってしまえばいいのですがそうもいかず・・・
[9544]Re: InDesignのスクリプトに関する質問 投稿者:(z-) 投稿日:2018/11/02 12:11:14
自動か総合フォーラムに投げてみたほうが情報を得られそうですね
https://forums.adobe.com/community/international_forums/japanese/automation
[9545]Re: InDesignのスクリプトに関する質問 投稿者:あるふぁ 投稿日:2018/11/02 15:29:18
ははーん どうも同じ名前で同じ機能のメニューアクションが2つあるみたいですね。

その結果item("$ID/Section Options...")で取得したMenuActionオブジェクトが、なんとも説明しづらいのですが、itemByRange()やeveryItem()を使った時と同じような、複数のMenuActionが重ね合わさって一つのMenuActionオブジェクトになっているような状態にあるようなのです。

で、そんなときにオブジェクトをばらばらにして配列にして返すメソッドがgetElements()です。
したがって
app.menuActions.item("$ID/Section Options...").getElements()[0].invoke()
とすれば大丈夫なはずです。
[9546]Re: InDesignのスクリプトに関する質問 投稿者:(z-) 投稿日:2018/11/02 16:32:57
まったく予想もつかない原因だったようで…すごいw

ESTKからの実行では見事に1回こっきり開かれました。すごーい。
どこかからいただいてきた、ScriptUIのEditText内に書いたコードをeval(code)で実行するやつからでは初回のみ2回出ました。。これはもうほっときたい…
[9547]Re: InDesignのスクリプトに関する質問 投稿者:masa_hon 投稿日:2018/11/05 13:31:21
あるふぁ様

ありがとうございます!
見事に解消できました。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)

このページをシェア