ExoWeb development - building the scripts

3 views
Skip to first unread message

Bryan Matthews

unread,
Dec 2, 2011, 5:23:25 PM12/2/11
to exos...@googlegroups.com

The ExoWeb script that you use is named something like exoweb-msajax.js and is thousands of lines of JavaScript code.  If you have to make modifications then obviously you don’t want to edit this file by hand.  The code is broken into a number of smaller scripts and built into the final script using rake (short for “ruby make”).

 

This is a condensed view of the directory structure:

 

 

/Client

 

/dist     (don’t edit these scripts!!!)

 

exoweb-msajax.js     (the output file)

 

/src     (all the source files are in this directory)

 

/base

 

/core

 

Array.js     (example source file)

 

                                                /ui

 

                                                                Toggle.js     (another example source file)

 

Rakefile     (that all-important rake script)

 

 

 

If you run the rake command from anywhere inside the directory that contains Rakefile (and sub-directories) then the rake script will do its magic and update the exoweb scripts.  Before you can do that you need to install ruby (and rake).

 

If you’re on windows you’ll want to go here to get the installer (rake is included), otherwise check the directions here for how to install ruby and then `gem install rake`.

 

Bonus #1:

 

If you have node.js on your path, then it will also run all of the jasmine specs before building and abort if any failures occur.

 

Bonus #2:

 

If you’re using Visual Studio then you can set up an external tool to run the rake script.  That alone isn’t all that useful, but you can then map it to a keyboard shortcut for ultimate productivity.

 

 

1)      As long as the active file is a file in the ExoWeb project, then this command will run the rake script in ExoWeb\Client.

2)      Using the output window is a personal preference, but I point it out here so that you know it’s an option.

 

Then map it to a keyboard shortcut.  I use Ctrl+Alt+R…

 

Reply all
Reply to author
Forward
0 new messages