elfeed: Bind s-n to helm-elfeed-switch

master
Pierre Neidhardt 2019-03-03 11:50:16 +01:00
parent bafddf836a
commit 6644a0eff8
2 changed files with 26 additions and 8 deletions

View File

@ -69,13 +69,28 @@ visit otherwise."
(switch-to-buffer "*elfeed-search*"))
(define-key elfeed-show-mode-map "q" #'ambrevar/elfeed-kill-entry)
(defun ambrevar/elfeed-switch-back () ; TODO: Replace with `helm-defswitch'.
"Back to the last elfeed buffer, entry or search."
(interactive)
(let ((buffer (get-buffer "*elfeed-entry*")))
(if buffer
(switch-to-buffer buffer)
(elfeed))))
;; Show entry in different buffers.
;; TODO: Report upstream.
(defun ambrevar/elfeed-show-entry (entry)
"Display ENTRY in the current buffer."
(let ((buff (get-buffer-create (format "*elfeed-entry-<%s>*"
(elfeed-entry-title entry)))))
(with-current-buffer buff
(elfeed-show-mode)
(setq elfeed-show-entry entry)
(elfeed-show-refresh))
(funcall elfeed-show-entry-switch buff)))
(advice-add 'elfeed-show-entry :override 'ambrevar/elfeed-show-entry)
(when (require 'patch-helm nil 'noerror)
(helm-defswitcher
"elfeed"
(lambda (b)
(with-current-buffer b
(or
(derived-mode-p 'elfeed-search-mode)
(derived-mode-p 'elfeed-show-mode))))
elfeed))
(defun ambrevar/elfeed-setup ()
(add-hook 'window-configuration-change-hook 'elfeed-search-update--force nil t))

View File

@ -100,7 +100,10 @@
(exwm-input-set-key (kbd "s-m") #'ambrevar/mu4e-headers)
(exwm-input-set-key (kbd "s-m") #'helm-mu4e-switch)
(exwm-input-set-key (kbd "s-M") #'helm-mu4e-switch-other-window)))
(exwm-input-set-key (kbd "s-n") #'ambrevar/elfeed-switch-back) ; "n" for "news"
(if (not (fboundp 'helm-elfeed-switch))
(exwm-input-set-key (kbd "s-n") #'elfeed)
(exwm-input-set-key (kbd "s-n") #'helm-elfeed-switch)
(exwm-input-set-key (kbd "s-N") #'helm-elfeed-switch-other-window)) ; "n" for "news"
(exwm-input-set-key (kbd "s-e") #'ambrevar/eww-switch-back)
(exwm-input-set-key (kbd "s-E") #'eww)