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

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

bug#23675: Feature request: Emacs 25.0.94: count-lines should offer a wa


From: Lars Ingebrigtsen
Subject: bug#23675: Feature request: Emacs 25.0.94: count-lines should offer a way to ignore invisible lines, e.g. outline mode
Date: Tue, 25 Jun 2019 15:30:44 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux)

Some comments on the patch:

Robert Weiner <rsw@gnu.org> writes:

> ! (defun count-lines (start end)
>     "Return number of lines between START and END.
>   This is usually the number of newlines between them,
>   but can be one more if START is not equal to END
> ! and the greater of them is not at the start of a line."
>     (save-excursion
>       (save-restriction
>         (narrow-to-region start end)
>         (goto-char (point-min))
> !       (if (eq selective-display t)
> !       (save-match-data

Hm...  the current version of the function doesn't mention
selective-display at all, which it probably should, anyway...

> ! (defun count-lines (start end &optional ignore-invisible-lines-flag)

I think we tend to avoid -flag in arguments these days?

> ! With optional IGNORE-INVISIBLE-LINES-FLAG non-nil,
> ! lines collapsed with selective-display are excluded
> ! from the line count."

This is very confusing, because it only mentions selective-display when
this flag is non-nil, but not what the flag does otherwise.

> !       (cond ((and (not ignore-invisible-lines-flag) (eq selective-display 
> t))
> !          (save-match-data

[...]

> !               (while (re-search-forward "\n\\|\r[^\n]" nil t)

And the selective-display bit saves match data and the
non-selective-display one doesn't.

But other than that, I think this sounds like a useful addition.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





reply via email to

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