GNU bug report logs - #35898
26.1; line-beginning-position sometimes does not yield line beginning position

Previous Next

Package: emacs;

Reported by: Markus Triska <triska <at> metalevel.at>

Date: Sat, 25 May 2019 13:25:01 UTC

Severity: normal

Tags: notabug

Found in version 26.1

Done: Stefan Kangas <stefan <at> marxist.se>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Eli Zaretskii <eliz <at> gnu.org>
To: Markus Triska <triska <at> metalevel.at>
Cc: 35898 <at> debbugs.gnu.org
Subject: bug#35898: 26.1; line-beginning-position sometimes does not yield line beginning position
Date: Sat, 25 May 2019 17:01:01 +0300
> From: Markus Triska <triska <at> metalevel.at>
> Date: Sat, 25 May 2019 15:23:48 +0200
> 
>     $ wget https://www.metalevel.at/ei/hello.png
> 
> and then, starting Emacs with "emacs -Q", evaluate the following form:
> 
>     (progn
>       (goto-char (point-min))
>       (save-excursion (insert "\n"))
>       (goto-char (+ (point) (cadr (insert-image-file "hello.png"))))
>       (line-beginning-position))
> 
> This yields 592, whereas I expect it to yield 1.

Your expectations are unjustified, because line-beginning-position is
not supposed to work on visual lines, it works on logical/physical
lines, i.e. it scans the buffer for newline characters.

For visual-line operation, you can use either beginning-of-visual-line
or vertical-motion (the former actually calls the latter internally).

> Is there a way to make line-beginning-position yield the line beginning
> position in cases like this? Would you please consider adding this feature?

We already have features to query about the visual lines, so I don't
see why we would need line-beginning-position work in terms of visual
lines.  It will fail Lisp programs that want to disregard the visual
appearance of the buffer.




This bug report was last modified 4 years and 272 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.