[Mailman-Developers] Styling patch

A.M. Kuchling amk at amk.ca
Tue May 8 19:50:22 CEST 2007

On Tue, May 08, 2007 at 11:06:14AM -0400, Barry Warsaw wrote:
> I'm not so sure.  I feel very uncomfortable making /any/ non-bug-fix  
> changes to 2.1, perhaps even limiting them to critical bug fixes that  
> address security or reliability issues.  Better (IMO) to fairly  
> quickly get a conservative 2.2 out sooner, along the lines I  
> described in an earlier message.

I have an idea for a proposed conservative approach for 2.1:

* Add two mm_cfg settings: CSS_FILES and JS_FILES, while are lists
  (alternatively, whitespace-separated strings):

	CSS_FILES = ['/css/mailman.css', '/css/custom.css']
	JS_FILES = ['/js/switcher.js', '/js/foo.js']

* Make generated HTML pages contain <link rel=stylesheet> for each
  of the CSS files, and <script src='<js file>'> for each JS file.

* Wrap the body of Mailman-generated pages in <div id="mailman">...</div>.

That's it. 

This lets people apply CSS and JS customizations to all of Mailman's
pages, and the #mailman lets them include MM-specific CSS directives
without breaking their existing CSS.  JS files are included because
people might use them for style switching.  Mailman still wouldn't use
any JS itself.

Possibly we could apply the portion of the patch that generates tags
like <br /> instead of <br>, but since we wouldn't be adding a DOCTYPE
to the pages, it wouldn't have much effect.  Doing <br /> would make
life easier for people including MM-generated HTML within an XHTML
page, but I doubt very many people do that.

For 2.2, add:

* Restructure HTML to use semantic markup and CSS instead of tables.

* Add a DOCTYPE to the HTML output and check for validity.  Hand-written 
  HTML in list configs. might break validity; IMHO that shouldn't be
  our problem to fix.  We might choose HTML 4.01 validity to avoid
  imposing XHTML correctness on such hand-written text.

* If the MM developers are OK with taking out the WEB_*_COLOR config
  settings, remove them with no concern for compatibility.

* Install a static mailman.css file.

Or we can do the conservative approach for 2.2 and the larger rewrite
for 3.0.


More information about the Mailman-Developers mailing list