【InDesign】右クリック→(リンク)編集ツール のカスタマイズ
Adobeアプリには、右クリック→(元データを編集)編集ツール→ からアプリを指定し直接開ける機能があります。
Mac版は、システムで見つかる関連アプリをメーカーに依らず全Version表示しますが(これはこれで鬱陶しい)、Win版はOS側の関連付けの性質が悪く、直近のAdobeインストールVersionを1~2しか表示しません。
毎回「その他...」からドライブ(C:)を一から掘り起こさねばならない。 近いディレクトリをDirect Foldersに登録して使っていましたが、それでも2 touchくらいロスが出る。*.exeそのものの登録実行はできなかった
しかし、ボヤいたら神が降臨して下さいました。あるふぁ(仮)さん。本当に神です、いつも本当にありがとうございますーー!
用意するもの
- ExtendScript Toolkit CC (無ければメモ帳で、拡張子を*.jsxにすればおけ)エーート、ココにもあります
検証環境:Windows 10(2004、20H2)InDesign CC2020(15.0~15.1.2辺り)Illustrator CC2020(24.2.3)
追記:20H2?のアップデート以降、既に起動中の関連アプリがアクティブウィンドウになりません。(2021.3.10)
記述
ExtendScript Toolkit CCをインストール後、起動。新規ドキュメント(ソース)に以下をコピペ
※下記セッション名(targetengine)は、他と被らない名で任意
※異versionを同時に立ち上げた時も重複してしまうので注意//DESCRIPTION:オブジェクトを右クリック「編集ツール」にadobeアプリを追加する(Startup Scripts) /* 最初のとこのアプリ名のリストは、左側がメニュー名(なんでもいい)、右側がBridgeTalkでアプリを特定する文字列。 調べるには対象にしたいアプリでalert(BridgeTalk.appSpecifier)というスクリプトを実行する */ #targetengine "sessionAppMenu" apuriNames=[ ["Illustrator CC 2019","〓"], ["InDesign CC 2019","〓"], ]; for(var i=0;i<apuriNames.length;i++) { var m = app.scriptMenuActions.add (apuriNames[i][00]); m.addEventListener("onInvoke", (function (t) { return function() { var gs = [], ls = [], s = app.selection; for(var i=0; i<s.length; i++) { if (s[i].hasOwnProperty("itemLink")) gs.push(s[i]); else gs.push.apply(gs,s[i].allGraphics); } for(var i=0; i<gs.length; i++) { if(gs[i].itemLink.status == LinkStatus.NORMAL) ls.push(File(gs[i].itemLink.filePath) + ""); } var bt = new BridgeTalk; bt.target = t; bt.body = "var p='"+ls.join(",")+"'.split(',');for(var i=0;i<p.length;i++)app.open(File(p[i]))"; bt.send(); } }) (apuriNames[i][1]) ); app.menus.item("レイアウトのコンテキストメニュー").submenus.item("編集ツール").menuItems.add(m); }
- Windowsの隠しファイルを表示=ON
- PC→ Windows(C:)→ ユーザー→ (ユーザー名)→ AppData→ Roaming→ Adobe→ InDesign→ Version xxxx-J→ ja_JP→ Scripts→
Startup Scripts 名のフォルダを作り、ここへ保存
対象アプリの文字列を調べる
- 対象アプリケーションとAdobe ExtendScript Toolkit CC(以下ESTK)を起動
- ESTKで対象アプリケーションを指定
新規ドキュメント(ソース)に下記をコピペ、(メニュー)デバッグ→実行
$.writeln(BridgeTalk.appSpecifier)
(メニュー)ウインドウ→ JavaScriptコンソール展開
- アプリバージョン箇所をコピー、最初の記述内 〓 に差し替え、上書き保存
例:["InDesign CC 2020","indesign-15.064"],文字列が分かれば、もうこのソース.jsxは不要です。
ESTKを入れられなかった人は、メモ帳などで
$.writeln を
alert に差し替えてScript Panelフォルダへ保存。拡張子を(.jsx)にリネームしInDesignスクリプトパネルから実行、アラートで出た名称を記述内に記入して下さい。雑説明
InDesignを再起動して、運用してみましょう
編集ツール→ その他メニューに、任意のAdobeアプリケーションが追加されましたー
※リンクパネルの同機能に反映・応用はできません
基本機能と違い、編集後リンクバッジのクリックが必要になりますが、なに、そのくらいの手間は甘んじましょう。
これでまたひとつ、InDesignをアナタ色に染める事ができました!
※そう、このコメントを送ったのは私でした