Django template tags to compile CoffeeScript
OTHER License
THIS PACKAGE IS NOT MAINTAINED.
Please use django-static-precompiler <https://github.com/andreyfedoseev/django-static-precompiler>
_
Django CoffeeScript provides template tags to compile CoffeeScript into JavaScript from templates. It works with both inline code and extenal files.
Installation
"coffeescript"
to INSTALLED_APPS
setting.coffee
executable installed. SeeCoffeeScript official site <http://jashkenas.github.com/coffee-script/>
_ for details.coffee
executable with COFFEESCRIPT_EXECUTABLE
setting.coffee
.STATICFILES_FINDERS
setting, for example :::
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
# other finders..
'coffeescript.finders.CoffeescriptFinder',
)
Example Usage
::
{% load coffeescript %}
<script type="text/javascript">
{% inlinecoffeescript %}
console.log "Hello, World!"
{% endinlinecoffeescript %}
</script>
renders to
::
<script type="text/javascript">
(function() {
console.log("Hello, World!");
}).call(this);
</script>
::
{% load coffeescript %}
<script type="text/javascript"
src="{{ STATIC_URL}}{% coffeescript "path/to/script.coffee" %}">
</script>
renders to
::
<script type="text/javascript"
src="/media/COFFEESCRIPT_CACHE/path/to/script-91ce1f66f583.js">
</script>
Note that by default compiled files are saved into COFFEESCRIPT_CACHE
folder under your STATIC_ROOT
(or MEDIA_ROOT
if you have no STATIC_ROOT
in your settings).
You can change this folder name with COFFEESCRIPT_ROOT
and COFFEESCRIPT_OUTPUT_DIR
settings.
Settings
COFFEESCRIPT_EXECUTABLE
Path to CoffeeScript compiler executable. Default: "coffee"
.
COFFEESCRIPT_ROOT
Controls the absolute file path that compiled files will be written to. Default: STATIC_ROOT
.
COFFEESCRIPT_OUTPUT_DIR
Controls the directory inside COFFEESCRIPT_ROOT
that compiled files will be written to. Default: "COFFEESCRIPT_CACHE"
.
COFFEESCRIPT_USE_CACHE
Whether to use cache for inline scripts. Default: True
.
COFFEESCRIPT_CACHE_TIMEOUT
Cache timeout for inline scripts (in seconds). Default: 30 days.
COFFEESCRIPT_MTIME_DELAY
Cache timeout for reading the modification time of external scripts (in seconds). Default: 10 seconds.