code: def rename_style(self, old_name, new_name):
          
          if old_name not in self.styles:
              raise KeyError("Style %r not found" % old_name)
          if new_name in self.styles:
              raise ValueError("There is already a style called %r" % new_name)
          if not is_valid_field_content(new_name):
              raise ValueError("%r is not a valid name" % new_name)
  
          self.styles[new_name] = self.styles[old_name]
          del self.styles[old_name]
  
          for line in self:
              # XXX also handle \r override tag
              if line.style == old_name:
                  line.style = new_name
docs: Rename a style, including references to it.
  
          Arguments:
              old_name (str): Style to be renamed.
              new_name (str): New name for the style (must be unused).
  
          Raises:
              KeyError: No style named old_name.
              ValueError: new_name is not a legal name (cannot use commas)
                  or new_name is taken.