Hidden Preferences

Sandvox has many preferences that are not exposed in the user interface, but which you can modify using the command line. Note that these are modifications outside of Sandvox's usual scope and may have adverse affects that Karelia cannot support.

To set a hidden preference:

  1. Quit Sandvox.
  2. Open the Terminal application (found in the "Applications → Utilities" folder).
  3. Type or copy and paste the command given for the hidden preference.
  4. If necessary, replace the highlighted text with your desired value.
  5. Hit the Return key.

Watch this brief video tutorial for an example of the above.

Alternatively, if you have Apple's Developer Tools installed, you can open the Sandvox preferences file with the Property List Editor application and set hidden preferences with that. The preferences file can be found at:

~/Library/Preferences/com.karelia.Sandvox.plist

To reset a hidden preference to its original value:

  1. Quit Sandvox.
  2. Open the Terminal application (found in the "Applications → Utilities" folder).
  3. Type defaults delete com.karelia.Sandvox followed by the name of the hidden preference, as shown below.
defaults delete com.karelia.Sandvox metaRobots
  1. Hit the Return key and relaunch Sandvox.

Alternatively, you can remove all Sandvox preferences by deleting the "com.karelia.Sandvox.plist" file in your "Library → Preferences" folder.

Publishing

HTML type
defaults write com.karelia.Sandvox DocType 0
The default type of HTML produced by Sandvox. Choose from:
  • 0 - HTML 4.0.1
  • 1 - XHTML 1.0 Transitional
  • 2 - XHTML 1.0 Strict
  • 3 - XHTML 1.1 Strict
Site resources path
defaults write com.karelia.Sandvox DefaultResourcesPath "svx_resources"
The folder to store site resources in. Normally _Resources.
Media files path
defaults write com.karelia.Sandvox DefaultMediaPath "svx_media"
The folder to store media files in. Normally _Media.
Default file extension
defaults write com.karelia.Sandvox fileExtension "html"
The default path extension given to all pages when published. Usually, you customize this via the File Name and Extension fields in the Page Details area. But if you particularly wish, you can use this preference to set the extension for:
A) Any new pages created.
B) All existing pages which haven't had their filename extension customized yet.
Delete pages when publishing
defaults write com.karelia.Sandvox deletePagesWhenPublishing -bool YES
Normally when publishing, Sandvox overwrites any files on the Host that it needs to. However, some servers refuse to allow overwriting. Setting this hidden preference to "YES" will make Sandvox delete and then write anew any such pages, thereby avoiding the issue.
Robots meta tag
defaults write com.karelia.Sandvox metaRobots "all"
The instructions for visiting web robots. See this article for information on the content you can supply.
Unix file permissions
defaults write com.karelia.Sandvox pagePermissions "0644"
If your host supports it (also applies when publishing locally), this sets the Unix permissions of each file.
Publishing sets permissions
defaults write com.karelia.Sandvox ConnectionSetsPermissions -bool NO
Normally when publishing, Sandvox sets the Unix file permissions for each file that it uploads (see above setting). However, some servers refuse to allow setting permissions and disconnect immediately. Setting this hidden preference to "NO" will tell Sandvox to ignore setting file permissions on the server, allowing publishing to continue.
Apache publishing folder
defaults write com.karelia.Sandvox ApacheDocRoot "/Library/WebServer/Documents"
If you are publishing to your computer, and not to your Home Directory, this sets the folder that Sandvox will publish to. Useful if you have multiple copies of Apache or an alternative webserver installed.
Replace existing files when exporting
defaults write com.karelia.Sandvox ExportShouldReplaceExistingFile -bool NO
Exporting a site overwrites any existing file in that location, exactly like saving a document in any Mac OS X application. Sandvox 1.5 didn't strictly conform to this and would only overwrite individual files as they were exported. Set this hidden preference to NO to revert back to the 1.5 behaviour.
Load fonts bundled in designs
defaults write com.karelia.Sandvox LoadLocalFonts -bool NO
This should be used when the loading of fonts stored in design bundles, used for graphical text, needs to be turned off. (This is when you have major keychain issues in Leopard.) If you wish to use fonts embedded in a design, and you have turned this option off, you can dig into the actual design packages inside the Sandvox application package. Control-click (or right-click) on the Sandvox application and choose "Show Package Contents," then open the "Contents" and then "Designs" folder. Choose the desired design and choose "Show Package Contents" on that. Any special font files will be in that folder. Just double-click a font file to launch Font Book to install it.

Connections

