I sometimes need to open links in org (mainly for image link) in an external editor (let's say gimp). Is there any way to do that? That is, instead of the default open link, add a open with option or if not maybe open the current link in dired? I'm using Arch Linux in case that matters.

2 Answers 2


file+sys:image.png should open with the system application.

  • thx john. i am actually interested in keeping the link as an image that displays in the buffer, yet occasionally launching the file with a image editor (ala open with in dired)
    – zeltak
    Commented Jan 1, 2017 at 16:20
  • See kitchingroup.cheme.cmu.edu/blog/2016/11/04/…. In org-9 you can pretty easily change what happens when you click on a link. You may also be able to configure org-file-apps. Something like: (add-to-list 'org-file-apps '("\\.jpg" . system)) Commented Jan 1, 2017 at 20:02
  • thx @John Kitchin adding it to the org-file list was perfect. ill add the answer above.
    – zeltak
    Commented Jan 9, 2017 at 10:37

as @John Kitchin suggested the perfect solution was to add it to the org-file list . this code now allows me to C-c C-o on the link and open it in a editor program to quick edit photos

(eval-after-load "org" (lambda () (if (assoc "\\.avi\\'" org-file-apps) (setcdr (assoc "\\.avi\\'" org-file-apps) "vlc %s") (add-to-list 'org-file-apps '("\\.avi\\'" . "vlc %s") t)) (if (assoc "\\.png\\'" org-file-apps) (setcdr (assoc "\\.png\\'" org-file-apps) "pinta %s") (add-to-list 'org-file-apps '("\\.png\\'" . "pinta %s") t)) (if (assoc "\\.mp4\\'" org-file-apps) (setcdr (assoc "\\.mp4\\'" org-file-apps) "vlc %s") (add-to-list 'org-file-apps '("\\.mp4\\'" . "vlc %s") t))))

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.