code: def breakable_units(s):
      
      units = []
      for run, color in zip(
          re.split('(' + COLOR_BEGIN_RGX + '|' + COLOR_END_RGX + ')', s),
          cycle([False, True]),
      ):
          if color:
              units.append(run)
          else:
              ### TODO: Keep combining characters together
              units.extend(run)
      return units
docs: Break a string into a list of substrings, breaking at each point that it is
      permissible for `wrap(..., break_long_words=True)` to break; i.e., _not_
      breaking in the middle of ANSI color escape sequences.