Settings

novel edited this page May 6, 2011 · 20 revisions

Entries in red must be modified. Entries in gray must be edited with care: they may affect site generation.

Directories

  • LAYOUT_DIR: Directory that contains template files that provide the structure for the content. Files in this directory are not copied to the target directory when the site is generated. Default: site_root/layout
  • CONTENT_DIR: Directory that contains the actual content for the website. This directory may contain some specific layout files if they are prefixed with an _. All the files except the ones prefixed with _ are copied over when the site is generated. Default: site_root/content
  • MEDIA_DIR: Directory that contains site resources, css, images, flash etc., Default: site_root/media
  • DEPLOY_DIR: Default folder where the generated site is copied to. This setting can be overridden with the -d option. Default: site_root/deploy
  • TMP_DIR: Temporary folder used during generation. This folder may be created and deleted several times. Default: site_root/deploy_tmp

Site Configuration

  • SITE_ROOT: The relative url of the site. Default: /. Example: If your site will be available at http://site.name/stuff/more, you should set this value to /stuff/more.
  • SITE_WWW_URL: The absolute url for the site. Default: http://www.yoursite.com.
  • SITE_NAME: Name of the site. This may be used in breadcrumbs and/or site navigation. Default: Your Site
  • SITE_AUTHOR: This setting is used in Atom feed generation for the post author field. Default: Your Name

Url Configuration

When referring to url’s in your templates and content, use the {{site.url}}/path/to/your/page format.

  • GENERATE_ABSOLUTE_FS_URLS: If this setting is True, Hyde replaces site.url with the path to the deployment folder(DEPLOY_DIR). Default: False
  • GENERATE_CLEAN_URLS: If this setting is True, Hyde generates urls without extensions.Default: False

Examples:

http://example.com/section/page.html becomes http://example.com/section/page/, and the listing for that section becomes http://example.com/section/.
The built-in CherryPy webserver is capable of serving pages with clean urls without any additional configuration, but Apache will need to use Mod_Rewrite to map the clean urls to the actual html files. The .htaccess file included in the default template generates these rules automatically. You can additional apache configuration settings to this file if needed,

  • APPEND_SLASH: If this setting is True Hyde appends a slash at the end of clean urls. Default: False
  • LISTING_PAGE_NAMES: List of names that would be automatically considered as files that provide list of other files in that folder. These files do not show up in any of the lists, atom feed or when navigating using the prev, next attributes of page. These files are also served by default when the containing folder is accessed if GENERATE_CLEAN_URLS is True. Default: [‘listing’, ‘index’, ‘default’]

Processors

  • MEDIA_PROCESSORS: Configures processors that are executed for media files. This configuration has two levels, a folder and a pattern. Format: folder : {extension : (processor1, processor 2)}. folder is the path to the folder relative to MEDIA_DIR. Using * for folder applies the associated processors to all the folders in MEDIA_DIR. All the sub directories for the specified folder inherit the configuration. Check Media Processors for more information on the available media processors. Default:

    '*':{
        '.css':('hydeengine.media_processors.TemplateProcessor',
                'hydeengine.media_processors.YUICompressor',),
        '.ccss':('hydeengine.media_processors.TemplateProcessor',
                'hydeengine.media_processors.CleverCSS',
                'hydeengine.media_processors.YUICompressor',),
        '.hss':(
                'hydeengine.media_processors.TemplateProcessor',
                'hydeengine.media_processors.HSS',
                'hydeengine.media_processors.YUICompressor',),
        '.js':(
                'hydeengine.media_processors.TemplateProcessor',
                'hydeengine.media_processors.YUICompressor',)
    }
  • SITE_PRE_PROCESSORS: These processors are run on folders just before they are processed for generation. Format: folder:{processor: {params}}. Folder must be specified relative to the CONTENT_DIR. Check Site Preprocessors for more information. Default:{}.
  • CONTENT_PROCESSORS: These processors are run on content files. Format: folder/:{processor: {params}}. The folder must be specified relative to the CONTENT_DIR. Note the trailing slash. Check Content Processors for more information. Default: {}.
  • SITE_POST_PROCESSORS: These processors are run on folders after the site has just been generated and before it is copied over to DEPLOY_DIR. Format: folder:{processor: {params}}. The folder must be specified relative to the site root. For example in order to process the media folder you would specify media, to process the css folder under media you would specify media/css. All sub directories inherit this setting. Check Site Post Processors for more information. Default: {}.

Example:

  
     SITE_POST_PROCESSORS = {
         'media/js': {
                'hydeengine.site_post_processors.FolderFlattener' : {
                        'remove_processed_folders': True,
                        'pattern':"*.js"
                }
            }
    }    

Generator Settings

  • FILTER: Specifies files that need to be excluded from generation. Format: {"include": (patterns), "exclude":(patterns) }. The patterns in include can provide specific overrides for the more general patterns in exclude. For example, exclude may provide a pattern that excludes all hidden files ".*" and include may provide ".htaccess" to override the filter for that particular file. Default:
  
    "include" : (".htaccess",), 
    "exclude" : (".*", "*~")

Django Settings

These settings have been configured optimally for Hyde. Check the Django documentation for more details.

  • TEMPLATE_DIRS: The directories from which Django loads templates. Default_: @(LAYOUT_DIR, CONTENT_DIR, TMP_DIR, MEDIADIR)@.
  • INSTALLED_APPS: The directories from which Django loads code. Default: ('hydeengine', 'django.contrib.webdesign').

Markdown Settings

It’s possible to use various extensions python-markdown provides, from simple ones like automatic Table of Contents generation, Tables and Footnotes to fancy extensions like LaTeX support or video embedding.

  • MD_EXTENSIONS: The list of extensions to enable. Default: []
  • MD_EXTENSIONS_CONFIG: Dictionary with per-extension configuration. Default: {}

Example:


MD_EXTENSIONS = ['footnotes']
MD_EXTENSIONS_CONFIG = {'footnotes' : ('PLACE_MARKER','~~~~~~~~')}

Please follow python-markdown configuration for details on extension configuration.