bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#31061: 27.0.50; next-page of page-ext non-functional in dired


From: Noam Postavsky
Subject: bug#31061: 27.0.50; next-page of page-ext non-functional in dired
Date: Sat, 28 Apr 2018 20:13:51 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)

Marco Wahl <address@hidden> writes:

> I found that with your suggestion next-page with negative argument goes
> back one page too much in a dired buffer, though.
>
> I further think that the core of the irritation is that `narrow-to-page'
> does not narrow to the following page when on the start of the '\n\n'
> page-separator (unlike for the usual '^^L' separator).

As far as I can tell, narrow-to-page still has the same problem with the
default "\n\f" separator as the "\n\n" one.  It's just that the problem
is more visually obvious in the dired case.  Using thingatpt seems to
work better (but this doesn't handle the COUNT argument for
narrow-to-page):

    (let ((bounds (bounds-of-thing-at-point 'page)))
      (narrow-to-region (car bounds) (cdr bounds)))

Though I guess it might be arguable whether the page separator should
count as part of the page or not.  The above expression (and
`mark-page') treat the separator as part of the preceding page,
`narrow-to-page' seems to exclude the separator from the page.

> Starting with your fix I propose this modification of the else part:
>
>     (while (and (< count 1) (not (bobp)))
>       (if (re-search-backward page-delimiter nil t)
>           (when (= count 0)
>               (goto-char (match-end 0)))
>         (goto-char (point-min)))
>       (setq count (1+ count)))
>
> This is: go to the end of the delimiter when the final page has been
> reached.

Yeah, that works.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]