all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* display-buffer vs. current-buffer vs. post-command-hook
@ 2016-10-04  9:28 Ami Fischman
  2016-10-04 12:00 ` Stefan Monnier
  2016-10-04 14:52 ` martin rudalics
  0 siblings, 2 replies; 7+ messages in thread
From: Ami Fischman @ 2016-10-04  9:28 UTC (permalink / raw)
  To: emacs-devel@gnu.org

[-- Attachment #1: Type: text/plain, Size: 814 bytes --]

current-buffer returns a stale value immediately after display-buffer
returns.

The following snippet (saved in x.el), when loaded in 25.1.1 using
[google-emacs -Q -l x.el], generates the message:
*scratch* *scratch* *Help*
demonstrating that (current-buffer) has a stale value after describe-key
returns (I expect post to match the [run-at-time 0] value, not the pre
value).

(progn
  (setq display-buffer-alist '(("." (lambda (buffer alist)
(switch-to-buffer buffer)))))
  (setq pre (current-buffer))
  (describe-key (kbd "SPC"))
  (setq post (current-buffer))
  (run-at-time 0 nil (lambda () (message "%s %s %s" pre post
(current-buffer)))))

This is an extremely reduced test case that reproduces the problem that is
causing https://github.com/mina86/auto-dim-other-buffers.el/issues/10
 (AFAICT).

Cheers,
-a

[-- Attachment #2: Type: text/html, Size: 1153 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-10-04 20:03 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-10-04  9:28 display-buffer vs. current-buffer vs. post-command-hook Ami Fischman
2016-10-04 12:00 ` Stefan Monnier
2016-10-04 14:52 ` martin rudalics
2016-10-04 15:45   ` Ami Fischman
2016-10-04 15:49     ` Ami Fischman
2016-10-04 16:07     ` martin rudalics
2016-10-04 20:03       ` Ami Fischman

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.