{ "info": { "author": "Martin Aspeli", "author_email": "optilude@gmail.com", "bugtrack_url": null, "classifiers": [ "Framework :: Plone", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "**XDV has been renamed to Diazo and this package has been replaced by plone.app.theming.** Visit the `Diazo website`_ or the `plone.app.theming PyPI page`_ for further information.\n\n.. _`Diazo website`: http://diazo.org\n.. _`plone.app.theming PyPI page`: http://pypi.python.org/pypi/plone.app.theming\n\n\n============\nIntroduction\n============\n\nThis package offers a simple way to develop and deploy Plone themes using\nthe `XDV`_ engine. If you are not familiar with XDV or rules-based theming,\ncheck out the `XDV documentation `_.\n\n.. contents:: Contents\n\nInstallation\n============\n\ncollective.xdv depends on:\n\n * `plone.transformchain`_ to hook the transformation into the publisher\n * `plone.registry`_ and `plone.app.registry`_ to manage settings\n * `plone.autoform`_, `plone.z3cform`_ and `plone.app.z3cform`_ to render the \n control panel\n * `five.globalrequest`_ and `zope.globalrequest`_ for internal request\n access\n * `XDV`_, containing XDV itself itself\n * `lxml`_ to perform the final transform\n\nThese will all be pulled in automatically if you are using zc.buildout and\nfollow the installation instructions.\n\nTo install collective.xdv into your Plone instance, locate the file\nbuildout.cfg in the root of your Plone instance directory on the file system,\nand open it in a text editor. Locate the section that looks like this::\n\n # extends = http://dist.plone.org/release/3.3/versions.cfg\n extends = versions.cfg\n versions = versions\n\nIt may also have a URL in the \"extends\" section, similar to the commented-out\nfirst line, depending on whether you pull the Plone configuration from the\nnetwork or locally.\n\nTo add collective.xdv to our setup, we need some slightly different versions\nof a couple of the packages, so we extend the base config with a version list\nfrom the good-py service, so change this part of the configuration so it looks\nlike this::\n\n extends =\n versions.cfg\n http://good-py.appspot.com/release/collective.xdv/1.0?plone=3.3.5\n versions = versions\n\nNote that the last part of the URL above before the ``?`` is the xdv version\nnumber. There may be a newer version by the time you read this, so check out\nthe `overview page `_ for\nthe known good set.\n\nReplace ``?plone=3.3.5`` with the version of Plone you are using. This\ndependency versions appropriate to your Plone.\n\nWhat happens here is that the dependency list for collective.xdv specifies\nsome new versions for you via the good-py URL. This way, you don't have to\nworry about getting the right versions, Buildout will handle it for you.\n\nNext step is to add the actual collective.xdv add-on to the \"eggs\" section of\nbuildout.cfg. Look for the section that looks like this::\n\n eggs =\n Plone\n\nThis section might have additional lines if you have other add-ons already\ninstalled. Just add the collective.xdv on a separate line, like this::\n\n eggs =\n Plone\n collective.xdv [Zope2.10]\n\nNote the use of the [Zope2.10] extra, which brings in the\nZPublisherEventsBackport package for forward compatibility with Zope 2.12 /\nPlone 4. If you are using Zope 2.12 or later (e.g. with Plone 4), you should\ndo::\n\n eggs =\n Plone\n collective.xdv\n\nNote that there is no need to add a ZCML slug as collective.xdv uses\nz3c.autoinclude to configure itself automatically.\n\nOnce you have added these lines to your configuration file, it's time to run\nbuildout, so the system can add and set up collective.xdv for you. Go to the\ncommand line, and from the root of your Plone instance (same directory as\nbuildout.cfg is located in), run buildout like this::\n\n $ bin/buildout\n\nYou will see output similar to this::\n\n Getting distribution for 'collective.xdv==1.0'.\n Got collective.xdv 1.0.\n Getting distribution for 'plone.app.registry'.\n Got plone.app.registry 1.0a1.\n Getting distribution for 'plone.synchronize'.\n Got plone.synchronize 1.0b1.\n ...\n\nIf everything went according to plan, you now have collective.xdv installed\nin your Zope instance.\n\nNext, start up Zope, e.g with::\n\n $ bin/instance fg\n\nThen go to the \"Add-ons\" control panel in Plone as an administrator, and\ninstall the \"XDV theme support\" product. You should then notice a new\n\"XDV Theme\" control panel in Plone's site setup.\n \nUsage\n=====\n\nIn the \"XDV Theme\" control panel, you can set the following options:\n\n Enabled yes/no\n Whether or not the transform is enabled.\n\n Domains\n A list of domains (including ports) that will be matched against\n the HOST header to determine if the theme should be applied. Note that\n 127.0.0.1 is never styled, to ensure there's always a way back into Plone\n to change these very settings. However, 'localhost' should work just fine.\n \n Theme\n A file path or URL pointing to the theme file. This is just a\n static HTML file.\n\n Rules\n The filesystem path to the rules XML file. \n \n Alternate themes\n A list of definitions of alternate themes and rules files for a different\n path. Should be of the form 'path theme rules' where path may use a\n regular expression syntax, theme is a file path or URL to the theme\n template and rule is a file path to the rules file. If the theme or a\n rules string starts with 'python://' a path resolve is done, so for\n example you could refer to a theme file in your theme package as\n python://yourtheme.xdvtheme/static/page.html .\n \n XSLT extension file \n It is possible to extend XDV with a custom XSLT file.\n If you have such a file, give its URL here.\n \n Absolute prefix \n If given, any relative URL in an ````, ````, ``