exwm icon indicating copy to clipboard operation
exwm copied to clipboard

Buffer is read-only

Open RidaAyed opened this issue 6 years ago • 43 comments

I got the application running one time successfully. After several reboots, now I can't use it anymore.

The application (sonic-pi) reports some errors (jack) in it's log, though I doubt them being related to the exwm buffer read-only state (bottom left in screenshot below)

screenshot

Remark Can confirm that the application itself is ok. Disabled emacs and enabled xterm for testing.

.xinitrc excerpt

...
..
.
# exec dbus-launch --exit-with-session emacs
exec xterm -maximized

RidaAyed avatar Jun 09 '19 14:06 RidaAyed

Probably nothing to do with the application itself. I tried it myself and it behaved normally. How do you get the buffer read-only error? I guess other applications should also be affected.

ch11ng avatar Jun 16 '19 13:06 ch11ng

I am having a similar problem where the Firefox buffer occasionally becomes read only and I have to kill it and start it again.

Not sure if this happens in other applications. I have only seen it in Firefox but it does not happen very often and Firefox stands for almost all "non-emacs" buffers.

I am happy to send some logs if someone can direct me where to look for relevant ones.

emiljoha avatar Jul 04 '19 19:07 emiljoha

looking at the *Messages* buffer I see the following.

funcall-interactively: Buffer is read-only: #<buffer Firefox>

emiljoha avatar Jul 04 '19 19:07 emiljoha

@emiljoha

I am having a similar problem where the Firefox buffer occasionally becomes read only and I have to kill it and start it again.

What if you hide & show it again (by switching to another buffer temporarily and then switch back)?

I am happy to send some logs if someone can direct me where to look for relevant ones.

Thanks! It'd likely help. Please check Step 4 in https://github.com/ch11ng/exwm/wiki#how-to-report-a-bug.

ch11ng avatar Jul 07 '19 02:07 ch11ng

@ch11ng

What if you hide & show it again (by switching to another buffer temporarily and then switch back)?

I do not think that solved it but will check to make sure the next time it happens.

It'd likely help. Please check Step 4 in https://github.com/ch11ng/exwm/wiki#how-to-report-a-bug.

Nice with a "how to report bug" wiki entry. Have enabled debug output and will try and find the relevant parts next time it happens.

It happens quite often but now when I actually want it to happen it does not. Must try and figure out how to reproduce this...

emiljoha avatar Jul 07 '19 15:07 emiljoha

So it happened again.

What if you hide & show it again (by switching to another buffer temporarily and then switch back)?

Switching workspace did actually make the Firefox bufffer editable again.

emiljoha avatar Jul 12 '19 19:07 emiljoha

@emiljoha Did you manage to get a debug log?

ch11ng avatar Jul 14 '19 07:07 ch11ng

I experience this issue regularly. What works to make the buffer take my input again is to press the char/line mode toggle button in the modeline a bunch of times. After two or three toggles, the buffer goes back to being editable.

In my case (And I think this may be the case too for the original OP) this may have something to do with the way evil's normal/insert modes interacts with char/line modes in exwm. If anyone has had this issue with plain emacs (no evil-mode) my suspicion may be wrong.

Anyway, I will try to get a log once I get the chance. But the issue is not consistent enough for me so it may take some time until I can reliably replicate it.

setzer22 avatar Jul 14 '19 07:07 setzer22

@emiljoha

Did you manage to get a debug log?

Unfortunately not. But will continue to try and reproduce it.

If anyone has had this issue with plain emacs (no evil-mode) my suspicion may be wrong.

@setzer22 I am not using evil-mode....

emiljoha avatar Jul 14 '19 20:07 emiljoha

I'm also affected by buffer is read-only. Here is how it reproduces for me:

  • open terminal
  • call emacsclient -n somefile, new buffer will replace the terminal in current window
  • close the file buffer, terminal window will become visible again
  • terminal window is visible but not focused, input events lead to buffer is read-only

In *XELB-DEBUG* you can see that exwm-input--update-focus isn't called.

