Ok, let me summarize my thoughts about the status so far.<br><br>org.freedesktop.search.simple<br><br>Interface: OK, with a few &quot;but&quot;s:<br>&nbsp;- add getSnippet (in: s query, in: uris as, out: snippets a{ss}) <br>&nbsp;&nbsp; Returns a map of uri-&gt;snippet, with the snippet containing simple markup to highlight the matching part. The markup should probably be limited to &lt;b&gt; and &lt;i&gt; tags. Only uris actually having a meaning full snippet are returned.
<br>&nbsp;Example getSnippet(&quot;hello&quot;, [&quot;<a href="file:///tmp/test.c">file:///tmp/test.c</a>&quot;, &quot;<a href="file:///tmp/portrait.jpg">file:///tmp/portrait.jpg</a>&quot;]) returns [&quot;<a href="file:///tmp/test.c">
file:///tmp/test.c</a>&quot;-&gt;&quot;...printf(&quot;&lt;b&gt;hello&lt;/b&gt; world&quot;);... &quot;]<br><br>&nbsp;- Query language:<br>Needs to be defined for the api to be of any real use. Something close to beagle/strigi/lucene/google is probably the best. Also spotlights language should be in the consideration.
<br>As an application developer I strongly move for a &quot;group:&quot; switch to be included in this language spec. The discussion on what these groups should contain can be post poned a bit.<br>Another switch for the query language could be &quot;sort:&quot; with some sane sorting options...
<br><br>lib vs daemon:<br>I must admit I'm still in favor of a lib. In short the lib should function like:<br>&nbsp;- getInterfaceProvider(iface): return (objectPath, iface) this call is async an integrates in both QT and Glib mainloops.
<br>&nbsp;- If it is not feasible to find the interface provider at runtime, I see nothing wrong in precompiling a list of providers from installed introspection xml, or dbus activation files.<br><br>I still think we can use a lot of your code though.
<br><br>I'll try and put something with a little more rationale behind it on the wiki tonight.<br><br>Cheers,<br>Mikkel<br>