{
"info": {
"author": "Jeff Rush",
"author_email": "jeff@taupro.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 2 - Pre-Alpha",
"Environment :: Web Environment",
"Framework :: Zope2",
"Intended Audience :: Developers",
"License :: OSI Approved :: Zope Public License",
"Natural Language :: English",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Topic :: Internet :: WWW/HTTP"
],
"description": "=====================\n Tau SelectorStrings\n=====================\n\nIntroduction\n============\n\nThe purpose of this component distribution is two-fold; to provide a useful\nway of configuring clusters of strings to be presented in a dropdown list, and\nto teach others how to create new ZCML directives. The code has been\ncarefully documented to make it clear how it works.\n\nMy need for selectorstrings comes from another component I'm designing for\npresenting collections of various files as a Zope folder. I wanted to allow\nthe developer who adds an instance of this document folder, using the ZMI\n(Zope Management Interface), to pick from a list of directories. I did not\nwant them to be able to enter arbitrary directories, partly as a security\nprecaution and partly to prevent typing errors.\n\nThis resulted in the following ZCML directive::\n\n \n\n \n\nAnd you can add more, using the same or difference cluster name and the\nstrings will be available as a Zope vocabulary under that cluster name.\n\nOne drawback is that each such simple directive repeats the cluster name\nrepeatedly. So next I created a complex (nested) directive to factor out the\ncluster name::\n\n \n\n \n\n \n\n \n\n.. sidebar:: Obtaining Development Versions\n\n In addition to the PyPI downloads, the development version of this\n component is available via its `project on Github`_.\n\n.. _`project on Github`: https://github.com/xanalogica/tau.selectorstrings#egg=tau.selectorstrings-dev\n\n\nSteps to Creating a New ZCML Directive\n======================================\n\nZCML directives come in two flavors, simple and complex. A simple directive\nstands alone but a complex one supports grouping by containing one or more\nother ZCML directives.\n\nA new ZCML directive, either simple or complex, is described by four\npieces:\n\n 1. its name\n 2. the namespace it belongs to\n 3. the schema\n 4. its directive handler\n\nThe piece that ties these all together is the declaration of the (simple-kind\nof) directive in the *meta.zcml* file::\n\n \n\nThat takes care of declaring the name of the new directive and placing that\nname into the \"zope\" namespace. It could have placed it into the \"browser\"\nnamespace or some other space that would make organizational sense.\n\nTo declare a complex-kind of directive::\n\n \n\n \n\n \n\n\nUsing Your ZCML Directive\n=========================\n\nLike any ZCML directive, you place it into a configure.zcml file or some other\nfile included your the top-level ``site.zcml`` configuration file::\n\n \n\n \n\n \n\n.. sidebar:: Wiring Your New Directives into Zope2\n\n Before the directive is recognized you **must** be sure that its definition\n in its ``meta.zcml`` gets included into the top-level ``site.zcml`` file.\n This is done by placing into your ``buildout.cfg`` file for your\n *Zope2_instance* part the following::\n\n zcml += tau.selectorstrings-meta\n\n This causes the *plone.recipe.zope2instance* recipe to create a 'slug' file\n under your ``parts/Zope2_instance/etc/package-includes/`` that does nothing\n but include your ``tau/selectorstrings/meta.zcml`` file. This inclusion\n happens because of the following directive automatically placed into your\n ``etc/site.zcml`` file by the recipe::\n\n \n\n=======\nCHANGES\n=======\n\nVersion 0.1dev (2010-12-21)\n===========================\n\n- Initial Release",
"description_content_type": null,
"docs_url": null,
"download_url": "UNKNOWN",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "http://www.timecastle.net",
"keywords": "zcml utility zope",
"license": "ZPL 2.1",
"maintainer": null,
"maintainer_email": null,
"name": "tau.selectorstrings",
"package_url": "https://pypi.org/project/tau.selectorstrings/",
"platform": "UNKNOWN",
"project_url": "https://pypi.org/project/tau.selectorstrings/",
"project_urls": {
"Download": "UNKNOWN",
"Homepage": "http://www.timecastle.net"
},
"release_url": "https://pypi.org/project/tau.selectorstrings/0.1dev/",
"requires_dist": null,
"requires_python": null,
"summary": "ZCML Directive to Define Configuration Strings for Dropdown Lists",
"version": "0.1dev"
},
"last_serial": 803387,
"releases": {
"0.1dev": [
{
"comment_text": "",
"digests": {
"md5": "a6c7dda96460d02ad999b5a086ed9aca",
"sha256": "4a64b5a6d307ee1b1efcf547a14e3b39ac788d65e80610dcac0c56207e36ef5d"
},
"downloads": -1,
"filename": "tau.selectorstrings-0.1dev-py2.6.egg",
"has_sig": false,
"md5_digest": "a6c7dda96460d02ad999b5a086ed9aca",
"packagetype": "bdist_egg",
"python_version": "2.6",
"requires_python": null,
"size": 15838,
"upload_time": "2010-12-21T13:13:19",
"url": "https://files.pythonhosted.org/packages/e3/8b/96453f368230b362eba16f5ba45275690344ba5b1e44fc61cddae8b743d2/tau.selectorstrings-0.1dev-py2.6.egg"
},
{
"comment_text": "",
"digests": {
"md5": "3d6d7cbbb9952c9c8cabc7ca7e780b82",
"sha256": "19ee7dd8cc271fe9c682583228dad1b1c24f668217f827c3814aef456b1c4a9e"
},
"downloads": -1,
"filename": "tau.selectorstrings-0.1dev.tar.gz",
"has_sig": false,
"md5_digest": "3d6d7cbbb9952c9c8cabc7ca7e780b82",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 16195,
"upload_time": "2010-12-21T13:13:17",
"url": "https://files.pythonhosted.org/packages/65/d6/7efcbc6e3b634fe169cad87026d6b7deebe38bad5c3d966c724a210e954d/tau.selectorstrings-0.1dev.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "a6c7dda96460d02ad999b5a086ed9aca",
"sha256": "4a64b5a6d307ee1b1efcf547a14e3b39ac788d65e80610dcac0c56207e36ef5d"
},
"downloads": -1,
"filename": "tau.selectorstrings-0.1dev-py2.6.egg",
"has_sig": false,
"md5_digest": "a6c7dda96460d02ad999b5a086ed9aca",
"packagetype": "bdist_egg",
"python_version": "2.6",
"requires_python": null,
"size": 15838,
"upload_time": "2010-12-21T13:13:19",
"url": "https://files.pythonhosted.org/packages/e3/8b/96453f368230b362eba16f5ba45275690344ba5b1e44fc61cddae8b743d2/tau.selectorstrings-0.1dev-py2.6.egg"
},
{
"comment_text": "",
"digests": {
"md5": "3d6d7cbbb9952c9c8cabc7ca7e780b82",
"sha256": "19ee7dd8cc271fe9c682583228dad1b1c24f668217f827c3814aef456b1c4a9e"
},
"downloads": -1,
"filename": "tau.selectorstrings-0.1dev.tar.gz",
"has_sig": false,
"md5_digest": "3d6d7cbbb9952c9c8cabc7ca7e780b82",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 16195,
"upload_time": "2010-12-21T13:13:17",
"url": "https://files.pythonhosted.org/packages/65/d6/7efcbc6e3b634fe169cad87026d6b7deebe38bad5c3d966c724a210e954d/tau.selectorstrings-0.1dev.tar.gz"
}
]
}