// Was kann Mozilla eigentlich?

Was ich letztens noch als Feature im Firefox anpries, nämlich die Suchmaschine über die Adresszeile seinen persönlichen Bedürfnissen anzupassen, ist im kürzlich erschienenen Release v23 des Browsers nicht mehr möglich einzusetzen. Offenbar wurde die Verwendung der hidden preference keyword.URL in diesem Sinne seitens der Entwickler als Bug betrachtet. Dies geht zumindest aus folgenden beiden Links hervor:

Das führt zu dem sehr unschönen Verhalten, dass Firefox für die Suche in der Adresszeile ab sofort die Suchmaschine verwendet, welche in der Suchleiste eingestellt ist. Ein Dual-Use unterschiedlicher Maschinen ist nicht mehr umsetzbar, in meinen Augen verliert die Suchleiste damit komplett ihren Sinn, doch das tut hier nichts zur Sache. Die Frage ist, wie gehen wir damit um?

Normalerweise surft man einfach die gewünschte Page an und fügt die Suchmaschine über die davor vorgesehen Leiste neben der Adresszeile den anderen hinzu. Im Falle von DuckDuckGo funktioniert das aber nicht, möglicherweise liegt das an der Schreibweise innerhalb des ShortName-Tags des von DDG platzierten XML-Files.

Wir bauen uns das also selber (es ist ohnehin erforderlich spezielle URL-Parameter einzusetzen, daher findet bei mir auch das Browser-Plugin keinen Einsatz) und brauchen dafür zwei Dateien. Zunächst ist eine XML-Datei zu erstellen, welche die künftige Suchmaschine mit ihren Einstellungen beschreibt. Der Code sieht wie folgt aus (in der Datei ddg.xml gespeichert):

<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/"
                       xmlns:moz="http://www.mozilla.org/2006/browser/search/">
 <!-- add DDG to FF with custom parameters - 16th Aug 2013 -->
 <ShortName>DDG</ShortName>
 <Description>Search DuckDuckGo (SSL)</Description>
 <InputEncoding>UTF-8</InputEncoding>
 <Image width="16" height="16" type="image/x-icon">http://duckduckgo.com/favicon.ico</Image>
 <Url type="text/html" method="GET" template="https://duckduckgo.com/">
  <Param name="ks=m&amp;kl=de-de&amp;kp=-1&amp;kw=s&amp;q" value="{searchTerms}"/>
 </Url>
 <moz:SearchForm>https://www.duckduckgo.com</moz:SearchForm>
</OpenSearchDescription>

Weiterführend ist diese XML-Datei dem Browser des Clients über eine HTML-Seite als Suchmaschine anzubieten. Dies geschieht über den aufs Nötigste reduzierte (und in der Datei ddg.html im selben Verzeichnis gespeicherten) Quelltext:

<html>
 <head>
  <link rel="search" type="application/opensearchdescription+xml" title="DDG" href="ddg.xml">
 </head>
 <body>add DDG</body>
</html>

Der Teufel liegt hier im Detail. Wird als title „DuckDuckGo“ eingetragen, erkennt Firefox den Suchmaschinen-Link nicht. Ob das ein Bug oder gewollt ist weiß ich nicht. Die Begriffe „DuckDuckgo“ bzw. „Duckduckgo“ (oder eben „DDG“) funktionieren hingegen wie erwartet, für mich sieht das nach einer expliziten Filterung seitens Mozilla aus, warum auch immer. Ich hatte eingangs erwähnt, dass sich die Suchmaschine über die Homepage von DDG nicht adden lässt, genau das hier ist scheinbar der Grund.

Ruft man nun die Seite ddg.html mit Firefox auf, kann DuckDuckGo in altbekannt funktionierender Weise als Suchmaschine hinzugefügt werden. Der Einsatz eines Webservers sollte nicht erforderlich seint, da HTML- und XML-Dateien lokal vom Browser geparsed werden (hab ich aber nicht getestet).

Nun ist jedoch noch das Problem zu lösen, dass künftig nur noch eine konkrete Suchmaschine eingesetzt werden kann, also das einfache eingeben von Suchbegriffen in der Adresszeile wird nicht zu einer Suchanfrage an die keyword.URL übermittelt (bis FF v22 war das möglich) sondern an die in der Suchleiste eingestellte Page.
Um dafür eine praktikable, effiziente Lösung zu finden bedienen wir uns den Schlüsselwörtern in der Suchmaschinen-Verwaltung. Ich nutze hier d für das Dictionary der TU-Chemnitz und s für die Suche mit meiner Standard-Suchmaschine (DuckDuckGo). Diese einzelnen Zeichen den Suchbegriffen vorangestellt sorgen dafür, dass die Anfrage von der jeweils gewünschten Page bearbeitet wird.

BTW, ich zähle hier 32 Crashes vom Firefox, innerhalb der letzten 104 Tage. Das heißt der schmiert mir zuverlässig alle 3 bis 4 Tage ab und die haben nichts besseres zu tun als mir usability zu klauen. Wird Zeit, dass Mozilla Konkurrenz bekommt…

Leave a comment…



T Y V O V
  • E-Mail address will not be published.
  • Formatting:
    //italic//  __underlined__
    **bold**  ''preformatted''
  • Links:
    [[http://example.com]]
    [[http://example.com|Link Text]]
  • Quotation:
    > This is a quote. Don't forget the space in front of the text: "> "
  • Code:
    <code>This is unspecific source code</code>
    <code [lang]>This is specifc [lang] code</code>
    <code php><?php echo 'example'; ?></code>
    Available: html, css, javascript, bash, cpp, …
  • Lists:
    Indent your text by two spaces and use a * for
    each unordered list item or a - for ordered ones.


Except where otherwise noted, content on this blog is licensed under CreativeCommons BY SA 3.0