def __unicode__(self):
        rule_name = ((self.expr.name % u"'%s'") if self.expr.name else
                     unicode(self.expr))
        return u"Rule %s didn't match at '%s' (line %s, column %s)." % (
                rule_name,
                self.text[self.pos:self.pos + 20],
                self.line(),
                self.column())

    # TODO: Add line, col, and separated-out error message so callers can build
    # their own presentation.
dataset/ETHPy150Open erikrose/parsimonious/parsimonious/exceptions.py/ParseError.__unicode__/swapped operands of `%`