[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e"
From: |
Stefan Monnier |
Subject: |
Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e" |
Date: |
Fri, 06 Nov 2015 09:18:41 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) |
> + ;; If we are going to display the result in the echo area, force
> + ;; a more thorough redisplay, in case the sexp we evaluated
> + ;; changes something that should affect the display of the
> + ;; current window. Otherwise, Emacs might decide that only the
> + ;; echo area needs to be redisplayed.
> + (if (eq standard-output t)
> + (force-mode-line-update 'all)))))
What does this have to do with elisp--eval-last-sexp?
Some changes aren't immediately reflected on screen (e.g. toggling
a minor-mode variable) unless one explicitly requests a redisplay or
call force-mode-line-update.
That's always been the case for setting line-spacing. Sometimes you get
lucky, and after setting line-spacing the change is immediately
reflected on screen because you happen to make some other change at the
same time, but it's just wrong to rely on that.
So I think the above change is a bad idea. If we want to "fix it
right", then we should look for ways to automatically react to changes
to line-spacing, rather than doing (force-mode-line-update 'all) in
elisp--eval-last-sexp, which only catches this problem when it goes
through elisp--eval-last-sexp, and which causes unnecessary redisplay
work in the 99.9% of the cases where elisp--eval-last-sexp does
something else.
Stefan
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e",
Stefan Monnier <=
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e", Eli Zaretskii, 2015/11/06
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e", Artur Malabarba, 2015/11/06
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e", Eli Zaretskii, 2015/11/06
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e", Artur Malabarba, 2015/11/06
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e", Eli Zaretskii, 2015/11/06
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e", Eli Zaretskii, 2015/11/06
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e", Stefan Monnier, 2015/11/07
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e", Eli Zaretskii, 2015/11/07
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e", David Kastrup, 2015/11/08
- Re: [Emacs-diffs] master 29c360e: Ensure redisplay after "C-x C-e", Eli Zaretskii, 2015/11/08