[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#41984: 28.0.50; term.el's select-window call interacts badly with mo
From: |
Herman |
Subject: |
bug#41984: 28.0.50; term.el's select-window call interacts badly with modeline |
Date: |
Sun, 21 Jun 2020 17:43:09 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.2 |
I noticed that the call "(select-window win)" in term.el (in
term-emulate-terminal) interacts badly with doom modeline. This
select-window call confuses the modeline which is the active window, and
it causes the terminal's modeline displayed as active, as soon as the
terminal receives output, no matter which is the actual active window.
And the real active window is displayed with an inactive modeline.
I found if I modify this "(select-window win)" line to "(select-window
win t)", the bug doesn't happen anymore (I'm not sure whether it's a
correct fix in all regards or not).
Here's my full description of the issue, with screenshot:
https://github.com/seagle0128/doom-modeline/issues/355
Describe: When one window has an ansi-term, which constantly outputs
some text, and another window has the focus, then doom-modeline behaves
strange: the mode line of the focused window loses activity, and part of
ansi-term's mode line becomes active.
Use this init.el:
---------------------------------------------
(require 'package)
(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/"))
(add-to-list 'package-archives '("melpa-stable" .
"http://stable.melpa.org/packages/"))
(package-initialize)
(unless (package-installed-p 'use-package)
(package-refresh-contents)
(package-install 'use-package)
)
(setq use-package-always-ensure t)
(eval-when-compile (require 'use-package))
(use-package doom-modeline
:hook (after-init . doom-modeline-mode)
)
---------------------------------------------
Here are the repro steps:
* start emacs
* split windows with split-window-vertically
* execute ansi-term in one window, and enter this command into the
shell: while true ; do echo Ize ; sleep 2 ; done
* move the cursor to the other window
* notice that the other window's modeline get activity (colored as so,
as it supposed to be), but as soon as the terminal window has output, it
loses it (colored as inactive). And the terminal window will have a
weird colored modeline (half of it is active, the other half is inactive)
- bug#41984: 28.0.50; term.el's select-window call interacts badly with modeline,
Herman <=