Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install markupsafe

How to install MarkupSafe

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install markupsafe
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
0.18 Available View build log
0.15 Available View build log
0.12 Available View build log
0.11 Available View build log
0.9.3 Available View build log
0.15
0.18Never BuiltWhy not?
0.15 Available View build log
0.12 Available View build log
0.11 Available View build log
0.9.3 Available View build log
Windows (64-bit)
0.18 Available View build log
0.15 Available View build log
0.12 Available View build log
0.11 Available View build log
0.9.3 Available View build log
0.15
0.18Never BuiltWhy not?
0.15 Available View build log
0.12 Available View build log
0.11 Available View build log
0.9.3 Available View build log
Mac OS X (10.5+)
0.18 Available View build log
0.15 Available View build log
0.12 Available View build log
0.11 Available View build log
0.9.3 Available View build log
0.15
0.18Never BuiltWhy not?
0.15 Available View build log
0.12 Available View build log
0.11 Available View build log
0.9.3 Available View build log
Linux (32-bit)
0.18 Available View build log
0.15 Available View build log
0.12 Available View build log
0.11 Available View build log
0.9.3 Available View build log
0.15
0.18Never BuiltWhy not?
0.15 Available View build log
0.12 Available View build log
0.11 Available View build log
0.9.3 Available View build log
Linux (64-bit)
0.18 Available View build log
0.15 Available View build log
0.12 Available View build log
0.11 Available View build log
0.9.3 Available View build log
0.15
0.18Never BuiltWhy not?
0.15 Available View build log
0.12 Available View build log
0.11 Available View build log
0.9.3 Available View build log
0.18 Available View build log
0.15 Available View build log
 
License
BSD
Imports
Lastest release
version 0.18 on May 22nd, 2013

Implements a unicode subclass that supports HTML strings:

>>> from markupsafe import Markup, escape
>>> escape("<script>alert(document.cookie);</script>")
Markup(u'&lt;script&gt;alert(document.cookie);&lt;/script&gt;')
>>> tmpl = Markup("<em>%s</em>")
>>> tmpl % "Peter > Lustig"
Markup(u'<em>Peter &gt; Lustig</em>')

If you want to make an object unicode that is not yet unicode but don't want to lose the taint information, you can use the soft_unicode function. (On Python 3 you can also use soft_str which is a different name for the same function).

>>> from markupsafe import soft_unicode
>>> soft_unicode(42)
u'42'
>>> soft_unicode(Markup('foo'))
Markup(u'foo')

Objects can customize their HTML markup equivalent by overriding the __html__ function:

>>> class Foo(object):
...  def __html__(self):
...   return '<strong>Nice</strong>'
...
>>> escape(Foo())
Markup(u'<strong>Nice</strong>')
>>> Markup(Foo())
Markup(u'<strong>Nice</strong>')

Since MarkupSafe 0.10 there is now also a separate escape function called escape_silent that returns an empty string for None for consistency with other systems that return empty strings for None when escaping (for instance Pylons' webhelpers).

If you also want to use this for the escape method of the Markup object, you can create your own subclass that does that:

from markupsafe import Markup, escape_silent as escape

class SilentMarkup(Markup):
    __slots__ = ()

    @classmethod
    def escape(cls, s):
        return cls(escape(s))

Subscribe to package updates

Last updated May 22nd, 2013

Download Stats

Last month:27

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.