Saturday, June 7, 2008

Shake Command Window Doc

See also, So how do I use Shake Command Window?

Shake command window (SCW) is a Maya script editor like command window with which you can write and execute a script interactively. It also lets you write a plug-in code in C++ and SCW does everything (save the source to file, compile/link, load, execute, unload, delete files) for you. Shake's console message is redirected to the UI.

Running three types of codes (pyshake, Shake script, gcc)


Currently it only works on Mac OSX 10.5. (Maybe it works on 10.3 and 10.4 if you install the latest wxPython and Python2.5 if they are not installed yet, but I don't have test environment so I cannot say for sure)

Oct. 29th, added.
Please see also this comment for release 0.94

Release 0.942 (bug fix version of 0.94)
Release 0.94
Release 0.93
Release 0.92
Release 0.91
Release 0.9
Release 0.8

When you load the tool, you'll see an option in the File menu. If you select it, SCW's main window will pop up.

The upper area of the UI is history, where every Shake console message, and SCW's messages are displayed here. Lower area has four tabs. script tab is where you can write Shake script, and gcc tab is where you can write C++ plug-in code. pyshake tab is where you can write Python script (new in version 0.9). It is only available when pyshake is installed on your machine. settings tab is for tool settings. To execute Shake script, Python script, or C++ plug-in code, simply write the script/code and press a button in the Other tab in Shake.

When the script tab is open, the script written in the tab gets executed, and when gcc tab is open, the code gets executed, so does Python script.
settings tab has many buttons and text controls layouted nicely.

erase temporary files after using
If not selected, no temporary files are deleted after execution.
add script It affects how to tread a Shake script. If it is selected, it treats the script like you select File-Add Script... in the Shake menu and load the script. If it is not selected, it is directly passed to Shake's compiler (NRiCmplr). In most cases, leaving it on will do but if you need to turn it off to use extern declaration
show command It just copies a script/code to be executed to the history.
makefile Show Makefile. SCW uses the makefile to compile the plug-in code. Editable
show shell log Standard input/error message when compiling the code using the Makefile. Read only
unload after exec Unload the plug-in from Shake's process after execution.
header include/footer includeThese texts are added to the plug-in code. Editable.
Text area 1 (defaluts to "shakeCommandWinEntryFunc")
When loading the plug-in, SCW tries to search this symbol and execute it
Text area 2 (defaluts to 12) Font size
clear history
Clear the history area
save settings Save all these settings to file. Next time you open SCW, the settings will be loaded automatically

Currently it only works on Mac. I don't have Linux Shake so I can't make it for it but I tried not to use Mac specific things so it won't be difficult to port it.

Please leave a comment here if you like it (or not).

screen capture (using pyshake)


joy said...

I so love shakes. It is very refreshing in the mouth especially when it so cold.Thanks for sharing your article. I love it.

Leslie Lim said...

Wow. Awesome article. Please do more articles like this in the future. Very informational and knowledgeable. I will expect more from you in the future. For now i will just bookmark your page and surely I'm gonna come back later to read more. Thank you to the writer!