def hyphenify(self, ascii=False):
s = str(self)<EOL>s = re.sub("""<STR_LIT>""", '<STR_LIT>', s)  <EOL>s = re.sub(r'<STR_LIT>', '<STR_LIT:->', s)  <EOL>if ascii == True:  <EOL><INDENT>s = s.encode('<STR_LIT:ascii>', '<STR_LIT>').decode('<STR_LIT:ascii>')  <EOL><DEDENT>s = re.sub("<STR_LIT>", r'<STR_LIT>', s)  <EOL>s = s.replace('<STR_LIT:#>', '<STR_LIT:u>')<EOL>s = re.sub(r"<STR_LIT>", '<STR_LIT:->', s).strip('<STR_LIT>')<EOL>return String(s)<EOL>
Turn non-word characters (incl. underscore) into single hyphens.
        If ascii=True, return ASCII-only.
        If also lossless=True, use the UTF-8 codes for the non-ASCII characters.