On Monday 9. February 2015 12.00.57 Jim Tittsler wrote: > On 02/09/2015 07:39 AM, Mark Sapiro wrote: > > On 02/08/2015 04:37 AM, Paul Boddie wrote: > >> [...] I might suggest not > >> limiting the width of the header and page content, but instead just > >> letting it fill the window. > > > > I agree with Paul here. I really didn't notice an issue at first, but > > today I had occasion to point to <http://wiki.list.org/x/15958359> and > > OK. I've pushed a new version that does not limit the width of the > header/content column. > https://code.launchpad.net/~jwt/+junk/wikilistorg > > I've also fixed a few other things that I noticed after seeing the > actual wiki content in the theme... like clawing back a few pixels to > better accommodate some of the very long page titles.
I realised that I was being lazy not testing this on my own machine, given that I'd migrated the content a few times and have plenty of pages to test with, so I had a quick look at the code. I've attached a patch to this message - hoping Mailman doesn't strip it! - which makes some minor, functionality-preserving changes that might help future maintenance of the various sidebar lists. Not really knowing bzr at all, I generated this using "bzr send -o sidebars.diff", but what I would have used in Mercurial is probably "hg export tip > sidebars.diff", just for the record. ;-) Paul
# Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: paulb@jeremy-20150209122647-h0fazgnl1jdye0ah # target_branch: http://bazaar.launchpad.net/~jwt/+junk/wikilistorg/ # testament_sha1: 92a06bd7ab3529024cc695008f0eb839e00da229 # timestamp: 2015-02-09 13:36:09 +0100 # base_revision_id: j...@onjapan.net-20150209105456-bfxvj8wdfr0824zb # # Begin patch === modified file 'mailman.py' --- mailman.py 2015-02-09 10:54:56 +0000 +++ mailman.py 2015-02-09 12:26:47 +0000 @@ -8,12 +8,29 @@ @license: GNU GPL, see COPYING for details. """ +from MoinMoin.Page import Page from MoinMoin.theme import ThemeBase class Theme(ThemeBase): name = "mailman" + space_links = [ + ('COM/Home', 'Community'), + ('DEV/Home', 'Development'), + ('DOC/Home', 'Documentation'), + ('SEC/Home', 'Security'), + ] + + faq_links = [ + ('DOC/1 Introduction - What is GNU Mailman?', 'Intro to GNU Mailman'), + ('DOC/2 Help for mailing list members', 'Mailing list members'), + ('DOC/3 List administrator tasks', 'List administrator tasks'), + ('DOC/4 Site administrator tasks', 'Site administrator tasks'), + ('DOC/5 Downloading and installing Mailman', 'Downloading and installing'), + ('DOC/6 Integration issues (with mail or web servers)', 'Integrating with mail and web servers'), + ] + def html_head(self, d): # add favicon return ThemeBase.html_head(self, d) + '<link rel="shortcut icon" href="%s/mailman/img/favicon.ico">' % (self.cfg.url_prefix_static) @@ -26,30 +43,32 @@ def spaces(self): """ shortcuts to Spaces """ - html = [ - u'<ul id="spaces">', - u'<li><a href="/COM">Community</a></li>', - u'<li><a href="/DEV">Development</a></li>', - u'<li><a href="/DOC">Documentation</a></li>', - u'<li><a href="/SEC">Security</a></li>', - u'</ul>', - ] - return u'\n'.join(html) + return self.sidebar_list("spaces", self.space_links) def faq(self): """ shortcuts to FAQs """ - html = [ - u'<ul id="faqs">', - u'<li><a href="/DOC/1%20Introduction%20-%20What%20is%20GNU%20Mailman%3F">Intro to GNU Mailman</a></li>', - u'<li><a href="/DOC/2%20Help%20for%20mailing%20list%20members">Mailing list members</a></li>', - u'<li><a href="/DOC/3%20List%20administrator%20tasks">List administrator tasks</a></li>', - u'<li><a href="/DOC/4%20Site%20administrator%20tasks">Site administrator tasks</a></li>', - u'<li><a href="/DOC/5%20Downloading%20and%20installing%20Mailman">Downloading and installing</a></li>', - u'<li><a href="/DOC/6%20Integration%20issues%20%28with%20mail%20or%20web%20servers%29">Integrating with mail and web servers</a></li>', - u'</ul>', - ] - return u'\n'.join(html) + return self.sidebar_list("faqs", self.faq_links) + + def sidebar_list(self, list_id, links): + """ shortcuts in a list for the given links + """ + request = self.request + fmt = request.formatter + + html = [] + append = html.append + + append(fmt.bullet_list(on=1, id=list_id)) + + for pagename, label in links: + page = Page(request, pagename) + append(fmt.listitem(on=1)) + append(page.link_to(request, label)) + append(fmt.listitem(on=0)) + + append(fmt.bullet_list(on=0)) + return u''.join(html) def sidebar(self, d): """ list.org-like sidebar # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWW+9fKgAAmBfgERQUOf//97n y4q////wUAWO4rt3uo9717czewekQCUUyCT0aBG1NpNlMj1D1PKYCeoaNGgACUgjCMjFU8ap6mj1 GEADQYjQNGAglCaEnkJPSn6pvVHtSYhp+qbU0ANAGhtQNAkSEEj9U9TFPU9I0080kHpA9I09QMgA AJJARo0JkEaZpFA02p6nqHommNQAB6jUREz2FXYvthlrhdGb9sa4MXDAOe83a6qgXHj4UwchbC6C sookcuqVMaYYa3bOnIhJEJJYCL8v2w6+Ftoh1JBdjTVPC7Qa+C8zPgrG0tPxx1G7WcdVaXfD7L11 6O7zsmL4KthwX9UuiW+zf2M9eJsq2sSrIXnZro3j6EpnHqhFYWqQag3WPTfMIC5zvk90u9xbM4Ph mx5SpgkfQwK/1PJhCrolPSo29VpN+ng2sBpNl5xCNAZJ40bnppCNLRc2Irufh1LLLWIRmIMIQspZ tbIthiPiKChOEPOJZvhYXVxq11XmCs3LLkRocgk/z/WE75wnaBDUNQ+aXMSzS76F0IWEgums61h+ yQjoViqLqOcwtYXxH7aJC65XTeGGPTwBjJsz2djamvCXJIr/gWOPsWEPGtEK9bZt5dlVD00laLf0 n064CVUKsRR55i7BZRFXht8D9WsfvaZyqrLN0kbal+DZGio+OG5GPk0GDoZLZRFk9oEd4YczQkZX LMIGMUK7jWw5bgzehiC1PfmtsYBe3ABhXZEfdSqPtHTMbYbACgUxybR77D0WQgtrgnNNY5MdWEm4 EJyBYWkZEoziYnYER1jYMEKTKPFRKu9XrjXBI45LXiq7FBZetGLkrEwlNY2e0xA3PiY6KKC7c9H4 USwJ0VFPrXeijzApOn5+eNFULIbbuiFwv6FqXnl4Hfao/BWA+W/deLsTjiH4LQMFkZS00VWWo6ua go0BlerIA+nVFtRBBtF7j2tjTwymdOZYDC3Itwd7SvquleLe1kRcG+/qbvbBRYHYbbEvZeLgface B7MUohykyzKn3hPGSVIj0RkNeo1Gtl18k8nH8lli7MRcV+fBLYHFFFEgNnier7TOaTRXQw18Fo4N up2BN+QcSUzQT5wXA5eaHICqUZ+kTS4XNRmI4Hg1Zcpc1ZhkQW/E1h0vZxhrx9XLa1ZWHKJXDRrv 3cVF5/1Q3GKUMDVJvQjEaKcBLJurZzSvnmNe87t9utYIagcTBe5gmo6R+5kSwyFJpnp2uiNOYvHz lojNW8I2sVKrUwQMxg+iRlQhtUQPKJtGHiFGiviJJm4O6+bmyKVlQR5LzZo/vMmVnS8IbKMeGJxT HcwolofYoBldaMSbgDIJmfZusmGIS0BvQtEtA8SZmVhu9d1lwRDwF/yT+nA2BzJt3dgPC4GDvx75 as9zMERSDF4byliViiRFyc8bCd4zDCZH8OeR140HDPFUuKXOLV6v2aIuoIkgopn0XbbzyO4N3NUK TJ9SJXpSgMRFVbNyhwlAnETKzgaaJhOM4SAg54DioDkHMWo95IPQZM5nJyrjVtDx9/KJr5nR/kEf 1vS+kG8PnCM1XExButyHBr7mem3GhPlsVv45OOYaw1sNg48t5VKuscpb8iWOYv2KZYPUJ3tpaAks ZqYdPPR8iISoi/doNEKu2RwXX+TLMGpLCZx2BYNsa3QzHlul101Ek2myJ0i3jqjBjO5WRmHUH6Bc vX9Xts6SwtYZIZMSHOLwZGLvfsfPV2jA9i1ktKA+RBiPIHkImo9aBC2pGyA8zOuZ8kB0q25D/mZX nap8IBBFUwbcHrC5ylVsk4pwKcUSA7Tnlvk7BRd3l99VgYQDeFPaEDc2vA1vCR+dFmF/bmMaCeNv Fju8w2jhU/8XckU4UJBvvXyo
_______________________________________________ Mailman-Developers mailing list Mailman-Developers@python.org https://mail.python.org/mailman/listinfo/mailman-developers Mailman FAQ: http://wiki.list.org/x/AgA3 Searchable Archives: http://www.mail-archive.com/mailman-developers%40python.org/ Unsubscribe: https://mail.python.org/mailman/options/mailman-developers/archive%40jab.org Security Policy: http://wiki.list.org/x/QIA9