Updated version of StripWhitespaceMiddleware (v1.1)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
"""
Tightens up response content by removed superflous line breaks and whitespace.
By Doug Van Horn

---- CHANGES ----
v1.1 - 31st May 2011
Cal Leeming [Simplicity Media Ltd]
Modified regex to strip leading/trailing white space from every line, not just those with blank \n.

---- TODO ----
* Ensure whitespace isn't stripped from within <pre> or <code> or <textarea> tags.

"""

import re

class StripWhitespaceMiddleware:
    """
    Strips leading and trailing whitespace from response content.
    """

    def __init__(self):
        self.whitespace = re.compile('^\s+', re.MULTILINE)
        self.whitespace_trail = re.compile('\s+$', re.MULTILINE)


    def process_response(self, request, response):
        if "text" in response['Content-Type']:
            new_content = self.whitespace.sub('', response.content)
            new_content = self.whitespace_trail.sub('\n', new_content)
            response.content = new_content
            return response
        else:
            return response

More like this

  1. Template tag for stripping blank lines by akaihola 6 years, 2 months ago
  2. Soft-wrap long lines by Ubercore 6 years ago
  3. Skip only specified spaces by axil 2 years, 2 months ago
  4. linebreaksli template filter by rokclimb15 6 years, 10 months ago
  5. Replace Paragraph Tags for Flash by blackbrrr 5 years, 8 months ago

Comments

(Forgotten your password?)