Log
exwm-layout--refresh:	frame=#<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0>
exwm-layout--refresh-workspace:	Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0>
exwm-layout--set-client-list-stacking:	
exwm-layout--refresh:	frame=#<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0>
exwm-layout--refresh-workspace:	Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0>
exwm-layout--set-client-list-stacking:	
exwm-input--update-focus:	focus-window=#<window 784 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus:	Focus on #<window 784 on *XELB-DEBUG*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-ButtonPress:	major-mode=fundamental-mode buffer=*XELB-DEBUG*
exwm-workspace-switch:	
exwm-layout--show:	Show #x3c00005 in #<window 566 on xterm<2>>
exwm--set-geometry:	Setting #x3c00005 to 1920x1062+0+0
exwm-layout--set-state:	id=#x3c00005
exwm-input--on-buffer-list-update:	current-buffer=#<buffer xterm<2>> selected-window=#<window 566 on xterm<2>>
exwm-systemtray--on-workspace-switch:	
exwm-systemtray--refresh:	
exwm-input--on-buffer-list-update:	current-buffer=#<buffer xterm<2>> selected-window=#<window 566 on xterm<2>>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-input--update-focus:	focus-window=#<window 566 on xterm<2>> focus-buffer=xterm<2>
exwm-input--update-focus:	Set focus on #x3c00005
exwm-input--set-focus:	id=#x3c00005
exwm-input--update-timestamp:	
exwm--on-PropertyNotify:	atom=_TIME(497)
exwm-input--on-PropertyNotify:	
exwm-input--set-active-window:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--on-KeyPress-line-mode:	(65507 . 0)
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--on-KeyPress-line-mode:	(112 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--on-KeyPress-line-mode:	(109 . 3)
exwm-input--mimic-read-event:	
exwm-input--cache-event:	13
exwm-input-send-simulation-key:	
exwm-input--fake-key:	id=#x3c00005 event=return keycode
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm-input--on-buffer-list-update:	current-buffer=#<buffer auto.org> selected-window=#<window 566 on auto.org>
exwm-layout--refresh:	frame=#<frame auto.org – Doom Emacs 0x5638bedf7f80>
exwm-layout--refresh-workspace:	Refresh workspace #<frame auto.org – Doom Emacs 0x5638bedf7f80>
exwm-layout--hide:	Hide #x3c00005
exwm-layout--set-state:	id=#x3c00005
exwm-layout--set-client-list-stacking:	
exwm-layout--refresh:	frame=#<frame auto.org – Doom Emacs 0x5638bedf7f80>
exwm-layout--refresh-workspace:	Refresh workspace #<frame auto.org – Doom Emacs 0x5638bedf7f80>
exwm-layout--set-client-list-stacking:	
exwm-input--update-focus:	focus-window=#<window 566 on auto.org> focus-buffer=auto.org
exwm-input--update-focus:	Focus on #<window 566 on auto.org>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x3c00005
exwm-input--on-PropertyNotify:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-layout--refresh:	frame=#<frame xterm<2> – Doom Emacs 0x5638bedf7f80>
exwm-layout--refresh-workspace:	Refresh workspace #<frame xterm<2> – Doom Emacs 0x5638bedf7f80>
exwm-layout--show:	Show #x3c00005 in #<window 566 on xterm<2>>
exwm--set-geometry:	Setting #x3c00005 to 1920x1062+0+0
exwm-layout--set-state:	id=#x3c00005
exwm-layout--set-client-list-stacking:	
exwm-layout--refresh:	frame=#<frame xterm<2> – Doom Emacs 0x5638bedf7f80>
exwm-layout--refresh-workspace:	Refresh workspace #<frame xterm<2> – Doom Emacs 0x5638bedf7f80>
exwm-layout--show:	Show #x3c00005 in #<window 566 on xterm<2>>
exwm--set-geometry:	Setting #x3c00005 to 1920x1062+0+0
exwm-layout--set-state:	id=#x3c00005
exwm-layout--set-client-list-stacking:	
exwm-manage--on-MapNotify:	id=#x3c00005
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=xterm<2>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 784 on *XELB-DEBUG*>
exwm-input--update-focus:	focus-window=#<window 784 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus:	Focus on #<window 784 on *XELB-DEBUG*>
exwm-input--update-focus:	Switching to #<window 784 on *XELB-DEBUG*>'s workspace #<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0> (#<frame *XELB-DEBUG* – Doom Emacs 0x5638b5b5f0c0>)

sarg avatar Jul 30 '19 10:07 sarg

@sarg Thanks for the log. It seemed for some reason exwm-input--on-buffer-list-update ignored the event. Could you insert a log into the function just like the following?

 
 (defun exwm-input--on-buffer-list-update ()
   "Run in `buffer-list-update-hook' to track input focus."
+  (exwm--log)
   (when (and (not (eq this-command #'handle-switch-frame))
              (not exwm-input--skip-buffer-list-update)
              (not (exwm-workspace--client-p))

If the result contains a line exwm-input--on-buffer-list-update: without a line exwm-input--on-buffer-list-update: current-buffer=... following then it is the problem. But I'm not sure which condition would block it. From your report it's unlikely the first three.

ch11ng avatar Aug 05 '19 14:08 ch11ng

I have logged all the condition values. What I see is that exwm-input--on-buffer-list-update isn't called at all. When I close emacs buffer and X buffer becomes visible in the same window - it doesn't receive the focus. Even when I press mouse button in the window it doesn't receive focus. What helps is to move mouse pointer to another window and back and then pressing mouse button.

Log
exwm-layout--refresh:	frame=#<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--show:	Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry:	Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state:	id=#x4a00005
exwm-layout--set-client-list-stacking:	
exwm-layout--refresh:	frame=#<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--show:	Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry:	Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state:	id=#x4a00005
exwm-layout--set-client-list-stacking:	
exwm-input--update-focus:	focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus:	Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:	
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-ButtonPress:	major-mode=fundamental-mode buffer=*XELB-DEBUG*
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer xterm<5>> selected-window=#<window 320 on xterm<5>>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--update-focus:	focus-window=#<window 320 on xterm<5>> focus-buffer=xterm<5>
exwm-input--update-focus:	Set focus on #x4a00005
exwm-input--set-focus:	id=#x4a00005
exwm-input--update-timestamp:	
exwm--on-PropertyNotify:	atom=_TIME(497)
exwm-input--on-PropertyNotify:	
exwm-input--set-active-window:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(65507 . 0)
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(112 . 3)
exwm-input--mimic-read-event:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(112 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(112 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(109 . 3)
exwm-input--mimic-read-event:	
exwm-input--cache-event:	13
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-input--on-buffer-list-update:	conds (t t t t nil)
exwm-input--on-buffer-list-update:	conds (t t t nil t)
exwm-input--on-buffer-list-update:	conds (t t t t nil)
exwm-input--on-buffer-list-update:	conds (t t t nil t)
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(65507 . 0)
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(119 . 3)
exwm-input--mimic-read-event:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(119 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(119 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(99 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(99 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(100 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(65507 . 0)
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(109 . 3)
exwm-input--mimic-read-event:	
exwm-input--cache-event:	13
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(101 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(65288 . 1)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(65293 . 0)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(101 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(109 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(32 . 0)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(97 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(117 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(116 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(111 . 3)
exwm-input--mimic-read-event:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(46 . 1)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(65507 . 0)
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(104 . 3)
exwm-input--mimic-read-event:	
exwm-input--cache-event:	8
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(104 . 3)
exwm-input--mimic-read-event:	
exwm-input--cache-event:	8
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(46 . 1)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(65507 . 0)
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(104 . 3)
exwm-input--mimic-read-event:	
exwm-input--cache-event:	8
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(65288 . 1)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(111 . 3)
exwm-input--mimic-read-event:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(114 . 3)
exwm-input--mimic-read-event:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(103 . 3)
exwm-input--mimic-read-event:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(65293 . 0)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-buffer-list-update:	conds (t t t nil nil)
exwm-input--on-buffer-list-update:	conds (t t t nil nil)
exwm-input--on-buffer-list-update:	conds (t t t nil nil)
exwm-input--on-buffer-list-update:	conds (t t t nil t)
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-input--on-buffer-list-update:	conds (t t t nil t)
exwm-input--on-buffer-list-update:	conds (t t t nil nil)
exwm-input--on-buffer-list-update:	conds (t t t nil t)
exwm-input--on-buffer-list-update:	conds (t t t nil nil)
exwm-input--on-buffer-list-update:	conds (t t t nil t)
exwm-input--on-buffer-list-update:	conds (t t t nil nil)
exwm-input--on-buffer-list-update:	conds (t t t nil t)
exwm-input--on-buffer-list-update:	conds (t t t nil t)
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer auto.org> selected-window=#<window 320 on auto.org>
exwm-layout--refresh:	frame=#<frame auto.org – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame auto.org – Doom Emacs 0x55795589e980>
exwm-layout--hide:	Hide #x4a00005
exwm-layout--set-state:	id=#x4a00005
exwm-layout--set-client-list-stacking:	
exwm-layout--refresh:	frame=#<frame auto.org – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame auto.org – Doom Emacs 0x55795589e980>
exwm-layout--set-client-list-stacking:	
exwm-input--update-focus:	focus-window=#<window 320 on auto.org> focus-buffer=auto.org
exwm-input--update-focus:	Focus on #<window 320 on auto.org>
exwm-input--set-active-window:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-layout--refresh:	frame=#<frame xterm<5> – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame xterm<5> – Doom Emacs 0x55795589e980>
exwm-layout--show:	Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry:	Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state:	id=#x4a00005
exwm-layout--set-client-list-stacking:	
exwm-layout--refresh:	frame=#<frame xterm<5> – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame xterm<5> – Doom Emacs 0x55795589e980>
exwm-layout--show:	Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry:	Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state:	id=#x4a00005
exwm-layout--set-client-list-stacking:	
exwm-manage--on-MapNotify:	id=#x4a00005
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
exwm-input--update-focus:	focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus:	Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
exwm-input--update-focus:	focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus:	Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-ButtonPress:	major-mode=fundamental-mode buffer=*XELB-DEBUG*
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer xterm<5>> selected-window=#<window 320 on xterm<5>>
exwm-input--mimic-read-event:	
exwm-input--on-ButtonPress-line-mode:	down-mouse-1
exwm-input--update-focus:	focus-window=#<window 320 on xterm<5>> focus-buffer=xterm<5>
exwm-input--update-focus:	Set focus on #x4a00005
exwm-input--set-focus:	id=#x4a00005
exwm-input--update-timestamp:	
exwm--on-PropertyNotify:	atom=_TIME(497)
exwm-input--on-PropertyNotify:	
exwm-input--set-active-window:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(97 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(97 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(97 . 3)
exwm-input--mimic-read-event:	
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(65507 . 0)
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=xterm<5>
exwm-input--on-KeyPress-line-mode:	(99 . 3)
exwm-input--mimic-read-event:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SET-IC-FOCUS
exwm--on-PropertyNotify:	atom=WM_HINTS(35)
exwm--update-hints:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	FORWARD-EVENT
exwm-xim--make-request:	
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	SYNC-REPLY
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_NAME(39)
exwm--update-ctext-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=_NET_WM_NAME(339)
exwm--update-utf8-title:	#x4a00005
exwm-input--on-PropertyNotify:	
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
exwm-input--update-focus:	focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus:	Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-xim--on-ClientMessage:	
exwm-xim--on-request:	
exwm-xim--on-request:	UNSET-IC-FOCUS
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
exwm-input--update-focus:	focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus:	Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer  *Minibuf-1*> selected-window=#<window 12 on  *Minibuf-1*>
exwm-layout--on-minibuffer-setup:	
exwm-input--update-focus:	focus-window=#<window 12 on  *Minibuf-1*> focus-buffer= *Minibuf-1*
exwm-input--update-focus:	Focus on #<window 12 on  *Minibuf-1*>
exwm-input--set-active-window:	
exwm-layout--refresh:	frame=#<frame  *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame  *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--show:	Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry:	Setting #x4a00005 to 959x824+0+0
exwm-layout--set-state:	id=#x4a00005
exwm-layout--set-client-list-stacking:	
exwm-layout--refresh:	frame=#<frame  *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame  *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--show:	Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry:	Setting #x4a00005 to 959x824+0+0
exwm-layout--set-state:	id=#x4a00005
exwm-layout--set-client-list-stacking:	
exwm-layout--refresh:	frame=#<frame  *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame  *Minibuf-1* – Doom Emacs 0x55795589e980>
exwm-layout--show:	Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry:	Setting #x4a00005 to 959x824+0+0
exwm-layout--set-state:	id=#x4a00005
exwm-layout--set-client-list-stacking:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-randr--on-ConfigureNotify:	
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>
exwm-layout--refresh:	frame=#<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--show:	Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry:	Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state:	id=#x4a00005
exwm-layout--set-client-list-stacking:	
exwm-layout--refresh:	frame=#<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--refresh-workspace:	Refresh workspace #<frame *XELB-DEBUG* – Doom Emacs 0x55795589e980>
exwm-layout--show:	Show #x4a00005 in #<window 320 on xterm<5>>
exwm--set-geometry:	Setting #x4a00005 to 959x1062+0+0
exwm-layout--set-state:	id=#x4a00005
exwm-layout--set-client-list-stacking:	
exwm-input--update-focus:	focus-window=#<window 478 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus:	Focus on #<window 478 on *XELB-DEBUG*>
exwm-input--set-active-window:	
exwm-randr--on-ConfigureNotify:	
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-PropertyNotify:	atom=WM_STATE(384)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(384)
exwm-input--on-PropertyNotify:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer  *Minibuf-1*> selected-window=#<window 12 on  *Minibuf-1*>
exwm-layout--on-minibuffer-setup:	
exwm-input--update-focus:	focus-window=#<window 12 on  *Minibuf-1*> focus-buffer= *Minibuf-1*
exwm-input--update-focus:	Focus on #<window 12 on  *Minibuf-1*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-buffer-list-update:	conds (t t t t nil)
exwm-input--on-buffer-list-update:	conds (t t t nil t)
exwm-input--on-buffer-list-update:	conds (t t t t nil)
exwm-input--on-buffer-list-update:	conds (t t t nil t)
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer  *Minibuf-1*> selected-window=#<window 12 on  *Minibuf-1*>
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer  *Minibuf-1*> selected-window=#<window 12 on  *Minibuf-1*>
exwm-input--update-focus:	focus-window=#<window 12 on  *Minibuf-1*> focus-buffer= *Minibuf-1*
exwm-input--update-focus:	Focus on #<window 12 on  *Minibuf-1*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(331)
exwm-input--on-buffer-list-update:	conds (t t t t t)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 478 on *XELB-DEBUG*>

sarg avatar Aug 05 '19 15:08 sarg

What I see is that exwm-input--on-buffer-list-update isn't called at all.

Can't find it in the log either. Was the buffer killed normally? Otherwise I can't see why the hook was not run.

Even when I press mouse button in the window it doesn't receive focus.

This is because the Emacs window is already 'selected'.

ch11ng avatar Aug 05 '19 15:08 ch11ng

Ugh, 3 hours debugging. Found the advice (https://github.com/hlissner/doom-emacs/blob/aa64cf94266a331c1fbb6b80b76e4b53bb6c8a9f/core/autoload/buffers.el#L279) that breaks things. Reported to author. Maybe my case isn't really related with topicstarter's.

sarg avatar Aug 05 '19 20:08 sarg

This sounds like heroic debugging @sarg, thank you very much. Indeed, resetting buffer-list-update-hook utterly breaks EXWM. I wonder whether that's the origin of all of our mysterious read-only buffer issues.

medranocalvo avatar Aug 09 '19 07:08 medranocalvo

@ch11ng Finally found a way to reproduce this!

After reading issue #552 and especially the suggesting that:

Perhaps it has something to do with the buffer being displayed somewhere else.

  1. Open the same *terminal* buffer on workspace 0 and 1.
  2. Split workspace 0 with c-x 3 and place the *scratch* buffer (or any other buffer except *terminal*) to the right.
  3. In the left slot change the buffer to Firefox.
  4. When trying to type no input is sent the the buffer and i get the message funcall-interactively: Buffer is read-only: #<buffer Firefox>
Debug output
exwm-input--update-focus:	focus-window=#<window 15 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
exwm-input--update-focus:	Focus on #<window 15 on *XELB-DEBUG*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(340)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *terminal*> selected-window=#<window 13 on *terminal*>
exwm-input--update-focus:	focus-window=#<window 13 on *terminal*> focus-buffer=*terminal*
exwm-input--update-focus:	Focus on #<window 13 on *terminal*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(340)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer  *Minibuf-1*> selected-window=#<window 4 on  *Minibuf-1*>
exwm-layout--on-minibuffer-setup:	
exwm-input--update-focus:	focus-window=#<window 4 on  *Minibuf-1*> focus-buffer= *Minibuf-1*
exwm-input--update-focus:	Focus on #<window 4 on  *Minibuf-1*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(340)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *terminal*> selected-window=#<window 13 on *terminal*>
exwm-layout--refresh:	frame=#<frame  *Minibuf-1* 0x4b280b0>
exwm-layout--refresh-workspace:	Refresh workspace #<frame  *Minibuf-1* 0x4b280b0>
exwm-layout--set-client-list-stacking:	
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *terminal*> selected-window=#<window 13 on *terminal*>
exwm-layout--refresh:	frame=#<frame  *Minibuf-1* 0x4b280b0>
exwm-layout--refresh-workspace:	Refresh workspace #<frame  *Minibuf-1* 0x4b280b0>
exwm-layout--show:	Show #x1200003 in #<window 13 on Firefox>
exwm--set-geometry:	Setting #x1200003 to 960x1030+0+0
exwm-layout--set-state:	id=#x1200003
exwm-layout--set-client-list-stacking:	
exwm-input--on-buffer-list-update:	current-buffer=#<buffer Firefox> selected-window=#<window 13 on Firefox>
exwm-input--on-buffer-list-update:	current-buffer=#<buffer *terminal*> selected-window=#<window 5 on *terminal*>
exwm-manage--on-MapNotify:	id=#x1200003
exwm--on-PropertyNotify:	atom=WM_STATE(431)
exwm--on-PropertyNotify:	Unhandled: WM_STATE(431)
exwm-input--on-PropertyNotify:	
exwm-input--update-focus:	focus-window=#<window 5 on *terminal*> focus-buffer=*terminal*
exwm-input--on-buffer-list-update:	current-buffer=#<buffer  *Minibuf-1*> selected-window=#<window 4 on  *Minibuf-1*>
exwm-layout--on-minibuffer-setup:	
exwm-input--update-focus:	focus-window=#<window 4 on  *Minibuf-1*> focus-buffer= *Minibuf-1*
exwm-input--update-focus:	Focus on #<window 4 on  *Minibuf-1*>
exwm-input--set-active-window:	
exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(340)
exwm-input--on-buffer-list-update:	current-buffer=#<buffer Firefox> selected-window=#<window 13 on Firefox>
exwm-layout--refresh:	frame=#<frame  *Minibuf-1* 0x4b280b0>
exwm-layout--refresh-workspace:	Refresh workspace #<frame  *Minibuf-1* 0x4b280b0>
exwm-layout--show:	Show #x1200003 in #<window 13 on Firefox>
exwm--set-geometry:	Setting #x1200003 to 960x1030+0+0
exwm-layout--set-state:	id=#x1200003
exwm-layout--set-client-list-stacking:	

emiljoha avatar Aug 10 '19 11:08 emiljoha

@emiljoha Unfortunately I was not able to reproduce the problem according to your recipe. Nevertheless I found a case where a *temp* buffer can cause the problem. I've pushed a fix (a1cf0d9b85e1d1d4f3b50a9d51980688b7b816df). Please check if you can reproduce the problem with it.

ch11ng avatar Aug 11 '19 16:08 ch11ng

Hi, I've got an issue that I believe may be related. If I have two or more X windows shown at the same time, focus doesn't transfer when I use the windmove commands or other-window. If I windmove again to a non-existent window (raising that "No window left from selected window" error), focus is updated.

I've attached a log file of the following situation:

  • Start with a horizontal split of a Firefox window on the right, and a kitty window on the left.
  • windmove-left to select the kitty window.
  • Press a few keys.
  • windmove-right to select the Firefox window.
  • Press a few keys.

Debug output

TsarFox avatar Aug 31 '19 18:08 TsarFox

@TsarFox From your debug log I noticed the input focus always stayed on Firefox so this is a different issue and perhaps caused by some unusual config. But anyway:

  • How do you invoke the windmove commands? It seems you've made some keybindings.
  • Do you have things like mouse-autoselect-window or focus-follows-mouse turned on?

ch11ng avatar Sep 01 '19 09:09 ch11ng

@TsarFox From your debug log I noticed the input focus always stayed on Firefox so this is a different issue and perhaps caused by some unusual config. But anyway:

Ah, okay. I can open another issue if necessary.

* How do you invoke the `windmove` commands? It seems you've made some keybindings.
;; I have some wrapper functions for another machine of mine that aren't defined on my laptop. 
(when (and (not (fboundp #'my-windmove-left))
           (not (fboundp #'my-windmove-right)))
  (defalias #'my-windmove-left #'windmove-left)
  (defalias #'my-windmove-right #'windmove-right))

(setq exwm-input-global-keys
        ...
        ([?\s-a] . my-windmove-left)
        ([?\s-d] . my-windmove-right)
        ([?\s-w] . windmove-up)
        ([?\s-s] . windmove-down)
        ...
* Do you have things like `mouse-autoselect-window` or `focus-follows-mouse` turned on?

No, both are nil.

TsarFox avatar Sep 01 '19 12:09 TsarFox

@TsarFox Perhaps you had them working in char-mode? What if putting them in line-mode and avoiding switching window with global keys?

ch11ng avatar Sep 01 '19 15:09 ch11ng

@TsarFox Perhaps you had them working in char-mode? What if putting them in line-mode and avoiding switching window with global keys?

Same behavior with both windows in line-mode, and the issue persists even when invoking other-window from execute-extended-command with M-x.

TsarFox avatar Sep 01 '19 23:09 TsarFox

@TsarFox I can confirm windmove works fine here. It does no magic but calls select-window in the end so I can't see why it shouldn't work. Please check your configuration, perhaps by disabling some features, to see if there is anything preventing EXWM from updating input focus.

ch11ng avatar Sep 08 '19 02:09 ch11ng

I spent this morning doing some init.el bisecting and discovered that the issue was from an :eval form I had foolishly put in my mode-line-format. Whoops. Sorry about that.

TsarFox avatar Sep 08 '19 16:09 TsarFox

@ch11ng Sorry for being so slow. Life happened...

Unfortunately I can still reproduce the issue on a1cf0d9 and on master cb96078.

emiljoha avatar Sep 09 '19 18:09 emiljoha

@ch11ng Lets see if I can make the steps to reproduce even better so that you can reproduce it.

  1. Checkout master (cb96078) of exwm, and master "599ef70 Add timestamps to XELB debug logs" of xelb.

  2. Have this as the only content of ~/.emacs

(add-to-list 'load-path "~/.emacs.d/xelb/")
(add-to-list 'load-path "~/.emacs.d/exwm/")
(require 'exwm)
(require 'exwm-config)
(exwm-config-default)
  1. reboot computer.

  2. Open firefox.

(start-process-shell-command "firefox" nil "firefox")
  1. Run the following code.
(term "/bin/bash")
(exwm-workspace-switch-create 1)
(switch-to-buffer "*terminal*")
(exwm-workspace-switch-create 0)
(split-window-right)
(other-window 1)
(switch-to-buffer "*scratch*")
(other-window 1)
(switch-to-buffer "Firefox")
  1. Test to write in the Firefox buffer, it will work fine.

  2. Switch to buffer with the code in step 5 and run it once again.

  3. Firefox buffer is read only.

emiljoha avatar Sep 09 '19 20:09 emiljoha

@emiljoha Thanks for the recipe but perhaps more details are required (sorry but I failed to reproduce it again):

  • What is the state before opening Firefox (e.g. how many workspaces and on which workspace)? I was trying with one workspace initially.
  • How should I run the code, including the line to open Firefox? You mentioned the code was in a buffer, should I switch to it right in the window displaying Firefox (which I was trying), or switch to another workspace?

ch11ng avatar Sep 13 '19 15:09 ch11ng

@ch11ng Thank you for taking the time to try and reproduce this issue. Maybe it is not possible to reproduce on your system. What distro are you running? I am running a openSUSE TW.

  • I saved the code snippets above in a file.
  • The only thing I did before opening firefox was to open that file.
  • I think the number of workspaces was 4, or what the default config states.
  • I ran eveything from workspace 1.
  • Switched back to the file (as single buffer on workspace 1) when I needed to run the other commands.

Side Note: M-x read-only-mode also make the buffer not read-only.

emiljoha avatar Sep 14 '19 07:09 emiljoha

@emiljoha I'm on Debian Sid but I don't use the Emacs or any Elisp package shipped with my distro. Usually I build and develop on the master branch, but I also keep builds of stable branches down to emacs-24 for testing purpose. If you're unsure whether there is any package installed by your distro, you may simply start Emacs with the --no-site-file and --no-site-lisp options.

Also, could you prepare debug logs with (exwm-debug)? They may reveal something.

Side Note: M-x read-only-mode also make the buffer not read-only.

exwm-mode internally enables read-only-mode. This basically revert that but doesn't change the fact that the input focus is wrong.

ch11ng avatar Sep 14 '19 12:09 ch11ng

@ch11ng I hope this debug output can help.

Debug output when reproducing read only issue
[00:03:13] exwm-input--on-buffer-list-update:	current-buffer=#<buffer Firefox> selected-window=#<window 14 on Firefox>
[00:03:13] exwm-input--on-echo-area-dirty:	
[00:03:13] exwm-input--update-focus:	focus-window=#<window 14 on Firefox> focus-buffer=Firefox
[00:03:13] exwm-input--update-focus:	Set focus on #x1200029
[00:03:13] exwm-input--set-focus:	id=#x1200029
[00:03:13] exwm-input--update-timestamp:	
[00:03:13] exwm--on-PropertyNotify:	atom=_TIME(496)
[00:03:13] exwm-input--on-PropertyNotify:	
[00:03:13] exwm-input--set-active-window:	
[00:03:13] exwm-input--on-echo-area-dirty:	
[00:03:13] exwm--on-PropertyNotify:	atom=WM_HINTS(35)
[00:03:13] exwm--update-hints:	#x1200029
[00:03:13] exwm-input--on-PropertyNotify:	
[00:03:16] exwm-input--on-ButtonPress:	major-mode=exwm-mode buffer=Firefox
[00:03:16] exwm-input--mimic-read-event:	
[00:03:16] exwm-input--on-ButtonPress-line-mode:	down-mouse-1
[00:03:16] exwm--on-PropertyNotify:	atom=_NET_WM_USER_TIME(374)
[00:03:16] exwm-input--on-PropertyNotify:	
[00:03:16] exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=Firefox
[00:03:16] exwm-input--on-KeyPress-line-mode:	(100 . 131)
[00:03:16] exwm-input--mimic-read-event:	
[00:03:16] exwm--on-PropertyNotify:	atom=_NET_WM_USER_TIME(374)
[00:03:16] exwm-input--on-PropertyNotify:	
[00:03:16] exwm--on-ClientMessage:	atom=_NET_WM_STATE(351)
[00:03:17] exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=Firefox
[00:03:17] exwm-input--on-KeyPress-line-mode:	(65288 . 141)
[00:03:17] exwm-input--mimic-read-event:	
[00:03:17] exwm--on-PropertyNotify:	atom=_NET_WM_USER_TIME(374)
[00:03:17] exwm-input--on-PropertyNotify:	
[00:03:17] exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=Firefox
[00:03:17] exwm-input--on-KeyPress-line-mode:	(65507 . 1)
[00:03:17] exwm--on-PropertyNotify:	atom=_NET_WM_USER_TIME(374)
[00:03:17] exwm-input--on-PropertyNotify:	
[00:03:17] exwm-input--on-KeyPress:	major-mode=exwm-mode buffer=Firefox
[00:03:17] exwm-input--on-KeyPress-line-mode:	(103 . 131)
[00:03:17] exwm-input--mimic-read-event:	
[00:03:17] exwm-input--cache-event:	7
[00:03:17] exwm-input-send-simulation-key:	
[00:03:17] exwm-input--fake-key:	id=#x1200029 event=escape keycode
[00:03:17] exwm-input--on-echo-area-dirty:	
[00:03:17] exwm-manage--on-UnmapNotify:	id=#x120007a
[00:03:17] exwm-manage--unmanage-window:	Unmanage #x120007a (buffer: nil, widthdraw: t)
[00:03:18] exwm-input--on-buffer-list-update:	current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 16 on *XELB-DEBUG*>
[00:03:18] exwm-input--on-echo-area-dirty:	
[00:03:18] exwm-input--update-focus:	focus-window=#<window 16 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
[00:03:18] exwm-input--update-focus:	Focus on #<window 16 on *XELB-DEBUG*>
[00:03:18] exwm-input--set-active-window:	
[00:03:18] exwm-input--on-echo-area-dirty:	
[00:03:18] exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(340)
[00:03:19] exwm-input--on-buffer-list-update:	current-buffer=#<buffer *XELB-DEBUG*> selected-window=#<window 16 on *XELB-DEBUG*>
[00:03:19] exwm-input--on-echo-area-dirty:	
[00:03:19] exwm-input--update-focus:	focus-window=#<window 16 on *XELB-DEBUG*> focus-buffer=*XELB-DEBUG*
[00:03:19] exwm-input--update-focus:	Focus on #<window 16 on *XELB-DEBUG*>
[00:03:19] exwm-input--set-active-window:	
[00:03:19] exwm--on-ClientMessage:	atom=_NET_ACTIVE_WINDOW(340)

emiljoha avatar Sep 20 '19 17:09 emiljoha