Subject: bug#29854: 25.3; Eshell buffer editing gets slower as colored output grows

From: Pierre Neidhardt <[email-masked]>
Date: Tue, 26 Dec 2017 11:43:34 +0100

I originally reported this bug on Evil's issue tracker:

	https://github.com/emacs-evil/evil/issues/1006

The recipe with Evil is as follows:

- Start Emacs.

- `M-x eshell'.

- Insert lots of colored text. On Linux, you can call `dmesg -L=always' a few times.

- Go to normal state and press `x' wherever you can delete a character.

It should be possible to reproduce without Evil, I just could not figure
out a slow operation to replace the last step in the recipe.

According to the Evil maintainer, the issue comes from markers left
behind.

In fact, if I run `clone-buffer', the cloned buffer does not suffer from
this issue.  I think `clone-buffer' does not copy markers.

By the way, is there a way to scan for markers other than
`buffer-has-markers-at'?
Is there a way to remove them?

In GNU Emacs 25.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.22.26)
 of 2017-12-04 built on arojas
Windowing system distributor 'The X.Org Foundation', version 11.0.11905000
System Description:	Arch Linux

Configured using:
 'configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
 --localstatedir=/var --with-x-toolkit=gtk3 --with-xft --with-modules
 'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong
 -fno-plt' CPPFLAGS=-D_FORTIFY_SOURCE=2
 LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS
NOTIFY ACL GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 MODULES

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix
<#secure method=pgpmime mode=sign>

-- 
Pierre Neidhardt

You will gain money by an immoral action.