RapidWeaver uses a theme.plist file to gather all the information it needs about the theme.
The Theme.plist file is a standard xml file, meaning, if you have the developer tools installed, you can use Apple’s Property List Editor to create and edit your themes plist.
These tags are displayed in alpabetical order. Large dictionaries such as RWStyleVariationsand RWTextToolBar can be found in their own categories.
RapidWeaver 6 added a new RWAddonSupportURL
key in the theme PLIST. This key is required for all themes and should be a website address that customers can visit for support with the theme.
If colour style groups are added RapidWeaver needs to know which file(s) are to be processed for colour tag conversion. Add the following array to the root dictionary.
The RWCopyFiles array is a list of files and folders that are to be copied when the website is published. It should be placed in the root directory.
The RWExportFiles array is a list of items to copy over and process when the site is built. These files can contain any of the theme syntax tags, which will be replaced with the site values on export. It should be placed in the root directory.
This dictionary contains all the style variations to eb included with the theme. For more info see the chapter RWStyleVariations on page 96.
The RWTemplateHTML key sets the file to use as a template. This is the file that RapidWeaver will use a base for all pages in the site. It should be placed in the root directory.
The RWTextToolbar dictionary contains all the relevant keys to build a toolbar. It should be placed in the root directory.
The RWThemeAuthor key sets an author name for the theme. It should be placed in the root directory.
The RWThemeCapabilities key sets which new features are supported by your theme. It is a dictionary that is placed in the root directory.
Th RWThemeDisplayName should be placed in the root directory and localized for each language you want to support.
The RWThemeImage key sets the file to use for the preview in theme drawer. This file should be 115 pixels wide and 125 pixels high. The key should be placed in the root directory.
The RWThemeImage key sets the file to use for the preview in theme drawer. This file should be 800 pixels wide and 950 pixels high. The key should be placed in the root directory.
The RWThemeKeywords adds keywords specific to your theme. It should be added to the root directory. Authors can add as many keywords as they wish, however they should be kept relevant to the theme. Note: It is not necessary to add the author name, theme name, theme display name or theme short name as these are searched for automatically from the existing keys in the theme.plist. Adding such keywords will devalue the theme search feature.
The RWThemeName key names your theme. Make sure the name doesn’t clash with any other theme names. It should be placed in the root directory.
The RWThemeShippedInVersion key specifies which version of the RapidWeaver the theme was originally shipped with. This key is private and only used for official RapidWeaver themes.
The RWThemeShortName sets a name used when publishing a site. It should not contain any special charac- ters of spaces. It should be placed in the root directory.
The RWVersion keys sets a version number for your theme. If two or more themes named the same are in- stalled RapidWeaver will use the most up-to-date version. It should be placed in the root directory.
RWStyleGroups
The RWStyleGroups holds an array of all the style groups associated with the theme. It should be placed inside the RWThemeVariations dictionary.
The GroupDisplayName dictionary is located in the RWStyleGroups array and localizes the variation group display names in to each language. A key should be created for each language you wish to support.
The GroupMembers key holds all the members of each style variation group. It is a key value for each item in the RWStyleGroups array.
The GroupName sets a group display name. It is a key value for each item in the RWStyleGroups array.
The GroupSelectionLimit key sets a selection limit for each variation group. It is a key value for each item in the RWStyleGroups array.
The DisplayName key is located in each item of the GroupMembers array and localizes the display name for each variation option. Again, a key should be created for each language you wish to support.
The Enabled key sets whether or not the variation should be selected by default. It is a key value for each member of a style variation group.
The Files array gives a list of files to be added when the variation is selected. It is a key value for each member of a style variation group.
The Name key sets a name for the variation. It is a key value for each member of a style variation group.
The Type key sets the type of variation. It is a key value for each member of a style variation group. RapidWeaver 3.6 introduced a color type, previously Stylesheet was the only type of variation available.
This is the default colour to be applied to the specified tag.
The DisplayName key is located in each item of the GroupMembers array and localizes the display name for each variation option. Again, a key should be created for each language you wish to support.
The Name key sets a name for the variation. It is a key value for each member of a style variation group.
This is the tag to be used in the colourtag.css file to link the colour picker in RapidWeaver to the stylesheet.
Type
The Type key sets the type of variation. In this case Colour defines the variation.
To add colour styles to your theme it needs to be added to the RWStyleGroups array in the same way as an original variation group with the exception that GroupSelectionLimit is not required.
To add a colour style you should add the following to the GroupMembers array of the colour style group dictionary. Adding support for localisation is an (recommended) option, more information is available under the 3.5 & above keys section of this document.
The RWAlwaysDisplayFullNavigation key set whether the entire menu should be output on every page or if only the current page’s child items should be displayed. It is a key value of the RWTextToolbar dictionary.
The RWBreadCrumbItem key sets the output for each item in the unordered list for bread-crumb navigation. It is a key value of the RWTextToolbar dictionary.
The RWBreadCrumbItemSeparator key defines the characters used to seperate the list of breadcrumb items. If you are using special characters here it is best to escape them to XHTML entities.
The RWSupportedLevels key sets how many levels of navigation the theme officially supports. It is a key value of the RWTextToolbar dictionary.
The RWToolbarItemCurrent sets the output for the current page in the unordered list for main navigation. It is a key value of the RWTextToolbar dictionary.
The RWToolbarItemCurrentAncestor key styles each parent level of the menu with a currentAncestor CSS class tag. It is a key value of RWTextToolbar.
The RWToolbarList key sets the opening and closing tags of an unordered list for main navigation. It is a key value of the RWTextToolbar dictionary.
The RWToolbarItemNormal sets the output for out each item in the unordered list for main navigation. It is a key value of the RWTextToolbar dictionary.
RWSupportsContentOnlySubPages
The RWSupportsContentOnlySubPages key is located in the RWThemeCapabilities dictionary and allows RapidWeaver to create content only sub pages. Used for coherent site design. It is part of the RWThemeCapa- bilities dictionary.
Theme variations was a major feature added to RapidWeaver 3.2. It allows the users to mix and match pre-set variations in your theme.
RWSupportsDisplayName
The RWSupportsDisplayName key is located in the RWThemeCapabilities dictionary and tells RapidWeaver that the theme supports localized display names. It is part of the RWThemeCapabilities dictionary.
RWSupportsPathTo
The RWSupportsPathTo key adds support for site consolidation. It is part of the RWThemeCapabilities dictionary.
The RWSupportsToolbarRelTag key adds support for the “rel” tag being added to toolbar link items. It is part of the RWThemeCapabilities dictionary.