code: def format_title(self):
          def asciify(_title):
              _title = unicodedata.normalize('NFD', unicode(_title))
              ascii = True
              out = []
              ok = u"1234567890qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM- ',"
              for ch in _title:
                  if ch in ok:
                      out.append(ch)
                  elif unicodedata.category(ch)[0] == ("L"): #a letter
                      out.append(hex(ord(ch)))
                      ascii = False
                  elif ch in u'\r\n\t':
                      out.append(u'-')
              return (ascii, sub("[ ',-]+", '-', "".join(out)) )
  
          
          (ascii, _title) = asciify(self.meta.title)
          if not ascii and self.meta.alternative_title:
              (ascii, _title2) = asciify(self.meta.alternative_title)
              if ascii:
                  _title = _title2
          title_length = 99 - len(str(self.book_id)) - 1
          if len(_title) > title_length:
              # if the title was shortened, replace the trailing _ with an ellipsis
              repo_title = "{0}__{1}".format(_title[:title_length], self.book_id)
          else:
              repo_title = "{0}_{1}".format(_title[:title_length], self.book_id)
          logger.debug("%s %s" % (len(repo_title), repo_title))
          self.meta.metadata['_repo'] = repo_title
          return repo_title
docs: Takes a string and sanitizes it for Github's url name format