Display connection information when Sandvox is launched
defaults write com.karelia.Sandvox LogHostInfoToConsole -bool YES
Connection timeout length
defaults write com.karelia.Sandvox connectionTimeoutValue 30.0
When publishing to a remote host, how long Sandvox will attempt to contact the host for.
Contact verification length
defaults write com.karelia.Sandvox LocalHostVerifyTimeout 5
The time in seconds our server will attempt to contact you if you choose to publish to your own computer.
FTP data connection type
defaults write com.karelia.Sandvox FTPDataConnectionType "Active"
Normally, Sandvox will attempt to determine the best data connection type available on your connection. For some rare cases this isn't good enough, and you can force Sandvox to use a specific type. The choices available are:
  • Active
  • Passive
  • Extended Passive
  • Extended Active
DNS configuration host
defaults write com.karelia.Sandvox hostResolver "NSHost"
Enter "NSHost" or "KTHost" to choose the host with which Sandvox resolves your DNS configuration. The default is NSHost, but KTHost may help if you are experiencing slowness when opening the Host Setup Assistant.
Password logging
defaults write com.karelia.Sandvox AllowPasswordToBeLogged -bool YES
If there is an issue with your connection, Sandvox will log any information that may help resolve it. By default though, it will not log your password for security reasons. Enabling this preference will log your password.

Collections

