【Maya】シェルフタブが再起動時に空になる、表示されない現象を修復する

インハウスのツールをシェルフタブを作成して展開するプラグインを提供してるんですけど、再起動するとこのタブの中身がまっさらになるという問い合わせを受けまして。
その現象を調査、修復したお話。

一言で言うとuserPrefs.melが原因です。
問題が発生していた環境のuserPrefs.melを見てみると、こんな感じになっていました。(一部抜粋)

 -sv "shelfFile22" "shelf_TURTLE"
 -sv "shelfFile23" "shelf_TURTLE"
 -sv "shelfFile24" "shelf_TURTLE"
 -sv "shelfFile25" "shelf_TURTLE"

(つд⊂)ゴシゴシ

何故かTURTLEがたくさんあります。
何でこんなことになるのかは謎ですけど、実際に起きてるんだからしょうがない…!

というわけで、この同じシェルフタブの設定が大量にあるのを解消すればいいので、これでいうとshelfFile22以外の行を消しつつ、そちらと対応するshelfLoad23〜25とshelfName23〜25の行も消せばおっけーです。
(※消す行の末尾に「;」がついている場合は「;」を直前の行の行末に追加します)

が、userPrefs.melを直接書き換えるの怖いという方もいるかと思うので、その場合は以下のような手順で解消できます。

  1. シェルフエディタを起動
  2. TURTLEを削除(失敗したら再度削除)して「全てのシェルフを保存」
  3. Mayaを再起動→再度終了
  4. prefs/shelvesディレクトリでshelf_TURTLE.melに.deletedという拡張子がついてるので、ファイル名から.deletedを削除
  5. Mayaを起動

これで解消しているはずです。

今回はTURTLEが原因でしたが、他のシェルフタブの場合も解消方法は同じです。
ただ、この現象が今回と同じ原因でしか発生しないかは分からないので、現象に遭遇した場合は一旦userPrefs.melで「shelfFile」で検索して、同じものを何度も読み込んでいないか確認してみるとよさそうです。

スポンサーリンク