Received: (at 67604) by debbugs.gnu.org; 9 May 2025 17:50:07 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 09 13:50:07 2025 Received: from localhost ([127.0.0.1]:39341 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uDRrL-0002Qe-7Z for submit <at> debbugs.gnu.org; Fri, 09 May 2025 13:50:07 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51206) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uDRrH-0002Py-89 for 67604 <at> debbugs.gnu.org; Fri, 09 May 2025 13:50:04 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1uDRrB-0000jD-R7; Fri, 09 May 2025 13:49:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=gq+b6bzrQT1oqQhty+Cev2ey5shLcI8YZYAwC+cIKSA=; b=V+X/aTV2QqNS sATcR/VNrPEcOKl0/YsVH9vk7sIXOQ/VF1OFWIArTmCTaf6J90FrGuy4xnDXMEOgZrN4YQYdVP39e 487ypAlnXGyDTyVH8/uYniIs0wK3512yV2++ibDPoU4lLXWY1051yLbwHuoc0PA8YXoxSEnJRrYpB x5bjbuptVtDNZZw83EPMnoS6DXIVtOek8OPCJQhY3F0rMbDBiFHKBoBoKXA8PfBftf0yfUH2KiHdJ vmt/hdjJ2mBuO/f1/RPOrD2AS3y+YUmb9ofQh1jzsXgIO+fkSf6AHZOqQ9WLmC2ApIvd9hgyCWSM8 JauibYBWDNuezoHykdrHsA==; Date: Fri, 09 May 2025 20:49:54 +0300 Message-Id: <86a57ld67x.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: jdtsmith@HIDDEN In-Reply-To: <86bjs1daim.fsf@HIDDEN> (message from Eli Zaretskii on Fri, 09 May 2025 19:17:05 +0300) Subject: Re: bug#67604: Motion problems with inline images References: <86plgkfx5o.fsf@HIDDEN> <D4876E07-5C38-4730-BAE0-29975E7AA385@HIDDEN> <86bjs1daim.fsf@HIDDEN> X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > Cc: 67604 <at> debbugs.gnu.org > Date: Fri, 09 May 2025 19:17:05 +0300 > From: Eli Zaretskii <eliz@HIDDEN> > > I'm not yet convinced, since vertical-motion does work in general when > images and stretch glyphs are around. Btw, you seem to be working on the emacs-30 branch, or close to that. Did you try this with master, and if so, did the same issue happen there?
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 9 May 2025 16:17:17 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Fri May 09 12:17:17 2025 Received: from localhost ([127.0.0.1]:38790 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uDQPU-0005H7-GU for submit <at> debbugs.gnu.org; Fri, 09 May 2025 12:17:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:49854) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uDQPS-0005Gd-82 for 67604 <at> debbugs.gnu.org; Fri, 09 May 2025 12:17:14 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1uDQPM-0006An-FY; Fri, 09 May 2025 12:17:08 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=Gyu9Rw/SkiLr30NWIgR5n99UwFKtIgTvaqp6RJ40Y7E=; b=h3E/gswu4dhj BIhnT7qbFsTxnIdnMkx5UMxVLzSmmUAhtJchvZ64MCNZn16UVYR8pHtIM/qF5xL3ay3FQsCumehE0 c5WnJlpVIbc61zLKRvxEXa15rl6JIznuK8wpoZYoQ9KqrIYBnTLQntiW94+6n2vkeON4K/tg2bONf 4nl2fwZ5QrdJIZaV1BsO+wZfaziccCA7US+sQ5VeivaS3BDKiKPnA6M0wIux0iisnJDONCwVuUBv/ 5koHj3M6IKAUzYSyRto72WFIDsblmSXvm6Uyq81ZifvQ2cnvXAE0/pgGJt35BI/ZDyWUuaYlWyl+p UDdpN51MyHsdqAUzBpsj7Q==; Date: Fri, 09 May 2025 19:17:05 +0300 Message-Id: <86bjs1daim.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <D4876E07-5C38-4730-BAE0-29975E7AA385@HIDDEN> (message from JD Smith on Thu, 8 May 2025 16:58:36 -0400) Subject: Re: bug#67604: Motion problems with inline images References: <86plgkfx5o.fsf@HIDDEN> <D4876E07-5C38-4730-BAE0-29975E7AA385@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Thu, 8 May 2025 16:58:36 -0400 > Cc: 67604 <at> debbugs.gnu.org > > At this location, I have: > > (lldb) br en > All breakpoints enabled. (1 breakpoints) > Process 35347 stopped > * thread #2, name = 'org.gnu.Emacs.lisp-main', stop reason = breakpoint 1.1 > frame #0: 0x00000001000357c0 Emacs`move_it_in_display_line_to(it=0x0000000170793220, to_charpos=-1, to_x=-1, op=0x0) at xdisp.c:10118:11 > 10115 10116 Note that both for tabs and padding glyphs, all glyphs have > 10117 the same width. */ > -> 10118 if (it->nglyphs) > 10119 { > 10120 /* More than one glyph or glyph doesn't fit on line. All > 10121 glyphs have the same width. */ > Target 0: (Emacs) stopped. > (lldb) p it->current > (display_pos) { > pos = (charpos = 44, bytepos = 44) > overlay_string_index = -1 > string_pos = (charpos = -1, bytepos = -1) > dpvec_index = -1 > } > (lldb) p it->hpos > (int) 0 > (lldb) p it->current_x > (int) 7 > (lldb) p it->last_visible_x > (int) 546 > (lldb) p it->pixel_width > (int) 7 > (lldb) > > Note that the light gray specified space is at pos=43. I conclude IT thinks it is at column 0 (assuming HPOS is meaningful), and has a current_x of 7 (one normal char width). When in reality, due to the wide glyph, it got pushed ahead to the pink position above, at pos=44. Thanks, I think you made good progress. But you are looking at the horizontal coordinates too early: they have not yet been updated at that point. They are updated inside the for loop which starts a few lines down. > From there it iterates until new_x >= last_visible_x, and in so doing, "falls off the line". If it falls to the final newline of the subsequent wrapped line, this results in a "line jump". You lost me here. I don't see "new_x >= it->last_visible_x" in the source, so which line did you have in mind? > GLYPH SKIP: > =========== > > Narrowing down further, here is the location where point first gets pushed ahead to the pink box in the screenshot (in indent.c:Fvertical_motion, line 2315). Just prior to this, IT is at buffer pos=1 (having been moved there by `reseat_at_previous_visible_line_start'). After this, it's at pos=44, on the pink box. > > /* When the position we started from is covered by a display > string, move_it_to will overshoot it, while vertical-motion > wants to put the cursor _before_ the display string. So in > that case, we move to buffer position before the display > string, and avoid overshooting. But if the position before > the display string is a newline, we don't do this, because > otherwise we will end up in a screen line that is one too > far back. */ > move_it_to (&it, > (!disp_string_at_start_p > || FETCH_BYTE (IT_BYTEPOS (it)) == '\n') > ? PT > : PT - 1, > -1, -1, -1, MOVE_TO_POS); > > This comment is very telling, and set off some bells. That's seems to be EXACTLY what is happening here: `move_it_to(&it, PT, MOVE_TO_POS)' overshoots the display element (here, specified space), and lands at pos=44 (pink box). > > So why is this commented-upon "fix" not working? Because disp_string_at_start_p=false, since a display *image* or *specified space* is not a display *string*. > > This flag is set above: > > else if (it.method == GET_FROM_STRING) > { > const char *s = SSDATA (it.string); > const char *e = s + SBYTES (it.string); > > disp_string_at_start_p = > /* If it.area is anything but TEXT_AREA, we need not bother > about the display string, as it doesn't affect cursor > positioning. */ > it.area == TEXT_AREA > && it.string_from_display_prop_p > /* A display string on anything but buffer text (e.g., on > an overlay string) doesn't affect cursor positioning. */ > && (it.sp > 0 && it.stack[it.sp - 1].method == GET_FROM_BUFFER); > > SOLUTION(S): > ============ > > It would seem the simple solution is to do the same thing for images and stretches as is done for display strings: move to the position right *before* PT. > > That could be as simple as enabling disp_string_at_start_p when starting on a (real) IMAGE or STRETCH. That does indeed fix the bug, but unfortunately it results in a new bug: now moving vertically *upwards* across wrapped wide glyphs jumps an extra line up. Sigh. I'm not sure your conclusions are correct. If they were, it would mean that vertical-motion doesn't work at all when the first glyph on a line is an image or a stretch glyph (what you call "specified space"). But that is not true, is it? I think this problem is specific to the situation when the following happen all at once: . lines are wrapped (it->line_wrap = WORD_WRAP) . the image or the stretch glyph don't fit on their line and are wrapped to the next line . vertical-motion is invoked when point is on or after that image or stretch Am I right? If I'm right, then we should try understanding why in this particular situation the code doesn't work, whereas it does work when, say, the image or stretch are in a non-continuation line or are not the first glyph. > 1. Why do IMAGES/STRETCHES get a different overshoot count? I don't remember, sorry. If you really need to know (and I'm not sure), you will have to use "git -L" to see the history of this code, and then look up the bug reports which led to this code. > 2. How can you tell if the position prior to the IMAGE/STRETCH is on a prior visual line? By looking at the Y coordinate (it.current_t or it.vpos), I'd say. > Later in `Fvertical_motion' there is this test, which looks very promising: > > else if (IT_CHARPOS (it) == PT - 1 > && FETCH_BYTE (PT_BYTE - 1) == '\n' > && nlines <= 0) This only works if the previous line ended in a newline, but will not work with continuation lines. > But note, it looks for an *explicit newline* before the display property, which is obviously not there for wrapped lines. I've tried to use it.vpos to find out if you got moved by a screen line, but that seems to be more of a "delta vpos", apparently set only AFTER moving back to the starting point with move_it_to. Yes, vpos counts from zero, where the iterator was initialized. > 3. It seems what's relevant for wide glyphs is not only "Was there a newline behind you?", but "Was there a newline behind you, or was the position there at a lower vpos?". Is there a way to use vpos to make a test like this? I don't know yet, the answer should reveal itself if you step through the code and see what happens there in this particular situation (but not in other similar ones). > The only idea I could think of is (assuming no newline behind): > > a. First move to PT. Store vpos. > b. If you started on a display property (not on a newline), now move back to PT-1. > c. Store and compare the vpos values. > c. If new_vpos<stored_vpos, your display entity is at the beginning of a visual line, and you'd better update your nlines/overshoot. > > But I haven't gotten it to work. I'm also not sure if that will mess up the x position, etc. It's too early to devise solutions, because we don't understand the root cause of the problem yet. At least I don't. > I think this proposed fix should apply equally to display strings, images, and stretches which have been wrapped (it.line_wrap != TRUNCATE). I'm not yet convinced, since vertical-motion does work in general when images and stretch glyphs are around.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 8 May 2025 20:58:58 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Thu May 08 16:58:58 2025 Received: from localhost ([127.0.0.1]:32891 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uD8KX-00031Z-IB for submit <at> debbugs.gnu.org; Thu, 08 May 2025 16:58:58 -0400 Received: from mail-yw1-x112c.google.com ([2607:f8b0:4864:20::112c]:50303) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1uD8KU-00031G-3B for 67604 <at> debbugs.gnu.org; Thu, 08 May 2025 16:58:55 -0400 Received: by mail-yw1-x112c.google.com with SMTP id 00721157ae682-70a2a42eb3eso16494227b3.0 for <67604 <at> debbugs.gnu.org>; Thu, 08 May 2025 13:58:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746737928; x=1747342728; darn=debbugs.gnu.org; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:from:to:cc:subject:date:message-id:reply-to; bh=zPk7GZLKDjjdNzXP997EiYkP0BXkHHzr6DtfLJBDiCA=; b=DbDGjfiEjY+37fReYNkdb8+cl2UUuKlr1xiTFa+PI+rXm4vmFF5Ze1lHKbYdZp5IWv HVz/jPz30RZP2xmPK/+Oz9qiUhpuNf8NUseNsAg4qJCjyuEeZZT1mLSbPeqMhuMiLRpD bF/hVspVTe/WicHlQtXEKmhevrNMFq96pZZfXAz7oWs9/cejL5jdyZ/S7hbXhwxQDH+T gBjuyS/tCdw4l8s9qSqU7Cj9GBh4XNdFMtR+QDSywU39IWVRsgVaxchCwGFowPA3GUWH 8wc9Pq9bwxAwxHLKpIsTrcMFYUhu7aO3U2VdoEXCLltdtbCEdyEq5/ar5MkNzWrPat8h pXCw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746737928; x=1747342728; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=zPk7GZLKDjjdNzXP997EiYkP0BXkHHzr6DtfLJBDiCA=; b=q+/K8PBFqxi3wtHSYoMtkCtR/Fo7OHEqVNv6Fk0m7oDaLIMeXqq0hsru6VdcLH4ZXL 5mlM58uPgTdh2WPpyci4cU4ae4h/vSQ/ZCAo6EEGhfxUvKd5ADiG0BslQrlKuSGypVJo xOROfSeQig7AA0OwSipVdIUP7n4glZ3yDwAHWTTUaTdIG0Z/1owl5POWfuRQ1MY8bHcY v637eNgacKTThHlPGwiI5Lr0O37gFv9lFZedHdqgoHPXHMWdjOHQsv5KKfJm+wBb8X/t RwviRsAV6kLjAFLpZeiR9JI5H1Otx2YRHcQrkSh0h88obWsyklxGiV6GH3lL6TyZevOd vFFQ== X-Gm-Message-State: AOJu0Yzba7p9BuK5pLjbKUVubmZEzFEY4mWkL6ijfw4ZqkrN5syZ/mui uAALyBb5Ntou0gTr0Ro/AzgLn5MZfnRnZaClTv6zbVa9QjssqMQk X-Gm-Gg: ASbGnctJuxg3A4YQk1K1xBUyIq1k0QUJehGLj9tdNZmZmxdeYmG6Dq32mORGQi1LRTc ArA2g8nAv2KWzzKns+i9k+FpoQ8Zc88WpXK3IwHKjEmNByvXzrO/Uq0FepUyq+gmnQmCLpcHFVv CiwzPKUNmmP2rQSUotDS8oimhLyxiEW3582cLY3A1ownKjEesXYavJ55DwTc3aASHwWQMewGmAz ddqBqW+vvSUtO8ZFYbJbttJGPhgkc22YpFlO6GEDT5TERb52eh4mKiiatAtBG6u38j1LYoMas4X PNIVxJMLeajgzpFEmz2RurjYajva1qq7E+KH1DqnRC+VZZIC02lxBwrj X-Google-Smtp-Source: AGHT+IFybilhYTwU0xFfGpe9N4QCMFQEGduLNqp/Na7E/tQV9nwKDk7J6ds/nTdMEX0OB4KeGVft9w== X-Received: by 2002:a05:690c:6f0c:b0:70a:2061:ee33 with SMTP id 00721157ae682-70a3fae74a3mr14543797b3.29.1746737928238; Thu, 08 May 2025 13:58:48 -0700 (PDT) Received: from smtpclient.apple ([131.183.131.33]) by smtp.gmail.com with ESMTPSA id 00721157ae682-70a3d89602asm2432587b3.14.2025.05.08.13.58.47 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 08 May 2025 13:58:47 -0700 (PDT) From: JD Smith <jdtsmith@HIDDEN> Message-Id: <D4876E07-5C38-4730-BAE0-29975E7AA385@HIDDEN> Content-Type: multipart/mixed; boundary="Apple-Mail=_3CD38B0A-A4A7-4891-9E6A-35EBE9D30E03" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.500.181.1.5\)) Subject: Re: bug#67604: Motion problems with inline images Date: Thu, 8 May 2025 16:58:36 -0400 In-Reply-To: <86plgkfx5o.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> References: <86plgkfx5o.fsf@HIDDEN> X-Mailer: Apple Mail (2.3826.500.181.1.5) X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --Apple-Mail=_3CD38B0A-A4A7-4891-9E6A-35EBE9D30E03 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On May 7, 2025, at 8:00=E2=80=AFAM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 > =EF=BB=BF >>=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Tue, 6 May 2025 23:30:02 -0400 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >>> I've eventually succeeded in reproducing it. I will get to it when = I >>> have time; however, with the current tempest on emacs-devel and = other >>> urgent issues, I don't know when will that be. >>=20 >> This bug remains present in Emacs v30. >=20 > Sorry, I couldn't find the time to look at this. No worries at all. You juggle many things and it was a good impetus to = get a src debugging setup working (I wish realgud worked better with = lldb, but command line is ok for now). It=E2=80=99s also a fairly = subtle and specific bug, even though I think it underlies many(/all?) = small movement oddities I=E2=80=99ve noticed over the years with inline = wrapped wide glyphs. >> What I'm looking for is a reason why a wide glyph (only) at the very = start of a wrapped visual display line would have its pixel width = incorrectly stored, as if it were just a regular width character. =20 >>=20 >> I tried to get a sense of where this IT pixel_width is getting set, = but it's referenced all over xdisp.c, and I have only a rudimentary = understanding of the iterator structure (and its glyph rows, etc.). >>=20 >> If you have any hunches where this mistaken it->pixel_width might be = sneaking in for wrapped wide glyphs, I'd be very happy to investigate = further using my debug setup here. >=20 > it->pixel_width comes from the call to PRODUCE_GLYPHS (which is a > macro that calls gui_produce_glyphs). For characters, > gui_produce_glyphs does the job itself, under this condition: >=20 > if (it->what =3D=3D IT_CHARACTER) >=20 > For images, it calls produce_image_glyph. >=20 > I hope this is the information you were looking for. If not, please > ask more specific questions. I appreciate these tips. I took a long look, and my initial assessment was incorrect =E2=80=94 = the glyph pixel sizes are correct, but the iterator is confused about = where the line start is. IT thinks it is at the beginning of the line, = but has in fact over-shot, just to the right of the wrapped wide glyph. Here's a snapshot of the problem. There are no images in the buffer any = longer =E2=80=94 the gray boxes are both simple specified space applied = on single SPC chars. The behavior is the same as before. Point jumps = from the beginning of the 2nd line on the light gray stretch right to = JUMPS HERE. Other forms of incorrect motion are evident, but this is = the most dramatic, so I stick with it. --Apple-Mail=_3CD38B0A-A4A7-4891-9E6A-35EBE9D30E03 Content-Disposition: inline; filename=PastedGraphic-6.png Content-Type: image/png; x-unix-mode=0666; name="PastedGraphic-6.png" Content-Transfer-Encoding: base64 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 7KOWRrVHU6MXRB+I/hDjG7Mh5lGsRawitjVONW5uXE3cx3i/+JL47oSZCcsSriXqJAoTm5NwSXFJ e5OG5/jP2Tqnb67z3MK5d+eZz1s878p8nfmi+acXqC7gLjiWjEmOTz6Q/JUbwa3mDqdwUnakDPHY vG28V3wf/hb+gMBTUCLoT/VMLUl9keaZtjltIN07vTR9UMgWlgvfZARlVGZ8zIzI3Jc5KooX1Wfh s5KzTog1xJnitmz97MXZXRJrSaGke6H7wq0Lh6Qh0r0ySDZP1iynIc3SdYWF4gdFT45XTkXOp0Vx i44tVl8sXnw91yp3bW5/XkDeL0vQS3hLWpcaLl21tGcZa1nVcmh5yvLWFcYrClb0rQxcuX8VcVXm ql/z7fJL8t+vjl/dUqBXsLKg94fAH2oLVQqlhffWeKyp/BH9o/DHjrWOa7ev/V7EL7pabFdcWvx1 HW/d1Z/sfyr7aXR96vqODS4bdm3EbhRvvLvJe9P+EvWSvJLezWGbG7cwthRteb91wdYrpU6llduI 2xTbustCy5q3m2zfuP1reXr5nQrfivodujvW7vi4k7/z5i6fXXWVepXFlV9+Fv58vyqwqrHarLp0 N3Z3zu7ne+L2tP/C/KVmr87e4r3f9on3de+P2t9W41pTc0D3wIZauFZRO3Bw7sHOQ36Hmuts6qrq 6fXFh8FhxeGXR5KP3D0acrT1GPNY3XHT4zsaqA1FjVBjbuNQU3pTd3Nic9eJ4BOtLR4tDSdtT+47 ZXiq4rTm6Q1niGcKzoyezTs7fE5ybvB82vne1gWtjy4kXLjdNrut42LIxcuXAi5daGe1n73sefnU FfcrJ64yrzZdc7nWeN35esOvzr82dLh0NN5wvdHc6dbZ0jWr68xN75vnb/ndunSbc/vanfA7XXdj 796/N/de933+/RcPRA/ePMx5OPJo5WPM46Inak9Kn+o+rf7N8rf6bpfu0z1+PdefRT971MvrffW7 7PevfQXPKc9L+w36a144vDg1EDDQ+XLOy75Xklcjg4V/qP+x47XF6+N/+vx5fShhqO+N9M3o23Xv tN/te+/0vnU4cvjph6wPIx+LPml/2v+Z+bn9S/yX/pFFX3Ffy75Zfmv5HvL98WjW6KiEK+WOtwIo ZMCpqQC83QcAJREAKtJDEOdM9NjjBk28C8YJ/Cee6MPHzQWAOsSNtUfscwAcRobZSgBUfQAYa41i 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 --Apple-Mail=_3CD38B0A-A4A7-4891-9E6A-35EBE9D30E03 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Here is the stack I'm investigating: * frame #0: 0x00000001000357c0 = Emacs`move_it_in_display_line_to(it=3D0x0000000170793220, to_charpos=3D-1,= to_x=3D-1, op=3D0x0) at xdisp.c:10118:11 frame #1: 0x00000001000314b0 Emacs`move_it_to(it=3D0x0000000170793220,= to_charpos=3D-1, to_x=3D-1, to_y=3D-1, to_vpos=3D1, op=3D4) at = xdisp.c:10667:10 frame #2: 0x000000010002cadc = Emacs`move_it_by_lines(it=3D0x0000000170793220, dvpos=3D1) at = xdisp.c:11240:7 frame #3: 0x00000001001d787c = Emacs`Fvertical_motion(lines=3D(EMACS_INT) $4 =3D 1, window=3D(struct = Lisp_Symbol *) $22 =3D 0x0000000100a73070, cur_col=3D(struct Lisp_Symbol = *) $43 =3D 0x0000000100a73070) at indent.c:2406:4 frame #4: 0x0000000100240adc = Emacs`funcall_subr_1(subr=3D0x000000010045aae0, numargs=3D1, = args=3D(struct Lisp_Symbol *) $72 =3D 0x0000000218bbb270) at = eval.c:3176:15 At this location, I have: (lldb) br en All breakpoints enabled. (1 breakpoints) Process 35347 stopped * thread #2, name =3D 'org.gnu.Emacs.lisp-main', stop reason =3D = breakpoint 1.1 frame #0: 0x00000001000357c0 = Emacs`move_it_in_display_line_to(it=3D0x0000000170793220, to_charpos=3D-1,= to_x=3D-1, op=3D0x0) at xdisp.c:10118:11 10115 10116 Note that both for tabs and padding glyphs, all glyphs = have 10117 the same width. */ -> 10118 if (it->nglyphs) 10119 { 10120 /* More than one glyph or glyph doesn't fit on line. All 10121 glyphs have the same width. */ Target 0: (Emacs) stopped. (lldb) p it->current (display_pos) { pos =3D (charpos =3D 44, bytepos =3D 44) overlay_string_index =3D -1 string_pos =3D (charpos =3D -1, bytepos =3D -1) dpvec_index =3D -1 } (lldb) p it->hpos (int) 0 (lldb) p it->current_x (int) 7 (lldb) p it->last_visible_x (int) 546 (lldb) p it->pixel_width=20 (int) 7 (lldb)=20 Note that the light gray specified space is at pos=3D43. I conclude IT = thinks it is at column 0 (assuming HPOS is meaningful), and has a = current_x of 7 (one normal char width). When in reality, due to the = wide glyph, it got pushed ahead to the pink position above, at pos=3D44. = =46rom there it iterates until new_x >=3D last_visible_x, and in so = doing, "falls off the line". If it falls to the final newline of the = subsequent wrapped line, this results in a "line jump". GLYPH SKIP: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Narrowing down further, here is the location where point first gets = pushed ahead to the pink box in the screenshot (in = indent.c:Fvertical_motion, line 2315). Just prior to this, IT is at = buffer pos=3D1 (having been moved there by = `reseat_at_previous_visible_line_start'). After this, it's at pos=3D44, = on the pink box. /* When the position we started from is covered by a display string, move_it_to will overshoot it, while vertical-motion wants to put the cursor _before_ the display string. So in that case, we move to buffer position before the display string, and avoid overshooting. But if the position before the display string is a newline, we don't do this, because otherwise we will end up in a screen line that is one too far back. */ move_it_to (&it, (!disp_string_at_start_p || FETCH_BYTE (IT_BYTEPOS (it)) =3D=3D '\n') ? PT : PT - 1, -1, -1, -1, MOVE_TO_POS); This comment is very telling, and set off some bells. That's seems to = be EXACTLY what is happening here: `move_it_to(&it, PT, MOVE_TO_POS)' = overshoots the display element (here, specified space), and lands at = pos=3D44 (pink box). =20 So why is this commented-upon "fix" not working? Because = disp_string_at_start_p=3Dfalse, since a display *image* or *specified = space* is not a display *string*. This flag is set above: else if (it.method =3D=3D GET_FROM_STRING) { const char *s =3D SSDATA (it.string); const char *e =3D s + SBYTES (it.string); disp_string_at_start_p =3D /* If it.area is anything but TEXT_AREA, we need not bother about the display string, as it doesn't affect cursor positioning. */ it.area =3D=3D TEXT_AREA && it.string_from_display_prop_p /* A display string on anything but buffer text (e.g., on an overlay string) doesn't affect cursor positioning. */ && (it.sp > 0 && it.stack[it.sp - 1].method =3D=3D GET_FROM_BUFFER); SOLUTION(S): =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D It would seem the simple solution is to do the same thing for images and = stretches as is done for display strings: move to the position right = *before* PT.=20 That could be as simple as enabling disp_string_at_start_p when starting = on a (real) IMAGE or STRETCH. That does indeed fix the bug, but = unfortunately it results in a new bug: now moving vertically *upwards* = across wrapped wide glyphs jumps an extra line up. Sigh. I've tried various approaches, but have struggled to come up with a full = fix. =20 A few questions that might get me closer: 1. Why do IMAGES/STRETCHES get a different overshoot count? else it_overshoot_count =3D /* If image_id is negative, it's a fringe bitmap, which by definition doesn't affect display in the text area. */ !((it.method =3D=3D GET_FROM_IMAGE && it.image_id >=3D 0) || it.method =3D=3D GET_FROM_STRETCH); A (real) IMAGE or STRETCH at the starting position of the vertical = movement changes the overshoot to 0 (it seems to be 1 by default). Yet = no allowance is made for reseat -> move_it_to skipping past the = IMAGE/STRETCH, as is done for display *strings*. I don't see why the = mere presence of an IMAGE/STRETCH should tell you anything concrete = about the overshoot. 2. How can you tell if the position prior to the IMAGE/STRETCH is on a = prior visual line? Later in `Fvertical_motion' there is this test, which looks very = promising: else if (IT_CHARPOS (it) =3D=3D PT - 1 && FETCH_BYTE (PT_BYTE - 1) =3D=3D '\n' && nlines <=3D 0) { /* The position we started from was covered by a display property, so we moved to position before the string, and backed up one line, because the character at PT - 1 is a newline. So we need one less line to go up (or exactly one line to go down if nlines =3D=3D 0). */ nlines++; /* But we still need to record that one line, in order to return the correct value to the caller. */ vpos_init =3D -1; overshoot_handled =3D 1; } But note, it looks for an *explicit newline* before the display = property, which is obviously not there for wrapped lines. I've tried to = use it.vpos to find out if you got moved by a screen line, but that = seems to be more of a "delta vpos", apparently set only AFTER moving = back to the starting point with move_it_to. 3. It seems what's relevant for wide glyphs is not only "Was there a = newline behind you?", but "Was there a newline behind you, or was the = position there at a lower vpos?". Is there a way to use vpos to make a = test like this? The only idea I could think of is (assuming no newline behind): a. First move to PT. Store vpos. b. If you started on a display property (not on a newline), now move = back to PT-1. =20 c. Store and compare the vpos values. c. If new_vpos<stored_vpos, your display entity is at the beginning of a = visual line, and you'd better update your nlines/overshoot. But I haven't gotten it to work. I'm also not sure if that will mess up = the x position, etc.=20 I think this proposed fix should apply equally to display strings, = images, and stretches which have been wrapped (it.line_wrap !=3D = TRUNCATE). =20 Thoughts/ideas? --Apple-Mail=_3CD38B0A-A4A7-4891-9E6A-35EBE9D30E03--
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 7 May 2025 12:00:48 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed May 07 08:00:47 2025 Received: from localhost ([127.0.0.1]:41891 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uCdSB-0002fh-Ez for submit <at> debbugs.gnu.org; Wed, 07 May 2025 08:00:47 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:56464) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1uCdS9-0002fV-9I for 67604 <at> debbugs.gnu.org; Wed, 07 May 2025 08:00:45 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1uCdS3-0000Zc-Oe; Wed, 07 May 2025 08:00:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=Ev82GCE2YgKE6ku25pw97pLD0tEZIrT+mHd62XDFr9A=; b=Lmb9/7MyTouN b2+fCLAId66Iz14XiVXFA3IEPWRgfFpH3eHvJoiSgu9EBbxbA8Aim1R39pgrlFdXdbkxx+iyOQrFF UJg2gFSLFefXeJbEy3XTlKyhAo5khiaxyjJbPpnMX7SqUlnhoagaUFiQj0OCrgvp+bZcxNRUJVF+M zGNla+O785nPZFGROzNmXeqk+odJuJOCzZ04roOhwXtqWpy6+m6mbyh6sTr5/fCSJiNaOZgP5upld MiQqFhM5kuNx8vuXyMlBU9YBlDTRKu26AjqmB0ON5m4r42D2sTUl+2R46RkqUayjjhctQR/Tb6JBp cAZkXpsWPl6KKyoxIULAhg==; Date: Wed, 07 May 2025 15:00:35 +0300 Message-Id: <86plgkfx5o.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <8B2AD1D0-837E-498C-9AD3-3AB9432B71B3@HIDDEN> (message from JD Smith on Tue, 6 May 2025 23:30:02 -0400) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> <83ttow3t2h.fsf@HIDDEN> <BFE8F95D-76DE-464D-8341-EFC9970422F3@HIDDEN> <838r60v81p.fsf@HIDDEN> <8B2AD1D0-837E-498C-9AD3-3AB9432B71B3@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Tue, 6 May 2025 23:30:02 -0400 > Cc: 67604 <at> debbugs.gnu.org > > > I've eventually succeeded in reproducing it. I will get to it when I > > have time; however, with the current tempest on emacs-devel and other > > urgent issues, I don't know when will that be. > > This bug remains present in Emacs v30. Sorry, I couldn't find the time to look at this. > What I'm looking for is a reason why a wide glyph (only) at the very start of a wrapped visual display line would have its pixel width incorrectly stored, as if it were just a regular width character. > > I tried to get a sense of where this IT pixel_width is getting set, but it's referenced all over xdisp.c, and I have only a rudimentary understanding of the iterator structure (and its glyph rows, etc.). > > If you have any hunches where this mistaken it->pixel_width might be sneaking in for wrapped wide glyphs, I'd be very happy to investigate further using my debug setup here. it->pixel_width comes from the call to PRODUCE_GLYPHS (which is a macro that calls gui_produce_glyphs). For characters, gui_produce_glyphs does the job itself, under this condition: if (it->what == IT_CHARACTER) For images, it calls produce_image_glyph. I hope this is the information you were looking for. If not, please ask more specific questions. Thanks.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 7 May 2025 03:30:22 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue May 06 23:30:22 2025 Received: from localhost ([127.0.0.1]:37635 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1uCVUD-000456-Ma for submit <at> debbugs.gnu.org; Tue, 06 May 2025 23:30:22 -0400 Received: from mail-qt1-x82b.google.com ([2607:f8b0:4864:20::82b]:61537) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1uCVUB-00044m-Et for 67604 <at> debbugs.gnu.org; Tue, 06 May 2025 23:30:20 -0400 Received: by mail-qt1-x82b.google.com with SMTP id d75a77b69052e-4769aef457bso86878101cf.2 for <67604 <at> debbugs.gnu.org>; Tue, 06 May 2025 20:30:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746588613; x=1747193413; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=WP0m9I2F9LBHuePtD/vzNmZIbRocXpvwssOkBTPo6+g=; b=Zr5vuqpjXKROvN8vMhPLW0OkEUVV5ee5rAHui86s9KVWlGRGSkUj87Nzch10znfMYI BjURHkm3fX6QRXcTFPDRi7OCC9F8tG8K5HU1Nzd5pOjxQqGoFVEQPFTbxivGtI1fd46t 61VPOaLkfjLs6HN3qzi1MzroF9MQiwRZQgAZncBNwJPMabnXNu86AtKPbXTWrULR0lGC eyrL+/LHhSntcbHu+5toeIThq8YamFDWAEeW86YLiH+FKbX+wu+H0AIbed/rkLuhNVra Bov1114slCOWbWzQEe9jkMMujcUvpbgIoNx4Huz1kdiJ6GJtDXM1TV/pJUGH3U30i7Uk 2JVw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746588613; x=1747193413; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=WP0m9I2F9LBHuePtD/vzNmZIbRocXpvwssOkBTPo6+g=; b=pahdnwMnsF7v7vDtJL1cgBFBhzYsStOHqJPM3DppGpDMQXbJ5ZXP5XOahIjHpq32/D Prgo4bsk8uYNfXc0zjZgscSnWedVbwxKRKlwy3Fxee8tmrEhhGslrqN4sxW8AP+p+t2H seBQFWPVsQK7VrNtob277WrfBKtc6fGLVyFVrJ9cRD1EjJgudSg9IlaJc4S/Yy9ADqzF dhEFWBUIuQfP3Ndphs8XpsLXz2uLVSVjMV6kDum/9xlD32YjcE4upJC1+I6Uzw9ay5aP qLIeA7Vdn1IxnDiezOjmafeGXaspsQjIzEB9PDLFZXCV8RvuWWN998cLY/nVK8zimbJp ppVA== X-Gm-Message-State: AOJu0YylQbtAIRmYYyXxHAd2egxLWFaqTQQQ9TBAlllEQun1FIPYel6q c/rYgSCkAlFWkLlDwKu3d9IDrzq6/Hd2TiZzKMlyW9uD5L/7rMWy X-Gm-Gg: ASbGnctURTLFdt6D/pLEDk0nbxrIuDVOIxCjDrM18oqYPR6ATkJD3qS//VDljh0fwDS ngFoJ6+3KtWUWXu44yNkDVNmQCPPB6XHhWmeBGDHk/8kMt5f76XiPIzHXWtFh/vGCCVQ8haxGw8 XSuoT4EgYvkuIPAJnG4SSpRr8b2mNGhlN14xQYYbErtN8h0R+YlYQRtry4B4dOVtbod/Lztj2kP MFrvPCHsm3sQtZIDlwNT7j4wWq44k+MiUT/fPZnAhJ74awWMfyyWKKd2giesMPHxot1XgGRhzPh Onj6mBVrkaJLTN+PEyeRUSnqCHEJbzeq4DwI2vD5e8lIRzNnfHtE4ehZZQgCznWtYYECm/ZXLSU wxT4Z6ywxK/lNxVaoXw== X-Google-Smtp-Source: AGHT+IGnGVGuqPpUU6LVVqw17HiUYhchG1ZGkCPMp/wTQQKa396qJV9vJPRNZeXulKZTJKGDHcU8Fw== X-Received: by 2002:ac8:5a0d:0:b0:48a:d979:9a38 with SMTP id d75a77b69052e-49225a41bc8mr25962881cf.2.1746588613451; Tue, 06 May 2025 20:30:13 -0700 (PDT) Received: from smtpclient.apple (cm-24-53-185-196.buckeyecom.net. [24.53.185.196]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-49223457057sm7426971cf.66.2025.05.06.20.30.12 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 06 May 2025 20:30:13 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.500.181.1.5\)) Subject: Re: bug#67604: Motion problems with inline images From: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <838r60v81p.fsf@HIDDEN> Date: Tue, 6 May 2025 23:30:02 -0400 Content-Transfer-Encoding: quoted-printable Message-Id: <8B2AD1D0-837E-498C-9AD3-3AB9432B71B3@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> <83ttow3t2h.fsf@HIDDEN> <BFE8F95D-76DE-464D-8341-EFC9970422F3@HIDDEN> <838r60v81p.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3826.500.181.1.5) X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Dec 11, 2023, at 2:44=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Mon, 11 Dec 2023 14:06:38 -0500 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >>=20 >>=20 >>> On Dec 5, 2023, at 10:31=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >>>> OK, so this was likely a false positive then. I=E2=80=99m out of = ideas. Maybe Windows is magically immune. >>>=20 >>> Unlikely. More likely is that we need some specific metrics of the >>> displayed stuff to see the problem (which is therefore very rare). >>=20 >> I agree with this sentiment: it does seem to require special tuning = to reveal itself. I wanted to check to see if you had received my news = that I reproduced the line-skip motion bug on a GNU/Linux system. That = would seem to confirm it=E2=80=99s a general issue with the = display/motion code dealing with inline images. Let me know if I can = produce anything else to help with this one. Thanks. >=20 > I've eventually succeeded in reproducing it. I will get to it when I > have time; however, with the current tempest on emacs-devel and other > urgent issues, I don't know when will that be. This bug remains present in Emacs v30. I have managed some progress on = it and feel I am quite close to narrowing to the culprit. I've managed to get lldb working with a debug build of Emacs. I can = rapidly reproduce the bug, and am able to set breakpoints, step through = the code, and print variable values, etc. I've debugged through Fvertical_motion into the various move_it = functions in xdisp.c. They are very complicated functions, but here is = what I've determined, referencing xdisp.c: 1. In `move_it_to`, when moving one vertical position down = (op=3DMOVE_TO_VPOS), this is attempted: /* If no TO_CHARPOS and no TO_X specified, stop at the start of the line TO_VPOS. */ ... skip =3D move_it_in_display_line_to (it, -1, -1, 0); I gather `move_it_in_display_line_to' here is supposed to be moving to = the end of the display line, with op=3D0. 2. In that function, there is a bit of logic that looks like: int single_glyph_width =3D it->pixel_width / it->nglyphs; int new_x; for (i =3D 0; i < it->nglyphs; ++i, x =3D new_x) { new_x =3D x + single_glyph_width; In this example, we are moving glyph-by-glyph, accumulating each glpyh's = pixel widths into to the new_x position. This is continued, until a = glyph is found which no longer fits on the visible line: if (/* Lines are continued. */ it->line_wrap !=3D TRUNCATE && (/* And glyph doesn't fit on the line. */ new_x > it->last_visible_x Here is the problem: if the first glyph on the line is wide (e.g. the = green SVG rectangle in the example we were playing with), its width is = incorrectly encoded in it->pixel_width as 7 pixels (the width of my = normal font). =20 As a result, for this very first glyph, `move_it_in_display_line_to' = increments the x pixel position by too small a value (7 instead of 108 = pixels). This causes IT to eventually move past the end of the line, = and on to the next wrapped line. And if that next wrapped line is short = enough, it even moves past that on to the following line, thus causing = the full line "skip" we observed. It's important to note that even when the line skip bug isn't present, = if the first glyph is wide, vertical motion does unexpected things = because of this mis-reporting of the first glyph's width. If a wide = glyph wraps to column 0, this motion bug is present. It does not = require an image, only a wide glyph. For example, I removed the green = rectangle and inserted in its place: (insert (propertize "x" 'display '(space :width (108)) 'face = '(:background "gray"))) and precisely the same issues occur. I further verified this by placing a single character on the visible = line just before the green rectangle. With this change, on the 2nd time = it->pixel_width is consulted above, it has the correct value of 108. = Only the *first* wrapped column position if affected. Nor does this = happen at the "real" start of a line, prior to its first wrap. Only = *wrapped* wide glyphs at visual column 0 have misreported pixel widths. What I'm looking for is a reason why a wide glyph (only) at the very = start of a wrapped visual display line would have its pixel width = incorrectly stored, as if it were just a regular width character. =20 I tried to get a sense of where this IT pixel_width is getting set, but = it's referenced all over xdisp.c, and I have only a rudimentary = understanding of the iterator structure (and its glyph rows, etc.). If you have any hunches where this mistaken it->pixel_width might be = sneaking in for wrapped wide glyphs, I'd be very happy to investigate = further using my debug setup here. Thanks, JD
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 3 Sep 2024 18:03:04 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Sep 03 14:03:03 2024 Received: from localhost ([127.0.0.1]:60951 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1slXrr-0003dk-LH for submit <at> debbugs.gnu.org; Tue, 03 Sep 2024 14:03:03 -0400 Received: from mail-qv1-f53.google.com ([209.85.219.53]:57563) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1slXrn-0003dD-MU for 67604 <at> debbugs.gnu.org; Tue, 03 Sep 2024 14:03:02 -0400 Received: by mail-qv1-f53.google.com with SMTP id 6a1803df08f44-6c3567a143eso18725136d6.2 for <67604 <at> debbugs.gnu.org>; Tue, 03 Sep 2024 11:01:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1725386451; x=1725991251; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Erq8h2Ine3ah96T/+4tr0XKgF8+Xh1WaoerP+aqFnLU=; b=lihr9ONmJ7PgMol7p5qQm0PtBnp8DNMdctZ+7wg9QLxrEQMzVgdARZHxMFx1X4TALW rOOwGZPuNRDkc6IBoWCIhEF//xSNokMXG9/K6Z6VffOcbOYODox3S/XdxkOZ0PxXGO9A it1R5PO7AX0A8yB7Fzo/zSG8ATdIm0uwD+MUfC4NH6YRTPEr/Doqts2sOAawTwTQXCen GtFbGcvj0Ot1NHTZCTO9WFhltey1t8A1nycsledkcOdXmMvb2n1LUUARL6j5zY/ytWEk zQxsWm69geuzlhtwmq0Gmigpxf7lf1uaWbh42LQ422eFkFYfKHLBCS/ih+pJkc6VyWcK B+QA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1725386451; x=1725991251; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Erq8h2Ine3ah96T/+4tr0XKgF8+Xh1WaoerP+aqFnLU=; b=nb1kFhoVf7roUlWWuenaETtEAbjULXssQKrMAhJ+0Brf+eaLjLYPFjjl+B6E/f9oec e6kMOs3H6eNXurMuYwCiHopx8CkKOi258wuBnDtmOGA4/AjMLiQCbUKyfa17bJrisxp3 YYMmTOq51en8/PLDLpirsw6rWKQpyGq1i2Z6I9XsQ4EhmoSa9ZiIuxLcnox6pOQeXIf3 UTD2ZdYFDNu1C2sAegNBDVObWAAJv4B3cEydsrx8FRenUbuWC1PWHIGxQrw8z78lzjUW f86xwHv39MV+/pemi4N1bEdZ3W7TzfFoMPvcNvyYNxJbBpnaVEmowyuuxSECb6Bt7JkT QXlg== X-Gm-Message-State: AOJu0YxBILXXx/JkngF+1C9UspKLtrlm7ZGBL3cnbSK0pIqE5jzo519j qt4jWmiCfWrdvpaMUV3hXg0rstf5kYogJgZ+8dZdOBnWZu8ObPGRUK+6JA== X-Google-Smtp-Source: AGHT+IGWUy4mvQTdVtVGcklhAPxboQLJoAEuP2Qvo6lPznfP3b+pz5vqP74RMbPuHmcc/KsNtx47zw== X-Received: by 2002:a05:6214:5991:b0:6c3:62c9:aa62 with SMTP id 6a1803df08f44-6c362c9aafcmr104203446d6.28.1725386451360; Tue, 03 Sep 2024 11:00:51 -0700 (PDT) Received: from smtpclient.apple ([131.183.131.33]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-6c36393fd0bsm27455126d6.2.2024.09.03.11.00.49 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 03 Sep 2024 11:00:50 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.600.62\)) Subject: Re: bug#67604: Motion problems with inline images From: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <838r60v81p.fsf@HIDDEN> Date: Tue, 3 Sep 2024 14:00:39 -0400 Content-Transfer-Encoding: quoted-printable Message-Id: <A08F1C6F-BC34-4DB5-9A84-EC8DACB5689E@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> <83ttow3t2h.fsf@HIDDEN> <BFE8F95D-76DE-464D-8341-EFC9970422F3@HIDDEN> <838r60v81p.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3774.600.62) X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Dec 11, 2023, at 2:44=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 > I've eventually succeeded in reproducing it. I will get to it when I > have time; however, with the current tempest on emacs-devel and other > urgent issues, I don't know when will that be. Following up on this vertical-motion with inline images bug. My earlier = recipe still seems to find special image sizes where (vertical-motion 1) = skips the 3rd line. As a reminder this is occurring only for certain = window widths, near and below those where the green bar has just wrapped = to line 2.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 11 Dec 2023 22:07:00 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 11 17:07:00 2023 Received: from localhost ([127.0.0.1]:54837 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rCoQV-0004GV-Pb for submit <at> debbugs.gnu.org; Mon, 11 Dec 2023 17:07:00 -0500 Received: from mail-yb1-xb30.google.com ([2607:f8b0:4864:20::b30]:55766) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1rCoQT-0004GH-FG for 67604 <at> debbugs.gnu.org; Mon, 11 Dec 2023 17:06:58 -0500 Received: by mail-yb1-xb30.google.com with SMTP id 3f1490d57ef6-dae7cc31151so4884808276.3 for <67604 <at> debbugs.gnu.org>; Mon, 11 Dec 2023 14:06:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1702332396; x=1702937196; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=hJ1YFLQ/0NFK3H672u2j9k8ieDtkjfdJTmMyRuj33Cc=; b=MjakpSfcICnAzZ6fsTut3aQK79UMy1e2RBr43zPQ5rzMQxTd0S/mcoY4B0PoRNBmCw aHM6DlRBWVtmppOVr9e8bLk6xJ+gAgTDxsZ6I5GAKjHhJD0gI486Knl6eEjn3qfTPzTh 8O5PSdTZXx1r5de7xrN9l9i77n+t5mCcMI9CynUVv/Dfc3v+xZRERNCjBxVycW0/x3+X f+ipAGW8aTO/vbzRlPqGiHe3B6qZVtYvoEaewyzYQaH8aNenp4m4aZ9lGB/uuWq4Z0aw jIfDJ2qWma5F/vw3oyZ2qMjvgHMuCS9pMkK6m9ENIdKHmcu85xzaeIhHwFjuIMem5Y8Y Uerg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702332396; x=1702937196; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hJ1YFLQ/0NFK3H672u2j9k8ieDtkjfdJTmMyRuj33Cc=; b=tCGIsbqw4WPcaNiz2nn6tjqDoGD9XNmFXp0IsREAyXiQuPhylbB0S+zcqVSjHV/A2O WYx9rxk/wRnzJs3WdH4vqVG3rflW1yUetU9Z5jpR/DmTDqLGGXSzAGRlQc+1TkdU74RJ zithh6Sk9buftpLHDblqasOzlbcVWt8R8V5vuWvLglpupqSHbQMbhLE22fLQ5AjQGo4d iKVxd0Ds730UTHtqw+60fIr61AOcPGEd756O22gFkXB1aKmIgitUSY74HUqYRQcP4QzN 8n3WwZqQxEYRjq6F/frT+YpEJikiuOQfc9Dy00a6uxNnoocafE/lulc2IUy9cGQxiKkh ARAg== X-Gm-Message-State: AOJu0YxzCvICynU1I8n5QsexL2p9zyoC9J3PQ7PurUXvNyZsWXnzEztv iCAMGzAKRaBE5co7sTHMCpS9WBxzoGs= X-Google-Smtp-Source: AGHT+IE966bmYIdfyodf1daCdLA1lkUUrDJKB7E5Kox1UJJ73nai4SV87DxaM534D8lx9RxZ4nqtmQ== X-Received: by 2002:a25:bca:0:b0:db7:dacf:6fca with SMTP id 193-20020a250bca000000b00db7dacf6fcamr3300113ybl.82.1702332396419; Mon, 11 Dec 2023 14:06:36 -0800 (PST) Received: from smtpclient.apple ([131.183.131.33]) by smtp.gmail.com with ESMTPSA id z28-20020a25ad9c000000b00db3a7028be7sm2815708ybi.63.2023.12.11.14.06.35 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 11 Dec 2023 14:06:35 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images From: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <838r60v81p.fsf@HIDDEN> Date: Mon, 11 Dec 2023 17:06:24 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <557B0CA0-17C4-4223-9666-4097B75BC30D@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> <83ttow3t2h.fsf@HIDDEN> <BFE8F95D-76DE-464D-8341-EFC9970422F3@HIDDEN> <838r60v81p.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Dec 11, 2023, at 2:44=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Mon, 11 Dec 2023 14:06:38 -0500 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >>=20 >>=20 >>> On Dec 5, 2023, at 10:31=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >>>> OK, so this was likely a false positive then. I=E2=80=99m out of = ideas. Maybe Windows is magically immune. >>>=20 >>> Unlikely. More likely is that we need some specific metrics of the >>> displayed stuff to see the problem (which is therefore very rare). >>=20 >> I agree with this sentiment: it does seem to require special tuning = to reveal itself. I wanted to check to see if you had received my news = that I reproduced the line-skip motion bug on a GNU/Linux system. That = would seem to confirm it=E2=80=99s a general issue with the = display/motion code dealing with inline images. Let me know if I can = produce anything else to help with this one. Thanks. >=20 > I've eventually succeeded in reproducing it. I will get to it when I > have time; however, with the current tempest on emacs-devel and other > urgent issues, I don't know when will that be. Thanks for the update, glad you could reproduce it. It will be waiting = when you have a moment; hope the dust settles soon.=
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 11 Dec 2023 19:44:35 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 11 14:44:35 2023 Received: from localhost ([127.0.0.1]:54696 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rCmCh-0000GU-20 for submit <at> debbugs.gnu.org; Mon, 11 Dec 2023 14:44:35 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:53922) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1rCmCd-0000GH-TJ for 67604 <at> debbugs.gnu.org; Mon, 11 Dec 2023 14:44:32 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1rCmCJ-0002q0-HO; Mon, 11 Dec 2023 14:44:11 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=wwRwowYT3N2fkcj6v8fW+AWUTeq17NfFc2Pvziee81Q=; b=LuEXrXmd59f31uNNX+Ed nXURhVzzf87DfuXjfRGxiVfa1KtOEeFT2Hr3s9OCXVl/MmYegKjmouayi4JZtkYxVZpn1cW/Ve7te oDrGo6BhWCnLLstBnPe5Hyy4rLgbOUw53q4ZyqUY2Cnj423jSHeOPrgJkqbkJnrJ+1TltSCjjf4Tw hOmSnSgmD+AwU1euFvO00Mm0RgQQcvC51lnqvQGpX7yQbKrOnj3g4mpD7bv9nXWQlqHqIyQUcFFGJ GMNmicsyqqKDt3rvceQJuhJFCARqsSCbb3XJ94vn85nsgg2KvQfqXxy9RinqCNsE72WufKnfy1YhL 3XTr/0lowqam2g==; Date: Mon, 11 Dec 2023 21:44:02 +0200 Message-Id: <838r60v81p.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <BFE8F95D-76DE-464D-8341-EFC9970422F3@HIDDEN> (message from JD Smith on Mon, 11 Dec 2023 14:06:38 -0500) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> <83ttow3t2h.fsf@HIDDEN> <BFE8F95D-76DE-464D-8341-EFC9970422F3@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Mon, 11 Dec 2023 14:06:38 -0500 > Cc: 67604 <at> debbugs.gnu.org > > > > > On Dec 5, 2023, at 10:31 PM, Eli Zaretskii <eliz@HIDDEN> wrote: > >> OK, so this was likely a false positive then. I’m out of ideas. Maybe Windows is magically immune. > > > > Unlikely. More likely is that we need some specific metrics of the > > displayed stuff to see the problem (which is therefore very rare). > > I agree with this sentiment: it does seem to require special tuning to reveal itself. I wanted to check to see if you had received my news that I reproduced the line-skip motion bug on a GNU/Linux system. That would seem to confirm it’s a general issue with the display/motion code dealing with inline images. Let me know if I can produce anything else to help with this one. Thanks. I've eventually succeeded in reproducing it. I will get to it when I have time; however, with the current tempest on emacs-devel and other urgent issues, I don't know when will that be.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 11 Dec 2023 19:07:18 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 11 14:07:18 2023 Received: from localhost ([127.0.0.1]:54661 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rClca-0007pF-LW for submit <at> debbugs.gnu.org; Mon, 11 Dec 2023 14:07:18 -0500 Received: from mail-qv1-xf35.google.com ([2607:f8b0:4864:20::f35]:55471) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1rClcU-0007oy-Tb for 67604 <at> debbugs.gnu.org; Mon, 11 Dec 2023 14:07:15 -0500 Received: by mail-qv1-xf35.google.com with SMTP id 6a1803df08f44-67ad032559fso32359606d6.2 for <67604 <at> debbugs.gnu.org>; Mon, 11 Dec 2023 11:06:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1702321610; x=1702926410; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=kkUZKzOjO0Ruj7O0zs96a1cgsLdgDwJOmP+429ddhwY=; b=awo+sBpHnH3Z8Tvy8c4Vk9LdZd2KuWpMmJzAD5FIDCtMfudhAoZlGRse3LRVayJlao tPQqJVxkwQChRo8IcBvF/q2Vlq/CPRLfifW/g1+IF3BmS28LmqJ1ujKbtV7pjWBe4WKO 8SU6uTNmhBy0bTEbdJXXUNoa4gt0hHlWXCpjXXW5GU6y5gIscqOWvERhSFza8cONts7Z tLcOleXb1XdT/6jmwJ55+mlnU42r+aEy3IeQDmM0SgopH+4yFK/8qceL8Z/4Jm1KEtwW FoYCJeGw0/mXMPMyUg3jSm8Icwr6sXjaLBgGtCtMgvoSg7ZvQIsDP8Yei8pOHA8JdIHZ EfAw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702321610; x=1702926410; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=kkUZKzOjO0Ruj7O0zs96a1cgsLdgDwJOmP+429ddhwY=; b=ofZa6721Xv2XkkdHvrU6Hpzzl0H8xDRkHhGQE8m9/NBp33XBd50z0lGqc4XKXViyeJ edkXxdtsGSxSA4xzi2IkVyz+Pp+Fmb8aaOlNovALtGkusO+GJ+xvbtzmymFN9rMYG8bD s8iO+f8IbMew48N5RgG+XEm2c+ujRy814i855iPH63XBoaLK3MoXLrwrV5+EkDCXOxWo cJ71yg+p5L0Vw420sV+vVqSOJOuOBojtju7DpbIyUmIEiNgNGaaEgjGdT0YiVS7mB7j7 WjmJZ7XPC6xujCuHrhcVrDJ2x4A386vxSHJCY9LShzPlHzEiwx90auB+uZEidZZo02Oz K93g== X-Gm-Message-State: AOJu0YwSClp3HFKjvFq2j3mOxoqo7i2skCtiJNAaMwG9nP8XjLQkwzUf igQebsp6uUea43w8WYIBIM4= X-Google-Smtp-Source: AGHT+IEHkt5sNpjJPMZfJo2m+Zd1rEz6HlmIDDxy5SGp/9ABkBouDxz+/uUmrsupcKYSkQydI0GgHw== X-Received: by 2002:ad4:5d4b:0:b0:67a:a721:d78e with SMTP id jk11-20020ad45d4b000000b0067aa721d78emr6714034qvb.116.1702321610004; Mon, 11 Dec 2023 11:06:50 -0800 (PST) Received: from smtpclient.apple ([198.30.180.102]) by smtp.gmail.com with ESMTPSA id dd18-20020ad45812000000b0067a34a4dd3asm3521697qvb.130.2023.12.11.11.06.48 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 11 Dec 2023 11:06:49 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images From: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <83ttow3t2h.fsf@HIDDEN> Date: Mon, 11 Dec 2023 14:06:38 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <BFE8F95D-76DE-464D-8341-EFC9970422F3@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> <83ttow3t2h.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Dec 5, 2023, at 10:31=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >> OK, so this was likely a false positive then. I=E2=80=99m out of = ideas. Maybe Windows is magically immune. >=20 > Unlikely. More likely is that we need some specific metrics of the > displayed stuff to see the problem (which is therefore very rare). I agree with this sentiment: it does seem to require special tuning to = reveal itself. I wanted to check to see if you had received my news = that I reproduced the line-skip motion bug on a GNU/Linux system. That = would seem to confirm it=E2=80=99s a general issue with the = display/motion code dealing with inline images. Let me know if I can = produce anything else to help with this one. Thanks.=
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 6 Dec 2023 18:30:27 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Dec 06 13:30:27 2023 Received: from localhost ([127.0.0.1]:40429 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAwfC-00068D-Hn for submit <at> debbugs.gnu.org; Wed, 06 Dec 2023 13:30:27 -0500 Received: from mail-yb1-xb34.google.com ([2607:f8b0:4864:20::b34]:46095) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1rAwfA-00067w-Tr for 67604 <at> debbugs.gnu.org; Wed, 06 Dec 2023 13:30:26 -0500 Received: by mail-yb1-xb34.google.com with SMTP id 3f1490d57ef6-d9caf5cc948so118680276.0 for <67604 <at> debbugs.gnu.org>; Wed, 06 Dec 2023 10:30:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701887407; x=1702492207; darn=debbugs.gnu.org; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:from:to:cc:subject:date:message-id:reply-to; bh=VTWsx98uPYTEGfs49YtUxDqARnihqg6lPQXk2SuxLHs=; b=B5LwHlzkysWhCa2lz9FdAlrR6PmCzpK+/vz46vbq2kw1Zuqn/kkJt3y+IF6iugvQnR DMlw4peNV5+ezGI2w9usvUdmnwsw8cMRtMGsNrC2hr2Ck4sp6CnYpAlS9MgKWCQcSVXh ptGDh37leaUnAEKF4z+pm3AQEqtu7zONobMlhephrKSvdm63JyBUQyyiQOmlKX9n5haq Fkt8qxwKgZR1/3+oKSbVNiwsnCvJD0W5woBoD0jWPgRRpRmVFJcYLPG3WUI75ZRD0rOa r+cXTDv0S9q+JNbxNh9c+qmtzLdfn25O9RpFVVkke0V0RbAAhCJGhw71bZkFFk9eERsN ZUEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701887407; x=1702492207; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=VTWsx98uPYTEGfs49YtUxDqARnihqg6lPQXk2SuxLHs=; b=Ygke7PP82ueYsqAG7yUAwJLDS82lAXuZjabap274SQcPV4YISl1xybZCoeANyEezBB p99MZinhrpQK/YVRM8BzQBikrrH72VDqGG8rVtl/C6MQZ4nwWTl1GelPm4Oh8GcGspdw WKzx5BUmTqGzmyafPEXo42r15G7x47m+tVDO723/NrKKOPYgev11Vt+jfKWgr9Y/Vfm3 cjQZ4FhLrUINd8xKq23qAFdolpisCBt3xXl4DXqdx4as/T5OX7ELvPXrPeziv6O9qQWc Wkvep/uEkSwcmoILK1hDxkY0g/9QhL+ebqK60T4UaRHg16lUP3Sl61etyYKenDX3BM1x KgWQ== X-Gm-Message-State: AOJu0Yy8RSyO/hLx6AyRiwF1ALmllZE4vpi9teYBNn29rRfKhBPnSyMg nHLrJO6EhrGGNWwqyAQUzNBE8BppEAc= X-Google-Smtp-Source: AGHT+IGdHvPqkywnhMDJmuJzQP+cbjmBqOOv9zPwwr6OKPC35MNr2FnTAXI+HB9RmIsXpTqh7JcXjw== X-Received: by 2002:a25:9206:0:b0:db7:dacf:3fae with SMTP id b6-20020a259206000000b00db7dacf3faemr1244070ybo.91.1701887407204; Wed, 06 Dec 2023 10:30:07 -0800 (PST) Received: from smtpclient.apple ([131.183.131.33]) by smtp.gmail.com with ESMTPSA id d7-20020a258247000000b00d9ab86bdaffsm3923491ybn.12.2023.12.06.10.30.06 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 06 Dec 2023 10:30:06 -0800 (PST) From: JD Smith <jdtsmith@HIDDEN> Message-Id: <13812AAC-3E6E-4621-B0DC-3D2CE87FA5D2@HIDDEN> Content-Type: multipart/alternative; boundary="Apple-Mail=_A8D138D2-462C-4C18-94C5-621A7206464C" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images Date: Wed, 6 Dec 2023 13:29:54 -0500 In-Reply-To: <83jzpr4ixu.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> <83ttow3t2h.fsf@HIDDEN> <990D9D56-A1EF-4450-B5E2-C6F47FECC9E3@HIDDEN> <83jzpr4ixu.fsf@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --Apple-Mail=_A8D138D2-462C-4C18-94C5-621A7206464C Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Dec 6, 2023, at 7:25=E2=80=AFAM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Tue, 5 Dec 2023 23:33:42 -0500 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >> Not really, no. But reproducing the problem is just a step towards >> debugging it, so the alternative is for you to step through next-line >> and its subroutines >>=20 >> I stepped through next-line and subroutines via edebug and landed via = line-move-visual on: >>=20 >> (vertical-motion (cons (or goal-column >> (if (consp temporary-goal-column) >> (car temporary-goal-column) >> temporary-goal-column)) >> arg)) >>=20 >> So vertical-motion is where all fingers point. >=20 > Did you verify that goal-column and temporary-goal-column have correct > values in the case where the problem happens? Yes. Sometimes the temporary-goal-column is 0 (if I C-a on a text line) = or sometimes a fractional number like 66.5 or similar if I start my = downward movement by first C-a=E2=80=99ing on the green image line. In = both cases the short screen line #3 line is skipped. >> It isn't like I'm the only >> one who should be able to read the code and understand where it = fails. >>=20 >> I agree with that, but unfortunately am not setup for it here and = have next to no familiarity with Emacs=E2=80=99 >> C code. I=E2=80=99m sorry I can=E2=80=99t be of more help. But = similar to how you were unable to work with dvisvgm >> and other packages, I don=E2=80=99t have access to gdb, as it is not = supported on my architecture. >=20 > If someone can reproduce and debug the problem on a system other than > macOS, that would be some progress. (If the problem is specific to > macOS, it is much less interesting, at least to me, since the display > code on macOS behaves differently in significant ways, and because > macOS is in general an idiosyncratic platform.) I have made progress. I built master on a remote Linux server and ran = it via X forwarding. With an 8x17 font, the bug is found at offset 2 =3D = 148 pixel width of the red SVG, for the specific frame-width =3D 74. I = verified that (vertical-motion 1) causes the same line-skip error, when = starting from the green image. =20 This makes me think that your difficulty reproducing the bug on your = system may result from a miscommunication. To be sure, I=E2=80=99ve = recorded a session of me (re-)discovering the bug at this comment = <https://gist.github.com/jdtsmith/914c9f44ed5f5394e4ec188b00b09b47?permali= nk_comment_id=3D4784608#gistcomment-4784608>. Hopefully that=E2=80=99s = useful. =20 If not, I did the build on my Linux server with debug options, and can = run over gdb. If you can give me a simple recipe for where I should = break and what I should look at, I=E2=80=99m happy to try. But I = suspect it will be 25x more efficient for you to have a look if you can = reproduce. Re MacOS, I=E2=80=99m surprised you wouldn=E2=80=99t say that Windows is = similarly an idiosyncratic system for display and other purposes.= --Apple-Mail=_A8D138D2-462C-4C18-94C5-621A7206464C Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 <html><head><meta http-equiv=3D"content-type" content=3D"text/html; = charset=3Dutf-8"></head><body style=3D"overflow-wrap: break-word; = -webkit-nbsp-mode: space; line-break: after-white-space;"><br = id=3D"lineBreakAtBeginningOfMessage"><div><br><blockquote = type=3D"cite"><div>On Dec 6, 2023, at 7:25=E2=80=AFAM, Eli Zaretskii = <eliz@HIDDEN> wrote:</div><br = class=3D"Apple-interchange-newline"><div><meta = charset=3D"UTF-8"><blockquote type=3D"cite" style=3D"font-family: = Helvetica; font-size: 12px; font-style: normal; font-variant-caps: = normal; font-weight: 400; letter-spacing: normal; orphans: auto; = text-align: start; text-indent: 0px; text-transform: none; white-space: = normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; = text-decoration: none;">From: JD Smith = <jdtsmith@HIDDEN><br>Date: Tue, 5 Dec 2023 23:33:42 = -0500<br>Cc: 67604 <at> debbugs.gnu.org<br><br>Not really, no. But = reproducing the problem is just a step towards<br>debugging it, so the = alternative is for you to step through next-line<br>and its = subroutines<br><br>I stepped through next-line and subroutines via = edebug and landed via line-move-visual on:<br><br>(vertical-motion = (cons (or goal-column<br> (if (consp = temporary-goal-column)<br>(car = temporary-goal-column)<br> temporary-go= al-column))<br>arg))<br><br>So vertical-motion is where all fingers = point.<br></blockquote><br style=3D"caret-color: rgb(0, 0, 0); = font-family: Helvetica; font-size: 12px; font-style: normal; = font-variant-caps: normal; font-weight: 400; letter-spacing: normal; = text-align: start; text-indent: 0px; text-transform: none; white-space: = normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; = text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); = font-family: Helvetica; font-size: 12px; font-style: normal; = font-variant-caps: normal; font-weight: 400; letter-spacing: normal; = text-align: start; text-indent: 0px; text-transform: none; white-space: = normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; = text-decoration: none; float: none; display: inline !important;">Did you = verify that goal-column and temporary-goal-column have correct</span><br = style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: = 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; = letter-spacing: normal; text-align: start; text-indent: 0px; = text-transform: none; white-space: normal; word-spacing: 0px; = -webkit-text-stroke-width: 0px; text-decoration: none;"><span = style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: = 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; = letter-spacing: normal; text-align: start; text-indent: 0px; = text-transform: none; white-space: normal; word-spacing: 0px; = -webkit-text-stroke-width: 0px; text-decoration: none; float: none; = display: inline !important;">values in the case where the problem = happens?</span><br style=3D"caret-color: rgb(0, 0, 0); font-family: = Helvetica; font-size: 12px; font-style: normal; font-variant-caps: = normal; font-weight: 400; letter-spacing: normal; text-align: start; = text-indent: 0px; text-transform: none; white-space: normal; = word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: = none;"></div></blockquote><div><br></div><div>Yes. Sometimes the = temporary-goal-column is 0 (if I C-a on a text line) or sometimes a = fractional number like 66.5 or similar if I start my downward movement = by first C-a=E2=80=99ing on the green image line. In both cases = the short screen line #3 line is skipped.</div><br><blockquote = type=3D"cite"><div><blockquote type=3D"cite" style=3D"font-family: = Helvetica; font-size: 12px; font-style: normal; font-variant-caps: = normal; font-weight: 400; letter-spacing: normal; orphans: auto; = text-align: start; text-indent: 0px; text-transform: none; white-space: = normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; = text-decoration: none;">It isn't like I'm the only<br>one who should be = able to read the code and understand where it fails.<br><br>I agree with = that, but unfortunately am not setup for it here and have next to no = familiarity with Emacs=E2=80=99<br>C code. I=E2=80=99m sorry I = can=E2=80=99t be of more help. But similar to how you were unable = to work with dvisvgm<br>and other packages, I don=E2=80=99t have access = to gdb, as it is not supported on my architecture.<br></blockquote><br = style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: = 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; = letter-spacing: normal; text-align: start; text-indent: 0px; = text-transform: none; white-space: normal; word-spacing: 0px; = -webkit-text-stroke-width: 0px; text-decoration: none;"><span = style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: = 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; = letter-spacing: normal; text-align: start; text-indent: 0px; = text-transform: none; white-space: normal; word-spacing: 0px; = -webkit-text-stroke-width: 0px; text-decoration: none; float: none; = display: inline !important;">If someone can reproduce and debug the = problem on a system other than</span><br style=3D"caret-color: rgb(0, 0, = 0); font-family: Helvetica; font-size: 12px; font-style: normal; = font-variant-caps: normal; font-weight: 400; letter-spacing: normal; = text-align: start; text-indent: 0px; text-transform: none; white-space: = normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; = text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); = font-family: Helvetica; font-size: 12px; font-style: normal; = font-variant-caps: normal; font-weight: 400; letter-spacing: normal; = text-align: start; text-indent: 0px; text-transform: none; white-space: = normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; = text-decoration: none; float: none; display: inline !important;">macOS, = that would be some progress. (If the problem is specific = to</span><br style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; = font-size: 12px; font-style: normal; font-variant-caps: normal; = font-weight: 400; letter-spacing: normal; text-align: start; = text-indent: 0px; text-transform: none; white-space: normal; = word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: = none;"><span style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; = font-size: 12px; font-style: normal; font-variant-caps: normal; = font-weight: 400; letter-spacing: normal; text-align: start; = text-indent: 0px; text-transform: none; white-space: normal; = word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: = none; float: none; display: inline !important;">macOS, it is much less = interesting, at least to me, since the display</span><br = style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: = 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; = letter-spacing: normal; text-align: start; text-indent: 0px; = text-transform: none; white-space: normal; word-spacing: 0px; = -webkit-text-stroke-width: 0px; text-decoration: none;"><span = style=3D"caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: = 12px; font-style: normal; font-variant-caps: normal; font-weight: 400; = letter-spacing: normal; text-align: start; text-indent: 0px; = text-transform: none; white-space: normal; word-spacing: 0px; = -webkit-text-stroke-width: 0px; text-decoration: none; float: none; = display: inline !important;">code on macOS behaves differently in = significant ways, and because</span><br style=3D"caret-color: rgb(0, 0, = 0); font-family: Helvetica; font-size: 12px; font-style: normal; = font-variant-caps: normal; font-weight: 400; letter-spacing: normal; = text-align: start; text-indent: 0px; text-transform: none; white-space: = normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; = text-decoration: none;"><span style=3D"caret-color: rgb(0, 0, 0); = font-family: Helvetica; font-size: 12px; font-style: normal; = font-variant-caps: normal; font-weight: 400; letter-spacing: normal; = text-align: start; text-indent: 0px; text-transform: none; white-space: = normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; = text-decoration: none; float: none; display: inline !important;">macOS = is in general an idiosyncratic = platform.)</span></div></blockquote></div><br><div>I have made progress. = I built master on a remote Linux server and ran it via X = forwarding. With an 8x17 font, the bug is found at offset 2 =3D = 148 pixel width of the red SVG, for the specific frame-width =3D 74. = I verified that (vertical-motion 1) causes the same line-skip = error, when starting from the green image. = </div><div><br></div><div>This makes me think that your difficulty = reproducing the bug on your system may result from a miscommunication. = To be sure, I=E2=80=99ve recorded a session of me (re-)discovering = the bug at <a = href=3D"https://gist.github.com/jdtsmith/914c9f44ed5f5394e4ec188b00b09b47?= permalink_comment_id=3D4784608#gistcomment-4784608">this comment</a>. = Hopefully that=E2=80=99s useful. = </div><div><br></div><div>If not, I did the build on my Linux = server with debug options, and can run over gdb. If you can give me a = simple recipe for where I should break and what I should look at, I=E2=80=99= m happy to try. But I suspect it will be 25x more efficient for = you to have a look if you can reproduce.</div><div><br></div><div>Re = MacOS, I=E2=80=99m surprised you wouldn=E2=80=99t say that Windows is = similarly an idiosyncratic system for display and other = purposes.</div></body></html>= --Apple-Mail=_A8D138D2-462C-4C18-94C5-621A7206464C--
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 6 Dec 2023 12:25:11 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Wed Dec 06 07:25:11 2023 Received: from localhost ([127.0.0.1]:39010 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAqxi-0006zm-Qt for submit <at> debbugs.gnu.org; Wed, 06 Dec 2023 07:25:11 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:34442) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1rAqxg-0006zZ-Sl for 67604 <at> debbugs.gnu.org; Wed, 06 Dec 2023 07:25:09 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1rAqxP-0004Jr-JW; Wed, 06 Dec 2023 07:24:51 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=NOfoFP7+wkwrSYZ2MfG/8Khvl/yqk6+EeqYjBWO4qzw=; b=DJWZIGQAbve8Ad5PF2vM G+d0zbPmhqCvVi7WT67b1uPwQll4MfdEY4ppo2I9lThuvh18qvaOl4ICmFts6S9SbjEHq3Pg4gVaV ssz4IxxvxJsUzKcRcFeMVev23U5Dx2Ba8vzrUA8HtISieUEoJkL0rKnN2ZSgWbIG9UJgsFyrQM91V Odqe4FZwYDDsXFEOc8a9cYFFj8gvJai+SFjm7epssT5au59WeQK56R7NwQURnpBUh4y97Hv90gk9C 5b3riSQFjGcteVUeClJKTnq4dmINvuGXPiRM5GPWLPD7xXRPFy/N+fPju/L6OMdteSKvfsT1iYG4L 4Lre0FJ8SvboFQ==; Date: Wed, 06 Dec 2023 14:25:01 +0200 Message-Id: <83jzpr4ixu.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <990D9D56-A1EF-4450-B5E2-C6F47FECC9E3@HIDDEN> (message from JD Smith on Tue, 5 Dec 2023 23:33:42 -0500) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> <83ttow3t2h.fsf@HIDDEN> <990D9D56-A1EF-4450-B5E2-C6F47FECC9E3@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Tue, 5 Dec 2023 23:33:42 -0500 > Cc: 67604 <at> debbugs.gnu.org > > Not really, no. But reproducing the problem is just a step towards > debugging it, so the alternative is for you to step through next-line > and its subroutines > > I stepped through next-line and subroutines via edebug and landed via line-move-visual on: > > (vertical-motion (cons (or goal-column > (if (consp temporary-goal-column) > (car temporary-goal-column) > temporary-goal-column)) > arg)) > > So vertical-motion is where all fingers point. Did you verify that goal-column and temporary-goal-column have correct values in the case where the problem happens? > It isn't like I'm the only > one who should be able to read the code and understand where it fails. > > I agree with that, but unfortunately am not setup for it here and have next to no familiarity with Emacs’ > C code. I’m sorry I can’t be of more help. But similar to how you were unable to work with dvisvgm > and other packages, I don’t have access to gdb, as it is not supported on my architecture. If someone can reproduce and debug the problem on a system other than macOS, that would be some progress. (If the problem is specific to macOS, it is much less interesting, at least to me, since the display code on macOS behaves differently in significant ways, and because macOS is in general an idiosyncratic platform.)
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 6 Dec 2023 04:34:14 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Dec 05 23:34:14 2023 Received: from localhost ([127.0.0.1]:38674 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAjby-00039V-8Q for submit <at> debbugs.gnu.org; Tue, 05 Dec 2023 23:34:14 -0500 Received: from mail-il1-x131.google.com ([2607:f8b0:4864:20::131]:45063) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1rAjbw-00039G-01 for 67604 <at> debbugs.gnu.org; Tue, 05 Dec 2023 23:34:12 -0500 Received: by mail-il1-x131.google.com with SMTP id e9e14a558f8ab-35d624b0415so15940535ab.2 for <67604 <at> debbugs.gnu.org>; Tue, 05 Dec 2023 20:34:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701837234; x=1702442034; darn=debbugs.gnu.org; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:from:to:cc:subject:date:message-id:reply-to; bh=uBz6KyJNjOmcZJOvkTKBybf25dtr/j+HNmxEhBcTtXU=; b=lDfGjym5b36kFzDTXd/z4CGL2ulAQRrzR8zcBgiwshQDkRqqYDNHhkLMD/YJrnm/9u kGi5SFK8Kkf8wMj/7fr7YAAUTGEnhWkRJMELvoKdsZzYKxVHkidDRxC8ORTdBVKdflsp 09I762EBqAx+WIE20AWvLXQ8982M5/ZwVNHlhwzeui2/sx1Cw+BzQWsKiwGPjGaHjH84 POO2rB0VglLk9SUQ111UtTRW2pIvGy3v6zf1uSEw+R5pVGho7vGS6q2QcjnFNgBqDy+w 4naH/FiF3U1FiRq532IhibpQLtMwM56kZ3YkEUXxdx6E2XT2iKjIQ6iQfFX4c0Ug+5hs S9Hw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701837234; x=1702442034; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=uBz6KyJNjOmcZJOvkTKBybf25dtr/j+HNmxEhBcTtXU=; b=FI52ubo2t4myJoJIin82gJVOyCru7NrRWIJj9kQVXVieasJzbSy5KsStvAsbriCk9w fpHLyCHqfLdfmwcnfGeINXV2pb7Gwv5KE7SvXPk3MbWphjCx2CUZXgg0Mr0TBg/esNCH RoBaJoR8E5114HfvX1J0HdCy1R2+FESLC661phoKaTf+wrONLQ1fHCgMcIKfjDHpoW/a XczrxVzzNHzny4FQ1+ROU6PMHzKtEbTF+8x5hrPW5wUDnD1vXkO5EYcIAZtoF6gFQtrb XNYIMEmjwmRHtsn2eW6wIjnkgYAKt3voo9erCq8OsXxiOYDWueR43WYuGNZmi/JexIdU Jolw== X-Gm-Message-State: AOJu0YyMenl3xIRjwShGJ4uN1YvOkaVQlnIMHBn443/IrO4liBLTUGrx KcBXI+cPyFZ+x6+c4ZE8V2ZDWe0Gc1k= X-Google-Smtp-Source: AGHT+IH4WS+OL830zdvFjxdC8ErT32Wkn3WJoIKp0Ct7G01CiclUjeeWA7iHegbx+4GPYOsYgPipSw== X-Received: by 2002:a92:d68f:0:b0:35d:6991:a535 with SMTP id p15-20020a92d68f000000b0035d6991a535mr558366iln.30.1701837234472; Tue, 05 Dec 2023 20:33:54 -0800 (PST) Received: from smtpclient.apple (cm-24-53-187-34.buckeyecom.net. [24.53.187.34]) by smtp.gmail.com with ESMTPSA id dh6-20020a056e021f0600b0035265088c52sm1014837ilb.34.2023.12.05.20.33.53 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 05 Dec 2023 20:33:53 -0800 (PST) From: JD Smith <jdtsmith@HIDDEN> Message-Id: <990D9D56-A1EF-4450-B5E2-C6F47FECC9E3@HIDDEN> Content-Type: multipart/alternative; boundary="Apple-Mail=_E7292599-3864-4D12-8366-0F93BD2FED6D" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images Date: Tue, 5 Dec 2023 23:33:42 -0500 In-Reply-To: <83ttow3t2h.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> <83ttow3t2h.fsf@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --Apple-Mail=_E7292599-3864-4D12-8366-0F93BD2FED6D Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Dec 5, 2023, at 10:31=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Tue, 5 Dec 2023 18:06:41 -0500 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >>>> Before or after the test? >>>=20 >>> After the test. >>=20 >> OK, so this was likely a false positive then. I=E2=80=99m out of = ideas. Maybe Windows is magically immune. >=20 > Unlikely. More likely is that we need some specific metrics of the > displayed stuff to see the problem (which is therefore very rare). >=20 >> For me both NS and Mac builds with your most recent xdisp.c fixes = exhibit the same motion issue. Do you have anyone you can call in to = try the simple test on another build? >=20 > Not really, no. But reproducing the problem is just a step towards > debugging it, so the alternative is for you to step through next-line > and its subroutines I stepped through next-line and subroutines via edebug and landed via = line-move-visual on: (vertical-motion (cons (or goal-column (if (consp temporary-goal-column) (car temporary-goal-column) temporary-goal-column)) arg)) So vertical-motion is where all fingers point. > It isn't like I'm the only > one who should be able to read the code and understand where it fails. I agree with that, but unfortunately am not setup for it here and have = next to no familiarity with Emacs=E2=80=99 C code. I=E2=80=99m sorry I = can=E2=80=99t be of more help. But similar to how you were unable to = work with dvisvgm and other packages, I don=E2=80=99t have access to = gdb, as it is not supported on my architecture. --Apple-Mail=_E7292599-3864-4D12-8366-0F93BD2FED6D Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 <html><head><meta http-equiv=3D"content-type" content=3D"text/html; = charset=3Dutf-8"></head><body style=3D"overflow-wrap: break-word; = -webkit-nbsp-mode: space; line-break: after-white-space;"><br = id=3D"lineBreakAtBeginningOfMessage"><div><br><blockquote = type=3D"cite"><div>On Dec 5, 2023, at 10:31=E2=80=AFPM, Eli Zaretskii = <eliz@HIDDEN> wrote:</div><br = class=3D"Apple-interchange-newline"><div><div><blockquote = type=3D"cite">From: JD Smith <jdtsmith@HIDDEN><br>Date: Tue, 5 = Dec 2023 18:06:41 -0500<br>Cc: 67604 <at> debbugs.gnu.org<br><br><blockquote = type=3D"cite"><blockquote type=3D"cite">Before or after the = test?<br></blockquote><br>After the test.<br></blockquote><br>OK, so = this was likely a false positive then. I=E2=80=99m out of ideas. = Maybe Windows is magically immune.<br></blockquote><br>Unlikely. = More likely is that we need some specific metrics of = the<br>displayed stuff to see the problem (which is therefore very = rare).<br><br><blockquote type=3D"cite">For me both NS and Mac builds = with your most recent xdisp.c fixes exhibit the same motion issue. = Do you have anyone you can call in to try the simple test on = another build?<br></blockquote><br>Not really, no. But reproducing = the problem is just a step towards<br>debugging it, so the alternative = is for you to step through next-line<br>and its = subroutines</div></div></blockquote><div><br></div><div>I stepped = through next-line and subroutines via edebug and landed via = line-move-visual on:</div><div><br></div></div><blockquote = style=3D"margin: 0 0 0 40px; border: none; padding: = 0px;"><div><div><div>(vertical-motion (cons (or = goal-column</div></div></div><div><div><div><span class=3D"Apple-tab-span"= style=3D"white-space:pre"> </span> = (if (consp = temporary-goal-column)</div></div></div><div><div><div><span = class=3D"Apple-tab-span" style=3D"white-space:pre"> = </span> (car = temporary-goal-column)</div></div></div><div><div><div><span = class=3D"Apple-tab-span" style=3D"white-space:pre"> = </span> = temporary-goal-column))</div></div></div><div><div><div><span = class=3D"Apple-tab-span" style=3D"white-space:pre"> = </span> arg))</div></div></div></blockquote><div><div><br></div>So = vertical-motion is where all fingers point.</div><div><br><blockquote = type=3D"cite"><div><div>It isn't like I'm the only<br>one who should be = able to read the code and understand where it = fails.<br></div></div></blockquote></div><br><div>I agree with that, but = unfortunately am not setup for it here and have next to no familiarity = with Emacs=E2=80=99 C code. I=E2=80=99m sorry I can=E2=80=99t be = of more help. But similar to how you were unable to work with = dvisvgm and other packages, I don=E2=80=99t have access to gdb, as it is = not supported on my architecture.</div><div><br></div></body></html>= --Apple-Mail=_E7292599-3864-4D12-8366-0F93BD2FED6D--
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 6 Dec 2023 03:31:49 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Dec 05 22:31:49 2023 Received: from localhost ([127.0.0.1]:38652 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAidY-0001GW-ML for submit <at> debbugs.gnu.org; Tue, 05 Dec 2023 22:31:48 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:44492) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1rAidS-0001GC-UP for 67604 <at> debbugs.gnu.org; Tue, 05 Dec 2023 22:31:46 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1rAidB-0007bq-UF; Tue, 05 Dec 2023 22:31:25 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=UJRHvZsfN89PLRsGbJZDtpbEQ9KCxxiCUN0qpr8FJkU=; b=lVNu2WyjdyWM9xHY3aH5 +yB9z7xfXIU+8zJKBVLVmlJBoSacbZj6iG0s9qLmKD9Hok9mxMh39rpsf9kprKxVwktqO+ZqAwQlI 4qyeh+Ws1ocMVlmzsg9UzuoVw7yWMtt9CQJJsj9U/ZYxnrkTaxle7kgFetFijcaqRyezQxLh8BdE8 h/bPGO1DSyJRdn04xPLLapJCcNaD55693LCPbSfHzb6hyNVbAi2H0xfN7noaX+1x3R1jRqOAWchup DAtCV+Ff+dXvASblD0Q/EwOYLehYpV8qI3926SFS74DlmcMWUHxU20FvFmYdVeWsN7F0ivcKL9pzj XG1JNDIwFp2hYw==; Date: Wed, 06 Dec 2023 05:31:34 +0200 Message-Id: <83ttow3t2h.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> (message from JD Smith on Tue, 5 Dec 2023 18:06:41 -0500) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Tue, 5 Dec 2023 18:06:41 -0500 > Cc: 67604 <at> debbugs.gnu.org > > >> Before or after the test? > > > > After the test. > > OK, so this was likely a false positive then. I’m out of ideas. Maybe Windows is magically immune. Unlikely. More likely is that we need some specific metrics of the displayed stuff to see the problem (which is therefore very rare). > For me both NS and Mac builds with your most recent xdisp.c fixes exhibit the same motion issue. Do you have anyone you can call in to try the simple test on another build? Not really, no. But reproducing the problem is just a step towards debugging it, so the alternative is for you to step through next-line and its subroutines (or in C through vertical-motion) and tell what happens there, and preferably also why. It isn't like I'm the only one who should be able to read the code and understand where it fails.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 5 Dec 2023 23:07:15 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Tue Dec 05 18:07:15 2023 Received: from localhost ([127.0.0.1]:38533 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAeVX-0002YI-AP for submit <at> debbugs.gnu.org; Tue, 05 Dec 2023 18:07:15 -0500 Received: from mail-yb1-xb36.google.com ([2607:f8b0:4864:20::b36]:56752) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1rAeVS-0002Y0-A3 for 67604 <at> debbugs.gnu.org; Tue, 05 Dec 2023 18:07:14 -0500 Received: by mail-yb1-xb36.google.com with SMTP id 3f1490d57ef6-db549f869a3so4842489276.1 for <67604 <at> debbugs.gnu.org>; Tue, 05 Dec 2023 15:06:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701817613; x=1702422413; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Z/18NA/cUK7no0eAUHYq9zqAUQsU/RpCpj0SdHafdck=; b=GVMVl3IAOKS5Qu6W9lmkn3rauWkU/U5K13R/1KKpH95QVC2TBYyBWr3tGz74tNbXZu bBoJyLRUnnFTH2S16z5zaxLHjWNBbJH8ofV5DrB9CfJdsS6R8g4nJidupUXRBLBnwMc6 6nTnS1rgNZwuwN3YlxLa/8b6lOVvmDMKyb7mBiS3eOgUU+u+m+ZvNiaEYbu3std5ZIla y+2NruVSkwfrLWZE2QXjE3C0w1Eqsw63Snr09eG4XnC5NlJcnLdNLXKOddb6SGopI1N6 rphZOXYnu1hPv5QVT129Bf6a1uud6AMlE9s+VZH6dJk2RJXY6QwcRFtsCn3jKbMVvYZP C//A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701817613; x=1702422413; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Z/18NA/cUK7no0eAUHYq9zqAUQsU/RpCpj0SdHafdck=; b=IoPr0SJBmXJRyHFJX71qjntIJ3apm9HS5ksl8OCwiD3NPKswEdbz1vaWuNVNk/7EG8 rgExJya8hnDomGMt/PFn98TePBgovhhZr9abvdMi8crWMY9tsZdWdu+f/yAsskzRirey jjPIOyn5ivJhLSujiOy4ZTHmNh0hl0wPMXs7dEwuB47p3IqtI42yhTWVPJ78lXBOa6m4 bffb4boQ5RpHXKcXuNHaLlOByMYaF1xbm24/+O2CvCA8OAbqiMO0BvSCCIQj3RNTK131 DQKrAhL/8L5rj8xV3aB/iLeiUMRAZtMpA0jLy+h9muJ6EbfcHiy+9sb9tS4cG5Sndac5 X5qA== X-Gm-Message-State: AOJu0YzAnZbaVKCzzrfb56l8hOhPN/R7sb+ghgmwiwjm9c7fe+ycXiBh J5T1NnBs+hLbHjuP3hbaf4tyyM2uPiM= X-Google-Smtp-Source: AGHT+IFmqynI+n07VdxKeufLEkasc5/JxZrCBHsva31bE2+eBYUiRFMDzPtp9uzHGMlUllKDt8vF5A== X-Received: by 2002:a0d:d892:0:b0:5d8:d93:f054 with SMTP id a140-20020a0dd892000000b005d80d93f054mr3963510ywe.23.1701817613207; Tue, 05 Dec 2023 15:06:53 -0800 (PST) Received: from smtpclient.apple ([131.183.131.33]) by smtp.gmail.com with ESMTPSA id i134-20020a816d8c000000b005d94c9de9bdsm1323173ywc.49.2023.12.05.15.06.52 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 05 Dec 2023 15:06:52 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images From: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <83h6kx5o2u.fsf@HIDDEN> Date: Tue, 5 Dec 2023 18:06:41 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <8698018C-6994-4CD2-8810-F77A65D60212@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> <83h6kx5o2u.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Dec 4, 2023, at 10:24=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Mon, 4 Dec 2023 16:05:56 -0500 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >>>> OK great. Is it possible at offset =3D -6 =3D 140 pixels the green = image has wrapped back onto line 1? That=E2=80=99s a =E2=80=9Cfalse = positive=E2=80=9D bug. The layout after my/find-skip-bug has found the = magic width must look as in my prior screenshot (with green image at the = beginning of screen line 2) or it=E2=80=99s not a real bug. >>>=20 >>> No, it looks with the green image at the visual end of a screen = line. >>=20 >> Before or after the test? >=20 > After the test. OK, so this was likely a false positive then. I=E2=80=99m out of ideas. = Maybe Windows is magically immune. For me both NS and Mac builds with your most recent xdisp.c fixes = exhibit the same motion issue. Do you have anyone you can call in to = try the simple test on another build? Thanks.=
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 5 Dec 2023 03:24:22 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 22:24:22 2023 Received: from localhost ([127.0.0.1]:36227 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAM2n-0007Lj-Qr for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 22:24:22 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:33876) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1rAM2l-0007LW-NA for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 22:24:20 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1rAM2V-0004Dw-H8; Mon, 04 Dec 2023 22:24:03 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=BIpPKkzIx4mmuyHI5faE+bV2L1ljQDCBysxXQPyIBUM=; b=Cu3h9FU+JbDHaxSFoh3Z zLqBGMGvJcpz7yCR5MkKe3eigFWuNpQEPZ6S3HLsjFPqsYqotzN/jjRWi7oJReRvHdhg/nbHbBCgw +HT8ZzJ3IuieNqWnt9XKLVDleqwDhF95dz8TRQc9+XfVjunWQR3IyGc02nWYvMuBWgTaXd7VTodMr ELOBlUH95NkKIgSTibofhIaK0PKNK69YnfQzLOzsb6IeETfU+5Lf8Jd3GNGz0IXoYgqsBBzE0JHY+ KGtUM53lkSNpCOqJb+ieZGOi9sXjkAEm/URrK17mKCgiyNV4Fg3/SL1SiB9o/yXuAqt46pcHtyM90 fpfOEmA2b34PNw==; Date: Tue, 05 Dec 2023 05:24:09 +0200 Message-Id: <83h6kx5o2u.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> (message from JD Smith on Mon, 4 Dec 2023 16:05:56 -0500) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Mon, 4 Dec 2023 16:05:56 -0500 > Cc: 67604 <at> debbugs.gnu.org > > >> OK great. Is it possible at offset = -6 = 140 pixels the green image has wrapped back onto line 1? That’s a “false positive” bug. The layout after my/find-skip-bug has found the magic width must look as in my prior screenshot (with green image at the beginning of screen line 2) or it’s not a real bug. > > > > No, it looks with the green image at the visual end of a screen line. > > Before or after the test? After the test.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 4 Dec 2023 21:06:27 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 16:06:27 2023 Received: from localhost ([127.0.0.1]:35875 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAG94-0002cM-S2 for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 16:06:27 -0500 Received: from mail-qv1-xf32.google.com ([2607:f8b0:4864:20::f32]:42043) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1rAG93-0002cA-0K for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 16:06:25 -0500 Received: by mail-qv1-xf32.google.com with SMTP id 6a1803df08f44-67a8a745c43so36523596d6.0 for <67604 <at> debbugs.gnu.org>; Mon, 04 Dec 2023 13:06:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701723968; x=1702328768; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=XKwNtyRyIoY/91X9jo1B9l49aUrTs6FU3ogcouIR+bI=; b=ByyqIc5otEgv/iBdZuYR+L28EcibE0CCL9ySPqXYXXa842Hxq0WHz6V/oF07WnikId 17fxR+qEEFHz4LK7Qv6r+33kGmbRIjd7z0EdwR6EGp7boemQNzJa/gA0zg98SdhEwTom sBtFOqft/zrGktG9Dk707oBHb+Jb1iGewmQEX2fAhnLkFptbyJrR6nnT2ugzWFrrFl8S cOKA1C2WNmaxVmsUd/wvX4NiS3NKB5i7AQSO5o1cENLnJCpONflSsXUbjffjW9X1qdRz HGZHXue0HdLVvs6BMmX0XwVi82eAMdTuZUz+Ma/xLKFA1+3B0b4H8mYIDYSNIK3oJJZp +16w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701723968; x=1702328768; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XKwNtyRyIoY/91X9jo1B9l49aUrTs6FU3ogcouIR+bI=; b=pB0sXz6bBcLHr1W1S7Z56gosTs3HbWgUXJj2T0UntDJA8LXnLVb5qdBwWa+jBfg8+K 6+lVyizd/KMt8wAiDudVts/UkWdfSgPwzAqRDYJXKJSQ3EDZbIlbxriAgYN625CkCTRz wUHMmeCE+H1/dpUmUK5NeM09E5miRmX6b3kotO5s6DbFUCrZqtcmplXYvS7D09XBSJt1 JHkn2XzRV5ZtljzUmCxWe/O3i/mvEILJ+Om16/Jy0T1CE3U/i3bep2G6HVoiURCbuB7r ZO3ui9/Ddq2Tl5JTHyLAHaHz4VPxAH1WlVhnNzWrtlzte0Ild2nSGCy+JdzwGxtQq7AN TuKQ== X-Gm-Message-State: AOJu0YxfEsCqe1kQeX7tzxPy85MdruXBFgNx8V3csB0QnUMpEedbHXnl xuUSrpiPuLPIsae/B5BpHt/JSGyyJ7k= X-Google-Smtp-Source: AGHT+IF617UPSbJgaK0AYjXJxwiXHvRiO0A/7yyQgp5EUPefChcAxd6jVDzSgA0JmMd7ST69+eWlTQ== X-Received: by 2002:a05:6214:5092:b0:67a:9a3f:e48a with SMTP id kk18-20020a056214509200b0067a9a3fe48amr244608qvb.26.1701723968437; Mon, 04 Dec 2023 13:06:08 -0800 (PST) Received: from smtpclient.apple ([198.30.180.109]) by smtp.gmail.com with ESMTPSA id t1-20020a0ce2c1000000b0067a1e5ef6b1sm2512910qvl.106.2023.12.04.13.06.07 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Dec 2023 13:06:07 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images From: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <83jzpt69my.fsf@HIDDEN> Date: Mon, 4 Dec 2023 16:05:56 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <E5EDCDA9-8EF3-40A1-810D-B8B04B22E5EA@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> <83jzpt69my.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Dec 4, 2023, at 2:38=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Mon, 4 Dec 2023 14:16:10 -0500 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >>> Now I run it and I get >>>=20 >>> Found Bug at offset -6 =3D 140 pixels >>>=20 >>> but the problem with cursor jumping to "JUMPS HERE" still doesn't >>> happen. >>=20 >>=20 >> OK great. Is it possible at offset =3D -6 =3D 140 pixels the green = image has wrapped back onto line 1? That=E2=80=99s a =E2=80=9Cfalse = positive=E2=80=9D bug. The layout after my/find-skip-bug has found the = magic width must look as in my prior screenshot (with green image at the = beginning of screen line 2) or it=E2=80=99s not a real bug. >=20 > No, it looks with the green image at the visual end of a screen line. Before or after the test? If before the test, you haven=E2=80=99t tried = this, please resize the frame until the green image wraps to visual line = 2, then reduce width by one column more.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 4 Dec 2023 19:38:48 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 14:38:48 2023 Received: from localhost ([127.0.0.1]:35742 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAEmG-0000EQ-9m for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 14:38:48 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:42130) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1rAEmE-0000EE-Tt for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 14:38:47 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1rAEly-0007NP-Ny; Mon, 04 Dec 2023 14:38:30 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=/3ZOWm6tAuxRfDKJx+1IRVOsxoA2Pgwqp/eMZ5xd7Fw=; b=CIjFTJqKKlJcvt3n88nG iwbutA6uyOsdkNXQ43Bg6/uLOFYb9jO5B9MqlwTP9Mw/HTbmbKZrFgdEtSYHADLkcZzv7gMJeF87O WCTQISmvm6+6xmdSJroZpdHaWLM1zhMIIEYS23t+OaBUCcmvLkx0N1l/uxZnQluk/hpO5nukETJjd PMW65tlWgFr1OOCdfcNOeG313lyzSs4R0vnexN4ORAJAeimWhvZkQwm8Lm3T19bTotp7FDMSAogkb FQunx7mG/C8tA1qqnTK7cuCEwbQUwG0DGhCYNDlCat0/o7NhgmCyoRFjeg+XJLqYKWoJu+quna24i 45iuKc5SaG+kKQ==; Date: Mon, 04 Dec 2023 21:38:29 +0200 Message-Id: <83jzpt69my.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> (message from JD Smith on Mon, 4 Dec 2023 14:16:10 -0500) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Mon, 4 Dec 2023 14:16:10 -0500 > Cc: 67604 <at> debbugs.gnu.org > > > Now I run it and I get > > > > Found Bug at offset -6 = 140 pixels > > > > but the problem with cursor jumping to "JUMPS HERE" still doesn't > > happen. > > > OK great. Is it possible at offset = -6 = 140 pixels the green image has wrapped back onto line 1? That’s a “false positive” bug. The layout after my/find-skip-bug has found the magic width must look as in my prior screenshot (with green image at the beginning of screen line 2) or it’s not a real bug. No, it looks with the green image at the visual end of a screen line. > If it does look correct, from (point-min), any pair of next-line or > (vertical-motion 1), should bypass scene line 3 = "pulvinar nibh" > and land on screen line 4 = "JUMPS HERE", It doesn't. It works as expected.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 4 Dec 2023 19:16:40 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 14:16:40 2023 Received: from localhost ([127.0.0.1]:35708 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAEQq-000824-46 for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 14:16:40 -0500 Received: from mail-yw1-x112b.google.com ([2607:f8b0:4864:20::112b]:50683) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1rAEQo-00081n-0H for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 14:16:38 -0500 Received: by mail-yw1-x112b.google.com with SMTP id 00721157ae682-59b5484fbe6so54897977b3.1 for <67604 <at> debbugs.gnu.org>; Mon, 04 Dec 2023 11:16:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701717381; x=1702322181; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=VIlr9rsc2ZvCWAZ0Z4vT6FyycyMOOwSWHIwivwBih2A=; b=TGgzVtmRl8ptWMbA904bCz72d0gpszFcsdEQAbHa2DVk815FpVAlS6TwvaIsNAHCtM 7c1cbuQl6kfPwMDQzd3MmfMkut7xpVNqTW+EgKqqOjDESApHmzYav09cBptNFs5EfDdH zPQ7ZUsUBOAgPT3VNGgcefVB+18ufaFhP2vydy2R54L2nkWOs9Bn/8RddJrxvW9+zLRt uz/2AFwBJm97yeMjw8UHJedc7bI7/oSslpzns8H/RykcCtyNYsgjf3US4BgGY6Wtlv0O cwEVa0g6ZxqGfif5/i+q1Hfx1lA0ceH0PwnoDGnXNEIzHfU9RYYwg/RKf7XPNeM0GOYa RQpQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701717381; x=1702322181; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=VIlr9rsc2ZvCWAZ0Z4vT6FyycyMOOwSWHIwivwBih2A=; b=BzR47d2oGckj0iYF+X9zFAU6geI3U4PsY4Ccca8kK9TIRsBJUT7SaOoDSHV4en10Cq 3MwHpSVnFmY22sh92/x87a/me/Li0X3uiXLoSEAFRJYx4PAbpSQThxHEl9M9KQDtAeoX JZmfa4j4IXB+w8absabu9KsDSTdwwZuH5I2iNYVOoEojZesw1K1poR7ZuqR56FJAuvqZ IjzBgg6sctwXhy0p0TLgmsIr1ztD6KclP3uXnFCn8Q2IRQeSV9c+my9KU+mwoPPlbclb lyDvzZsXipyOuxTO7s2aVVpB8QcRhhHYwFXvzu0CnDubtbMqpmZFwHkEtIex79QtkrlE 41BA== X-Gm-Message-State: AOJu0Yy/12EXNlvPFKwx990vriSDRIEXWEu5YCWd9S4W72U0JSinMkrP P9/wLPMQmACSGwjEy7k+RzGo2+5ZYuE= X-Google-Smtp-Source: AGHT+IFu93pnFt23izB9VMwpAqyhgkVo/4AdhdVWZAj4VhIXlUJ8F6VnrzApD71JvcInkThMf3GX8A== X-Received: by 2002:a81:8485:0:b0:5d7:1940:b382 with SMTP id u127-20020a818485000000b005d71940b382mr4275932ywf.78.1701717381472; Mon, 04 Dec 2023 11:16:21 -0800 (PST) Received: from smtpclient.apple ([131.183.131.33]) by smtp.gmail.com with ESMTPSA id l126-20020a0de284000000b005a7cc149e3asm2802369ywe.2.2023.12.04.11.16.20 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Dec 2023 11:16:20 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images From: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <83lea96d8n.fsf@HIDDEN> Date: Mon, 4 Dec 2023 14:16:10 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <778F3EE6-3AC6-4D0E-86B0-CD22751F38B5@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> <83lea96d8n.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Dec 4, 2023, at 1:20=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Mon, 4 Dec 2023 12:44:45 -0500 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >> Wonders never cease. I just picked an 8x16 font and it worked fine, = finding the bug at offset=3D2 (i.e. red svg=3D148 pixels wide). This was = using the build from this morning with your recent xdisp.c fix. To be = sure we=E2=80=99re on the same page, I=E2=80=99ve included again the = test code below. >=20 > Now I run it and I get >=20 > Found Bug at offset -6 =3D 140 pixels >=20 > but the problem with cursor jumping to "JUMPS HERE" still doesn't > happen. OK great. Is it possible at offset =3D -6 =3D 140 pixels the green = image has wrapped back onto line 1? That=E2=80=99s a =E2=80=9Cfalse = positive=E2=80=9D bug. The layout after my/find-skip-bug has found the = magic width must look as in my prior screenshot (with green image at the = beginning of screen line 2) or it=E2=80=99s not a real bug. If it does look correct, from (point-min), any pair of next-line or = (vertical-motion 1), should bypass scene line 3 =3D "pulvinar nibh" and = land on screen line 4 =3D "JUMPS HERE", as that=E2=80=99s the literal = test find-skip-bug performs!
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 4 Dec 2023 18:20:54 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 13:20:53 2023 Received: from localhost ([127.0.0.1]:35676 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rADYr-0006La-Gj for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 13:20:53 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:57962) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1rADYq-0006LO-0G for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 13:20:52 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1rADYZ-00010S-RX; Mon, 04 Dec 2023 13:20:35 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=mwb071KSW4nIm3WRjpgrsvRQg8uxrGoA2RX/vpIwJ0U=; b=URfulOWAVln2F9jA4F+N phmpxdPkVCiFzzv93cBrYphIxtBzielRoaXslNH/WFM7dyCKCwMsxTBvo+LdgQslS1+pCT8QO3Cst uk2ui8LbbjMacj9SFxbOhnVXp7uig234MWZ2RTXwfytrWbPqHgrYJyNc/Ii7MG/5cWjyvpqcE9NI9 G0JgG0AfhTfuTqYVCXoPhKBrXXNd8dgAUlzZcOFeGr/ughbqM9hv8xHZ8iJZvcC+dzTEHL8ez8J37 7v2YqSL3hr5CTqVlG2mEZ6fIYmywzoyhGuhglX54fuenC5B94qDZF7N63/a7b6mRf5XqfWmc4W8O5 5ySvpLvRe9A4Jw==; Date: Mon, 04 Dec 2023 20:20:40 +0200 Message-Id: <83lea96d8n.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> (message from JD Smith on Mon, 4 Dec 2023 12:44:45 -0500) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Mon, 4 Dec 2023 12:44:45 -0500 > Cc: 67604 <at> debbugs.gnu.org > > Wonders never cease. I just picked an 8x16 font and it worked fine, finding the bug at offset=2 (i.e. red svg=148 pixels wide). This was using the build from this morning with your recent xdisp.c fix. To be sure we’re on the same page, I’ve included again the test code below. Now I run it and I get Found Bug at offset -6 = 140 pixels but the problem with cursor jumping to "JUMPS HERE" still doesn't happen. > One other scraping-the-barrel's-bottom idea: I’ve found before that (frame-char-width) when called “too early” yields incorrect/missing results; are you running the code interactively, or via a batch style setup? Do you see a nice range of “Check with red image width …” messages? I'm running the code interactively, and I do see those "Check..." messages (mainly in *Messages*, as they are very quickly replaced by the finishing message).
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 4 Dec 2023 17:45:15 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 12:45:15 2023 Received: from localhost ([127.0.0.1]:35616 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAD0M-0005MK-PY for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 12:45:15 -0500 Received: from mail-yb1-xb33.google.com ([2607:f8b0:4864:20::b33]:59839) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1rAD0L-0005M4-5v for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 12:45:13 -0500 Received: by mail-yb1-xb33.google.com with SMTP id 3f1490d57ef6-db3a09e96daso3101504276.3 for <67604 <at> debbugs.gnu.org>; Mon, 04 Dec 2023 09:45:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701711897; x=1702316697; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=0rr+fmiSGPYOwM9ghTvp8m7j64ZKH1u4DpsjJCXbBYg=; b=CVxnPG60pY2uW6Iu2uUOdMixrQZayZI223ZC7o8xgLmg+IzQEZcgSnHSixN08iLALN QqS5DOyhZrsYYPjjfVy2Mggg7/Ar64g7vLaqAXLsX1e0/cCYnQGPEqxu3xjKzHsUCQJr oD3y6gRPGuGAWGsAeCdFqtotn3n02mh+uTuagD4OpA6COlQnKXPxFDQAp+/xM4ahrkd5 2I2ML/Ha3Rjtpks9AEYGZi/60jHlgsbsKaaJs/AXxncKikNMpLDc8ibvWP0h7R/ISDk1 rf6ip2UsJLnoJ1Gc8NzLALYZasnuAALkqYLykbg1nk+g45veQ+kUqSKgya83shiJa0fd VAVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701711897; x=1702316697; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0rr+fmiSGPYOwM9ghTvp8m7j64ZKH1u4DpsjJCXbBYg=; b=tMHsVYIS8JTDyBOQn7FmacIVG0XWnVI3m6Q3Y3jE+r/bx4jsWvKdCOZbVQAESZgdKB qIEtlrirk/SZbuL6P9znnaPlX2fTe1vvFHIbqqZoc2lEFS5OE6WIz5v/SqPRoGRskr7R urT2WNdAlObcKhioV7ifF6z2dYtbS0dicZjviwtWe8VoQ+eNVtKStjT6uRee3jkeGZXH jB4K3bJfsxUnw9mTQUqWPT7gShi/0rn3oUVW8qABmPuCj3h0JUYIZpIvtKyY3NaTeLcC E4uzwlelbfecjyC/cpofgZ14e48MmN3zZFIAyZB6bjZ42Czih64Rzp47NDhSA1E4wQDF wB+g== X-Gm-Message-State: AOJu0YyudR0qxftI30jx9mu3XEmK7Or8nueyqbi7ic1XLV6+DiZSne8P LDVdKXV8q6mQAeLTMnvk/iiupfbHJI8= X-Google-Smtp-Source: AGHT+IFqJt6vDm/W1RCnfkg0svcPZzVhEJMhf+DaXNeceg5p384ezfTkJrQKgLYbU5AyMZkHIVigBQ== X-Received: by 2002:a25:5086:0:b0:db7:dad0:60e9 with SMTP id e128-20020a255086000000b00db7dad060e9mr2816432ybb.118.1701711896894; Mon, 04 Dec 2023 09:44:56 -0800 (PST) Received: from smtpclient.apple ([131.183.131.33]) by smtp.gmail.com with ESMTPSA id n75-20020a25da4e000000b00db7dcc2ab76sm1846404ybf.34.2023.12.04.09.44.55 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Dec 2023 09:44:56 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images From: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <83plzm590d.fsf@HIDDEN> Date: Mon, 4 Dec 2023 12:44:45 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <9F116A2F-AC1C-4E7D-8870-60561BFD537C@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> <83plzm590d.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Dec 4, 2023, at 9:37=E2=80=AFAM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Mon, 4 Dec 2023 09:25:16 -0500 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >> Strange. Can I ask your (frame-char-width) and (frame-char-height)? = I haven=E2=80=99t yet found a font or size where the bug isn=E2=80=99t = discoverable. Usually at multiple frame widths. >=20 > width =3D 8, height =3D 16 >=20 > I also tried 7 and 15, also without success. Wonders never cease. I just picked an 8x16 font and it worked fine, = finding the bug at offset=3D2 (i.e. red svg=3D148 pixels wide). This was = using the build from this morning with your recent xdisp.c fix. To be = sure we=E2=80=99re on the same page, I=E2=80=99ve included again the = test code below. My version info: GNU Emacs 30.0.50 (build 5, aarch64-apple-darwin23.1.0, = NS appkit-2487.20 Version 14.1.2 (Build 23B92)) of 2023-12-04. =20 I suppose this motion bug could be version-dependent? If anyone else = can confirm this on NS or other builds that would be most helpful. One other scraping-the-barrel's-bottom idea: I=E2=80=99ve found before = that (frame-char-width) when called =E2=80=9Ctoo early=E2=80=9D yields = incorrect/missing results; are you running the code interactively, or = via a batch style setup? Do you see a nice range of =E2=80=9CCheck with = red image width =E2=80=A6=E2=80=9D messages? ++++ (require 'svg) (let ((buf "svg-file-motion-demo") (ims '(("red" 146 29) ; 146 start ("green" 108 29) ; 108 start ("blue" 151 29)))) (with-current-buffer (get-buffer-create buf) (erase-buffer) (visual-line-mode 1) (insert "tellus. $\\gamma(t) =3D = \\log\\left(\\sqrt{\\tan(t)}\\right)$ Donec hendrerit tempor tellus. = $\\chi(y) =3D \\sqrt{\\frac{1}{\\log(y)}}$ Phasellus lacus. $\\tau(t) = =3D \\exp\\left(\\sqrt{\\exp(t)}\\right)$ Curabitur lacinia pulvinar = nibh. JUMPS HERE") (goto-char (point-min)) (while (re-search-forward (rx ?$ (* (not ?$)) ?$) nil t) (let* ((ov (make-overlay (match-beginning 0) (match-end 0))) (im (pop ims)) (svg (svg-create (nth 1 im) (nth 2 im)))) (svg-rectangle svg 0 0 (nth 1 im) (nth 2 im) :fill-color (car = im)) (overlay-put ov 'display (svg-image svg :ascent 'center))))) (pop-to-buffer buf)) (defun my/find-skip-bug () (interactive) (goto-char (point-min)) (let* ((ov (car (overlays-at 10))) (w 146) (h 29) (wc (frame-char-width)) (res (cl-loop for off from (- (- wc 2)) to (1- wc) for sw =3D (+ w off) for svg =3D (svg-create sw h) do (message "Checking with red image width %d" sw) (svg-rectangle svg 0 0 sw h :fill-color "red") (overlay-put ov 'display (svg-image svg :ascent 'center)) if (save-excursion (next-line) (next-line) (beginning-of-visual-line) (looking-at "JUMPS HERE")) return off finally return nil))) (if res (message "Found Bug at offset %d =3D %d pixels" res (+ w = res)) (message "Did not find Bug"))))
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 4 Dec 2023 14:37:36 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 09:37:36 2023 Received: from localhost ([127.0.0.1]:33875 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rAA4m-0008EE-9G for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 09:37:36 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:60600) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1rAA4l-0008E1-88 for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 09:37:35 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1rAA4T-0007ez-99; Mon, 04 Dec 2023 09:37:19 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=mXs3Ycm+ny3F/Qx+xxuuJuxtk/ZmvCXZ3Qjj3msdEKY=; b=i4KRIiW/CbfusTtEvTpW 1QxoCl5G4iRlj/aMMlcoKrAIsbtUFAo8fIjbj5lX2+f88W9hHP6YbU5DqDOc/TpTf1ZI/WiYEadG0 bsTlTlI7aEdOtU7XNIUXcxZ2RLSM2V8PmAQi/1Y0SEFlJJgsOMp1w4jjrvESjQmhiFqTlKZb+NS9i JeVqe5RMP7N3zHErnOYadzkJMyzMPoSYDhn3eaZ6DVivBRSRZAS+HtbzhSVC2uN0ouajOuUKQ/hQW 9zJoV2PYDWICYGlc2j4cG+DaRV7+K29o/+3lYp+fK+P/7Jnf/wjSg3f5vWvOOxEobUZSj94fdGPLp F7335f9wPwIdtg==; Date: Mon, 04 Dec 2023 16:37:22 +0200 Message-Id: <83plzm590d.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> (message from JD Smith on Mon, 4 Dec 2023 09:25:16 -0500) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Mon, 4 Dec 2023 09:25:16 -0500 > Cc: 67604 <at> debbugs.gnu.org > > Strange. Can I ask your (frame-char-width) and (frame-char-height)? I haven’t yet found a font or size where the bug isn’t discoverable. Usually at multiple frame widths. width = 8, height = 16 I also tried 7 and 15, also without success. > Just confirming your buffer looks like: Yes.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 4 Dec 2023 14:25:46 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 09:25:45 2023 Received: from localhost ([127.0.0.1]:33807 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rA9tJ-0007uJ-RJ for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 09:25:45 -0500 Received: from mail-io1-xd36.google.com ([2607:f8b0:4864:20::d36]:52569) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1rA9tI-0007u7-DL for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 09:25:44 -0500 Received: by mail-io1-xd36.google.com with SMTP id ca18e2360f4ac-7b3a8366e13so184009439f.1 for <67604 <at> debbugs.gnu.org>; Mon, 04 Dec 2023 06:25:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701699928; x=1702304728; darn=debbugs.gnu.org; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:from:to:cc:subject:date:message-id:reply-to; bh=3uXnJmP2pd4U3td6jn3700RGaqhqtTT80zXXSxkcBK0=; b=NzC9MVlsC/7s5quEgPGQ7kYH/B+VRcn4cmwyazUn0n4BY86+zFfhKjpUxaotE1D+XV 6lz3xwjp/a6X3gmOdudCRtw/YlVUhDmhKUEIJ77KNLkpcKr1gcTzFsW0Bq7/ztVG6p5N AuQECoZslp7wgUwJiqn2afxuB+FRXW3QBONlFVNLhN0mCsRHtKrc4v3OwrLfb5IZzIK9 y735XSArp7KEuUuvPe0RP/UHMwejoXiWynVbfH3KQv+pOPCrAKqB4MVms1fQTV/UgPn6 uYu3lbbcChPi05yf92C32isIlTvtxaCZ84Gwr+q5wca6xJQlB7dvgdcY/NzyMapZZbRK dLcQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701699928; x=1702304728; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=3uXnJmP2pd4U3td6jn3700RGaqhqtTT80zXXSxkcBK0=; b=axgtCCWQrPOY2nRnzxDlCEKcDhn8ULL5/mRKkMSXKhBB5IHR6ZE/UDhW510R94yX+O Ke+fRTNbs4avcWqnd/4S6TjoK+cvqjP6iH6DUDwdS8oMd4j4C6NHdU3T/fzb3zC3Afqj 8b/9TB69SmIawzJCCkQk4ss4GL3tWUU1G6gja5f2z8F+oLeHY3wOBuxz8z2tvkcfrvDo R0OojW8bKj4//dl9imF9x/s67xMokPr/+3QkNl4bzEF3bsjP5lRhAO29mEufq/ZVFyoV M8fCz+fApk0EZCLog8ZM1HsFA/cEEYmksqqDBssw5LUhi1E86cMFFZUTWjTlvKXjf6X8 AFqA== X-Gm-Message-State: AOJu0YzZx+U8omRZyHGtr4N38V4y3hlVQLQAScm+KO9aK6a1d/k6uAuu O5jeuG9gHx2Ia6rA1jaWz+4= X-Google-Smtp-Source: AGHT+IHXxxxT2ZO1gSj+PS+kNTdIpAfTdl1LEfQyxhLbywLpe+aiWeJwUSrcB/XnEl5wAcCWQRK63A== X-Received: by 2002:a05:6602:47c3:b0:7b0:aee5:f81c with SMTP id ea3-20020a05660247c300b007b0aee5f81cmr6516884iob.8.1701699928144; Mon, 04 Dec 2023 06:25:28 -0800 (PST) Received: from smtpclient.apple (cm-24-53-187-34.buckeyecom.net. [24.53.187.34]) by smtp.gmail.com with ESMTPSA id f4-20020a02cac4000000b0046696ea033dsm2566506jap.146.2023.12.04.06.25.26 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Dec 2023 06:25:27 -0800 (PST) From: JD Smith <jdtsmith@HIDDEN> Message-Id: <E5C855C5-09CA-4C61-B943-A46BD4B37083@HIDDEN> Content-Type: multipart/mixed; boundary="Apple-Mail=_D7289EE7-2BD9-448F-8F68-7E5CF8BF6004" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images Date: Mon, 4 Dec 2023 09:25:16 -0500 In-Reply-To: <83r0k259wv.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> <83r0k259wv.fsf@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> --Apple-Mail=_D7289EE7-2BD9-448F-8F68-7E5CF8BF6004 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Strange. Can I ask your (frame-char-width) and (frame-char-height)? I = haven=E2=80=99t yet found a font or size where the bug isn=E2=80=99t = discoverable. Usually at multiple frame widths. Just confirming your buffer looks like: --Apple-Mail=_D7289EE7-2BD9-448F-8F68-7E5CF8BF6004 Content-Disposition: inline; filename=PastedGraphic-1.png Content-Type: image/png; name="PastedGraphic-1.png" Content-Transfer-Encoding: base64 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 J7BKfiesUrAe4wnUkgOruCBYHdxzAdkEzMbCNXbrgeddwT0Uej8Fu0Xhm+hy4PvUYGj+C2g1DUo7 CR2ohk7bQL/v+H4zxxJWqebBKjXbMWA11ZyRA/dTc10djHlNhAk4bdfg7SyAY65gNGpXBwgDD8WA urVyqQ3Q/ChodSK0lQYdOAydSoF+O/bDvkILVmlthlVahzB1wHm5ZRSlrdY4ABQzATsS7awdmD80 Y7f9QMcAc+CTGDCqtMhU8DzSXuRHQ6stoa0W0P4AKJcK/Xr0ZwhVElbpv/Lv35YsMWAt99vJg32j /46GNtDNBOxX/b52YFX1h7iBe+6PCQA7Q39yDNjZ+tPf7QJi82Og1SLQllFoHx06yYZ+2fqrtmc1 rDL5byZPhmB6gAHy4PFOPtYA1zzpbQL2q0lPO7AHTrq5gXU06RIQBI25Az/zDpzmJj3yQ+Btqnqh LdbQvq3Qz7PQ5c9/tk60wyrLlrDKsjFmCHheHsyl5TMaVsBjJgygkB0Y/+UNbmB0l/4EPAAux4A5 tsRLBc/d0nQ+WLNLU1Ux0GYGtPcS9NMkdCnn75NFb/Tfj/8lAGYUKv9vFDV0/u1wlVC7D1A3EWiA MjRm+78VkP1vhv4bj6qT0GY1aI8HdIIFXbT6fxX+f9/708vp9Kl/f1qxWQ1B1oyARyqJIOtiEeQP mCe/MlD0TwaCrBpGENJTh1sP/71vJ3wb0g3g1/8BTTsM7vRt2uUAAACKZVhJZk1NACoAAAAIAAQB GgAFAAAAAQAAAD4BGwAFAAAAAQAAAEYBKAADAAAAAQACAACHaQAEAAAAAQAAAE4AAAAAAAAAkAAA AAEAAACQAAAAAQADkoYABwAAABIAAAB4oAIABAAAAAEAAAUAoAMABAAAAAEAAAGbAAAAAEFTQ0lJ AAAAU2NyZWVuc2hvdI3R/6AAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAKoaVRYdFhNTDpjb20uYWRv YmUueG1wAAAAAAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJY TVAgQ29yZSA2LjAuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcv MTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFi b3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8x LjAvIgogICAgICAgICAgICB4bWxuczpleGlmPSJodHRwOi8vbnMuYWRvYmUuY29tL2V4aWYvMS4w LyI+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjE0NDwvdGlmZjpZUmVzb2x1dGlvbj4KICAg ICAgICAgPHRpZmY6WFJlc29sdXRpb24+MTQ0PC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8 dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhp ZjpQaXhlbFlEaW1lbnNpb24+NDQyPC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgICAgPGV4 aWY6VXNlckNvbW1lbnQ+U2NyZWVuc2hvdDwvZXhpZjpVc2VyQ29tbWVudD4KICAgICAgICAgPGV4 aWY6UGl4ZWxYRGltZW5zaW9uPjEzNzg8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICA8L3Jk ZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4K3bkoOwAAQABJREFUeAHs nQV8nUXWxqdJXaAtNSo0wd0dlhYWZ/lwWFisLLY4yy7uDosWd7cWKb6Lu7s79Za6u3zPf25OOnnz 3pub5KZJ2zn53bw2+oydOXPmTKMOHTrMdzlozJgx7oUXXnC9evd25vD9d9/1PlZYcQU3f569zRFI /BQRKAACgwYNcscdd5xr1qyZmzNnjuvZs6c78sgj3TrrrOOfk1F88cUX7sILL3RFRUX++4orruj+ 9a9/uW7durm5c+d6561atXInnHCC++GHH1xxcbErbtzY7f/Xv7q99967Uph8/+OPP9xll13mfv31 V9dYbhs1auROPfVUt/EmG+fdFqZMmeLTPWvWLDdv3jynNuj+8Y9/uI033tjNnj27QjZI+++//+7O OfdcN1X+5s+f792fffbZrrS0tDwfLVu29Hl96623XNOmTf37v+y6qzv0kEPczJkz3WWXX+6++fpr n0eLc/nll/fxV4iw7IF4mjRp4jbbbDP35z//2ZHWuqBhw4a5Y445xsdFmfbo0cMdddRRbt11162A f6OiRm7smLHueJXVjOnTfT4233xzd65woZyvvvpqN3z4cDdjxgx36aWXui233NI9+eST7v4HHvDu m7do4Y4RxltttZV777333DXXXuvmCGvKj99SSy3l4+zatau/Hz9+vOvfv7/Hm7rSuXNnX0Ybbrih LyMwfu6559xDDz/sJk+a5MMI8SHMZs2bu5123NEdeOCBjvRbX0n9vf32290LL77o5irPEG7XWnPN rOWBG8pt5ZVXdnvssYfHi3c1IUvL66+/7v7zn/+45oq7jfJ/1plnug022MBdd9117qWXX/b4tGrd 2j0oDCdOnOjuuOMO98Ybb/i8rrLKKr4t3Xbbbe7jjz/2dY707fp//+cOOfhg3+YsbbSTwYMHe/+f f/65bzfTpk3z5UQ5G1HXhwwZ4k466SSfV3CnPM444wxHXU22DfOXvJI/6MILLixPG2FRDmBHPEbm 9tlnnnW33nqrx4J4tt56a99GW7VuVV5u+Bs7dqx398EHH/gyIB/0Kdtvv72jfzr//PPduHHjfPBg eu4557iVVlqpvJ22UD288sor3UsvveT7MeLaUXXksMMO88+Wrppc6Z9Gjx7t7r77bvf222/79E1X W6F/23bbbV3jJo3L80J7pn4/9thjvuxoN9tss407R+l9//33fR5HjBjh2xlpob62b9/eJwscJqnO P/LII+6ZZ57x6QaHk08+2fcVxY2LfTzEgb/XXnvNY06fYkT74JnyxV8uXgJ35A3sP/zwQ/fqq6+6 YWrrtB3rxwmXdG2xxRbutNNO8/2AxVXTK+3i3nvv9XmkDyXNtPu11lrLpz1buKSJ+rrnXnu5li1b lGOOe9II1vRNDz30kMeO5z59+rhd1V83a96sgvtscSzu7ylzsKevpo+xOgV+01Snz1O/z3hOm2YM p+8JiXY9d85c96L6WOroiSee6NZee+0KY4q5p92ep3Z7+N//7rbbbjv3888/u2s1PrRt29aP7V99 9ZW76eab3S477+x22223xaqMwGnc2HHuJLXBU//9b1+3k1gaTtW9Ui7wRl26dHEHa0xo2aplat22 Mr3wggvccsst59221riTTIeV6csamx5//HE/TmTj/aqb1sXVPf3WDTfc4KZOner5Vvqaqgicp06Z 6vtu+jLGBPr36hBhQI/3f9zBSx140EGupca+ZJlWJ0zcWtrgRRhLadeMcdUlCwfehT7m62++ccuJ 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 mVuPZzAvtPdpYeT6luY+7V0hwrBwCStX+quKK/xek77G0sGVsMIwwm/xPiIQEYgI1DUCSeleZn9C QtiWFL7ZakddJy6GHxGICEQEIgIRgYhARCAiEBGICEQEIgIRgYhARCAiEBGICBQWAaxEZw3RBIG2 NSGrw3w/JASN+XoL3WEfJFJEICIQEYgIRAQiAhGBiEBEICKw5CFgWzLJeXi/5CERcxwRiAhEBCIC EYHcCIQazbhsbFt/07yZ2nguIWGav2zvMB7eS7YEa0P/z95ZAFhRtW/8ZXfpLkmBRQWUEERBULBb UBTzM/BvfHZ352crKoqBgdifidhKGJ8CiqISAtLd3fF/nrN7rrOzc+/eLdh4Duyde2fOnDnnN3Pv vPOeNzogKYaKCIiACIiACIiACIiACIhA6SPAZCkHZj5P+OzmpY+CRiwCIiACIiACuSeQVK76DD/h 3Dce3IPWhDWRvetTJBTJbwlrMfPbnvYXAREQAREQAREQAREQAREo2gT4DMDEhPzzRc8FnoSWIiAC IiACIpCVQBl64Qa8fpNSAGbkpM3aUF4+UQmom3ReyGkfERABERABERABERABERABPUvoGhABERAB ERCBJAkElH/cI9K4L+b6m9lmZKUkj6dqIiACIiACIiACIiACIiACIiACIiACIiACIiAC249AeNIs MgmIT/6x/bqlI4mACIiACIiACIiACIiACIiACIiACIiACIiACBQEgXDK30jjvrAFYEG5ABfEANSG CIiACIiACIiACIiACIiACIiACIiACIiACIhAfALeAtAvMxSAIb/gbBaAW6UCjI9UW0RABERABERA BERABERABERABERABERABESg6BHwloBpxqwggZJN+cdtKZGGgoG99FYEREAEREAEREAEREAEREAE REAEREAEREAERKAoEsim2Qu6/0YqA4viKNQnERABERABERABERABERABERABERABERABERABR8Bb /nkcaebdfwOWgFQCUvnnlYHZtIR+71wut9o227h5Qy73UnURSEyAF/XW1K22OW2rlSmbmrhyEd7K r2BqaqqlppUrwr1U10SgdBNI2brWrGzZ0g2hiI2ev50b1ofFmyLWSXVHBESg2BIoW24b5LNi2311 XAREQAREoBQToL9vUEpOcywCyj9+LgzLPyoTl61dYvs9eoBVSi3vDqsXESgwAg1waZ9bocCa2xEN rdq4zs7cu7c92ONRqMqDX9Md0RsdUwREIBEB3kxVdjwB/lIuXmyW3mzTju+MeiACIlAiCbz6Wpqd 0AvPRyVydBqUCIiACIhASSbgtQr+HpahAAyN2FsA+tVbCjAJCJWLSiniyWpZcAT8pV1wLW7vlrzS b1uZFAmZ2xu+jicCIlCsCWzbVvzvAcX6BKjzIlBiCfhHphI7QA1MBERABESgFBDwkjI0DbixeTfg zIGHLQBTlQSkFFwSGqIIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiEBJIBCexkoJK/84SB/7zw94a8hF 2K/XUgREQAREQAREQAREQAREQAREQAREQAREQAREoGgR8JZ/vldpzgLQf4qzTAlZCMapptUiIAIi IAIiIAIiIAIiIAIiIAIiIAIiIAIiIAJFhIC3BIxM8Bt2AVbMviJy1tQNERABERABERABERABERAB ERABERABERABEciBgFf8eUvAbApAKv/CLsA5tKnNIiACIiACIiACIiACIiACIiACIiACIiACIiAC RYRAmVA4v2wxAMMZgF2/QzsVkbGoGyIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiECYe/ejCzA oUrZPioGYDYkWiECIiACIiACIiACIiACIiACIiACIiACIiACRZFA2Ls3mwVgVKfDZoNRdbROBERA BERABERABERABERABERABERABERABESgCBDINObzsQCzxQCM6mJYaxhVR+tEQAREQAREQAREQARE QAREQAREQAREQAREQAR2PIEtWzNS+sZNAhLVRWUBjqKidSIgAiIgAiIgAiIgAiIgAiIgAiIgAiIg AiJQ9AikpGS1+csWAzAqC/C2TK1h0RuOeiQCIiACIiACIiACIiACIiACIiACIiACIiACIhAkkD0J SCjBR1QW4NSQ1jDYoN6LgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAgUHQIpIX1fWjJdkwtwMpRU RwREIIqAjzfAbT74aFS90rAuyCI83mTZFEQb4WMX189iUVzPnPotAiIgAiIgAvkjEJYBkpWj8ndU 7Z0TgfB5CdbXOQrS0HsR2L4E/PcvKQWgXIC378nR0USgpBDYivABG9avNwYfpSVx+QoVLByHoKSM Nadx0Px6PVhs3rLFgjMxW7GebCpUrGg5JVxiG2vXrs12KLZRNi3N8c22sYSu4LVFFkGWHCpZlC9f 3sqWLVtCR65hiYAIiIAIiIAIbN682dZCrqLCqSLky1TIQQVRwgos/9BcEG2X9Da2QsZdu25dpGxW AbJZWjGWzYrCdVEU+lDSr+GSOD7/HO6vnzTDw1Kw+BiAQV/hMnIBDiLSexEoFQT8j0Qyg836K5Kx B/dfvGiRvTZokC1ZutSaNWtmJ598stWoUaPUWQKSxSYIqq+//rpNmzYtqxIUv8EVK1e2E084wVq2 bBmXDdtYuWqV9XvySVu/YUMG5MxXKsMaNmhgZ5x1llWvVi1uG1l2KuYfFi5YYM88/bRBa5plJGTR ca+97Igjj7TK4Bp1bWbZQR9EQAREQAREoJgSyHoHzD6IknoP5LjHjx9vb775pps8Pf74423vffbJ cSI1O6HsaxYuXGhTIatVgQyx2267WTkorlSSI0AZ96WXXrLU1NQsO2yBYrBLly522GGHWQUoa4vb dUnF5pw5c2w2/po02dka1G9gKaExZhlwIX1YvmKFTZk82fFt0aKFVcI1qiICOREIG99kTJXwASpT ERhlgVImpCTM6SDaLgIiUPwJrFq92n799ddsN3E/svLlylntOnVsp7p1naKF68M39AVQ0jzxxBO2 ZMkSO/qYY6znccf53UvdcgOUds/2728TJkzINnZaAFarWtUpALNtDKxYvnyZ/ec//wms+edtHZyH 7gccYG3btv1nZQl+N3fuXHvsscciR9ila1dr17697brLLpHbtVIEREAEREAEijsBr/ybMXOGLVyw 0FZhknDTpk1OKVCjenXbddddrSK8C8KyWXEft+//73/8YU9CxmTZeeedbS9M/qXBCjA/490IWe32 O+6wQQMHWsNGjez++++33r1756pNf158P/PTH99GcVjSeGjSpEn2RN++kd39/fffrePeHTFh3TBy e1FdyfM5e85su+TiS2zY0KF2OCaYH3nkEdulefNcXRf5HR/78cwzz9jDDz1s5cqVtdtuu80uvfTS 7dqH/I5B++8YAuHfpAwFYEjBF7T+Yze3hSwsdkzXdVQREIHtRYA/FH9NnGg9oLSjO2W48CejWvWq 1rp1G2sPRUuHDh3soIMPNgqcQUGHMw4UPlkoiFaqVCncVKn5XA5uD4di5rNhQwg++E3lZMvUv/+2 qVOnWkVwScZltVLFStajRw/nXsH9N23caBMmTnCCfyVwDs/wlGS4NWvVskMOPdQNkW7AdDnhNbt4 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 V5CjKMg+FGRbBTHGvPQnL/sURF+LWhsFzaGg2ytqvBL1pzSPPRGX0rAtbBmaLQYgTQazmTRCa6gi AiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiJQ9AlQvxcsjDgZ/OyUf9kqwWRQRQREQAREQAREQARE QAREQAREQAREQAREQAREoOgTCCf0TUqzxyCCKiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAsWA QKYuz2v0klIAFoNhqYsiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIiIAIg4HOce7/fjBiAEW7AoiUC IiACIiACIiACIiACIiACIiACIiACIiACIlD8CKSGdH0ZFoAhF99wDMBwnMDiN2z1WAREQAREQARE QAREQAREQAREQAREQAREQARKJ4FsSUCCGLwisExIQRiso/ciIAIiIAIiIAIiIAIiIAIiIAIiIAIi IAIiIAJFh4CP/ed7lOEC7D+FlmUyzQW3hcwGQ9X0UQREQAREQAREQAREQAREQAREQAREQAREQARE oIgSSCoJSFKViugA1S0REAEREAEREAEREAEREAEREAEREAEREAERKE0EvFevH3NSur2tvraWIiAC IiACIiACIiACIiACIiACIiACIiACIiACRZpASsibNy2qt971129LSkvoK+e0hBNyWAuZ0y7aLgKl ggC+G1st7KVfKkauQYqACIiACIiACIiACIiACIiACIiACBQgAWoXyuBv27YMs75IBSCPRyVdWBHI 9fkpKWVSrF61mlY+tXx+mtG+IlAiCazduNaql69WIsemQYmACIhAYRFIwSxl3Z0Kq3W1KwIiUNoJ lNdjS2m/BDR+ERABESj2BMpAF8eSBi0ftX1ZBlQYFnpss2bFWvbzNb9lOZY+iIAIZCWQ9duYdZs+ iYAIiIAI/EOAv5e1a5tNn576z0q9EwEREIECJiDZrICBqjkREAEREIHtQoDWf8ESaQFIy7+gErCg YgBug3ujbqBB/HovAiIgAiIgAiKQHwKSK/JDT/uKgAiIgAiIgAiIgAiUVAKUk50LcOYAM+wAQ4EB g8o/V29rQakASypWjUsEREAEREAEREAEREAEREAEREAEREAEREAEihYBbwmYlpT7LwPslNDiQcQb niwL4pHR+ngEwtdUXq6hgmgjXv+0XgREQAREQAREQAREQAREQAREQAREoHQRyOYCHHT/zWYJWMLY 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 su3++++3QbAmKwuFDEth9skdIImX6oipdyqs2Po/84zNRVy2999736666qose1K5NgnKGippWPbf v5tTMHklDZe0jPs/uAD78v0PP9hQKJycAtCvTHJJ5V863KJpVXbYYYfF9uoIt9wrL7/ctUllZI9j j7W6iO3H4/OP1mP3P/CAU87dcsstticUscFyBZRhV155pb3xxhvu3DzTv7/1xTHKV6gQrJbtPRVe bLdHjx6xbbT8u/uee1yW47322qvQFFZU/u0JBWjfvn2tE5RmvrSGMplKZV57dHk+CG7J1atVi/WD Mf66d+vm/rjPclx/S5ABmArAvJQmULaSW1tc576cApfgM844w/6aONHmwarw6X5P20MPPhip8OU5 bdY8HdaZ/ewgKGZ92Rfflwv//W9bBWvCUbCgPbH3iYjV2NBv1lIEREAEREAEREAEREAEREAEREAE RKC0EqA3L718M8efVR0YB0purZ7iNBO5mm6kV0Cx5JV/XiHFJBEPPHC/U8wwscQvcOP8A66UVKgV hcJ+lkWykhN793ausFTCDEXMubW02gsVKn/Wwl2THE+FxVm4+DH7k7IRLtLbtkXH6QvvG/5MN9cH oHCj8s+3yzr77dfVOiL2HAst+pbDsjJYWPccxLd7B/EEqfwL7st6tIq7B0q79h06uN2GDv3GJaRI dD7o8nrDDTfYsZnKP98ml7cg9uONN97o2iqslzp16jgXXyr//LF5rAPgql2vQX132AmIwRd1zoL1 1yM24ubMpDW57WtVXMc3Q6HK+IEsvt09YI3I2Ij8MrJ9WrwuwzmJ4lkBStZHH3nUKf/8/myrU+dO zhKT7+livGzpMr5VEQEREAEREAEREAEREAEREAEREAERKOUEtmSG8/N6hqQUgOHAgQXJsGHjxi7p B9ukcsMXvt9nn062d6blFpVikzJjy7FOUbAATIHyhsk1vFLsr0l/2Yhvv82ixKHLLOO0UclDN+eD YW0WHKcfb0EtOyCByhFHHJGtucqVKju3X25YBYs2ZsUNl2C/eIHwj3EUVyF+4kooOGkl1xHtly1b Dq6ri50FX7iN4Od2sL7rCldhthNsm3XoqkplZXh9cP/8vt8fVnxULIePUa16NatVo6ZrnnETaQlY WGUfKF27ddvfxT4M94OKyPqIP8jC64Su2lGFHLt3755tU6WKlYzWhSxUQG/Ad0RFBERABERABERA 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 COfzKAMlTlj3kGXUzGD66aef2gFwX/QV1yKuXjzrqiw7hz5QWVQZ2U5/+N//7PBDD3VbT0DijEGv vebez5kzxyYhVloVKJzawa2SijwWf1z3IfTiFSNLly51cQPpqtuocSNr2CBa+RRsy+8bajLHj8E2 wpWj2kxUn/tH7RNuN/g53F54//B2v29O9fz2RbBE5LlYB6vJSlBOMmacT7ji2/LL8LF8G/G2+/WF tUz2+Inqhbfl1NecGPj9GdeSsSmpyN0VCkZfwvtzfbgPUXVyU8/XXb5ihc2Hi31LKKp5jHjtsr6K CIiACIiACIiACIiACIiACIiACIiA2RZ40K1jQs2QAVAybGjkxvBi4X2pc5mExLh7deiQTDNZ6rCt dTCgY2JdGmGVRfvOkxCGXDwevWJZ+Nyfnt4MOQA2xbcADJsKYp9CL41gLcc/X5JRTvg6taBU4Z8v fr3/HLVMpk7UfonW5aXNvOwT7EOy++dUz2+viwzL/AsWvy24Luo963nlVbL7RLWT13XJHjNRvUTb kulX1P5k0gTu7vzzJapeMtt8HS4TtRGs5+vWgFUk//zncB19FgEREAEREAEREAEREAEREAEREAER KDkEyiA3AUuac1+EhjBY8mLdF9w/L++z9iD3LeR3/9wfseTukV+W+d2/JJItKkyKSj9K4jnWmERA BERABERABERABERABERABESgqBDwxlm+P5H5PcJmiTtCIeg7qKUIiIAIiIAIiIAIiIAIiIAIiIAI iIAIiIAIiEDyBLwBkF+mwUk4y97bQ9kXPAaz96qIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAiIgAgU LAFvCZgtpS2t/7yCLrbMQ5DDeN2lurENMt6++957CGC2zeojk29WFWS8PbVeBERABERABERABERA BERABERABERABERABEQgJwJe8efrZcQA5KeAJaBXAnpX4Eg/Yd9CHpZMQnDUUUfF9pQCMIZCb0RA BERABERABERABERABERABERABERABEQgXwSoawsqATMsAAPKP7buLf/ydaQEO0vhlwCONomACIiA CIiACIiACIiACIiACIiACIiACIhAPgh45Z/XwUUa93nLP3+cLVu3+rdaioAIiIAIiIAIiIAIiIAI iIAIiIAIiIAIiIAIFAMCXhGY4lx/QzH+whaAqSmResJiMEx1UQREQAREQAREQAREQAREQAREQARE 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 --Apple-Mail=_D7289EE7-2BD9-448F-8F68-7E5CF8BF6004 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 And that *Messages* includes something like: Checking with red image width 139 Checking with red image width 140 Checking with red image width 141 Checking with red image width 142 Checking with red image width 143 Checking with red image width 144 Checking with red image width 145 Checking with red image width 146 Checking with red image width 147 Checking with red image width 148 Checking with red image width 149 Checking with red image width 150 Checking with red image width 151 Checking with red image width 152 Checking with red image width 153 Found Bug at offset 7 =3D 153 pixels > On Dec 4, 2023, at 9:17=E2=80=AFAM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Mon, 4 Dec 2023 09:10:01 -0500 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >>=20 >>=20 >>> On Dec 4, 2023, at 8:16=E2=80=AFAM, Eli Zaretskii <eliz@HIDDEN> = wrote: >>>=20 >>>> From: JD Smith <jdtsmith@HIDDEN> >>>> Date: Sun, 3 Dec 2023 15:46:38 -0500 >>>> Cc: 67604 <at> debbugs.gnu.org >>>>=20 >>>> * Run the let-form mentioned in my initial message. >>>> * Resize the frame width down until the green image first moves to = the beginning of a visual line (80 >>>> chars, for me). >>>> * Resize down one more column *without causing further wrap* (79 = chars for me). >>>> * In the svg-file-motion-demo buffer, execute M-x my/find-skip-bug. >>>> * It should report the pixel width needed for the red SVG image on = the first line to trigger the bug, >>>> and leave the demo buffer in that state. >>>=20 >>> Instead of reporting the size, it says "Did not find Bug=E2=80=9D. >>=20 >> Try increasing/decreasing width by one or two columns and repeating. = Note that if you go too far, you=E2=80=99ll get a false positive report = when the green SVG wraps back to line 1. >=20 > Sorry, still no cigar. --Apple-Mail=_D7289EE7-2BD9-448F-8F68-7E5CF8BF6004--
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 4 Dec 2023 14:18:06 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 09:18:06 2023 Received: from localhost ([127.0.0.1]:33803 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rA9lt-0007iv-Qw for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 09:18:06 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:54690) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1rA9lr-0007iN-Ai for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 09:18:03 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1rA9lb-0007mW-Dq; Mon, 04 Dec 2023 09:17:47 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=P7Z9EfSchibXBdE9Hn45Zu4RldthReGvP2b2FhKfz08=; b=LoBO2Vud6i06xjPyS36S TD1NzbsxKmsiSMFKB1ndrKWXFHaXdrqCT4kvg/NaSesAY83WxyJ6/fq3ByWvilfxxQ8GvhM7PZ3T7 2iKLPtNtaffdIIm5mP9CSjcOFnOP0z0LFtHQvtlIMI009aFroivV8SRaOrTeCAYLS38t/JsAtNCJ5 Z0dseJW9bOv22Tc1GWlsPBmyjeYUixZjGuDwB9D7nOrwimpq1n7DeDua8MAsmb0c+zLe6Dwl7eFZY +NP0/m1A1bvbvpoa3Eu02Ne6PVbs/U6XjeKh5PyGOZIyply6WHZItkZJAE7avC8Ub1/Cz6DzOTUzv YJG6LjSMYVbiaw==; Date: Mon, 04 Dec 2023 16:17:52 +0200 Message-Id: <83r0k259wv.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> (message from JD Smith on Mon, 4 Dec 2023 09:10:01 -0500) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Mon, 4 Dec 2023 09:10:01 -0500 > Cc: 67604 <at> debbugs.gnu.org > > > > > On Dec 4, 2023, at 8:16 AM, Eli Zaretskii <eliz@HIDDEN> wrote: > > > >> From: JD Smith <jdtsmith@HIDDEN> > >> Date: Sun, 3 Dec 2023 15:46:38 -0500 > >> Cc: 67604 <at> debbugs.gnu.org > >> > >> * Run the let-form mentioned in my initial message. > >> * Resize the frame width down until the green image first moves to the beginning of a visual line (80 > >> chars, for me). > >> * Resize down one more column *without causing further wrap* (79 chars for me). > >> * In the svg-file-motion-demo buffer, execute M-x my/find-skip-bug. > >> * It should report the pixel width needed for the red SVG image on the first line to trigger the bug, > >> and leave the demo buffer in that state. > > > > Instead of reporting the size, it says "Did not find Bug”. > > Try increasing/decreasing width by one or two columns and repeating. Note that if you go too far, you’ll get a false positive report when the green SVG wraps back to line 1. Sorry, still no cigar.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 4 Dec 2023 14:10:31 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 09:10:31 2023 Received: from localhost ([127.0.0.1]:33743 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rA9eZ-0007UC-8X for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 09:10:31 -0500 Received: from mail-il1-x12c.google.com ([2607:f8b0:4864:20::12c]:53437) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1rA9eY-0007Ty-5J for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 09:10:30 -0500 Received: by mail-il1-x12c.google.com with SMTP id e9e14a558f8ab-35d6b381341so5255535ab.2 for <67604 <at> debbugs.gnu.org>; Mon, 04 Dec 2023 06:10:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701699013; x=1702303813; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=9VfWKaXQ9xGQU44b038z5qDZ7H8stTM1cxRWooHiNM0=; b=GDwEzBhk/b4ReXc7SSFH8xWrvZEeDnlq5wxEdI2q6+Hv75hASxyR3YW7SJ720AQGzZ 9pr7+RgqPk2Ls2SeBJmJ9QwLI5DMyGtRxlwooLY6LsL8fo42PQEVu+4MaJqqks7gGkqs chCrsRqWarDc2BCcqjjqkar+rGK5cU3p/HTxYNWV+9Jw06xxtXGo5jcNDif+7EBQWsv4 3WnW2iXrbB/DVXh/mWOkg2CcRe3A67KLzUDXTlj75RfUnJ0k16OY4mqlj2bOJ5XM8lva 0IzLwlZrTITdgL7sL9ApMsjvpBz3m8f9cC0ARzaJVQ2uflrOIBWzfdoK1Pl0+hzcjWDy XJuQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701699013; x=1702303813; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=9VfWKaXQ9xGQU44b038z5qDZ7H8stTM1cxRWooHiNM0=; b=Potbh0FxTXlEBQNQVdKFXeXSJW64s0KDgafMNe2QfahrXMD12N8N3jcGp/2IwT7+aL NXZsehTiYqdNt5JGeeY1oF2QqnpxVN3w7lCvu9ZZAHmrFcOMGmbhtCgaFXYKikKyxoBm Ae3McLCjUZs+i/sdMkAwTR4LnN429QzONqfmJgtt+GQUE5oDOx/qwhGADKZfOr/a5Mr8 mIxBtfoKeqP1mULLzBx4ZL1gTmryPTWSAXnPIUeA7bgw+lhDVmFVMUB0rqNfxKzORdlz dbBQ0XfzRNUAfVF0asXaSWnczo3wgQT03IdR6WgEnYVC+LONd050HQTtWjWaZn6hYfge JsRg== X-Gm-Message-State: AOJu0YynRlYOpN9ctDzHsidVLhpE4iw1goCNRPUWr7OtDcV/OUZQG++z cuANJ2xc5MwQHa0dTnKGu8tD2NfLDCM= X-Google-Smtp-Source: AGHT+IEIEbjJX0UD0mQFSRdoIAqwSb6ZfWh0RG3y6jWnvbnFQPuCanwdCXuEs9outZ5NrBj/C+NaQg== X-Received: by 2002:a6b:3101:0:b0:7b3:c00f:6652 with SMTP id j1-20020a6b3101000000b007b3c00f6652mr5055856ioa.12.1701699013498; Mon, 04 Dec 2023 06:10:13 -0800 (PST) Received: from smtpclient.apple (cm-24-53-187-34.buckeyecom.net. [24.53.187.34]) by smtp.gmail.com with ESMTPSA id ch13-20020a0566383e8d00b00468f339f3b2sm1264888jab.82.2023.12.04.06.10.12 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Dec 2023 06:10:12 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images From: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <83ttoy5cqo.fsf@HIDDEN> Date: Mon, 4 Dec 2023 09:10:01 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <4FF4BC61-297C-41CD-8094-5BFB7CF2594B@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> <83ttoy5cqo.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) > On Dec 4, 2023, at 8:16=E2=80=AFAM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Sun, 3 Dec 2023 15:46:38 -0500 >> Cc: 67604 <at> debbugs.gnu.org >>=20 >> * Run the let-form mentioned in my initial message. >> * Resize the frame width down until the green image first moves to = the beginning of a visual line (80 >> chars, for me). >> * Resize down one more column *without causing further wrap* (79 = chars for me). >> * In the svg-file-motion-demo buffer, execute M-x my/find-skip-bug. >> * It should report the pixel width needed for the red SVG image on = the first line to trigger the bug, >> and leave the demo buffer in that state. >=20 > Instead of reporting the size, it says "Did not find Bug=E2=80=9D. Try increasing/decreasing width by one or two columns and repeating. = Note that if you go too far, you=E2=80=99ll get a false positive report = when the green SVG wraps back to line 1.=20
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 4 Dec 2023 13:17:03 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Dec 04 08:17:03 2023 Received: from localhost ([127.0.0.1]:33663 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1rA8op-0005ta-CH for submit <at> debbugs.gnu.org; Mon, 04 Dec 2023 08:17:03 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:54824) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1rA8oo-0005sy-1N for 67604 <at> debbugs.gnu.org; Mon, 04 Dec 2023 08:17:02 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1rA8oY-0007gP-5W; Mon, 04 Dec 2023 08:16:46 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=FB56uIlA8v3tXsc1iWxWbFrCJHeVmyxGTV/zaG5DEww=; b=C7ZCKK1Zs+s3 oYUHSTZ2F3wnErlrALjpPruIJdn3j9qjKZRhtRaL4qt2cC6sfv+Ri12FSjAy8ohZvvpyLRxySUz+8 rQJjAeEJmebqe/8+YndIYAVm7MUrRsiE2n6JUfA8umFkocncnuBtEM9DkUqV7V43Ni7vLIk23NdrY su771AoCn0RX4QngjKGGKKp8RUBrAnKze1pbj3aKHL/3cCahws+QtG+lqQONirCcoUmv/Kim/7NY8 gpYFsacC9TrS46YRB5lHpc1zgMagm3m1pA6RwPTUGs0q53uqm2oKiTLLzctirMT9yNpl4Crno50wZ EKEGpyBqBsxDiOTBMuKSIQ==; Date: Mon, 04 Dec 2023 15:16:47 +0200 Message-Id: <83ttoy5cqo.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> (message from JD Smith on Sun, 3 Dec 2023 15:46:38 -0500) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Sun, 3 Dec 2023 15:46:38 -0500 > Cc: 67604 <at> debbugs.gnu.org > > * Run the let-form mentioned in my initial message. > * Resize the frame width down until the green image first moves to the beginning of a visual line (80 > chars, for me). > * Resize down one more column *without causing further wrap* (79 chars for me). > * In the svg-file-motion-demo buffer, execute M-x my/find-skip-bug. > * It should report the pixel width needed for the red SVG image on the first line to trigger the bug, > and leave the demo buffer in that state. Instead of reporting the size, it says "Did not find Bug".
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 3 Dec 2023 20:47:10 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 03 15:47:10 2023 Received: from localhost ([127.0.0.1]:32841 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1r9tMs-0006vt-0p for submit <at> debbugs.gnu.org; Sun, 03 Dec 2023 15:47:10 -0500 Received: from mail-il1-x133.google.com ([2607:f8b0:4864:20::133]:54560) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1r9tMn-0006vN-UR for 67604 <at> debbugs.gnu.org; Sun, 03 Dec 2023 15:47:08 -0500 Received: by mail-il1-x133.google.com with SMTP id e9e14a558f8ab-35d5567621fso8303805ab.1 for <67604 <at> debbugs.gnu.org>; Sun, 03 Dec 2023 12:46:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701636410; x=1702241210; darn=debbugs.gnu.org; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:from:to:cc:subject:date:message-id:reply-to; bh=im1bnvBre6xW1nhcCa3Grn6AcRbyXV8ZvBCFtrf0OLI=; b=KwuFRqlzOJ64wkYlRFMU4P+Fx/22rPVmfA8nmgWEaELI5muQLWqcS80YaS/9EctMW9 kv6LFoNwrRPuaNjoSwEwvUlpqnAWMaZvKuwfiYUpEh2uCoxlGUNpGOycsreow0p+f5B6 8pq3XPvDerxaMugsV9lRSbrw7fZ11ZMz70Gal4yL10w39gomzZMfWlYX8GYSZMLQ0QyB Iru+cMEJ2FUdEH2mHBtCV9nERDc+nKAoFoaAM/wN4vWq/DzsMDaxTpcs1AxirWjENLym BqNZRBj8NsZoq6/YqAz2jdZ6pd41GMQpISvnTh7UNP9vgxzN5DLKm7DKqdRIRsFEFxhp lcWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701636410; x=1702241210; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=im1bnvBre6xW1nhcCa3Grn6AcRbyXV8ZvBCFtrf0OLI=; b=anTonDdv8f8OA7KPwaNKC7uEYpY1EHMeg7CdTtL6huCMLA+C3n+LPs8zGAvkc7eTsq PL6uEvjqzzp06zn8YEQnF89QGTj+09EDSNrywo4ifFAG7x+M3w+bS4omU9grcCHIzoT2 xU4i9u0BNXkg/Bl3LUqURBi2f42PGHS4dywQ1+WBfg53SCMvaaftI8DegNf3r5Iz7ShK utdAQ7d1mV6SGLX+b/L23xELL94pB2suRL1vjBMMxZI73lqA51sfctfIkpLMeWtrRzPL xc+ADdlTdL1bjOO0NyClICQcy/5CwFk2XS293sqVeNIjJS9uvnTNB0ueM/LdrH8iXRl8 71sQ== X-Gm-Message-State: AOJu0YzNMOcA+nsvk0kmAstSl/YRv9EH2zsC8uPrSzl6nUjAuHhChLNZ PYbLXrHRJyLTaU8wqGgGgIFLoL0xmJo= X-Google-Smtp-Source: AGHT+IFqX8FWoCMWrItMguEQlo1lku2whdggi2EChfsHav9KCv9T+ehaNGVuq3tqz/Ku08Vj5aSyZQ== X-Received: by 2002:a05:6e02:609:b0:35d:59a2:6467 with SMTP id t9-20020a056e02060900b0035d59a26467mr2432373ils.58.1701636409856; Sun, 03 Dec 2023 12:46:49 -0800 (PST) Received: from smtpclient.apple (cm-24-53-187-34.buckeyecom.net. [24.53.187.34]) by smtp.gmail.com with ESMTPSA id bt19-20020a056e02249300b0035d69e684a7sm585597ilb.32.2023.12.03.12.46.48 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 03 Dec 2023 12:46:49 -0800 (PST) From: JD Smith <jdtsmith@HIDDEN> Message-Id: <190CBBD6-067F-41D8-B5EE-6E1643F01C02@HIDDEN> Content-Type: multipart/alternative; boundary="Apple-Mail=_A03DF2FC-8B79-4365-B8EB-B8C42052B206" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Re: bug#67604: Motion problems with inline images Date: Sun, 3 Dec 2023 15:46:38 -0500 In-Reply-To: <83cyvn6wix.fsf@HIDDEN> To: Eli Zaretskii <eliz@HIDDEN> References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> <83cyvn6wix.fsf@HIDDEN> X-Mailer: Apple Mail (2.3774.200.91.1.1) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) --Apple-Mail=_A03DF2FC-8B79-4365-B8EB-B8C42052B206 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Dec 3, 2023, at 12:11=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> = wrote: >=20 >> From: JD Smith <jdtsmith@HIDDEN> >> Date: Sun, 3 Dec 2023 11:54:27 -0500 >>=20 >> Following on from the recently fixed bug#67533, which related to = incorrect pixel size measurements >> with inline images, one remaining issue, with that fix in place, = relates to motion in buffers in visual line >> mode with inline images. A video of the effect can be seen on the = associated gist for bug#67533. >>=20 >> Here the issue is that next-line/forward-line/(vertical-motion 1) all = skip from the Green inline SVG >> straight to the =E2=80=9CJUMPS HERE=E2=80=9D line, for certain frame = widths (for me: 79 characters). See >> reproduction code, below. Depending on your font char size (mine is = 7x14 pixels) this width may >> vary for you. Note that multiple frame width produce the exact same = wrapped appearance, but the >> motion bug shows up only for one of them. >=20 > I tried different frame widths, but couldn't reproduce the problem. > Not with the latest master branch, anyway, where I recently installed > the changes from bug#67533. >=20 > If someone can tell what frame width and default font height trigger > the problem, I will try to reproduce with those sizes. I just compiled a fresh NS build from master with your bug#67533 fix. = It triggers the skip-a-line bug for me, from emacs -q at frame-width=3D79.= But I can also confirm, it is font size dependent, likely occurring = with only a precise combination of pixel sizes. =20 Here=E2=80=99s an easy way to find it with your font, using the attached = command: Run the let-form mentioned in my initial message. Resize the frame width down until the green image first moves to the = beginning of a visual line (80 chars, for me). Resize down one more column *without causing further wrap* (79 chars for = me). In the svg-file-motion-demo buffer, execute M-x my/find-skip-bug. It should report the pixel width needed for the red SVG image on the = first line to trigger the bug, and leave the demo buffer in that state. Hitting down twice from (point-min) should land on JUMPS HERE, bypassing = the stub line =E2=80=9Cpulvinar nibh". ++++ (defun my/find-skip-bug () (interactive) (goto-char (point-min)) (let* ((ov (car (overlays-at 10))) (w 146) (h 29) (wc (frame-char-width)) (res (cl-loop for off from (- (- wc 2)) to (1- wc) for sw =3D (+ w off) for svg =3D (svg-create sw h) do (message "Checking with red image width %d" sw) (svg-rectangle svg 0 0 sw h :fill-color "red") (overlay-put ov 'display (svg-image svg :ascent 'center)) if (save-excursion (next-line) (next-line) (beginning-of-visual-line) (looking-at "JUMPS HERE")) return off finally return nil))) (if res (message "Found Bug at offset %d =3D %d pixels" res (+ w = res)) (message "Did not find Bug")))) =20 --Apple-Mail=_A03DF2FC-8B79-4365-B8EB-B8C42052B206 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 <html><head><meta http-equiv=3D"content-type" content=3D"text/html; = charset=3Dutf-8"></head><body style=3D"overflow-wrap: break-word; = -webkit-nbsp-mode: space; line-break: = after-white-space;"><div><blockquote type=3D"cite"><div>On Dec 3, 2023, = at 12:11=E2=80=AFPM, Eli Zaretskii <eliz@HIDDEN> wrote:</div><br = class=3D"Apple-interchange-newline"><div><div><blockquote = type=3D"cite">From: JD Smith <jdtsmith@HIDDEN><br>Date: Sun, 3 = Dec 2023 11:54:27 -0500<br><br>Following on from the recently fixed = bug#67533, which related to incorrect pixel size measurements<br>with = inline images, one remaining issue, with that fix in place, relates to = motion in buffers in visual line<br>mode with inline images. A = video of the effect can be seen on the associated gist for = bug#67533.<br><br>Here the issue is that = next-line/forward-line/(vertical-motion 1) all skip from the Green = inline SVG<br>straight to the =E2=80=9CJUMPS HERE=E2=80=9D line, for = certain frame widths (for me: 79 characters). See<br>reproduction = code, below. Depending on your font char size (mine is 7x14 = pixels) this width may<br>vary for you. Note that multiple frame = width produce the exact same wrapped appearance, but the<br>motion bug = shows up only for one of them.<br></blockquote><br>I tried different = frame widths, but couldn't reproduce the problem.<br>Not with the latest = master branch, anyway, where I recently installed<br>the changes from = bug#67533.<br><br>If someone can tell what frame width and default font = height trigger<br>the problem, I will try to reproduce with those = sizes.<br></div></div></blockquote><br></div><span style=3D"caret-color: = rgb(0, 0, 0); color: rgb(0, 0, 0);">I just compiled a fresh NS build = from master with your bug#67533 fix. It triggers the skip-a-line = bug for me, from emacs -q at frame-width=3D79. </span><font = color=3D"#000000"><span style=3D"caret-color: rgb(0, 0, 0);">But I can = also confirm, it is font size dependent, likely occurring with only a = precise combination of pixel sizes. </span></font><div><font = color=3D"#000000"><span style=3D"caret-color: rgb(0, 0, = 0);"><br></span></font></div><div><font color=3D"#000000"><span = style=3D"caret-color: rgb(0, 0, 0);">Here=E2=80=99s an easy way to find = it with your font, using the attached command:</span></font><div = style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, = 0);"><div><br></div><div><ul class=3D"MailOutline"><li>Run the let-form = mentioned in my initial message.</li><li>Resize the frame width down = until the green image first moves to the beginning of a visual line (80 = chars, for me).</li><li>Resize down one more column *without causing = further wrap* (79 chars for me).</li><li>In the svg-file-motion-demo = buffer, execute M-x my/find-skip-bug.</li><li>It should report the pixel = width needed for the red SVG image on the first line to trigger the bug, = and leave the demo buffer in that state.</li><li>Hitting down twice from = (point-min) should land on JUMPS HERE, bypassing the stub line = =E2=80=9Cpulvinar = nibh".</li></ul></div><div><br></div><div>++++</div><div><br></div><div><d= iv>(defun my/find-skip-bug ()</div><div> = (interactive)</div><div> (goto-char (point-min))</div><div> = (let* ((ov (car (overlays-at 10)))</div><div><span = class=3D"Apple-tab-span" style=3D"white-space:pre"> </span> (w = 146)</div><div><span class=3D"Apple-tab-span" style=3D"white-space:pre"> = </span> (h 29)</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span> (wc = (frame-char-width))</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span> (res</div><div><span = class=3D"Apple-tab-span" style=3D"white-space:pre"> </span> = (cl-loop</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span> for off from (- (- wc 2)) = to (1- wc)</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span> for sw =3D (+ w = off)</div><div><span class=3D"Apple-tab-span" style=3D"white-space:pre"> = </span> for svg =3D (svg-create sw h) do</div><div><span = class=3D"Apple-tab-span" style=3D"white-space:pre"> </span> = (message "Checking with red image width %d" sw)</div><div><span = class=3D"Apple-tab-span" style=3D"white-space:pre"> </span> = (svg-rectangle svg 0 0 sw h :fill-color "red")</div><div><span = class=3D"Apple-tab-span" style=3D"white-space:pre"> </span> = (overlay-put ov 'display (svg-image svg :ascent = 'center))</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span> if = (save-excursion</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span>(next-line) = (next-line)</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> = </span>(beginning-of-visual-line)</div><div><span class=3D"Apple-tab-span"= style=3D"white-space:pre"> </span>(looking-at "JUMPS = HERE"))</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span> return = off</div><div><span class=3D"Apple-tab-span" style=3D"white-space:pre"> = </span> finally return nil)))</div><div> (if res = (message "Found Bug at offset %d =3D %d pixels" res (+ w = res))</div><div> (message "Did not find = Bug"))))</div><div> </div></div><div><br></div></div></div></bo= dy></html>= --Apple-Mail=_A03DF2FC-8B79-4365-B8EB-B8C42052B206--
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at 67604) by debbugs.gnu.org; 3 Dec 2023 17:12:07 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 03 12:12:07 2023 Received: from localhost ([127.0.0.1]:60756 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1r9q0k-0006kd-TM for submit <at> debbugs.gnu.org; Sun, 03 Dec 2023 12:12:07 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:41114) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1r9q0i-0006je-F6 for 67604 <at> debbugs.gnu.org; Sun, 03 Dec 2023 12:12:05 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <eliz@HIDDEN>) id 1r9q0R-0002Cl-Pq; Sun, 03 Dec 2023 12:11:48 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=XhJFDo92I6y/ZbV60Sf3+rmC+pVTw98V1xEd/GF23wQ=; b=nYdek+T7/vCbHUA470UG yM5JqpKh/jXkgliaf8sPkVsDvLUHmNCm1xt5FBIa3N7l3alxg5wY09WBpeosCKHb41eZxAaXBLWlQ t4t6gK5iS0YlMfHz7GmijiJJHglwAKLLBXG0u8uApY1hT+JUmb04gR13degr14w65GAQ0OtRJmXwK dAdNtauPXrBpBLmd7Bu2fHYI/Q8drLDkwB93lgxRMNo95nYJRcbuIy4KtpRMPpJZhb3WQkGdgApi/ qxSAYle+ocVOvdmK1J4cwEHgsn2kTdtWD3uxHoECaGvb4/wUAXfrOi8pVe1bqNQjiFiBsw3aQo6IT gPMCLCfCSAHS7g==; Date: Sun, 03 Dec 2023 19:11:50 +0200 Message-Id: <83cyvn6wix.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: JD Smith <jdtsmith@HIDDEN> In-Reply-To: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> (message from JD Smith on Sun, 3 Dec 2023 11:54:27 -0500) Subject: Re: bug#67604: Motion problems with inline images References: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 67604 Cc: 67604 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -3.3 (---) > From: JD Smith <jdtsmith@HIDDEN> > Date: Sun, 3 Dec 2023 11:54:27 -0500 > > Following on from the recently fixed bug#67533, which related to incorrect pixel size measurements > with inline images, one remaining issue, with that fix in place, relates to motion in buffers in visual line > mode with inline images. A video of the effect can be seen on the associated gist for bug#67533. > > Here the issue is that next-line/forward-line/(vertical-motion 1) all skip from the Green inline SVG > straight to the “JUMPS HERE” line, for certain frame widths (for me: 79 characters). See > reproduction code, below. Depending on your font char size (mine is 7x14 pixels) this width may > vary for you. Note that multiple frame width produce the exact same wrapped appearance, but the > motion bug shows up only for one of them. I tried different frame widths, but couldn't reproduce the problem. Not with the latest master branch, anyway, where I recently installed the changes from bug#67533. If someone can tell what frame width and default font height trigger the problem, I will try to reproduce with those sizes.
bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 3 Dec 2023 16:55:07 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Sun Dec 03 11:55:06 2023 Received: from localhost ([127.0.0.1]:60720 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1r9pkD-0006II-Rl for submit <at> debbugs.gnu.org; Sun, 03 Dec 2023 11:55:06 -0500 Received: from lists.gnu.org ([2001:470:142::17]:46288) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <jdtsmith@HIDDEN>) id 1r9pkB-0006I4-SS for submit <at> debbugs.gnu.org; Sun, 03 Dec 2023 11:55:01 -0500 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 <jdtsmith@HIDDEN>) id 1r9pjw-0008Nu-FH for bug-gnu-emacs@HIDDEN; Sun, 03 Dec 2023 11:54:44 -0500 Received: from mail-io1-xd2e.google.com ([2607:f8b0:4864:20::d2e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <jdtsmith@HIDDEN>) id 1r9pju-0002LL-JO for bug-gnu-emacs@HIDDEN; Sun, 03 Dec 2023 11:54:44 -0500 Received: by mail-io1-xd2e.google.com with SMTP id ca18e2360f4ac-7b3905b1b86so226970639f.3 for <bug-gnu-emacs@HIDDEN>; Sun, 03 Dec 2023 08:54:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701622480; x=1702227280; darn=gnu.org; h=to:date:message-id:subject:mime-version:from:from:to:cc:subject :date:message-id:reply-to; bh=PJxmt41Oy/jqX8BWA9FD+X8vaRJQ9PV+2oezOncQnrA=; b=facRJfKpLVLpJXN1fO84930X+Ys60ztgvwXhmRgNtbgAYkR2AUcajfAKiLm8Of8j1t Z/fVSMvvDTaVWK8Mz4DFNufzbaoRk3HHNkuNl3IVrkMM6uZ48CZ3Wtj3XOfISux7xBRE H4bS+EAP5CxZEYvJ2gLlBiSSScKAmSeOQRXkqVejSlpCd38KmGouxHLUAmGVyHj1qM5+ nIrdVxnxeK4fE131izNz2ZJ6pciFTZ2beAdoI+AIIAIaVsYUR9uSuV2KYcUCAnllBx4X YwagJ09DFD3+6sTAFOEUjOTEEeXhKYXv0xFnbm9xH7qqg7NP53cDv49gUaInDSStQsFj Q1uA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701622480; x=1702227280; h=to:date:message-id:subject:mime-version:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=PJxmt41Oy/jqX8BWA9FD+X8vaRJQ9PV+2oezOncQnrA=; b=rlZ8DJoYTRUw7BsaRVReNfqpq8QKCL54p5/+ikF50n3Mrs4gr2Vp/CTmUgr2pt9m7P u+Dg4HXekZReI0unW92wnghiPEsM/IcyBy9iOK3ocJQLXX1NzNMAR8n8obLSFEAl5w2I Cq+6njbDogz8mJvK4G6P9o/3K/02lRQkZgwLzlhh+OycGlB4r2fDDA6nq35B0SDbzoXj 4BdmdYMg+o9flXYMXJScLfXrInVRRg4yVUJnf7X9pIjXKmuwSs1kDrsgM6+89LaEfeU3 UgBKgXkFXZOHfa6xAIMDDFeMkrC2mzEKCSMb3SwuZxZBWW2hSJWhqBekFV4VzMOldQPB lQ2g== X-Gm-Message-State: AOJu0YzaLPlW8hzs2XSqmalUB7eYq6pBXasTTcU8Lj3xK3yqValu95jV 6VtP6ha29U4liz5PiyydBZHRGGKHFxw= X-Google-Smtp-Source: AGHT+IH0A8CUj+eVrAN+M6yvpmA8ySXaPZ1Us1Od8cEF+6Nm0m0EPpIizIHekC9d/Qum1F2sdG1eaQ== X-Received: by 2002:a5e:8f45:0:b0:7b4:435e:2f66 with SMTP id x5-20020a5e8f45000000b007b4435e2f66mr992713iop.42.1701622479686; Sun, 03 Dec 2023 08:54:39 -0800 (PST) Received: from smtpclient.apple (cm-24-53-187-34.buckeyecom.net. [24.53.187.34]) by smtp.gmail.com with ESMTPSA id n8-20020a5e8c08000000b007b4032a51ecsm2271761ioj.8.2023.12.03.08.54.38 for <bug-gnu-emacs@HIDDEN> (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 03 Dec 2023 08:54:38 -0800 (PST) From: JD Smith <jdtsmith@HIDDEN> Content-Type: multipart/alternative; boundary="Apple-Mail=_39C1DB35-AFB5-4EFF-95F9-5D48263C16AA" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.200.91.1.1\)) Subject: Motion problems with inline images Message-Id: <E1F6123B-DA1E-419B-B305-43A31A5876A6@HIDDEN> Date: Sun, 3 Dec 2023 11:54:27 -0500 To: bug-gnu-emacs@HIDDEN X-Mailer: Apple Mail (2.3774.200.91.1.1) Received-SPF: pass client-ip=2607:f8b0:4864:20::d2e; envelope-from=jdtsmith@HIDDEN; helo=mail-io1-xd2e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -0.0 (/) --Apple-Mail=_39C1DB35-AFB5-4EFF-95F9-5D48263C16AA Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Following on from the recently fixed bug#67533, which related to = incorrect pixel size measurements with inline images, one remaining = issue, with that fix in place, relates to motion in buffers in visual = line mode with inline images. A video of the effect = <https://gist.github.com/jdtsmith/ad765047a6afe20f353de573d8c07da9?permali= nk_comment_id=3D4780726#gistcomment-4780726> can be seen on the = associated gist for bug#67533. Here the issue is that next-line/forward-line/(vertical-motion 1) all = skip from the Green inline SVG straight to the =E2=80=9CJUMPS HERE=E2=80=9D= line, for certain frame widths (for me: 79 characters). See = reproduction code, below. Depending on your font char size (mine is = 7x14 pixels) this width may vary for you. Note that multiple frame = width produce the exact same wrapped appearance, but the motion bug = shows up only for one of them. There are other related phenomena, such as prev-line from an image at = column 0 jumping to (near the) end of the previous screen line, but = hopefully this is enough to identify the motion issue(s) at hand. ++++=20 (require 'svg) (let ((buf "svg-file-motion-demo") (ims '(("red" 146 29) ("green" 106 29) ("blue" 151 29)))) (with-current-buffer (get-buffer-create buf) (erase-buffer) (visual-line-mode 1) (insert "tellus. $\\gamma(t) =3D = \\log\\left(\\sqrt{\\tan(t)}\\right)$ Donec hendrerit tempor tellus. = $\\chi(y) =3D \\sqrt{\\frac{1}{\\log(y)}}$ Phasellus lacus. $\\tau(t) = =3D \\exp\\left(\\sqrt{\\exp(t)}\\right)$ Curabitur lacinia pulvinar = nibh. JUMPS HERE") (goto-char (point-min)) (while (re-search-forward (rx ?$ (* (not ?$)) ?$) nil t) (let* ((ov (make-overlay (match-beginning 0) (match-end 0))) (im (pop ims)) (svg (svg-create (nth 1 im) (nth 2 im)))) (svg-rectangle svg 0 0 (nth 1 im) (nth 2 im) :fill-color (car = im)) (overlay-put ov 'display (svg-image svg :ascent 'center))))) (pop-to-buffer buf)) ++++ --Apple-Mail=_39C1DB35-AFB5-4EFF-95F9-5D48263C16AA Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 <html><head><meta http-equiv=3D"content-type" content=3D"text/html; = charset=3Dutf-8"></head><body style=3D"overflow-wrap: break-word; = -webkit-nbsp-mode: space; line-break: after-white-space;">Following on = from the recently fixed bug#67533, which related to incorrect pixel size = measurements with inline images, one remaining issue, with that fix in = place, relates to motion in buffers in visual line mode with inline = images. A video of the <a = href=3D"https://gist.github.com/jdtsmith/ad765047a6afe20f353de573d8c07da9?= permalink_comment_id=3D4780726#gistcomment-4780726">effect</a> can = be seen on the associated gist for <span style=3D"caret-color: = rgb(0, 0, 0); color: rgb(0, 0, 0);">bug#67533.</span><br><div><span = style=3D"caret-color: rgb(0, 0, 0); color: rgb(0, 0, = 0);"><br></span></div><div><font color=3D"#000000">Here the issue is = that next-line/forward-line/(vertical-motion 1) all skip from the Green = inline SVG straight to the =E2=80=9CJUMPS HERE=E2=80=9D line, for = certain frame widths (for me: 79 characters). See reproduction = code, below. Depending on your font char size (mine is 7x14 = pixels) this width may vary for you. Note that multiple frame = width produce the exact same wrapped appearance, but the motion bug = shows up only for one of them.</font></div><div><font = color=3D"#000000"><br></font></div><div><font color=3D"#000000">There = are other related phenomena, such as prev-line from an image at column 0 = jumping to (near the) end of the previous screen line, but hopefully = this is enough to identify the motion issue(s) at = hand.</font></div><div><br></div><div><font = color=3D"#000000">++++ </font></div><div><div>(require = 'svg)</div><div>(let ((buf "svg-file-motion-demo")</div><div> = (ims '(("red" 146 29)</div><div><span = class=3D"Apple-tab-span" style=3D"white-space:pre"> </span> = ("green" 106 29)</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span> ("blue" 151 = 29))))</div><div> (with-current-buffer (get-buffer-create = buf)</div><div> (erase-buffer)</div><div> = (visual-line-mode 1)</div><div> (insert "tellus. = $\\gamma(t) =3D \\log\\left(\\sqrt{\\tan(t)}\\right)$ Donec = hendrerit tempor tellus. $\\chi(y) =3D = \\sqrt{\\frac{1}{\\log(y)}}$ Phasellus lacus. $\\tau(t) =3D = \\exp\\left(\\sqrt{\\exp(t)}\\right)$ Curabitur lacinia pulvinar = nibh.</div><div>JUMPS HERE")</div><div> (goto-char = (point-min))</div><div> (while (re-search-forward (rx = ?$ (* (not ?$)) ?$) nil t)</div><div> (let* ((ov = (make-overlay (match-beginning 0) (match-end 0)))</div><div><span = class=3D"Apple-tab-span" style=3D"white-space:pre"> </span> = (im (pop ims))</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span> (svg (svg-create = (nth 1 im) (nth 2 im))))</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span>(svg-rectangle svg 0 0 (nth 1 im) = (nth 2 im) :fill-color (car im))</div><div><span class=3D"Apple-tab-span" = style=3D"white-space:pre"> </span>(overlay-put ov 'display = (svg-image svg :ascent 'center)))))</div><div> (pop-to-buffer = buf))</div></div><div>++++</div><div><br></div></body></html>= --Apple-Mail=_39C1DB35-AFB5-4EFF-95F9-5D48263C16AA--
JD Smith <jdtsmith@HIDDEN>
:bug-gnu-emacs@HIDDEN
.
Full text available.bug-gnu-emacs@HIDDEN
:bug#67604
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.