module CodeRay::PluginHost

def default id = nil

MyColorHost.default # loads and returns the Gray plugin

end
default :gray
map :navy => :dark_blue
class MyColorHost < PluginHost

See also map.

for a given id, or return the default plugin.
Define the default plugin to use when no plugin is found
def default id = nil
  if id
    id = validate_id id
    raise "The default plugin can't be named \"default\"." if id == :default
    plugin_hash[:default] = id
  else
    load :default
  end
end