Subject: Re: bug#3972: 23.1.50; c-mode sets M-q to c-fill-paragraph

From: Lennart Borgman <[email-masked]>
Date: Thu, 30 Jul 2009 15:40:43 +0200

On Thu, Jul 30, 2009 at 12:47 PM, Alan Mackenzie<[email-masked]> wrote:
> Hi, Lennart!

Hi Alan, thanks for answering me. It makes my frustration a bit less ... ;-)

> On Thu, Jul 30, 2009 at 07:47:32AM +0200, Lennart Borgman wrote:
>> [c-mode sets M-q to c-fill-paragraph]
>> Instead it should set the variable fill-paragraph.
>
> It would be nice, wouldn't it?
>
> Have you tried it, and does it work?  Does it always work?

No, sigh, this is one of the desperate bug reports I send when I am
unable to get a "simple" thing to work in MuMaMo. I just gets confused
and gets things a bit wrong.

I realized after sending the bug report that you probably had some
good reason for doing it the way you do, as you confirm below. (But
that looks like a bug, but not the one I thought I found.)

The problem I am actually fighting is a bit different I believe.
c-fill-paragraph is a bit complicated so I am not sure. What I see
when I am testing is that c-fill-paragraph works in some MuMaMo chunks
(ie a chunk of the buffer with one major mode, other than in the
chunks before and after it) and not others, though in both cases the
major mode is php-mode. My guess so far is that it is because of a
(widen) somewhere inside c-fill-paragraph that makes a call to
something, perhaps to syntax-ppss or similar, come back with bad
information (since it is influenced by contents in other chunks).

What do you think about this guess?

> I've just looked at fill-paragraph's source, and it looks like it's
> broken.  If it's called interactively, transient mark mode is enabled,
> the mark "is active", the region is non-zero length, and it's currently
> a full moon, each paragraph in the region is filled by calling
> fill-region, bypassing fill-paragraph-function.  Or maybe I've missed
> something.
>
> --
> Alan Mackenzie (Nuremberg, Germany).
>