emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tip] Popup-menu with several actions for a link


From: Juan Manuel Macías
Subject: Re: [Tip] Popup-menu with several actions for a link
Date: Sat, 19 Aug 2023 20:29:48 +0000

Ihor Radchenko writes:

>> I’ve been experimenting for a while with the popup.el library
>> (<https://github.com/auto-complete/popup-el>), which offers an easy way
>> to create popup menus (even cascading menus), with auto-completion
>> functions. I’m sharing here a popup menu that I’ve defined to perform
>> various actions on an Org link, in case anyone finds it useful.
>
> Since Emacs 28, Emacs has built-in context menu. (terminal is also
> supported) Moreover, major modes are encouraged to add support for
> context menus.

Thanks for the information. Do you mean context-menu-mode? I'll keep an
eye on it. When you say terminal support, do you mean terminal emulators
or TTY? Because I often use Emacs on the linux framebuffer with fbterm,
and popup.el works fine on the tty. Also, I don't usually use the mouse
much (actually I only use it in Gimp and the like) and the combination
of popup.el with hyperbole is more comfortable and keyboard-centric for
me.


>> In this list I store the functions that I am writing to manipulate links
>> (open the link with eww, open the file with an external application,
>> attach it to an email, upload it to Imgur, copy it to another directory
>> or move it, visit the file directory, etc.). Something like this:
>
> May you explain more about how you attach to an email/upload?

Sure! But they are very simple functions, which I don't use much.
Although they work fine for what I want:

The first requires the imgur.el package; the second one needs gnus-dired-mode:

(defun my-org-link-to-ingur ()
    (interactive)
    (let* ((path (org-element-property :path (org-element-context))))
      (imgur-upload-image (expand-file-name path) nil t)))

  (defun my-org-link-to-mail-attachment ()
    (interactive)
    (let* ((path (org-element-property :path (org-element-context))))
      (gnus-dired-attach (list (expand-file-name path)))))

-- 
Juan Manuel Macías

https://juanmanuelmacias.com

https://lunotipia.juanmanuelmacias.com

https://gnutas.juanmanuelmacias.com



reply via email to

[Prev in Thread] Current Thread [Next in Thread]