Appendix A. Appendix: listing of config.py variables

Here is a non-comprehensive list of configuration variables:

configuration variables

base_url

REQUIRED:no
DATATYPE:string
DEFAULT VALUE:Gets calculated based on HTTP server variables

This is the base url for your blog. If you use mod_rewrite rules, then you'll likely want to set this.


py["base_url"] = "http://pyblosxom.sourceforge.net/blog"
blog_author

REQUIRED:no
DATATYPE:string
DEFAULT VALUE:""

This is the name of the author that you want to appear on your blog.


py["blog_author"] = "Will"
blog_description

REQUIRED:no
DATATYPE:string
DEFAULT VALUE:""

This is the description of your blog.


py["blog_description"] = "Blog of thoughts, comments, " + \
                         "code examples, and such."
blog_email

REQUIRED:no
DATATYPE:string
DEFAULT VALUE:""

This is the email address you want associated with your blog.


py["blog_email"] = "joe@example.com"
blog_encoding

REQUIRED:yes
DATATYPE:string
DEFAULT VALUE:N/A

This is the encoding of your blog. iso-8859-1, utf-8, ...


py["blog_encoding"] = "iso-8859-1"
blog_language

REQUIRED:yes
DATATYPE:string
DEFAULT VALUE:N/A

This is the primary language code of your blog. English users should use en


py["blog_language"] = "en"
blog_title

REQUIRED:yes
DATATYPE:string
DEFAULT VALUE:N/A

This is the title of your blog.


py["blog_title"] = "Will's Blog of Unusual Stuff"
datadir

REQUIRED:yes
DATATYPE:string
DEFAULT VALUE:N/A

This is the full path to where your PyBlosxom entries are kept.

Example of datadir for unix/linux/osx:


py["datadir"] = "/home/will/blog/datadir/"

Examples of datadir for windows:


py["datadir"] = "/blogdata/datadir/"
py["datadir"] = "e:/blogdata/datadir/"

If you're using Windows, don't use \ in the datadir path.

flavourdir

REQUIRED:no
DATATYPE:string
DEFAULT VALUE:N/A

This is the full path to where your PyBlosxom flavours are kept.

If you don't set the flavourdir, then you can put your flavour files in the datadir with your entries.

Example of flavours for unix/linux/osx:


py["flavourdir"] = "/home/will/blog/flavourdir/"

Examples of flavourdir for windows:


py["datadir"] = "/blogdata/flavourdir/"
py["datadir"] = "e:/blogdata/flavourdir/"

If you're using Windows, don't use \ in the flavourdir path.

default_flavour

REQUIRED:no
DATATYPE:string
DEFAULT VALUE:html

This specifies what the default flavour should be if the URI doesn't specify a flavour.


py["default_flavour"] = "joy"
ignore_directories

REQUIRED:no
DATATYPE:list of strings
DEFAULT VALUE:[ ] (empty list)

This allows you to ignore directories in your datadir. For example, if you use CVS to manage your datadir, then you would want to ignore all CVS directories. You would set your ignore_directories like this:


py["ignore_directories"] = [ "CVS" ]

If you wanted to store drafts of entries you need to think about some more in a single directory (kind of like a postponed-msgs folder), then you would create a directory in your datadir and set your ignore_directories like this:


py["ignore_directories"] = [ "draft" ]
load_plugins

REQUIRED:no
DATATYPE:list of strings
DEFAULT VALUE:[ ] (an empty list)

If this is not set, then PyBlosxom will load all the plugins in the plugin dirs you specified in alphabetical order. If this is set, then PyBlosxom will only load the plugins specified.


py["load_plugins"] = ["pycalendar", "rss2renderer"]
log_file

REQUIRED:no
DATATYPE:string
DEFAULT VALUE:N/A

Where should the application log to? If set to "NONE" log messages are silently ignored. Falls back to sys.stderr if the file can't be opened for writing.


py['log_file'] = "/blogdata/logs/pyblosxom.log"
py['log_file'] = "c:/blogdata/logs/pyblosxom.log"
log_level

REQUIRED:no
DATATYPE:string
DEFAULT VALUE:N/A

At what level should we log to log_file? One of: "critical", "error", "warning", "info", "debug" For production "warning" or "error" is recommended.


py['log_level'] = "warning"
log_filter

REQUIRED:no
DATATYPE:string
DEFAULT VALUE:N/A

Let's you specify which channels should be logged. If specified, only messages from the listed channels are logged. Each plugin logs to it's own channel, therefore channelname == pluginname. Application level messages are logged to a channel named "root". If you use log_filter and ommit the "root" channel here, app level messages are not logged! log_filter is mainly interesting to debug a specific plugin.


py['log_filter'] = ['root', 'plugin1', 'plugin2']
num_entries

REQUIRED:no
DATATYPE:int
DEFAULT VALUE:0

This dictates the maximum number of entries that will show up on the home page and other category pages. It doesn't affect the number of entries that show up on date-based archive pages. It defaults to 0 which means "show all the entries".


py["num_entries"] = 20
plugin_dirs

REQUIRED:no
DATATYPE:list of strings
DEFAULT VALUE:[ ] (an empty list)

The list of directories your plugins are stored in.


py["plugin_dirs"] = ["/home/will/pyblosxom/plugins/"]