Number of pages listed in index
defaults write com.karelia.Sandvox MaximumTitlesInCollectionSummary "5"
The maximum number of page titles to show in an index when a child collection has its show in parent attribute set to be a list.
Index file name
defaults write com.karelia.Sandvox htmlIndexBaseName "index"
Collections are published to their own subfolders. This specifies the filename of the Collection page itself; this plus the fileExtension (above) form the name; e.g. "index.html". (Don't forget that this also affects the Home Page since it is a Collection as well!)
Force paths to collections to end in index file
defaults write com.karelia.Sandvox PathsWithIndexPages -bool YES
Force links to a collection index page to explicitly link to the index file name (as specified above, usually index.html). Not generally needed for web publication, but may be useful when viewing a website directly from the Finder. If your website is intended to be viewed directly from the finder, such as for a CD-ROM presentation, this will be useful.
Generate enclosure links to original images in RSS feeds
defaults write com.karelia.Sandvox RSSFeedEnclosuresAreOriginal -bool YES
Force RSS the attachments in RSS feeds of images to refer to the full-size, original images, not the images scaled down to fit on a photo page. Useful if you want it to be more convenient to download large images from RSS feeds, or if you wish to take advantage of PicLens to show your images full-size.
Allow callouts to be shown in general index
defaults write com.karelia.Sandvox allowCalloutsInIndex -bool NO
Normally callouts from a page are shown when that content is shown its enclosing index, such as in a weblog. If you do not wish to show callouts in this context, set this option to NO.

Comments

To accommodate some of the many options available for JS-Kit, we have provided access using hidden preferences.

Whether lists comments in reverse chronological order
defaults write com.karelia.Sandvox JSKitReverseOrder -bool YES
Whether to hide avatars from comment postings
defaults write com.karelia.Sandvox JSKitDisableAvatars -bool YES
Whether to disable threading of comments
defaults write com.karelia.Sandvox JSKitDisableThreading -bool YES
Whether to ask JS-Kit to send a confirmation email to the moderator address chosen in the Site Inspector
defaults write com.karelia.Sandvox JSKitConfirmModeratorViaEmail -bool YES
Requests a moderator confirmation email from JS-Kit after each successful publishing of a site. You typically only want to turn this on temporarily until any problems with moderation are resolved and then turn it off again.

Images

When creating thumbnail and favicon images, Sandvox automatically applies a sharpening effect to improve the image quality.

Normal image sharpening is accomplished from the Preferences window. To adjust the amount of sharpening is done for Favicons, use the following command.

defaults write com.karelia.Sandvox KTFaviconSharpeningFactor 1.0

You can set the initial value of image linking using the following:

Whether to turn on the "Link To" checkbox
defaults write com.karelia.Sandvox shouldIncludeLink -bool NO
Initially link an image to its original-sized version
defaults write com.karelia.Sandvox linkImageToOriginal -bool YES
Whether a dragged in image should be linked to externally (rather than being included in the document)
defaults write com.karelia.Sandvox preferExternalImage -bool YES

Application Behavior

Autosave frequency
defaults write com.karelia.Sandvox AutosaveFrequency -int 60
Sets the frequency, in seconds, between automatic document saves. If outside of the range of 5 seconds to 300 seconds (5 minutes), the default value of 60 seconds will be used.
QuickLook thumbnail
defaults write com.karelia.Sandvox DisableQuickLookThumbnail -bool YES
Disables generation of QuickLook thumbnails for all Sandvox documents. Disabling QuickLook thumbnails may improve issues with Sandvox hanging during document save. (Note that Mac OS X 10.4 "Tiger" does not save QuickLook thumbnails.)
Open file alert
defaults write com.karelia.Sandvox OpenUntitledFileWhenIconClicked -bool NO
Disables the alert that appears when there are no documents open and you click on the Sandvox icon in the Dock.
Send crash reports
defaults write com.karelia.Sandvox SendCrashReports -bool NO
Stops Sandvox checking to see if it crashed previously.
Open last used site when launching
defaults write com.karelia.Sandvox AutoOpenLastOpenedOnLaunch -bool NO
When launching Sandvox, stops it opening the last site you were working on.
Show file search paths
defaults write com.karelia.Sandvox ShowSearchPaths -bool YES
When Sandvox launches, it checks to see if any of its internal files have been overridden. This setting logs all the paths that are searched. Please see "Overriding Sandvox Application Files" for more information.
Sandvox update address
defaults write com.karelia.Sandvox HomeBaseURL "http://launch.karelia.com/"
The URL that Sandvox uses when checking for updates. It must end in a slash.
Log JavaScript console messages
defaults write com.karelia.Sandvox LogJavaScript -bool YES
If this is set, any JavaScript errors and messages will be appended to the system console log (along with what line number in the Sandvox HTML file it came from). Useful for diagnostics if your website has JavaScript in it.

Alerts

Sandvox contains a number of alerts that you can dismiss with the option not to be told again in the future. These hidden preferences can be used to re-enable such alerts. Entering NO will enable an alert, and YES will silence it.

Quartz Extreme not available
defaults write com.karelia.Sandvox shutUpQuartzExtreme -bool NO
Sandvox is being run on a non-Quartz Extreme equipped Mac. Please see "Graphical Text" for more information.
Sandvox update available
defaults write com.karelia.Sandvox shutUpNewVersionAlert -bool NO
The alert that appears when Sandvox detects an update available.
Download Sandvox update warning
defaults write com.karelia.Sandvox shutUpDownloadWarn -bool NO
When a Sandvox update is available, a badge also appears in the Status Bar to indicate it. This alert appears when you click it.
HTML validation results loaded
defaults write com.karelia.Sandvox shutUpNotValidated -bool NO
HTML Validation was successful and the results will be displayed in the Web View.
HTML validation failed
defaults write com.karelia.Sandvox shutUpValidateError -bool NO
HTML Validation failed and the results will be displayed in the Web View.
Snapshot replacement
defaults write com.karelia.Sandvox SilenceSaveDocumentSnapshot -bool NO
Warning when saving a new snapshot.
Sandvox unregistered
defaults write com.karelia.Sandvox shutUpDemoUploadWarning -bool NO
Sandvox is unregistered and in demo mode. Publishing is restricted.
Delete page
defaults write com.karelia.Sandvox DeletePagesSilencingKey -bool NO
A page is about to be deleted.
Non-Page Link
defaults write com.karelia.Sandvox shutUpFakeURL -bool NO
A link has been clicked on and its destination only exists on the published site.
Pagelet cannot be selected
defaults write com.karelia.Sandvox ShutUpCantSelect -bool NO
You have clicked on a pagelet that cannot be selected since its main location is on another page. You can choose to go to that page or cancel.

New Documents

These settings affect only new sites you create.

Site design
defaults write com.karelia.Sandvox designBundleIdentifier "sandvox.Aqua"
The identifier of the design new sites use.
Home page index
defaults write com.karelia.Sandvox DefaultIndexBundleIdentifier "sandvox.GeneralIndex"
The kind of index the new Home Page should use. You can see the list of available index types using the "Available Components" item in the Debug menu.
Default home page pagelet
defaults write com.karelia.Sandvox DefaultBadgeBundleIdentifier "sandvox.BadgePagelet"
The identifier of the pagelet type that should be placed in the new Home Pages Sidebar. You can see the list of available pagelet types using the "Available Components" item in the Debug menu. Entering a blank string will result in no pagelet being added to the Home Page.

Sandvox Interface

Open URLs in background
defaults write com.karelia.Sandvox 'urls in background' YES
Enable to open links to external pages in the background. Only applies while editing sites within the Sandvox interface.
Transition time
defaults write com.karelia.Sandvox AnimationTime 0.7
The time taken (in seconds) for the transition effect when changing a site's design.
Transition kind
defaults write com.karelia.Sandvox CIFilterNameForAnimation "CIRippleTransition"
The kind of transition to use when changing a site's design. See Apple's documentation for more information.
Transition parameters
defaults write com.karelia.Sandvox CIFilterParameters aDictionary
Replace "aDictionary" with a dictionary specifying the transition parameters to use when changing a site's design. See Apple's documentation for information on the parameters to specify, and the defaults man page for how to enter a dictionary.
Titlebar seperator
defaults write com.karelia.Sandvox TitleSeparator " | "
The string used to separate items in the Sandvox titlebar and Browser Window Title.
Custom Site Outline Icons
defaults write com.karelia.Sandvox DisableCustomSiteOutlineIcons -bool YES
Stops Sandvox generating a custom Site Outline thumbnail image when appropriate. e.g. Photo pages and File Download pages

Contact Form

You can change the service that Sandvox uses to send email from your website. Because some Sandvox users may have trouble receiving emails sent from the server normally used by Sandvox (service.karelia.com), we offer this alternative.

You would need to download our PHP files and install them on your own server — see the README file that comes with that download for instructions. Be sure to republish your website after changing any of these defaults.

URLs of the form processor
defaults write com.karelia.Sandvox mailmeURL "http://service.karelia.com/mailme.php"
defaults write com.karelia.Sandvox mailmeAjaxURL "http://service.karelia.com/mailmeAjax.php"
For your custom installation, the password used to decrypt the email address
defaults write com.karelia.Sandvox mailmePassword "MY_PASSWORD"

The Contact Form service is provided by Karelia as a courtesy only. Karelia cannot and does not guarantee the delivery of email through its relay, any spam filters, or other third party systems.

Syntax Coloring

You can change the colors used in the syntax coloring of Sandvox's Raw HTML editor window. Each color type take a trio of numbers representing the red, green, and blue component as a number from 0.0 to 1.0.

Some example colors:

Black 0.0 0.0 0.0
Blue 0.0 0.0 1.0
Brown 0.6 0.4 0.2
Cyan 0.0 1.0 1.0
Dark Gray 0.33 0.33 0.33
Gray 0.5 0.5 0.5
Green 0.0 1.0 0.0
Light Gray 0.67 0.67 0.67
Magenta 1.0 0.0 1.0
Orange 1.0 0.5 0.0
Purple 0.5 0.0 0.5
Red 1.0 0.0 0.0
Yellow 1.0 1.0 0.0
Comments
e.g. <!-- ... -->
defaults write com.karelia.Sandvox "SyntaxColoring:Color:Comments" -array 1.0 0.0 0.0
Identifiers
e.g. &amp; &gt; &lt;
defaults write com.karelia.Sandvox "SyntaxColoring:Color:Identifiers" -array 0.0 0.0 1.0
Strings
e.g. "...."
defaults write com.karelia.Sandvox "SyntaxColoring:Color:Strings" -array 0.4 0.4 0.4
Tags
e.g. <p> ... </p>
defaults write com.karelia.Sandvox "SyntaxColoring:Color:Tags" -array 0.0 0.0 0.6

Debugging

Webkit Inspector
defaults write com.karelia.Sandvox WebKitDeveloperExtras -bool YES
Enables the Webkit Inspector.
Debug Menu
defaults write com.karelia.Sandvox IncludeDebugMenu -bool YES
Enables Sandvox's Debug menu.

Special Logging

For uploading and a few other areas of Sandvox, logging is controlled by setting specific "levels" for particular domains. (Each level shows the messages from the lower-numbered levels, so 5 shows all messages while 0 shows none.) The normal value is 3.

0 1 2 3 4 5
(none) Fatal Error Warn Info Debug

The preferences below can also be set from the Debug menu.

Connection Debugging
defaults write com.karelia.Sandvox "KTLoggingLevel.Connection" 5
Subclass registration and matching a port to a protocol
Protocol Debugging
defaults write com.karelia.Sandvox "KTLoggingLevel.Protocol" 5
Debugs when a command has come in or about to be sent for certain protocols
Queuing Debugging
defaults write com.karelia.Sandvox "KTLoggingLevel.Queuing" 5
Debug when things get queued up in their respective queue, e.g. Command, upload, download, etc
State Machine Debugging
defaults write com.karelia.Sandvox "KTLoggingLevel.State Machine" 5
Shows when it is trying to dispatch a command from the queue
Transport Debugging
defaults write com.karelia.Sandvox "KTLoggingLevel.Transport" 5
Debug the Socket of the connection
Input Stream Debugging
defaults write com.karelia.Sandvox "KTLoggingLevel.Input Stream" 5
Logs the input stream as binary data.
Output Stream Debugging
defaults write com.karelia.Sandvox "KTLoggingLevel.Output Stream" 5
Logs the output stream as binary data.
Parser Debugging
defaults write com.karelia.Sandvox "KTLoggingLevel.Parser" 5
Debugs the parsing of FTP directories

Other (non-connection) debugging:

Media Debugging
defaults write com.karelia.Sandvox "KTLoggingLevel.Media" 5
Debugs the processing of Sandvox Media (images, video, etc.)
Debug All
defaults write com.karelia.Sandvox "KTLoggingLevel.*" 5
Turns all all logging to the specified level.
How can we improve this page? Let us know.