[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#31240: 26.1; mouse-save-then-kill does not kill rectangles
From: |
martin rudalics |
Subject: |
bug#31240: 26.1; mouse-save-then-kill does not kill rectangles |
Date: |
Mon, 01 Oct 2018 10:33:52 +0200 |
> The problem with using just (count-lines (point-min) position) is that
> the return value
> is different when the point is on column 0 and when it is on column 1
> or greater.
OK. (count-lines (point-min) (point-min)) returns 0 because START and
END are equal so let's assume you want to special-case that. Now the
problem with your code is that
+ (line (progn
+ (forward-line 0)
+ (count-lines (point-min) position))))
probably doesn't do what you expect: The value of POSITION in the call
of 'count-lines' is the _same_ it was before the 'forward-line' call
because 'forward-line' only changes the value of point but not that of
POSITION. So if you want a possible return value of 0 you have to
write
+ (line (progn
+ (forward-line 0)
+ (count-lines (point-min) (point)))))
instead.
> I
> needed to be sure that if the position was anywhere on line N, the
> result was N (with
> N starting at 0).
Agreed, once more. You want to special-case POSITION on the first
line of the buffer. But go the ends of the following two forms and
type C-x C-e on each:
(let ((position 3))
(save-excursion
(goto-char position)
(forward-line 0)
(count-lines (point-min) position)))
(let ((position 3))
(save-excursion
(goto-char position)
(forward-line 0)
(count-lines (point-min) (point))))
Here the first evaluation gets me 1 and the second 0. I suppose it's
the latter you want.
martin
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles,
martin rudalics <=
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles, Federico Tedin, 2018/10/01
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles, martin rudalics, 2018/10/02
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles, Federico Tedin, 2018/10/02
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles, martin rudalics, 2018/10/02
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles, Homeros Misasa, 2018/10/03
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles, martin rudalics, 2018/10/05
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles, Tak Kunihiro, 2018/10/05
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles, Federico Tedin, 2018/10/05
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles, martin rudalics, 2018/10/06
- bug#31240: 26.1; mouse-save-then-kill does not kill rectangles, Federico Tedin, 2018/10/06