Fresh Modo

Clean Modo Preferences

This is a mix between a blog post and tutorial, I didn't really know which one to categorize it underneath.

Part of what I do is develop custom builds of Modo, and it's pretty fun. But Modo, like every program, has settings files that store all your user settings and that help keep the program running how you like it. Unfortunately, when you're creating custom builds of Modo(called kits), you need to constantly have a clean slate to make sure what you're testing isn't a buildup of crappy files as you're developing.

Unfortunately with Modo, there's a bunch of windows you have to click through every single time you remove those files.

So I needed a way to stop this from happening, and still be able to get rid of the preferences files. My solution was to create a custom application that would automatically remove the files, and then launch Modo. The way that I got the windows to stop popping up was to create a tiny little kit called "globalSettings" that I would place in the normal Scripts directory /Users/username/Library/Application Support/Luxology/Scripts or if you're in Modo, just go to System > Open User Scripts Folder.

In this folder(the globalSettings folder in the download), there's one little file called index.cfg which is a configuration file that takes a little bit of information from the preferences files that the application is deleting, and applies it to modo. That information specifically tells these windows to never pop up, as long as the kit is enabled. If you want to turn it off(and I have no idea why you would), you can go to System > Kit Toggle Enable and check the Global Settings Kit.

Make sure when you're putting this in the Scripts folder that you're keeping the index.cfg file inside of a folder called globalSettings so that way you don't accidentally get rid of it.

I'll go through the code really quick, as it's very very easy. The application itself (not the kit) is OS X specific, so someone from the Windows and Linux side would have to make a little app themselves. I could make one in Python, but it's really late here right now. The kit will work on any OS, and will work in 701 as well.

try
    do shell script "rm ~/Library/Preferences/com.luxology.modo801"
end try
try
    do shell script "rm ~/Library/Preferences/com.luxology.modo.plist"
end try
tell application "modo"
    activate
end tell

Like I said, very easy. If the scripts do not exist, it will just go ahead and continue with launching modo. A lot of the times, the modo preferences list file won't exist, so it needed to be able to skip the file.

As for the kit index.cfg file:

<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="globalSettingsKit">

    <atom type="CheckForUpdates">
        <atom type="Period">never</atom>
    </atom>
    <atom type="PostUsageStats">
        <atom type="Period">never</atom>
    </atom>

    <atom type="Messages">
        <atom type="Dispositions">
            <hash type="D" key="clip.addStill#5">257</hash>
            <hash type="D" key="common#1241">259</hash>
        </atom>
    </atom>

    <atom type="UserValues">
      <hash type="RawValue" key="modo_showcase_show_palette">false</hash>
    </atom>

</configuration>

There's little to no documentation on xml config files in modo, so I'll attempt to explain this the best that I can before falling asleep.

The XML Version at the top is needed at the beginning of every config file. The configuration kit line is the line that tells modo this is a kit, and makes it accessible under the System > Kit Enable menu. The Atom type check for updates is the first window that pops up, and it's setting is the Period atom following it, with "none" as the option. Then you have Post Usage Stats following that which is one that's always asking if you want to send anonymous usage data to The Foundry.

Following that, you have a couple more that pop up for me at work, but I can't remember what they are off the top of my head. I'll update this section whenever I get to work, but trust me, they're annoying.

Following that, you have the User Values, for the modo_showcase_palette, which is that 801 Interactive Showcase that is the last one to be clicked(Also, for those of you delving further into kit creation, that window is also known as a Card Value. It's a moderately, but not too interactive window. I've seen someone make a limited character picker using one).

Then you end the XML file with the tag to close it and tell modo that these are the settings belonging to this kit.

In summary - this isn't for everybody. This isn't for 99.9% of Modo users. This is for someone like me who has to clear out their preferences file 100 times a day. Hope you enjoy it and I'd like to hear from you if you did.

See the Fresh Modo repository here.