Commits

Philip Jenvey committed 363ac37

avoid unicodedata if it's not supported

Comments (0)

Files changed (1)

webhelpers/textile.py

 import sys
 import os
 import sgmllib
-import unicodedata
+try:
+    import unicodedata
+except ImportError:
+    unicodedata = None
 
 
 def _in_tag(text, tag):
             # Try the key.
             entity = macros[entity]
         except KeyError:
-            try:
-                # Try a unicode entity.
-                entity = unicodedata.lookup(entity)
-                entity = entity.encode('ascii', 'xmlcharrefreplace')
-            except:
+            if unicodedata:
+                try:
+                    # Try a unicode entity.
+                    entity = unicodedata.lookup(entity)
+                    entity = entity.encode('ascii', 'xmlcharrefreplace')
+                except:
+                    # Return the unmodified entity.
+                    entity = '{%s}' % entity
+            else:
                 # Return the unmodified entity.
                 entity = '{%s}' % entity
 
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.