Add Gemini Mode to the menu
authorAlex Schroeder <alex@gnu.org>
Sat, 4 Jul 2020 13:06:28 +0000 (15:06 +0200)
committerAlex Schroeder <alex@gnu.org>
Sat, 4 Jul 2020 13:06:28 +0000 (15:06 +0200)
When I'm using Elpher, and I'm editing Gemini files, chances are that
I want both of them in the same list.

elpher.el

index 13cd006..dc83212 100644 (file)
--- a/elpher.el
+++ b/elpher.el
@@ -2158,7 +2158,7 @@ With an optional argument, add all the history items, too."
     (let (entries)
       (dolist (buf (buffer-list))
        (with-current-buffer buf
-         (when (memq major-mode '(elpher-mode eww-mode))
+         (when (memq major-mode '(elpher-mode eww-mode gemini-mode))
            (if arg
                (setq entries (nconc (elpher-menu-refresh-history) entries))
              (push (elpher-menu-refresh-current) entries)))))
@@ -2171,17 +2171,25 @@ If we're only interested in the current entries, then this
 function can only return a list of a single item per buffer."
   (list (current-buffer)
        (vector
-        (cond ((eq major-mode 'elpher-mode) "E")
+        (cond ((eq major-mode 'elpher-mode) "G")
+              ((eq major-mode 'gemini-mode) "E")
               ((eq major-mode 'eww-mode) "W"))
         (cond ((eq major-mode 'elpher-mode)
                (or (elpher-address-to-url
                     (elpher-page-address elpher-current-page))
                    "none"))
+              ((eq major-mode 'gemini-mode)
+               (or (elpher-address-to-url
+                    (elpher-page-address elpher-current-page))
+                   "none"))
               ((eq major-mode 'eww-mode)
                (eww-current-url)))
         (cond ((eq major-mode 'elpher-mode)
                (or (elpher-find-title)
                    (elpher-page-display-string elpher-current-page)))
+              ((eq major-mode 'gemini-mode)
+               (or (elpher-page-display-string elpher-current-page)
+                   (buffer-name)))
               ((eq major-mode 'eww-mode)
                (plist-get eww-data :title))))))