THIS PACKAGE IS NOT MAINTAINED.
Please use django-static-precompiler
Django LESS
Django LESS provides template tags to compile LESS into CSS from templates. It works with both inline code and extenal files.
Installation
Add "less" to INSTALLED_APPS setting.
Make sure that you have lessc executable installed. See LESS official site for details.
Optionally, you can specify the full path to lessc executable with LESS_EXECUTABLE setting. By default it’s set to lessc.
In case you use Django’s staticfiles contrib app you have to add django-less’s file finder to the STATICFILES_FINDERS setting, for example :
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
# other finders..
'less.finders.LessFinder',
)
Example Usage
Inline
{% load less %}
<style>
{% inlineless %}
#header {
h1 {
font-size: 26px;
font-weight: bold;
}
p { font-size: 12px;
a { text-decoration: none;
&:hover { border-width: 1px }
}
}
}
{% endless %}
</style>
renders to
<style>
#header h1 {
font-size: 26px;
font-weight: bold;
}
#header p {
font-size: 12px;
}
#header p a {
text-decoration: none;
}
#header p a:hover {
border-width: 1px;
}
</style>
External file
{% load less %}
<link rel="stylesheet" href="{{ STATIC_URL}}{% less "path/to/styles.less" %}" />
renders to
<link rel="stylesheet" href="/media/LESS_CACHE/path/to/styles-91ce1f66f583.css" />
Note that by default compiled files are saved into LESS_CACHE folder under your STATIC_ROOT (or MEDIA_ROOT if you have no STATIC_ROOT in your settings). You can change this folder with LESS_ROOT and LESS_OUTPUT_DIR settings.
Note that all relative URLs in your stylesheet are converted to absolute URLs using your STATIC_URL setting.
Settings
- LESS_EXECUTABLE
Path to LESS compiler executable. Default: "lessc".
- LESS_OPTIONS
Options sent to lessc. Default: [].
- LESS_ROOT
Controls the absolute file path that compiled files will be written to. Default: STATIC_ROOT.
- LESS_OUTPUT_DIR
Controls the directory inside LESS_ROOT that compiled files will be written to. Default: "LESS_CACHE".
- LESS_USE_CACHE
Whether to use cache for inline styles. Default: True.
- LESS_CACHE_TIMEOUT
Cache timeout for inline styles (in seconds). Default: 30 days.
- LESS_MTIME_DELAY
Cache timeout for reading the modification time of external stylesheets (in seconds). Default: 10 seconds.
Changes
0.7.2
Add LESS_OPTIONS config variable.
Use urlparse instead of posixpath to leave double slashes in urls.
Raise exception on compilation errors.
0.7.1
Use hashlib instead of django.utils.hashcompat which is deprecated in Django 1.5
Add shell=True to Popen arguments when running on Windows.
0.7
Add staticfiles finder to serve compiled files in dev mode
0.6
Add LESS_ROOT setting
0.5.1
Fix unicodedecodeerror with non ascii in less file
0.5
Switch to staticfiles.finders when looking up the files in DEBUG mode.
0.4
Add support for lookup in STATICFILES_DIRS
0.3
Log LESS compilation errors
Fixed bug with paths on Windows
0.2
Use STATIC_ROOT / STATIC_URL settings when possible instead of MEDIA_ROOT / MEDIA_URL
0.1
Initial release
Metadata
Release files for django-less 0.7.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| django-less-0.7.2.tar.gz | 10.7 kB | Without provenance | Details |
Release files / django-less-0.7.2.tar.gz
| Download URL | django-less-0.7.2.tar.gz |
|---|---|
| Size | 10.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1cbff7410d3cbfc1d6f4f7e74b746af974e8edec21249055e3b85c844bbcb229
|
|
BLAKE2b-256 checksum How to use checksums |
89dd1ebcfbd3985f0faaef0fcdb1949be4fd37a5369ff5cc5c50f82a5e90301f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for django-less 0.7.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.