#coding=utf-8
import re
from django.template import Node, Library
from django.utils.encoding import smart_unicode, force_unicode

register = Library()


class NoEmptyLinesNode(Node):
    def __init__(self, nodelist):
        self.nodelist = nodelist

    def render(self, context):
        return re.sub('\n([\ \t]*\n)+', '\n', force_unicode(
        self.nodelist.render(context).strip()))


@register.tag
def noemptylines(parser, token):
    nodelist = parser.parse(('endnoemptylines',))
    parser.delete_first_token()
    return NoEmptyLinesNode(nodelist)