Ignore:
Timestamp:
04/12/06 18:26:41 (8 years ago)
Author:
xi
Message:

Fix allow_unicode (ticket:3).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pyyaml/trunk/lib/yaml/representer.py

    r133 r135  
    120120 
    121121    def represent_str(self, native): 
     122        encoding = None 
    122123        try: 
    123             native.encode('ascii') 
    124             ascii = True 
    125         except (UnicodeDecodeError, UnicodeEncodeError): 
    126             ascii = False 
    127         if ascii: 
     124            unicode(native, 'ascii') 
     125            encoding = 'ascii' 
     126        except UnicodeDecodeError: 
     127            try: 
     128                unicode(native, 'utf-8') 
     129                encoding = 'utf-8' 
     130            except UnicodeDecodeError: 
     131                pass 
     132        if encoding: 
    128133            return self.represent_scalar(u'tag:yaml.org,2002:str', 
    129                     unicode(native, 'ascii')) 
     134                    unicode(native, encoding)) 
    130135        else: 
    131136            return self.represent_scalar(u'tag:yaml.org,2002:binary', 
Note: See TracChangeset for help on using the changeset viewer.