help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Gnus + emacs.stackexchange


From: Drew Adams
Subject: RE: Gnus + emacs.stackexchange
Date: Mon, 11 May 2015 08:47:53 -0700 (PDT)

> >> Ok. It looks like something is setting your
> >> `tabulated-list-use-header-line' variable to nil *between* the
> >> buffer initialization and the list printing. So the
> >> `tabulated-list--header-string' variable doesn't get set (it's
> >> normally set during buffer initialization), but when it's time to
> >> print, the variable is expected to be a string.
> >> I think that's a bug in tabulated-list-mode (which I'll try to
> >> get fixed now), but do you have any hooks or advices that may be
> >> causing that?
> >
> > Check where you call the major (derived) mode, which calls
> > `tabulated-list-mode'.  If it calls it after you have already
> > inserted the header line then that line will be removed when
> > `tabulated-list-mode' (calls `special-mode' which) kills all
> > local variables.
> 
> Activating the mode is the first thing we do on a new buffer. All
> variables are set after that.
> 
> And sx has no reference to `tabulated-list-use-header-line' or
> `tabulated-list--header-string', which is why I suspect there's a
> hook gone rogue somewhere. Of course, I may be wrong.

It should call `tabulated-list-init-header', I believe.  If it does
not then that is perhaps your problem.  See (elisp) `Tabulated List
Mode':

 The body of the `define-derived-mode' form should specify the format
 of the tabulated data, by assigning values to the variables
 documented below; then, it should call the function
 `tabulated-list-init-header' to initialize the header line.

And the doc string of `tabulated-list-mode':

 An inheriting mode should usually do the following in their body:...
  - Call `tabulated-list-init-header' to initialize `header-line-format'
    according to `tabulated-list-format'.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]