Comint in the newest Unicode 2 CVS Emacs is broken. In the past, if
comint shows a completion window, this window will be automatically
deleted after the user types a complement supplied in it or just types
space. Now it won't be deleted even if the user types SPC directly,
contradicts to what is said in echo area: "Type space to flush".
Comparing the current source code and the latest working source code,
I found the following change for `comint-dynamic-list-completions' in
lisp/comint.el:
2945,2948c2980,2982
< (unless (eq first ?\s)
< (setq unread-command-events (listify-key-sequence key)))
< (unless (eq first ?\t)
< (set-window-configuration
comint-dynamic-list-completions-config))))))
---
(if (eq first ?\s)
(set-window-configuration
comint-dynamic-list-completions-config)
(setq unread-command-events (listify-key-sequence key)))))))
The above one is the correct code, the below one is the wrong code.
Note that these two code aren't equal. If the current source is
substituted with the above one, comint will act correctly.