docs: def to_strings(self, use_colors=True):
          """Convert an edit script to a pair of strings representing the operation in a human readable way.
  
          :param use_colors: Boolean indicating whether to use terminal color codes to color the output.
          :return: Tuple with text corresponding to the first pronunciation and the text of the second one.
          """
  
          edit_script = self.to_primitive()
  
          colors = collections.defaultdict(str)
  
          if use_colors:
              colors['red'] = '\x1b[31m'
              colors['normal'] = '\x1b[m'
              colors['green'] = '\x1b[32m'
              colors['on_red'] = '\x1b[41m'
  
          src_txt = ''
          dst_txt = ''
          for op in edit_script:
              if op['op_code'] == 'match':
                  width = max(len(op['from_symbol']), len(op['to_symbol']))
                  if op['from_symbol'] == op['to_symbol']:
                      src_txt += u'{green}{from_symbol: ^{width}}{normal}'.format(**_combine_dicts(colors,
                                                                                                   op,
                                                                                                   {'width': width}))
                      dst_txt += u'{green}{to_symbol: ^{width}}{normal}'.format(**_combine_dicts(colors,
                                                                                                 op,
                                                                                                 {'width': width}))
                  else:
                      src_txt += u'{red}{from_symbol: ^{width}}{normal}'.format(**_combine_dicts(colors,
                                                                                                 op,
                                                                                                 {'width': width}))
                      dst_txt += u'{red}{to_symbol: ^{width}}{normal}'.format(**_combine_dicts(colors,
                                                                                               op,
                                                                                               {'width': width}))
  
              elif op['op_code'] == 'insert':
                  space = ' '*len(op['to_symbol'])
                  src_txt += u'{on_red}{space}{normal}'.format(space=space, **_combine_dicts(colors,  op))
                  dst_txt += u'{red}{to_symbol}{normal}'.format(**_combine_dicts(colors, op))
  
              elif op['op_code'] == 'delete':
                  space = ' '*len(op['from_symbol'])
                  src_txt += u'{red}{from_symbol}{normal}'.format(**_combine_dicts(colors, op))
                  dst_txt += u'{on_red}{space}{normal}'.format(space=space, **_combine_dicts(colors, op))
  
              elif op['op_code'] == 'noninsert':
                  continue
  
              src_txt += ' '
              dst_txt += ' '
  
          return src_txt, dst_txt