``, etc) -- otherwise an exception will be raised.\n\nInstallation\n============\n\nPython 2.7+, 3.4+ are supported.\n\n1. Install the *stable* version using ``pip``::\n\n pip install django-activeurl\n\n or install the *in-development* version using ``pip``::\n\n pip install -e git+git://github.com/hellysmile/django-activeurl#egg=django_activeurl\n\n\n2. In your ``settings.py`` add the following:\n\n .. code-block:: python\n\n INSTALLED_APPS = (\n ...\n 'django_activeurl',\n ...\n )\n\n TEMPLATE_CONTEXT_PROCESSORS = (\n ...\n 'django.core.context_processors.request',\n ...\n )\n\n3. The *lxml* library is required and thus additional libraries need to be installed to build it:\n\n * Ubuntu::\n\n sudo apt-get install libxml2 libxml2-dev libxslt-dev build-essential python-dev\n sudo ldconfig\n\n * Fedora::\n\n sudo yum groupinstall 'Development Tools'\n sudo yum install libxslt-devel libxml2 libxml2-devel python-devel\n sudo ldconfig\n\n * MacOS X::\n\n brew install libxml2 libxslt\n sudo update_dyld_shared_cache -force\n\n * Windows:\n A pre-built *lxml* binary can be found `here
`_\n\n * Clouds:\n There's a 99.99% chance that *lxml* will build out of the box.\n\nOptions\n=======\n\nmenu =\"yes|no\" (default: \"yes\")\n-------------------------------\n\nShould hierarchical menus be supported? There are two different ways to declare an *active* status:\n\n* the *starts-with* logic toggles the active state if ``request.get_full_path()`` starts with the\n contents of the ``
\n \n \n {% endactiveurl %}\n\nThe **equals** logic works best for non-hierarchical menus where only those items should be highlighted whose ``href``-attribute perfectly match ``request.get_full_path()``:\n\n.. code-block:: html+django\n\n {% activeurl menu=\"no\" parent_tag=\"div\" %}\n