docs: def format_rangefield_nodes(field_name, field, field_id, state, lineno):
      """Create a section node that documents a RangeField config field.
  
      Parameters
      ----------
      field_name : `str`
          Name of the configuration field (the attribute name of on the config
          class).
      field : ``lsst.pex.config.RangeField``
          A configuration field.
      field_id : `str`
          Unique identifier for this field. This is used as the id and name of
          the section node. with a -section suffix
      state : ``docutils.statemachine.State``
          Usually the directive's ``state`` attribute.
      lineno (`int`)
          Usually the directive's ``lineno`` attribute.
  
      Returns
      -------
      ``docutils.nodes.section``
          Section containing documentation nodes for the RangeField.
      """
      # Field type
      field_type_item = nodes.definition_list_item()
      field_type_item.append(nodes.term(text="Field type"))
      field_type_item_content = nodes.definition()
      field_type_item_content_p = nodes.paragraph()
      field_type_item_content_p += make_python_xref_nodes_for_type(
          field.dtype,
          state,
          hide_namespace=False)[0].children[0]
      field_type_item_content_p += nodes.Text(' ', ' ')
      field_type_item_content_p += make_python_xref_nodes_for_type(
          type(field),
          state,
          hide_namespace=True)[0].children[0]
      if field.optional:
          field_type_item_content_p += nodes.Text(' (optional)', ' (optional)')
      field_type_item_content += field_type_item_content_p
      field_type_item += field_type_item_content
  
      # Format definition list item for the range
      range_node = nodes.definition_list_item()
      range_node += nodes.term(text='Range')
      range_node_def = nodes.definition()
      range_node_def += nodes.paragraph(text=field.rangeString)
      range_node += range_node_def
  
      # Definition list for key-value metadata
      dl = nodes.definition_list()
      dl += create_default_item_node(field, state)
      dl += field_type_item
      dl += range_node
  
      # Doc for this field, parsed as rst
      desc_node = create_description_node(field, state)
  
      # Title for configuration field
      title = create_title_node(field_name, field, field_id, state, lineno)
  
      return [title, dl, desc_node]