]> code.delx.au - gnu-emacs/blobdiff - lisp/net/xesam.el
Merge from trunk.
[gnu-emacs] / lisp / net / xesam.el
index 03c188006d07127eb97b17e4ce60d6119ec7c7ad..64c26cfb2c9eebfd7138927b02ccf3518b81197a 100644 (file)
@@ -1,6 +1,6 @@
 ;;; xesam.el --- Xesam interface to search engines.
 
-;; Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+;; Copyright (C) 2008-2011 Free Software Foundation, Inc.
 
 ;; Author: Michael Albinus <michael.albinus@gmx.de>
 ;; Keywords: tools, hypermedia
@@ -414,18 +414,18 @@ If there is no registered search engine at all, the function returns `nil'."
        ;; Hopefully, this will change later.
        (setq hit-fields
              (case (intern vendor-id)
-               ('Beagle
+               (Beagle
                 '("xesam:mimeType" "xesam:url"))
-               ('Strigi
+               (Strigi
                 '("xesam:author" "xesam:cc" "xesam:charset"
                   "xesam:contentType" "xesam:fileExtension"
                   "xesam:id" "xesam:lineCount" "xesam:links"
                   "xesam:mimeType" "xesam:name" "xesam:size"
                   "xesam:sourceModified" "xesam:subject" "xesam:to"
                   "xesam:url"))
-               ('TrackerXesamSession
+               (TrackerXesamSession
                 '("xesam:relevancyRating" "xesam:url"))
-               ('Debbugs
+               (Debbugs
                 '("xesam:keyword" "xesam:owner" "xesam:title"
                   "xesam:url" "xesam:sourceModified" "xesam:mimeType"
                   "debbugs:key"))
@@ -446,7 +446,12 @@ If there is no registered search engine at all, the function returns `nil'."
 \f
 ;;; Search buffers.
 
-(define-derived-mode xesam-mode nil "Xesam"
+(defvar xesam-mode-map
+  (let ((map (copy-keymap special-mode-map)))
+    (set-keymap-parent xesam-mode-map widget-keymap)
+    map))
+
+(define-derived-mode xesam-mode special-mode "Xesam"
   "Major mode for presenting search results of a Xesam search.
 In this mode, widgets represent the search results.
 
@@ -455,12 +460,6 @@ Turning on Xesam mode runs the normal hook `xesam-mode-hook'.  It
 can be used to set `xesam-notify-function', which must a search
 engine specific, widget :notify function to visualize xesam:url."
   (set (make-local-variable 'xesam-notify-function) nil)
-
-  ;; Keymap.
-  (setq xesam-mode-map (copy-keymap special-mode-map))
-  (set-keymap-parent xesam-mode-map widget-keymap)
-  (define-key xesam-mode-map "z" 'kill-this-buffer)
-
   ;; Maybe we implement something useful, later on.
   (set (make-local-variable 'revert-buffer-function) 'ignore)
   ;; `xesam-engine', `xesam-search', `xesam-type', `xesam-query', and
@@ -918,5 +917,4 @@ Example:
 ;;     yahoo, ebay, ...
 ;;   - Construct complex queries via widgets, like in mairix.el.
 
-;; arch-tag: 7fb9fc6c-c2ff-4bc7-bb42-bacb80cce2b2
 ;;; xesam.el ends here