- Mac OS X 10.5 or later
- The MYUtilities library, which is used by Murky.
- The BWToolkit Interface Builder plugin.
How To Get It
hg clone http://bitbucket.org/snej/murky/ Murky
hg clone http://bitbucket.org/snej/myutilities/ MYUtilities
hg clone http://bitbucket.org/bwalkin/bwtoolkit/ BWToolkit
(actually you can put MYUtilities and BWToolkit anywhere)
How To Configure It
Before the first time you build Murky, you'll need to tell Xcode where the MYUtilities sources and BWToolkit are. You do this by setting up a named 'Source Tree':
- Open Xcode's Preferences panel
- Click the "Source Trees" icon at the top
- Click the "+" button to add a new item to the list for MYUtilities
- Fill in the Setting Name as "
MYUtilities", the Display Name also as "
MYUtilities", and the Path as the absolute filesystem path to where you downloaded MYUtilities to. Do not use a "
~" (tilde) in this path! The compiler won't understand it and will give you errors.
- Repeat steps 5-6 to add a new item named "BWToolkit", whose path points to where you put BWToolkit.
(If you've already configured MYUtilities for another project, such as MYNetwork, then you don't need to do this again.)
You'll also need to install the BWToolkit Interface Builder plugin:
- Open BWToolkit.xcodeproj and build it in 'Release' mode.
- In the Finder, open BWToolkit's Release build output folder.
- Double-click "BWToolkit.ibplugin", to install it into IB.
How To Build It
Now you're golden. From now on you can just open Murky.xcodeproj and press the Build button.
Murky uses the
LogTo function, from MYUtilities, instead of
NSLog. This means that logging is off by default, but various types of logging can be turned on independently in a Debug build.
To enable logging in general, set the user default
YES. You can do this persistently using the
defaults write command; but it's very convenient during development to use the Arguments tab in the Xcode Executable Info panel. Just add a new entry to the arguments list, of the form "
-Log YES". Now you can check and uncheck that as desired; the change will take effect when relaunching Murky.
Once logging is enabled, you can turn on and off individual categories of logs. For any category "Something", to enable output from calls of the form
LogTo(Something, @"..."), set the user default
YES, just as above.
Note: The related
Warn( ) function always logs to the console, though.