[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#65382: 27.1; Sometimes two cursors are unexpectedly shown
From: |
Markus Triska |
Subject: |
bug#65382: 27.1; Sometimes two cursors are unexpectedly shown |
Date: |
Sat, 19 Aug 2023 14:11:57 +0200 |
To reproduce this issue, please save the forms below in the file
duplicate_cursor.el, and then open the file in Emacs with:
$ emacs -Q duplicate_cursor.el
Next, evaluate the forms in the file with:
M-x eval-buffer RET
The function `duplicate-cursor' is now defined. Invoke this function
with:
M-x duplicate-cursor RET
A new buffer called duplicated-cursor is now selected. So far,
everything works as intended, and a single cursor is shown in the
penultimate line of the window, as expected, at the position of point.
Now the issue: Invoke `duplicate-cursor' again, i.e., please do again:
M-x duplicate-cursor RET
Unexpectedly, two cursors now appear in the buffer duplicated-cursor:
One, as before, in the penultimate line of the window, and a second
cursor in the last line of the window. This second cursor is unexpected
and does not appear at the position of point, but one line below it.
If I then press C-p, a cursor is shown in the antepenultimate line of
the window. This works as expected. However, a second cursor is again
unexpectedly shown in the last line of the window. This second cursor
is also unexpectedly shown when I press C-p repeatedly from then on.
The expected situation in all cases above is that only a single cursor
is shown at all times, located at the position of point.
Please find below the forms I used to elicit this issue. Alternatively,
you can download duplicate_cursor.el from:
https://www.metalevel.at/ei/duplicate_cursor.el
Can you reproduce the issue with this information? Please let me know if
anything else is needed.
Thank you and all the best,
Markus
(defface duplicated-cursor
'((t
(:height 151)))
"Face for frame to illustrate the issue")
(set-frame-font (face-font 'duplicated-cursor))
(defun insert-height (h ascent)
;; use a PBM image, due to problems with XBM (see #36337)
(insert-image `(image :type pbm
:data ,(format "P1\n1 %s\n%s" h (make-string h ?0))
:ascent ,ascent) "t"))
(defun goto-last-window-line ()
(while (pos-visible-in-window-p)
(insert "\n"))
(delete-char -1))
(defun duplicate-cursor ()
(interactive)
(switch-to-buffer (get-buffer-create "duplicated-cursor"))
(erase-buffer)
(insert "\n\n")
(insert-height 160 80)
(let ((m (point-marker)))
(insert-height 125 'center)
(goto-last-window-line)
(redisplay)
(delete-region (point) m)
(insert-height 112 'center)
(insert "\n\n")
(insert-height 6 100)
(insert (propertize "\n"
'face '(:height 1)
'line-height t
'rear-nonsticky t))
(goto-last-window-line)
(previous-line)))
In GNU Emacs 27.1 (build 1, x86_64-apple-darwin15.3.0, X toolkit, Xaw scroll
bars)
of 2020-12-12 built on macbook
Windowing system distributor 'The X.Org Foundation', version 11.0.11502000
System Description: Mac OS X 10.11.3
Configured using:
'configure --prefix=/opt/local --disable-silent-rules --without-ns
--without-dbus --without-gconf --without-libotf --without-m17n-flt
--with-gmp --with-gnutls --with-json --with-xml2 --with-modules
--infodir /opt/local/share/info/emacs --with-x-toolkit=lucid
--without-xaw3d --without-imagemagick --with-xpm --with-jpeg
--with-tiff --with-gif --with-png --with-lcms2 --without-rsvg
--with-xft 'CFLAGS=-pipe -Os -arch x86_64'
CPPFLAGS=-I/opt/local/include 'LDFLAGS=-L/opt/local/lib
-Wl,-headerpad_max_install_names -lfreetype -lfontconfig -Wl,-no_pie
-arch x86_64''
Configured features:
XPM JPEG TIFF GIF PNG GSETTINGS GLIB NOTIFY KQUEUE ACL GNUTLS LIBXML2
FREETYPE HARFBUZZ XFT ZLIB TOOLKIT_SCROLL_BARS LUCID X11 XDBE XIM
MODULES THREADS JSON PDUMPER LCMS2 GMP
- bug#65382: 27.1; Sometimes two cursors are unexpectedly shown,
Markus Triska <=