On 5 Jul 2008, at 19:41, Chong Yidong wrote: > > Good, I've checked it in (together with a couple other minor fixes). Can you post a patch for these minor fixes? I'm running this on 22 (because the trunk does not run on my system). At least in the previous version, there's also a problem with posn-x- y, which returns a position too far when given coordinates that are to the right of a word-wrapped line (i.e. in the blank space). This can also be seen if you just click into that space (mouse-set-point). I can post a detailed recipe after I've made sure I've got the up-to- date patch. My new code isn't iterative. It's faster and shouldn't lead to excessive garbage collections as before. > One thing that's not clear to me is whether your minor mode correctly > handles invisible/intangible text and point motion hooks. One of the > reasons line-move-1 and line-move-finish is so complicated is, > unfortunately, the need to DTRT for these. I don't see anything > analogous in your code; am I missing something? OK, I'll bind `inhibit-point-motion-hooks' except for the last movement command. Regarding invisible text, the original code went a long way to handle this efficiently. With the new method (I'll post some code soon), this is handled elegantly and without any hassle thanks to posn-x-y. Regarding intangible text, this works fine with my working version. I'm not sure about "fields", perhaps because I don't know much about their implementation. Can you point me to a test case? Customize buffers perhaps? Thanks for pointing out these issues.