import collate.strings
class Collator(object):
+ encoding = "ascii"
+
def cmp(self, string1, string2):
"""Return negative if a < b, zero if a == b, positive if a > b."""
return cmp(self.key(string1), self.key(string2))
+ def key(self, string):
+ return string
+
def words(self, string):
"""Split the string along word boundries."""
if isinstance(string, str):
string = string.decode(self.encoding, 'replace')
return string.split()
- def sortemekey(self, string, invalid=float('inf')):
+ def sortemekey(self, string):
"""Return a key based on sortemes of a string.
If the string is a str instance, it is decoded to a unicode
if fromlocale is not None:
return fromlocale
try:
- locale.setlocale(locale.LC_COLLATE, '')[1]
+ locale.setlocale(locale.LC_COLLATE, '')
except locale.Error:
pass
else: