39 lines
2.0 KiB
Markdown
39 lines
2.0 KiB
Markdown
[[plugins/search]] could provide [OpenSearch](http://www.opensearch.org/)
|
|
metadata. Various software supports OpenSearch (see the Wikipedia article on
|
|
[[!wikipedia OpenSearch]]); in particular, browsers like Firefox and Iceweasel
|
|
will automatically discover an OpenSearch search and offer it in the search
|
|
box.
|
|
|
|
More specifically, we want to follow the [OpenSearch Description Document
|
|
standard](http://www.opensearch.org/Specifications/OpenSearch/1.1#OpenSearch_description_document),
|
|
by having a `link` with `rel="search"` and
|
|
`type="application/opensearchdescription+xml"` in the headers of HTML, RSS,
|
|
and Atom pages. The `href` of that `link` should point to an
|
|
OpenSearchDescription XML file with contents generated based on the
|
|
information in `ikiwiki.setup`, and the `title` attribute of the `link` should
|
|
contain the wiki title from `ikiwiki.setup`.
|
|
|
|
--[[JoshTriplett]]
|
|
|
|
> I support adding this. I think all that is needed, beyond the simple task
|
|
> of adding the link header, is to make the search plugin write out
|
|
> the xml file, probably based on a template.
|
|
>
|
|
> One problem is that the
|
|
> [specification](http://www.opensearch.org/Specifications/OpenSearch/1.1#OpenSearch_description_document)
|
|
> for the XML file contains a number of silly limits to field lenghs.
|
|
> For example, it wants a "ShortName" that identifies the search engine,
|
|
> to be 16 characters or less. The Description is limited to 1024,
|
|
> the LongName to 48. This limits what existing config settings can be
|
|
> reused for those.
|
|
>
|
|
> Another semi-problem is that the specification saz:
|
|
>
|
|
>> OpenSearch description documents should include at least one Query element of role="example" that is expected to return search results. Search clients may use this example query to validate that the search engine is working properly.
|
|
>
|
|
> How should ikiwiki know what example query will return actual results?
|
|
> (How would a client know if a HTML page contains results or not, anyway?)
|
|
> Sillyness. Ignore this? --[[Joey]]
|
|
|
|
[[wishlist]]
|