From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Markus Triska Newsgroups: gmane.emacs.bugs Subject: bug#65382: 27.1; Sometimes two cursors are unexpectedly shown Date: Sat, 19 Aug 2023 14:11:57 +0200 Message-ID: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="13954"; mail-complaints-to="usenet@ciao.gmane.io" To: 65382@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Aug 19 14:19:17 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1qXKvF-0003Oa-MP for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 19 Aug 2023 14:19:17 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qXKv1-0001df-Cd; Sat, 19 Aug 2023 08:19:03 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qXKv0-0001dU-2b for bug-gnu-emacs@gnu.org; Sat, 19 Aug 2023 08:19:02 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qXKuz-0000px-Ql for bug-gnu-emacs@gnu.org; Sat, 19 Aug 2023 08:19:01 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qXKv0-0005HG-Ok for bug-gnu-emacs@gnu.org; Sat, 19 Aug 2023 08:19:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Markus Triska Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 19 Aug 2023 12:19:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 65382 X-GNU-PR-Package: emacs X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.169244749220225 (code B ref -1); Sat, 19 Aug 2023 12:19:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 19 Aug 2023 12:18:12 +0000 Original-Received: from localhost ([127.0.0.1]:49651 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qXKuB-0005G8-Gg for submit@debbugs.gnu.org; Sat, 19 Aug 2023 08:18:11 -0400 Original-Received: from lists.gnu.org ([2001:470:142::17]:38396) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qXKu7-0005Fs-Mg for submit@debbugs.gnu.org; Sat, 19 Aug 2023 08:18:10 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qXKu1-0001aG-5T for bug-gnu-emacs@gnu.org; Sat, 19 Aug 2023 08:18:01 -0400 Original-Received: from [78.47.144.35] (helo=metalevel.at) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qXKty-0000Zw-C9 for bug-gnu-emacs@gnu.org; Sat, 19 Aug 2023 08:18:00 -0400 Original-Received: from mt-mbpro.localdomain (localhost [127.0.0.1]) by metalevel.at (Postfix) with ESMTP id 6947C9C751 for ; Sat, 19 Aug 2023 14:11:58 +0200 (CEST) Original-Received: by mt-mbpro.localdomain (Postfix, from userid 501) id 2908116DA8E1; Sat, 19 Aug 2023 14:11:57 +0200 (CEST) X-Host-Lookup-Failed: Reverse DNS lookup failed for 78.47.144.35 (failed) Received-SPF: none client-ip=78.47.144.35; envelope-from=triska@metalevel.at; helo=metalevel.at X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.1 / 5.0 requ) BAYES_00=-1.9, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_NONE=0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:267858 Archived-At: 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