docs: def get_settings(config_uri, section=None, defaults=None):
      """
      Load the settings from a named section.
  
      .. code-block:: python
  
          settings = plaster.get_settings(...)
          print(settings['foo'])
  
      :param config_uri: Anything that can be parsed by
          :func:`plaster.parse_uri`.
  
      :param section: The name of the section in the config file. If this is
          ``None`` then it is up to the loader to determine a sensible default
          usually derived from the fragment in the ``path#name`` syntax of the
          ``config_uri``.
  
      :param defaults: A ``dict`` of default values used to populate the
          settings and support variable interpolation. Any values in ``defaults``
          may be overridden by the loader prior to returning the final
          configuration dictionary.
  
      :returns: A ``dict`` of settings. This should return a dictionary object
          even if no data is available.
  
      """
      loader = get_loader(config_uri)
      return loader.get_settings(section, defaults)