___ _ _ _
___ ___| _| |_ ___| |_ _ _ ___| |_ ___ ___
|_ -| . | _| _|___| | | | . | | -_| |
|___|___|_| |_| |_|_|_ | _|_|_|___|_|_|
|___|_|
A Python library for hyphenating HTML in your Django project
Repurposed from Filipe Fortes' excellent AppEngine app.
- Docs: django-softhyphen.rtfd.org
- Issues: github.com/datadesk/django-softhyphen/issues
- Packaging: pypi.python.org/pypi/django-softhyphen
- Testing: travis-ci.org/datadesk/django-softhyphen
- Coverage: coveralls.io/r/datadesk/django-softhyphen
- Use the
­
HTML entity to hyphenate text. Works well with text-align:justify; - Can be called as a function from inside Python code or as a filter in the Django template
- Supports more than 25 languages
Install it.
$ pip install django-softhyphen
Add it to the INSTALLED_APPS in your settings.py
INSTALLED_APPS = (
...
'softhyphen',
...
)
Use it in as a function.
>>> from softhyphen.html import hyphenate
>>> hyphenate("<h1>I love hyphenation</h1>")
"<h1>I love hy­phen­a­tion</h1>"
>>> # It is English by default, but you can provide another language.
>>> hyphenate("<h1>Me encanta guiones</h1>", language="es-es")
<h1>Me en­can­ta gu­io­nes</h1>
Or use it as a template filter.
{% load softhyphen_tags %}
{{ text|softhyphen }}
{# You can specify another language as an argument. English is the default #}
{{ text|softhyphen:"es-es" }}
(Warning! Because of its overhead, the filter is not recommended in production if it needs to run each time the page loads.)