[KSS-checkins] r46635 - in kukit/kss.templates/trunk: . kss kss/templates kss/templates/plugin plugin
jvloothuis at codespeak.net
jvloothuis at codespeak.net
Sat Sep 15 13:16:16 CEST 2007
Author: jvloothuis
Date: Sat Sep 15 13:16:16 2007
New Revision: 46635
Added:
kukit/kss.templates/trunk/kss/__init__.py
kukit/kss.templates/trunk/kss/templates/__init__.py
kukit/kss.templates/trunk/kss/templates/plugin/
- copied from r46632, kukit/kss.templates/trunk/plugin/
kukit/kss.templates/trunk/kss/templates/util.py
- copied, changed from r46618, kukit/kss.base/trunk/kss/base/utils.py
kukit/kss.templates/trunk/setup.py
- copied, changed from r46618, kukit/kss.base/trunk/setup.py
Removed:
kukit/kss.templates/trunk/plugin/
Log:
First working version
Added: kukit/kss.templates/trunk/kss/__init__.py
==============================================================================
--- (empty file)
+++ kukit/kss.templates/trunk/kss/__init__.py Sat Sep 15 13:16:16 2007
@@ -0,0 +1,6 @@
+# See http://peak.telecommunity.com/DevCenter/setuptools#namespace-packages
+try:
+ __import__('pkg_resources').declare_namespace(__name__)
+except ImportError:
+ from pkgutil import extend_path
+ __path__ = extend_path(__path__, __name__)
Added: kukit/kss.templates/trunk/kss/templates/__init__.py
==============================================================================
--- (empty file)
+++ kukit/kss.templates/trunk/kss/templates/__init__.py Sat Sep 15 13:16:16 2007
@@ -0,0 +1,6 @@
+# See http://peak.telecommunity.com/DevCenter/setuptools#namespace-packages
+try:
+ __import__('pkg_resources').declare_namespace(__name__)
+except ImportError:
+ from pkgutil import extend_path
+ __path__ = extend_path(__path__, __name__)
Copied: kukit/kss.templates/trunk/kss/templates/util.py (from r46618, kukit/kss.base/trunk/kss/base/utils.py)
==============================================================================
--- kukit/kss.base/trunk/kss/base/utils.py (original)
+++ kukit/kss.templates/trunk/kss/templates/util.py Sat Sep 15 13:16:16 2007
@@ -1,160 +1,10 @@
-import optparse
-import ConfigParser
-
-from paste.script.templates import Template
-
-from kss.base.javascript import packed
-from kss.base.plugin import load_plugins, activated_plugins
-
-
-class KSSConcatJs(object):
- '''Prints out or saves a packed javascript of loaded plugins'''
-
- configSection = "KSSConcatJs"
-
- def __init__(self):
- self.getOptions()
- if self.options.configFile:
- self.getConfig(self.options.configFile)
- self.handleCreation()
-
-
- def getOptions(self):
- '''Gets the arguments passed to the script (override config)'''
- parser = optparse.OptionParser()
-
- parser.add_option('-m', '--message',
- action='store',
- dest='message',
- help="message (comment) that will be added to the generated javascript")
- parser.add_option('--list',
- action='store_true',
- dest='listPlugins',
- help="lists activated plugins")
- parser.add_option('--compression-level',
- action='store',
- dest='compressionLevel',
- help="specifies the compression level (devel / stripped / safe / full / safe-devel / full-devel)")
- parser.add_option('--plugin',
- action='append',
- dest='pluginsToHandle',
- help="specifies one additional plugin to load; if you want to specify multiple plugins you can do it by calling --plugin multiple times")
- parser.add_option('--no-display',
- action='store_true',
- dest='noDisplayJavascript',
- help="avoids the display of resulting javascript in console")
- parser.add_option('--output-file',
- action='store',
- dest='outputFile',
- help="outputs the resulting javascript to the specified file")
- parser.add_option('--include-extras',
- action='store',
- dest='includeExtras',
- help="specifies if 3rd party javascripts have to be packed too")
- parser.add_option('-v', '--verbose',
- action='store_true',
- dest='verboseMode',
- help="verbose mode")
- parser.add_option('-F',
- action='store',
- dest='configFile',
- help="loads options from the specified config file")
-
- options, args = parser.parse_args()
- self.options = options
-
-
- def getConfig(self, fileName):
- '''Gets the values in config file only if not overrided by argument'''
- config = ConfigParser.ConfigParser()
- config.read(fileName)
- listParameters = ['pluginsToHandle']
- strParameters = ['compressionLevel', \
- 'outputFile']
- boolParameters = ['listPlugins', \
- 'noDisplayJavascript', \
- 'includeExtras', \
- 'verboseMode']
- for param in strParameters:
- if not hasattr(self.options, param):
- try:
- setattr(self.options, \
- param, \
- config.get(self.configSection, param))
- except ConfigParser.NoOptionError:
- pass
- for param in boolParameters:
- if not hasattr(self.options, param):
- try:
- setattr(self.options, \
- param, \
- config.getboolean(self.configSection, param))
- except ConfigParser.NoOptionError:
- pass
- for param in listParameters:
- #this is a list so the condition doesn't work with hasattr
- if not bool(self.options.pluginsToHandle):
- try:
- paramList = config.get(self.configSection, param).split(' ')
- setattr(self.options, \
- param, \
- paramList)
- except ConfigParser.NoOptionError:
- pass
-
-
- def makeJS(self, compressionLevel=None, includeExtras=False):
- '''Returns a compacted javascript generated from loaded javascripts'''
- return packed(compressionLevel, include_extras=False)
-
-
- def setComment(self, javascript, message):
- '''Add a comment to the generated javascript'''
- return "/* %s */\n\n%s" % (message, javascript)
-
- def writeToFile(self, fileName, fileContent):
- '''Writes the packed javascript to file'''
- file = open(fileName, 'w')
- file.write(fileContent)
- file.close()
-
-
- def listPlugins(self):
- '''Displays activated plugins'''
- if self.options.verboseMode:
- print "Activated plugins :"
- for id, plugin in activated_plugins():
- print " * %s" % id
- else:
- for id, plugin in activated_plugins():
- print id
-
-
- def handleCreation(self):
- '''Handles the JS creation regarding options and/or config'''
- corePlugin = ('kss-core', )
- if self.options.pluginsToHandle:
- plugins = tuple(self.options.pluginsToHandle) + corePlugin
- else:
- plugins = corePlugin
- self.loadedPlugins = load_plugins(*plugins)
-
- if self.options.listPlugins:
- self.listPlugins()
-
- javascript = self.makeJS(self.options.compressionLevel, \
- self.options.includeExtras)
-
- if self.options.message:
- javascript = self.setComment(javascript, self.options.message)
-
- if self.options.outputFile:
- self.writeToFile(self.options.outputFile, javascript)
- elif not self.options.noDisplayJavascript:
- print javascript
-
+from paste.script.templates import Template, var
class KSSPluginTemplate(Template):
- _template_dir = 'templates/plugin'
+ _template_dir = 'plugin'
summary = 'KSS plugin template'
- egg_plugins = ['kss.base']
+ egg_plugins = ['kss.templates']
+ vars = [
+ var('namespace',
+ 'The namespace for your plugin (something like `my-namespace`)'),
+ ]
Copied: kukit/kss.templates/trunk/setup.py (from r46618, kukit/kss.base/trunk/setup.py)
==============================================================================
--- kukit/kss.base/trunk/setup.py (original)
+++ kukit/kss.templates/trunk/setup.py Sat Sep 15 13:16:16 2007
@@ -3,9 +3,9 @@
version = '0.1'
-setup(name='kss.base',
+setup(name='kss.templates',
version=version,
- description="KSS (Kinetic Style Sheets) framework",
+ description="Templates for creating KSS plugins",
long_description="""\
""",
# Get more strings from http://www.python.org/pypi?%3Aaction=list_classifiers
@@ -17,7 +17,7 @@
author='KSS Project',
author_email='kss-devel at codespeak.net',
url='http://kssproject.org',
- license='LGPL',
+ license='GPL',
packages=find_packages(exclude=['ez_setup']),
namespace_packages=['kss'],
include_package_data=True,
@@ -26,15 +26,9 @@
'setuptools',
],
entry_points={
- 'kss.plugin': [
- 'kss-core=kss.base.plugin:KSSCore'
- ],
'paste.paster_create_template': [
- 'kss_plugin=kss.base.utils:KSSPluginTemplate',
- ],
- 'console_scripts': [
- 'kssconcatjs=kss.base.utils:KSSConcatJs'
+ 'kss_plugin=kss.templates.util:KSSPluginTemplate',
],
},
- test_suite='kss.base.tests.test_suite',
+ #test_suite='kss.templates.tests.test_suite',
)
More information about the Kukit-checkins
mailing list