NasMenuII - [[レンダー乙女とか]]
目次
パレットメニュー2の使い方
AE8(CS3)で新しくドッキングパネル内にユーザースクリプトを登録する機能がつきました。 スクリプトランチャーが最も需要が高いと判断して、まずこれを対応することにしました。
シングルウインドウ動作を行うので、従来の"nasMenu.jsx"はそのまま残して"nasManuII.jsx"として作成してあります。
2007/10/11
メニューアイテムの登録
メニューアイテムは、基本的に自動登録です。設定ファイル群はすべて従来の"nasMenu.jsx"と共用です。 メニュー登録の方式等も互換がありますので、従来の"nasMenu.jsx"をご使用の方は、そのまま置き替えて使用することが可能です。
- nas/ フォルダに置かれたファイル/フォルダが自動でチェックされてメニューに登録されます。 変更点 このフォルダには、従来"_subMenu.jsx"を配置してありませんでしたが、今回から配置可能になりました。 フォルダのカスタマイズは、"-nas._subMenu.jsx"を作成して行ってください。
- nasフォルダ配下に置かれたファイル・フォルダも再帰的にメニューに登録されます。
- 設定ファイルによって検索を中止することもできます。
- それ以外の場所のファイル/フォルダを登録したい場合は、後述の方法でスクリプトを書き換えて自分で登録してください。
- フォルダを検出して、そのなかに_subMenu.jsxファイルがあった場合でファイル内の指定で拒否されていない場合は、そのフォルダを基点にサブメニューパレットを作成します。
- ショートカットおよびエイリアスを検出してメニューボタンに登録します。
- *.jsx *.js ファイルを検出して、メニューボタンに登録します。
- *.jsxまたは *.js ファイルの場合、ファイルの第一行を"//no launch"で始めると、メニュー登録の際に無視されます。
- 第一行目に"/*(アイテム名)"と書き込んでおくと、そのアイテム名をメニューのラベルとして使用します。
- "()"括弧でかこまれたフォルダも検索の対象です。( →スクリプトメニューに表示されないボタンを作成できます。)
- 一般のフォルダや、ファイルを検出した場合は、システムで実行するボタンをメニューに登録します。(ファインダやエクスプローラで開きます。)
ボタンの数が多くて表示しきれない場合はスクロールバーが表示されますのでこれを操作して必要なボタンを表示してください。
メニューの左上方にもスクロールボタンが表示されますので、こちらもご利用いただけます。
スクロール不要なパネルではスクロールボタンは表示されません。
フォルダの移動
自動検索対象のフォルダにあるフォルダは再帰的に自動登録されます。 従来はサブメニューパレットが親パレットと別に開いていましたが、パネル動作を行う為同一ウインドウ内でボタンの書き換えを行う様に変更されました。 ボタン名の冒頭に◆および◇があるボタンは次のメニュー階層(フォルダ)への移動ボタンになります。パレット(パネル)のいちばん左上にある小さなボタンがメニュー移動ボタンです。
ボタンをクリックするとひとつ上の階層へ移動します。
パス表示での移動は…そのうち
コマンドボタンの登録
ボタン登録の方式は、従来のメニューと互換です。従来の設定ファイルがそのまま使用できます。
ボタンは基本的に自動登録です。
自動登録の対象は、デフォルトでNasMenu.jsxのあるフォルダの *.jsxファイル です。 オプションで (tools) フォルダ以下の 全てのファイルを登録します。登録の際に、AEスクリプトのファイル第一行目をチェックしています。
ファイルの第一行目が
//no launchであった場合は、パレットに登録しないでスキップします。登録したくないファイルの冒頭に指定してください。
/*(ボタン名)上の形式の場合は、括弧内の文字列をボタンラベルに使用します。 ラベルが指定されていないファイルは、ファイル名から拡張子を取り去ったものがボタンラベルとなります。
スクリプトと同じ階層の jsx ファイルは、AEスクリプトのコマンドとして登録されます。
(tools)フォルダには、AEスクリプトの他に通常のファイルをおくことも出来ます。
またサブパレットメニューでは拡張子が".js"であってもボタンに登録されます。
デバッグなどにご利用下さい。
拡張子 jsx/js 以外のファイルは、システムで実行するように設定されます。
たとえば、(windowsの場合)notepad.exeのショートカットを"(tools)/ "フォルダにコピーすると、AEのボタンランチャからノートパッドを起動することが出来ます。 データファイルを置くと、システム設定のアプリケーションで開くことが出来ます。
ちなみにこのファイルは、そうやってボタン登録してあります。ヘルプをそのうち作ったら ここから起動する予定。
ファイルの動作はシステムでダブルクリックした時の動作と同じです。(建前上はそうなっているらしい…あやしいけど)
手動でファイルを登録
手動でスクリプトに設定を書き加えると、任意のフォルダの任意のスクリプトおよびAEスクリプトの関数をボタンに登録することが出来ます。 また、URL(URI)を登録して、ブラウザでWEBページを開くこともできます。ソース内の手動登録部分を参考に各自でお好きなメニューアイテムを付け加えて下さい。 ボタンのコマンドを保持しているオブジェクトはnas.ToolBox?.ItemList?配列です。 配列の1要素がメニューアイテムひとつに相当します。
nas.ToolBox?.ItemList?配列は、パレットの処理一回ごとの一時変数です。 直接読み出しは保証されません。
サブパレットフォルダの登録
nas.ToolBox?.ItemList?配列にFolderオブジェクトを登録すると、そのフォルダを基点としてサブメニューパレットを作成します。 サブメニューに設定したいフォルダがあれば登録してください。nas.ToolBox.ItemList.push(Folderオブジェクト);メニューにラベルを設定する場合は、以下の様にプロパティで指定してください。
nas.ToolBox.ItemList[nas.ToolBox.ItemList.length].btTitle="ボタン名";指定がない場合は、フォルダ名がアイテムのラベルになります。
自動登録対象のフォルダの下にフォルダを作成した場合は、自動登録されますのでそれ以外の場所のフォルダを登録するのに使用します。
スクリプトファイルの登録
nas.ToolBox?.ItemList?配列に要素3つの配列を登録するとスクリプトボタンになります。以下のように、pushメソッドで追加していただくと良いと思います。
nas.ToolBox.ItemList.push([ボタンラベル,スクリプトのパス,スクリプトのファイル名]);
関数の登録
nas.ToolBox?.ItemList?配列に要素2つの配列を登録すると関数ボタンになります。以下のように、pushメソッドで追加していただくと良いと思います。
nas.ToolBox.ItemList.push([ボタンラベル,実行する関数オブジェクト]);
一般ファイル
一般のファイルは、関数ボタンとして登録します。 NasMenuスクリプト内に一般のファイルをシステムから起動する関数 nas.otomeExec()メソッドがありますので以下のように手動で登録して下さい。
nas.ToolBox.ItemList.push([ボタンラベル,function(){otomeExec("起動したいファイルのパス")});パスは、絶対パスでも相対パスでも大丈夫ですが、絶対パスの方が安全かしら?
ボタン列数の変更
スクリプトの中から以下の部分を検索して書き換えるとボタンの列数と幅を変更できます。 お好きなサイズのボタンランチャーでご使用下さいね。各階層ごとのサイズ指定は、サブメニューフォルダ内の_subMenu.jsxで同様の指定が可能です。
パネル動作時は、パネルのサイズから自動判別してボタンが配置されますので、この指定は無効になります。
// ボタンパレットのサイズ var buttonColumn=1;//ボタン列数 var buttonWidth=2.5;//ボタン幅ボタン列数の指定は、表示最大列数の指定となります。 パネル動作時は、無視されます。
ボタンの幅は、lib/nas_GUIlib.js で設定されている単位になります。
特に変更がなければ1ユニットあたり 60px となってます。
ライブラリ側で書き換えるとレンダー乙女全体で変更、こちらで変更するとボタンパレットのみの変更となります。
AE8(CS3)でアイコンボタンが使用可能になりましたが、まだ対応していません。 バグが多めなのでちょっと様子見を…
このメニューは、従来の"nasMenu.jsx"と共存可能です。お好きな方をご使用ください。
2007/10/11 Nekomataya/kiyo
Powered by YukiWiki 2.1.2a / Modified by Nekomataya.