ワークスペースフォルダへ飛べ。
覚え書き。 たったいま調べました。
現在作業中のワークスペースのフォルダを、Windows のエクスプローラで開きたかった。 そんだけ。
MEL:
system ("load "+`workspace -q -rootDirectory`);
これでいいじゃんね。
images フォルダとか、sourceImages フォルダとか、パパっと開きたいことがよくあるじゃないですか。 そういう時に使います。
覚え書きなので自分用に説明しておきますが・・・
workspace という Mayaコマンドで、ワークスペースフォルダのパスを取得できるんですね。 -rootDirectory というオプションがそれですね。
workspaceコマンドのドキュメント
そして、ゲットしたパスを、load コマンドに食わせている。 食わせるために、workspace コマンドをアクサングラーブ `` で囲っている。アクサングラーブでコマンド全体を囲うと、結果得られた値を別のコマンドに食わせることができる、ということですよね。
ちなみにこの load コマンドは Maya コマンドではなく Windows のコマンドですね。エクスプローラを開く仕事は、Windows にやらせているということですよね。 で、Windows のコマンド(というか、Linux や MacOS も含めて OS のコマンド)をMayaから呼び出すための Maya コマンドが、system コマンドですね。
systemコマンドのドキュメント
ということで、
system コマンド(Maya)によって load コマンド(OS)を呼び出してエクスプローラを開かせる、ただしそのパスはあらかじめ workspaceコマンド(Maya)でゲットしておいて、食わせている
という仕組みですよね。 そう理解しました。 違いますか。
まあどうでもいいや。仕事をしてくれれば。Maya さま仕事をして下さい。っていうか俺の仕事を邪魔しないで下さい。
ちなみに、こういう MEL を普段、どうやって起動しているかについてですが、シェルフに登録する人が圧倒的に多いでしょうかね? シェルフはすぐいっぱいになっちゃってねえ。ボタンの配置や大きさが自由でないのも痛い。
だから俺がいつも使うのは、UnitBUS さんの UnitBUS UI か、モチオさんの SIShelf です。
↓↓↓
UnitBUS UI
SIShelf
すんげえ便利なのでずっと使ってます。
↓ 画像は、UnitBUS UI です。 冒頭の MEL を、テキトーに名前つけて .mel ファイルに保存して、UnitBUS UI で指定しているスクリプトフォルダにぶち込むだけです。 自作のスクリプトも、ネットで拾ったスクリプトも、だいたいこんな感じでどっかにブチ込んでます。
雑多なスクリプト(野良スクリプトと呼ぶ)の起動方法は、けっこう悩みますよネー。 まあ俺の場合、この2つのツールか、ランタイムコマンドにしてホットキーにするんですけどね。
・Maya のシェルフに登録して起動
・スクリプトエディタにペーストして起動
・Maya UI 上の Command Line にペーストして起動
・ランタイムコマンドにした上で、 ホットキー化/スクリプトエディタから呼び出し/Command Line から呼び出し
・UnitBUS UI や SIShelf で起動
・自作マーキングメニューで起動
他に何か方法ありますかね?
マーキングメニューを愛せればいいんですけどねえ。俺、マーキングメニュー大嫌いでねえw どうにも手がなじまないですよ。 Max のクワッドメニューだっけ? あれが欲しいな。 あるいは、XSI の XPOP が欲しい。 つまりマウスポインタの下にドロップダウンメニューが現れて欲しいわけです。 それがマーキングメニューだよ! と言われそうですが、なんですかあの円形配置は。しかもキーを押下したままクリックとか。 普通にホットキーを1発ポンでドロップダウンメニューが出てきて欲しいですよ。 俺の感覚にどーーしても合わないw
野良スクリプトの起動方法で、何かいいやつ知ってたら、教えて下さいませ。
.
最近のコメント