diff --git a/etc/init.lisp b/etc/init.lisp index d7e2623..ad21aca 100644 --- a/etc/init.lisp +++ b/etc/init.lisp @@ -690,6 +690,8 @@ (define-key "C-J" #'open-message-link-perform-opening *open-message-link-keymap*) +(define-key "C-s" #'open-message-link-perform-fediverse-searching *open-message-link-keymap*) + (defun copy-from-message-link-to-clipboard () "Copy the selected link to clipboard" (copy-link-to-clipboard specials:*open-message-link-window*)) diff --git a/src/package.lisp b/src/package.lisp index e4ac560..f420b12 100644 --- a/src/package.lisp +++ b/src/package.lisp @@ -3058,6 +3058,7 @@ :open-message-link-go-up :open-message-link-go-down :open-message-link-perform-opening + :open-message-link-perform-fediverse-searching :open-message-link-open-enqueue :open-next-visible-link :open-previous-link diff --git a/src/ui-goodies.lisp b/src/ui-goodies.lisp index 5ae80a5..86dda04 100644 --- a/src/ui-goodies.lisp +++ b/src/ui-goodies.lisp @@ -1749,6 +1749,13 @@ gemini document." (defun open-message-link-perform-opening () (%open-message-link-perform-opening nil)) +(defun open-message-link-perform-fediverse-searching () + "Search the fediverse for the selected address" + (when-let* ((selected-line (line-oriented-window:selected-row *open-message-link-window*)) + (url (line-oriented-window:normal-text selected-line))) + (push-event (make-instance 'program-events:fediverse-query-event + :payload url)))) + (defun open-message-link-open-enqueue () "Open the url and keep the data stream in background