mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-29 00:31:01 -08:00
em-smart was forcibly re-displaying the screen upwards of 500 times per screen of output. This caused the Eshell to feel quite slow when the module was in use. By using fewer hooks and never explicitly calling 'redisplay' (which was unnecessary) the performance issues go away (bug#57367). lisp/eshell/em-smart.el: (em-smart-unload-hook, eshell-smart-unload-hook): Remove 'eshell-smart-scroll' instead of the now deleted 'eshell-refresh-windows'. (eshell-smart-displayed, eshell-currently-handling-window) (eshell-refresh-windows): Delete. (eshell-smart-scroll-window): Rename to 'eshell-smart-scroll-windows' and add a bunch of logic originally from 'eshell-refresh-windows'. (eshell-smart-initialize): Don't add a hook onto 'window-scroll-functions'. Replace 'eshell-refresh-windows' with 'eshell-smart-scroll-windows'. (eshell-smart-display-setup): Don't refresh windows. (eshell-smart-redisplay): Rename to 'eshell-smart-scroll'. Delete 'eobp' case. |
||
|---|---|---|
| .. | ||
| em-alias.el | ||
| em-banner.el | ||
| em-basic.el | ||
| em-cmpl.el | ||
| em-dirs.el | ||
| em-elecslash.el | ||
| em-extpipe.el | ||
| em-glob.el | ||
| em-hist.el | ||
| em-ls.el | ||
| em-pred.el | ||
| em-prompt.el | ||
| em-rebind.el | ||
| em-script.el | ||
| em-smart.el | ||
| em-term.el | ||
| em-tramp.el | ||
| em-unix.el | ||
| em-xtra.el | ||
| esh-arg.el | ||
| esh-cmd.el | ||
| esh-ext.el | ||
| esh-io.el | ||
| esh-mode.el | ||
| esh-module.el | ||
| esh-opt.el | ||
| esh-proc.el | ||
| esh-util.el | ||
| esh-var.el | ||
| eshell.el | ||