summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--emacs/custom/my-elfeed.el168
1 files changed, 83 insertions, 85 deletions
diff --git a/emacs/custom/my-elfeed.el b/emacs/custom/my-elfeed.el
index c774f20..9d4125e 100644
--- a/emacs/custom/my-elfeed.el
+++ b/emacs/custom/my-elfeed.el
@@ -1,96 +1,94 @@
;;; my-elfeed.el --- Configure elfeed -*- lexical-binding: t -*-
+
;;; Commentary:
+
;;; Code:
-(require 'use-package)
-
-(use-package elfeed
- :ensure t
- :init
- (setq elfeed-db-directory (expand-file-name "var/elfeed" user-emacs-directory))
- :config
- (eval-after-load 'elfeed-search
- '(define-key elfeed-search-mode-map (kbd "*") 'elfeed-toggle-star)))
-
-(use-package elfeed-org
- :ensure t
- :config
- (elfeed-org)
- (setq rmh-elfeed-org-files (list (expand-file-name "etc/elfeed.org" user-emacs-directory))))
-
-(defun copy-elfeed-link-title-to-org (entry)
- "Copy the ENTRY title and URL as org link to the clipboard."
- (interactive)
- (let* ((link (elfeed-entry-link entry))
- (title (elfeed-entry-title entry))
- (titlelink (concat "[[" link "][" title "]]")))
- (when titlelink
- (kill-new titlelink)
- (x-set-selection 'PRIMARY titlelink)
- (message "Yanked: %s" titlelink))))
-
-(defun elfeed-show-quick-url-note ()
- "Fastest way to capture entry link to org agenda from elfeed show mode"
- (interactive)
- (copy-elfeed-link-title-to-org elfeed-show-entry)
- (org-capture nil "n")
- (yank)
- (org-capture-finalize))
-
-(defun elfeed-search-quick-url-note ()
- "In search mode, capture the title and link for the selected
-entry or entries in org aganda."
- (interactive)
- (let ((entries (elfeed-search-selected)))
- (cl-loop for entry in entries
- do (elfeed-untag entry 'unread)
- when (elfeed-entry-link entry)
- do (copy-elfeed-link-title-to-org entry)
- do (org-capture nil "f")
- do (yank)
- do (org-capture-finalize)
- (mapc #'elfeed-search-update-entry entries))
- (unless (use-region-p) (forward-line))))
+(require 'elfeed)
+(require 'elfeed-org)
+
+(with-eval-after-load 'elfeed-search
+ '(define-key elfeed-search-mode-map (kbd "*") 'elfeed-toggle-star))
+
+(add-hook 'after-init-hook 'elfeed-org)
+
+(customize-set-variable 'elfeed-search-filter "@4-months-ago +unread")
+(customize-set-variable 'rmh-elfeed-org-files (list (expand-file-name "etc/elfeed.org" user-emacs-directory)))
(defalias 'elfeed-toggle-star
(elfeed-expose #'elfeed-search-toggle-all 'star))
-(defface elfeed-search-mustread-title-face
- '((t :foreground "red"))
- "Marks a mustread Elfeed entry.")
-
-(defun my/elfeed-eww-open (&optional use-generic-p)
- "open with eww"
- (interactive "P")
- (let ((entries (elfeed-search-selected)))
- (cl-loop for entry in entries
- do (elfeed-untag entry 'unread)
- when (elfeed-entry-link entry)
- do (eww-browse-url it))
- (mapc #'elfeed-search-update-entry entries)
- (unless (use-region-p) (forward-line))))
-
-
-(defun my/yt-dlp-it (url)
- "Downloads the URL in an async shell"
- (let ((default-directory "~/media/videos"))
- (async-shell-command (format "yt-dlp %s" (shell-quote-argument url)))))
-
-(defun my/elfeed-youtube-dl (&optional use-generic-p)
- "Youtube-DL link"
- (interactive "P")
- (let ((entries (elfeed-search-selected)))
- (cl-loop for entry in entries
- do (elfeed-untag entry 'unread)
- when (elfeed-entry-link entry)
- do (my/yt-dlp-it it))
- (mapc #'elfeed-search-update-entry entries)
- (unless (use-region-p) (forward-line))))
-
-(define-key elfeed-search-mode-map (kbd "d") 'my/elfeed-youtube-dl)
-(define-key elfeed-search-mode-map (kbd "t") 'my/elfeed-eww-open)
-
-(push '(mustread elfeed-search-must-read-title-face) elfeed-search-face-alist)
+(defface elfeed-face-tag-mustread
+ '((t :foreground "#f00"))
+ "This is a custom font face for the `mustread' tag in Elfeed."
+ :group 'elfeed)
+
+(push '(mustread elfeed-face-tag-mustread)
+ elfeed-search-face-alist)
+
+;; (defun copy-elfeed-link-title-to-org (entry)
+;; "Copy the ENTRY title and URL as org link to the clipboard."
+;; (interactive)
+;; (let* ((link (elfeed-entry-link entry))
+;; (title (elfeed-entry-title entry))
+;; (titlelink (concat "[[" link "][" title "]]")))
+;; (when titlelink
+;; (kill-new titlelink)
+;; (x-set-selection 'PRIMARY titlelink)
+;; (message "Yanked: %s" titlelink))))
+
+;; (defun elfeed-show-quick-url-note ()
+;; "Fastest way to capture entry link to org agenda from elfeed show mode"
+;; (interactive)
+;; (copy-elfeed-link-title-to-org elfeed-show-entry)
+;; (org-capture nil "n")
+;; (yank)
+;; (org-capture-finalize))
+
+;; (defun elfeed-search-quick-url-note ()
+;; "In search mode, capture the title and link for the selected
+;; entry or entries in org aganda."
+;; (interactive)
+;; (let ((entries (elfeed-search-selected)))
+;; (cl-loop for entry in entries
+;; do (elfeed-untag entry 'unread)
+;; when (elfeed-entry-link entry)
+;; do (copy-elfeed-link-title-to-org entry)
+;; do (org-capture nil "f")
+;; do (yank)
+;; do (org-capture-finalize)
+;; (mapc #'elfeed-search-update-entry entries))
+;; (unless (use-region-p) (forward-line))))
+
+
+;; (defun my/elfeed-eww-open (&optional use-generic-p)
+;; "open with eww"
+;; (interactive "P")
+;; (let ((entries (elfeed-search-selected)))
+;; (cl-loop for entry in entries
+;; do (elfeed-untag entry 'unread)
+;; when (elfeed-entry-link entry)
+;; do (eww-browse-url it))
+;; (mapc #'elfeed-search-update-entry entries)
+;; (unless (use-region-p) (forward-line))))
+
+
+;; (defun my/yt-dlp-it (url)
+;; "Downloads the URL in an async shell."
+;; (let ((default-directory "~/media/videos"))
+;; (async-shell-command (format "yt-dlp %s" (shell-quote-argument url)))))
+
+;; (defun my/elfeed-youtube-dl (&optional use-generic-p)
+;; "Youtube-DL link."
+;; (interactive "P")
+;; (let ((entries (elfeed-search-selected)))
+;; (cl-loop for entry in entries
+;; do (elfeed-untag entry 'unread)
+;; when (elfeed-entry-link entry)
+;; do (my/yt-dlp-it it))
+;; (mapc #'elfeed-search-update-entry entries)
+;; (unless (use-region-p) (forward-line))))
(provide 'my-elfeed)
+
;;; my-elfeed.el ends here