albatros | texte
Sonntag, 10. März 2024

Der Wanderer 104

Vergangenen Oktober hatte ich mich zuletzt mit dem in Emacs integrierten Wörterbuch dictionary.el und mit osx-dictionary beschäftigt, mit dem man auch das Wörterbuch in macOS in Emacs nutzen kann. Dann passierte lange Zeit relativ wenig in meiner dotemacs, weil mir dazu die Zeit fehlte. Letzteres ist derzeit eigentlich immer noch so. Aber manchmal ist es vernünftig, dem Impuls nachzugeben und sich einmal wieder der Emacs-Konfiguration zuzuwenden, weil es erholsam und gut ist, sie zu pflegen. Was noch fehlte, war eine echte Web-Suche, sowohl in der größten Enzyklopädie ever written als auch in einer Internet-Suchmaschine.

Die folgende Ergänzung habe ich heute mit kleineren Änderungen aus dem Blog von İsmail Efe Top (via jcs) übernommen. İsmail hatte dort ursprünglich eine Google-Suche für das Wort at-point formuliert. Ich habe das als eine Anregung genommen und für meine Zwecke leicht angepasst, weil es tatsächlich praktisch ist und eine schöne Ergänzung zu meiner Lexikon-Suche darstellt:

  (defun wikipedia-search-word-at-point ()
  "Search the current word on German Wikipedia using browse-url."
  (interactive)
  (let ((word (thing-at-point 'word)))
    (if word
        (browse-url (concat "https://de.wikipedia.org/w/index.php?search=" word))
      (message "No lemma found at point."))))
  (global-set-key (kbd "M-ä") 'wikipedia-search-word-at-point)

  (defun metager-search-word-at-point ()
  "Search the current word on MetaGer using browse-url."
  (interactive)
  (let ((word (thing-at-point 'word)))
    (if word
        (browse-url (concat "https://metager.de/meta/meta.ger3?eingabe=" word))
      (message "No term found at point."))))
  (global-set-key (kbd "M-Ä") 'metager-search-word-at-point)

Nachdem ich die Eingabe M-# schon für eine Suche des Terms at-point im Emacs-Dictionary und M-' entsprechend für die Suche im osx-dictionary belegt hatte, wählte ich M-ä für die Suche in der deutschsprachigen Wikipedia und M-Ä für eine ebensolche in meiner Standardsuchmaschine MetaGer. Die Ä-Taste wählte ich, weil sie direkt neben der anderen Taste angeordnet ist. Funktioniert sehr schön, wie erwartet.

Die Fallback-Lösung (eine Nachricht im Minibuffer) kommt nur zum Einsatz, wenn der Cursor beim Aufruf der Funktion nicht an einem Term steht, den er an den Server per browse-url übergeben könnte. Das Fallback-Handling im Übrigen verbleibt beim Server; man wird dann ja auch schon im Webbrowser sein, so dass man dort die Antwort erwartet.

Sie sind nicht angemeldet