GNU bug report logs - #16413
24.3.50; Inconsistent behavior of text property functions in narrowed buffer

Previous Next

Package: emacs;

Reported by: Nathan Trapuzzano <nbtrap <at> nbtrap.com>

Date: Sat, 11 Jan 2014 03:07:01 UTC

Severity: wishlist

Found in version 24.3.50

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Daniel Colascione <dancol <at> dancol.org>
To: Nathan Trapuzzano <nbtrap <at> nbtrap.com>, 16413 <at> debbugs.gnu.org
Subject: bug#16413: 24.3.50; Inconsistent behavior of text property functions in narrowed buffer
Date: Fri, 10 Jan 2014 20:09:37 -0800
On 01/10/2014 08:05 PM, Daniel Colascione wrote:
> On 01/10/2014 07:05 PM, Nathan Trapuzzano wrote:
>> The various functions for examining text properties behave unintuitively
>> and incosistently at (point-max) on narrowed buffers.  Rather than
>> returning `nil', they return the prop(s) of the text at (point-max),
>> even though the text is not actually visible in the buffer, due to
>> narrowing.  By contrast, `char-after' always returns `nil' when passed
>> (point-max).  It seems to me the text property functions should also
>> return `nil', as they do at (eobp) on widened buffers.
>
> I agree that this behavior is unintuitive, but I wonder whether we can
> fix this bug without breaking existing elisp.

Which functions break, exactly? The following test passes.

(ert-deftest text-property-narrowing ()
  "Test that text properties outside narrowed buffer are invisible"
  (with-temp-buffer
    (insert "  ")
    (put-text-property (1- (point-max)) (point-max) 'foo 'bar)
    (should (eq (get-text-property (1- (point-max)) 'foo) 'bar))
    (narrow-to-region (point-min) (1- (point-max)))
    (should (null (get-text-property (1- (point-max)) 'foo)))))





This bug report was last modified 3 years and 23 days ago.

Previous Next


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