[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comme
From: |
Drew Adams |
Subject: |
bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment' |
Date: |
Thu, 19 May 2011 11:24:46 -0700 |
> All calls with point elsewhere than before/after a <thingy> behave in
> somewhat arbitrary ways which mostly depend on how the function is
> implemented and what kind of structure <thingies> have (e.g. can they
> nest? Can we easily tell when we're in the middle of a <thingy>?).
That's clearly no good for thing-at-point, in general. `thing-at-point' uses
`bounds-of-thing-at-point', and that uses `forward-THING' in both directions (1,
-1).
`forward-comment' moves point even when there is no comment at point (before or
after). And that causes (thing-at-point 'comment) to return a non-comment
string of text (e.g. only whitespace), instead of nil, when point is not on a
comment.
`thing-at-point' should always return nil or a comment, when THING is `comment'.
It is up to the `forward-THING' functions to each DTRT, or else they break
`thing-at-point'. The alternative is to prevent `b-o-t-a-p' from relying on
`forward-comment'.
IOW, either (a) we need to fix `forward-comment' to DTRT in this case, (b) we
need to add a function `bounds-of-comment-at-point' and then (put 'comment
'bounds-of-thing-at-point 'bounds-of-comment-at-point), or (c) we need to define
adequate `beginning-op' and `end-op' functions for type `comment'.
(b) and (c) are the only ways that `bounds-of-thing-at-point' will avoid
(mis)using a `forward-THING' that does not DTRT for thing-at-point.
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', (continued)
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Drew Adams, 2011/05/13
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Drew Adams, 2011/05/13
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Stefan Monnier, 2011/05/13
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Drew Adams, 2011/05/19
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Stefan Monnier, 2011/05/19
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Drew Adams, 2011/05/21
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Eli Zaretskii, 2011/05/21
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Drew Adams, 2011/05/21
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Eli Zaretskii, 2011/05/21
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Drew Adams, 2011/05/21
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment',
Drew Adams <=
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Stefan Monnier, 2011/05/19
- bug#8667: 24.0.50; `bounds-of-thing-at-point' returns (N . N) for `comment', Drew Adams, 2011/05/21