{ "info": { "author": "Carlos Daniel Ruvalcaba Valenzuela", "author_email": "clsdaniel@gmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: TurboGears", "License :: OSI Approved :: MIT License", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "About tgext.coffeescript\n------------------------------\n\n`CoffeeScript `_ is a little language that compiles to JavaScript. Underneath all those\nawkward braces and semicolons, JavaScript has always had a gorgeous object model at its heart.\n`CoffeeScript `_ is an attempt to expose the good parts of JavaScript in a simple way.\n\n`tgext.coffeescript `_ is a middleware aimed at making\n`TurboGears2 `_ development easier, tgext.coffeescript converts regular coffee\nfiles to javascript using the official CoffeeScript compiler.\n\ntgext.coffeescript is based on `tgext.scss `_ by Alessandro Molina and is\nunder the same license (MIT).\n\nInstalling\n-------------------------------\n\ntgext.coffeescript can be installed both from pypi or from bitbucket::\n\n easy_install tgext.coffeescript\n\nYou will also need to install the CoffeeScript compiler, for instructions on this check their website.\n\n`CoffeeScript `_\n\n\nEnabling tgext.coffeescript\n----------------------------------\n\nUsing tgext.coffeescript is really simple, you edit your `config/middeware.py` and just after\nthe `#Wrap your base TurboGears 2 application with custom middleware here` comment wrap\n`app` with `CoffeeScriptMiddleware`::\n\n from tgext.coffeescript import CoffeeScriptMiddleware\n\n make_base_app = base_config.setup_tg_wsgi_app(load_environment)\n\n def make_app(global_conf, full_stack=True, **app_conf):\n app = make_base_app(global_conf, full_stack=True, **app_conf)\n\n # Wrap your base TurboGears 2 application with custom middleware here\n app = CoffeeScriptMiddleware(app)\n\n return app\n\nNow you just have to put your .coffee files inside *public/javascript* and they will be served as JavaScript.\n\n\nJavaScript Compression\n----------------------------------\n\ntgext.coffeescript supports javascript output minification via slimit or jsmin as a fallback, this function is\ndisabled by default and can be enabled by passing the parameter minify=True on the constructor::\n\n app = CoffeeScriptMiddleware(app, minify=True)\n\n\nCache Backends\n----------------------------------\n\nYou can change the cache backend storage into any dict like object that can serialize a dict object,\nfor example, you can use beaker cache by passing the cache object to the middleware constructor::\n\n from tgext.coffeescript import CoffeeScriptMiddleware\n from tg import cache\n\n make_base_app = base_config.setup_tg_wsgi_app(load_environment)\n \n def make_app(global_conf, full_stack=True, **app_conf):\n app = make_base_app(global_conf, full_stack=True, **app_conf)\n \n # CoffeeScript with beaker cache backend\n app = CoffeeScriptMiddleware(app, cache=cache)\n\n return app\n\n\nCompiler options\n----------------------------------\n\nCurrently tgext.coffeescript turns the --bare compiler option by default, this means that the resulting javascript\noutput will not be wrapper under a top-level function, if you want to reverse this behaviour you can tell the\nmiddleware to disable it::\n\n app = CoffeeScriptMiddleware(app, bare=False)\n\nThis will disable the bare options for all files served with tgext.coffeescript, more granular control of this option\nmay be available later depending on the need for it.\n\n\nJinja2 Extension\n----------------------------------\n\ntgext.coffeescript provides an extension for jinja2 templates to compile CoffeeScript embedded directly on your\ntemplates. To activate it just add to your config/app_config.py file the following::\n\n from tgext.coffeescript.jinja import CoffeeExtension\n\n base_config.jinja_extensions = [CoffeeExtension]\n\nNow you can use the coffee tag in your templates::\n\n \n\nWhere \"main\" is a unique identifier for that CoffeeScript section, this should output nicely as::\n\n ", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://bitbucket.org/clsdaniel/tgext.coffeescript", "keywords": "turbogears2.extension CoffeeScript WSGI jinja2.extension", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "tgext.coffeescript", "package_url": "https://pypi.org/project/tgext.coffeescript/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/tgext.coffeescript/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://bitbucket.org/clsdaniel/tgext.coffeescript" }, "release_url": "https://pypi.org/project/tgext.coffeescript/0.3.1/", "requires_dist": null, "requires_python": null, "summary": "CoffeeScript middleware for TurboGears2", "version": "0.3.1" }, "last_serial": 800525, "releases": { "0.1dev": [ { "comment_text": "", "digests": { "md5": "8dccf595305301243c24616b2ec0a7c5", "sha256": "9122f650f973897a61746d423293375ac575f941e20331a46df99929a2a44700" }, "downloads": -1, "filename": "tgext.coffeescript-0.1dev.tar.gz", "has_sig": false, "md5_digest": "8dccf595305301243c24616b2ec0a7c5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3362, "upload_time": "2011-11-24T17:59:57", "url": "https://files.pythonhosted.org/packages/32/18/b90de4f47c3b09f51492e68261a538f40730c988a7311117e7c66bc4004c/tgext.coffeescript-0.1dev.tar.gz" } ], "0.2dev": [ { "comment_text": "", "digests": { "md5": "e30259f4601ed2b5b3f981f530bd2328", "sha256": "ad438475e1cb33e9e48f1b769ccdad29fbbb1db0cb6f2a7cea78b24be81c3781" }, "downloads": -1, "filename": "tgext.coffeescript-0.2dev.tar.gz", "has_sig": false, "md5_digest": "e30259f4601ed2b5b3f981f530bd2328", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3810, "upload_time": "2012-02-03T08:09:16", "url": "https://files.pythonhosted.org/packages/bf/3d/84c805087e9181fe8ed8b526993b32aca8cd472784e6e873cf893937e551/tgext.coffeescript-0.2dev.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "84c056c7c867c501ccb46d4a7c4bd9e2", "sha256": "83a42ed40d159ce0e56b0801aab423f83a40464c75e771a1a79e74b444ecc326" }, "downloads": -1, "filename": "tgext.coffeescript-0.3.tar.gz", "has_sig": false, "md5_digest": "84c056c7c867c501ccb46d4a7c4bd9e2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4558, "upload_time": "2012-02-23T08:07:42", "url": "https://files.pythonhosted.org/packages/c6/2b/f97ae128d1b9c36afa25c587866b23f57ef5bec98273c0e8469199f4e623/tgext.coffeescript-0.3.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "1b595fb57694650cd96074197bfa84a5", "sha256": "417021198ee9c346876c52e259fa4d4aab3f68d0c3a3a718e40f8780735a625a" }, "downloads": -1, "filename": "tgext.coffeescript-0.3.1.tar.gz", "has_sig": false, "md5_digest": "1b595fb57694650cd96074197bfa84a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4570, "upload_time": "2012-03-29T18:01:34", "url": "https://files.pythonhosted.org/packages/14/93/947fa3efb358b3f476ea619af03fb12a229c7893d155b1d4a9330c2e4afc/tgext.coffeescript-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1b595fb57694650cd96074197bfa84a5", "sha256": "417021198ee9c346876c52e259fa4d4aab3f68d0c3a3a718e40f8780735a625a" }, "downloads": -1, "filename": "tgext.coffeescript-0.3.1.tar.gz", "has_sig": false, "md5_digest": "1b595fb57694650cd96074197bfa84a5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4570, "upload_time": "2012-03-29T18:01:34", "url": "https://files.pythonhosted.org/packages/14/93/947fa3efb358b3f476ea619af03fb12a229c7893d155b1d4a9330c2e4afc/tgext.coffeescript-0.3.1.tar.gz" } ] }