【InDesign】「その他のスクリプト」っぽいスクリプト | Blue-Screeeeeeen.net―youichi7imazekiのDTPメモ―

トップページ » InDesign » 【InDesign】「その他のスクリプト」っぽいスクリプト

【InDesign】「その他のスクリプト」っぽいスクリプト

公開日:2017年9月13日 最終更新日:2017年10月3日

 [スクリプト]パネルがいっぱいになってくると整理が面倒になるので、インスタントなものはその都度呼び出して使おう。ということで書きました。Illustratorでいうところの「その他のスクリプト…」です。

 [スクリプト]パネルでもローカルでも、フォルダ管理の手間はあまり大差ないですが、どっちで管理するのが楽かな…と天秤にかけた上で。

 最初は#includeや#includepathなどを使えばできるんじゃないかと企んだのですが、ダイアログで選択したスクリプトのパスを認識させるのがどうしてもできなくてハマりました…


スクリプト本文

var fileObj=File.openDialog("ファイルを指定してください","javascript:*.jsx");
if (fileObj){
    $.evalFile(decodeURI(fileObj))
  }


使い方

1.このスクリプトを[スクリプト]パネルで起動できるようにしておきます。キーボードショートカットはIllustratorオマージュで「Ctrl+F12(command+F12)」を。

 今回は「外部からスクリプトを読み込んで、スニペットとして書き出す」という操作をします。オブジェクトを選択して、「InDesignでもその他のスクリプト.jsx」を実行。

ショートカットはIllustratorオマージュ


2.ファイルを選択するダイアログが表示されます。この中から、「SOS.jsx」を選択します。

ダイアログから実行したいスクリプトを選ぶ


3.選択したオブジェクトに対し、「2.」で選んだスクリプトが実行されます。



 先代MacBook Pro(Early2011)の動作がいよいよ怪しくなってきたので、CC契約しました…InDesignでもインターフェイスくっきり。


参考サイト

JSXで外部JSXファイルを読み込む


複数スクリプトを動かす

var fileObj=File.openDialog("ファイルを指定してください","javascript:*.jsx",true);//最後のtrueでファイルの複数選択を許可
  for(var i=0; i<fileObj.length; i++)
  {
      $.evalFile(decodeURI(fileObj[i]));
  }


 こちらはダイアログで選択したスクリプトを順に動かすスクリプトです。一応動いてはくれますが、複数のスクリプトを一気に動かす際は#include#includepathを使用したほうが無難です。

タグ:


  • 最近の投稿

  • カテゴリー

  • 月別の記事

  • おことわり

     Adobe、InDesign、Illustrator、Photoshop、Acrobatは、Adobe Systems Incorporated(アドビシステムズ社)の米国および他の国における商標または登録商標です。本サイトでは、RおよびTMを省略しております。