[Top][All Lists]

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

[Orgmode] org-follow-link-in-same-window

From: Nicolas Girard
Subject: [Orgmode] org-follow-link-in-same-window
Date: Sat, 27 Jun 2009 10:41:52 +0200

Hi all,
when clicking on a link, I whish I could choose between
- following it in another window (the current behaviour, which I'm often fine with, but not always);
- following it in the same window

I tried to create a new function, org-follow-link-in-same-window, and bind it to a key.

As for the key binding, I couldn't get down-mouse-2 to work, as initially expected. I tried the following bindings:

(add-hook 'org-load-hook
      '(lambda ()
         (define-key org-mouse-map [C-down-mouse-1]  'org-follow-link-in-same-window)
         (define-key org-mouse-map [down-mouse-2]    'org-follow-link-in-same-window)
         (define-key org-mouse-map [C-down-mouse-2]  'org-follow-link-in-same-window)
         (define-key org-mouse-map [s-down-mouse-1]  'org-follow-link-in-same-window)
         (define-key org-mouse-map [s-mouse-1]       'org-follow-link-in-same-window)))

I found none of them to work *but* the latest, [s-mouse-1].
(I'm not fond of incantations, so when emacs leaves me under the impression that some kind of black magic is happening, I always feel a little upset.
Anyway, i'm digressing, and after all I'm fine with [s-mouse-1].)

Now, as for the function, I came to the following:

(defun org-follow-link-in-same-window (ev)
  (interactive "e")
  (let ((org-display-internal-link-with-indirect-buffer t))
      (set-buffer (window-buffer (posn-window (event-end ev))))
    (select-window (posn-window (event-end ev)))
    (org-open-at-mouse ev)))

which doesn't work. I mean, it does follow the link, but not in the same window.

Could you please give me a hand on this ?

Thanks in advance,

reply via email to

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