[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#59727: Problems with displaying long lines
From: |
Eli Zaretskii |
Subject: |
bug#59727: Problems with displaying long lines |
Date: |
Wed, 30 Nov 2022 19:55:36 +0200 |
> From: Juri Linkov <juri@linkov.net>
> Date: Wed, 30 Nov 2022 19:46:37 +0200
>
> [A new bug report from bug#56682]
>
> >> 1. after 'M-g TAB' (move-to-column) to 214748364 or more,
> >> the display is not updated anymore: moving point to the left
> >> from this position shows the cursor, moving point to the right
> >> has no visible effect. Is it a hard limit in the display engine?
> >> Its hex value is #xccccccc.
> >
> > Sounds like a possible bug. Does point move? What does "C-x =" say about
> > point if you move beyond column 214748364?
>
> Point moves correctly:
OK, then the new shortcuts in Emacs 29 for moving by columns in very long
and truncated lines do work reasonably.
> but the cursor motion is not visible.
>
> > If you window is auto-hscrolled as result, then there is indeed hard limit:
> > the X coordinate of a screen line is an 'int', so MAX_INT divided by the
> > pixel-width of your default font is as far as we can go.
>
> Maybe this limitation of auto-hscrolling should be documented?
We could document them, indeed. But where? maybe in PROBLEMS?
> >> 2. after starting Isearch at a large column number,
> >> Emacs hangs up indefinitely, e.g. with
> >> 'M-g TAB 10000000 RET C-s' then even C-g doesn't get out.
> >> Debugging shows that the problem is in 'isearch-update'
> >> where the call to 'pos-visible-in-window-group-p' doesn't return.
> >> When this call is removed, the search is instantaneous.
> >> (Optimizing lazy-highlight is a separate problem in bug#56815.)
> >
> > I thought we agreed that calling pos-visible-in-window-p is not a good idea
> > in this situation, since it will always think any position is visible?
>
> Does pos-visible-in-window-p fail only on long lines?
Not long, truncated ones. It doesn't understand that positions that are to
the left or to the right of the viewport are not "visible".