Add link-hint
This commit is contained in:
parent
093f966070
commit
04f87d9d59
6
init.el
6
init.el
|
@ -810,6 +810,12 @@ See also `crux-reopen-as-root-mode'."
|
|||
org-agenda-mode
|
||||
tabulated-list-mode))
|
||||
|
||||
(setup (:straight link-hint)
|
||||
(:require +link-hint)
|
||||
(+link-hint-setup-open-secondary)
|
||||
(:option link-hint-avy-style 'at-full)
|
||||
(:+key "M-l" #'+link-hint-open-link))
|
||||
|
||||
(setup (:straight marginalia)
|
||||
(marginalia-mode +1))
|
||||
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
;;; +link-hint.el -*- lexical-binding: t; -*-
|
||||
|
||||
;;; Code:
|
||||
|
||||
(require 'link-hint)
|
||||
|
||||
(defgroup +link-hint nil
|
||||
"Extra customizations for `link-hint'."
|
||||
:group 'link-hint)
|
||||
|
||||
(defcustom +link-hint-open-secondary-types '(gnus-w3m-image-url
|
||||
gnus-w3m-url
|
||||
markdown-link
|
||||
mu4e-attachment
|
||||
mu4e-url
|
||||
notmuch-hello
|
||||
nov-link
|
||||
org-link
|
||||
shr-url
|
||||
text-url
|
||||
w3m-link
|
||||
w3m-message-link)
|
||||
"Link types to define `:open-secondary' for.")
|
||||
|
||||
(defun +link-hint-setup-open-secondary (&optional types)
|
||||
"Define the `:open-secondary' link-hint type for TYPES.
|
||||
If TYPES is nil, define it for `+link-hint-open-secondary-types'."
|
||||
(dolist (type (or types +link-hint-open-secondary-types))
|
||||
(link-hint-define-type type
|
||||
:open-secondary browse-url-secondary-browser-function
|
||||
:open-secondary-multiple t)))
|
||||
|
||||
(defun +link-hint-open-link (prefix)
|
||||
"Open a link.
|
||||
Without a PREFIX, open using `browse-url-browser-function'; with
|
||||
a PREFIX, use `browse-url-secondary-browser-function'."
|
||||
(interactive "P")
|
||||
(avy-with link-hint-open-link
|
||||
(link-hint--one (if prefix :open-secondary :open))))
|
||||
|
||||
(defun +link-hint-open-multiple-links (prefix)
|
||||
"Open multiple links.
|
||||
Without a PREFIX, open using `browse-url-browser-function'; with
|
||||
a PREFIX, use `browse-url-secondary-browser-function'."
|
||||
(interactive "P")
|
||||
(avy-with link-hint-open-multiple-links
|
||||
(link-hint--one (if prefix :open-secondary :open))))
|
||||
|
||||
(defun +link-hint-open-all-links (prefix)
|
||||
"Open all visible links.
|
||||
Without a PREFIX, open using `browse-url-browser-function'; with
|
||||
a PREFIX, use `browse-url-secondary-browser-function'."
|
||||
(interactive "P")
|
||||
(avy-with link-hint-open-all-links
|
||||
(link-hint--one (if prefix :open-secondary :open))))
|
||||
|
||||
(provide '+link-hint)
|
||||
;;; +link-hint.el ends here
|
Loading…
Reference in New Issue