ikiwiki/ todo/ done

recently fixed TODO items

typography plugin configuration

The typography plugin could support configuration of which translations to make. Text::Typography supports fine-grained control of which translations to make, so typography just needs to expose this somehow. --JoshTriplett

done --Joey

Posted Tue Jun 5 18:56:24 2007
Support wildcard inside of link() within a pagespec

I don't segregate my blog entries into a directory, but instead want my blog to simply consist of all pages that have been tagged. That is, I'd like to have my blog page look like this:

[[inline pages="link(tag/*)"]]

That doesn't work in ikiwiki 2.1, but I have it working with the following patch:

From 6149386084417fb8375d08446438b20ed52d6882 Mon Sep 17 00:00:00 2001
From: Carl Worth <cworth@cworth.org>
Date: Tue, 29 May 2007 11:43:21 -0700
Subject: [PATCH] Allow for glob matching inside of link() within a pagespec

---
 IkiWiki.pm |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/IkiWiki.pm b/IkiWiki.pm
index 38aa46a..cd42e8d 100644
--- a/IkiWiki.pm
+++ b/IkiWiki.pm
@@ -1082,10 +1082,15 @@ sub match_link ($$;@) { #{{{
    my $links = $IkiWiki::links{$page} or return undef;
    return IkiWiki::FailReason->new("$page has no links") unless @$links;
    my $bestlink = IkiWiki::bestlink($from, $link);
-   return IkiWiki::FailReason->new("no such link") unless length $bestlink;
    foreach my $p (@$links) {
-       return IkiWiki::SuccessReason->new("$page links to $link")
-           if $bestlink eq IkiWiki::bestlink($page, $p);
+       if (length $bestlink) {
+           return IkiWiki::SuccessReason->new("$page links to $link")
+               if $bestlink eq IkiWiki::bestlink($page, $p);
+       }
+       else {
+           return IkiWiki::SuccessReason->new("$page links to page matching $link")
+               if match_glob ($p, $link, %params);
+       }
    }
    return IkiWiki::FailReason->new("$page does not link to $link");
 } #}}}
-- 
1.5.1.1.g6aead

Thanks! done --Joey

Posted Wed May 30 19:53:27 2007
wanted pages plugin

orphans shows all pages that exist but have no links to them. We should also support the converse, wanted pages: pages that have links to them but do not exist. --JoshTriplett

That's brokenlinks so done already I guess --Joey

Posted Fri May 18 04:55:26 2007
syslog should show wiki name

We run many ikiwikis on wiki.cs.pdx.edu, and we occasionally get messages like this in the syslog user.log file:

Apr 26 07:31:41 svcs ikiwiki: bad page name 
Apr 26 07:43:26 svcs ikiwiki: bad page name

Those don't give us any information about which ikiwiki they came from. ikiwiki needs to provide the wiki name in syslog messages. --JoshTriplett

done

Posted Fri Apr 27 17:47:50 2007
excluding commit mails

It would be good to be able to exclude commits made by a given user from generating commit mails.

My immediate need for this is because I subscribed to commit mails using my openid. So I don't get commit mails for changes I make over the web, using that id. But, if I do a svn commit, that's from a "different" user, so a commit mail is sent to me. This particular case could be treated as ikiwiki needing some way to link together openids and other accounts, which could also be good, but I think the general case of not wanting to see changes some other user makes is reasonable.

Extending pagespecs for commit mails would be a nice approach. Then I could subscribe to:

* and !SandBox and !user(joey)

Insert standard argument about how wonderfly flexible this is. :-)

done

Posted Fri Apr 27 00:26:44 2007
Fix CSS to not put a border around image links

Browsers, by default, put a link-colored border around images used as links:

ikiwiki logo

We should fix the CSS to not do that. --JoshTriplett

done --JoshTriplett

Posted Tue Apr 24 20:58:07 2007
Print link

I think that Print link to open popup window with printable HTML version of page is very useful thing, so I would like to have it in my ikiwiki :)

Probably it's better to generate a page on the fly as a CGI (just the same like for RecentChanges page) when a user really needs it, instead to build static printable version for all ikiwiki pages. --Pawel

I've always considered print links to be a sign of a badly designed web site that looks ugly in a printer because it's ugly anywhere, so I may take some convinving. :-) Ikiwiki pages seem like they'd print out ok as-is to me.

ikiwiki home pages are plain and clean, but please note that some ikiwiki users can have their wiki with banners and navbars and a lot of graphics.

(I also often click on print links, just to get a web page that I can read, especially often hoping that it will have the whole article on it, instead of the 99 tiny pagelets nasty websites like to split things into. Have I ever mentioned how much I hate the web?)

I always print all interested articles for me, because I hate reading them from a display monitor. It's too painful for my eyes. And I want to print only article body without all wrappers, because I don't need them.

One option, if your stylesheet contained something that was unpalatable in printing, would be to define an alternate stylesheet optimised for printing, and somehow switch the browser to use that stylesheet when printing a page (it can be switched from a menu in the UI of some browsers, but I'm not sure what a good way would be to switch the stylesheet on the fly without re-rendering the page..)

--Joey

Maybe you could add print.css file for printable version? We just have local.css file for a local styling. --Pawel

Sure, very doable, but the UI to switch to it when printing, I don't know..

Is the IU to switch is really necessary? Why don't use only style.css and print.css files in header of printable version of page? The second file can be equivalent of local.css file and it can overwrite default CSS styles.

BTW, I'm sure that the Print link as originally requested could be written as a plugin fairly simply. --Joey

I'm not a Perl expert, but I can take a look at code of other ikiwiki plugins.

BTW, I also was thinkig about plugin to CVS support, but unfortunately I don't have too much free time. --Pawel

You don't need a stylesheet-switching UI or a printer-friendly version; just link to a stylesheet with media="print". --JoshTriplett

Example? --Joey

I used meta to add a media="print" stylesheet to the sandbox. In print or print preview (on browsers supporting data URIs), you should no longer see the search form. --JoshTriplett

(And I broke it, since it was a security hole ;-). So it looks like media=print can be used inside a style sheet, so the thing to do would be to edit style.css to automatically disable parts not wanted when printing. That would rock. --Joey

Yay! I've modified the stylesheet and this is done. --Joey

Posted Wed Mar 21 23:46:30 2007
Option to disable date footer for inlines

inline, with the archive option, shows only page titles and post dates. I'd like an option to omit the post dates as well, leaving only the page titles. Such an option would streamline the users page, for instance. --JoshTriplett

Yes, indeed, something like "compact" mode would be useful. In fact, this would be better handled with a replacement of the "archive" on/off API with something like mode = normal|archive|compact|.... defaulting to normal --hb

You also don't need to be restricted to a fixed set of modes: the mode parameter could simply specify the template to be used: inlinepage-$mode.tmpl. For producing e.g. bulleted lists of the entries, some extra container template would be useful in addition to that...

In a related note, I'd like an option to include the creation date on some non-inlined pages too. I suppose that's doable with some template hook in a plugin, and a command-line parameter pagespec (suffices for me), but I haven't got around to that yet. --tuomov

Customised templates can now be specified with the templates parameter, so done --Joey

That definitely solves this problem in general; thanks!

For this specific case, I'd still like to see a titleonly.tmpl template included by default. How about this simple template, based on archivepage.tmpl?

<p><a href="<TMPL_VAR PAGEURL>"><TMPL_VAR TITLE></a></p>

--JoshTriplett

done

Posted Tue Mar 6 19:15:31 2007
rss title description

There could be a better way of setting the title and description of the rss feeds. Perhaps through the meta plugin, or extra options to the inline plugin.

At the moment The description is the same for all feeds from a single wiki it seems, and the title is forced to be one word, though I don't think it needs to be.

A few pointers and I might be able to implement this myself. -- JamesWestby

I don't see any problem with the title, it's the same as the title of the wiki page that the rss feed comes from, which can be set using the meta plugin. There are no restrictions to one word or anything like that. Just made ikiwiki emit the following in a test feed:

billy bob's news

Now, the description field currently defaults to the wiki name, and that could indeed stand to be made configurable. Since the current (svn) version of ikiwiki supports long, word-wrapped blocks of text as parameters to PreProcessorDirectives, seems to me the best way would be to simple modify inline.pm to make the descripion configurable by such parameter, with a fallback to the wiki name. You'll need to modify rsspage.tmpl to use whatever new template variable you define, that should be all.

--Joey

Apologies for the title thing. I tried it yesterday, and it onlt used the first word. I must have done something wrong. I'll have a look at implementing the description. Thanks. -- JamesWestby

My patch can be found at http://jameswestby.net/scratch/blog-desc.diff -- JamesWestby

Thanks, done --Joey

Posted Tue Feb 20 00:27:48 2007
RSS links

The RSS feeds on a page should be indicated with <link rel>, so that they can be found by aggregators.

--tumov

I've been wondering about this. Ikiwiki's rss buttons include a type="application/rss+xml" and link to the rss file, and this is enough for at least some auto-discovery tools to find the rss feed. But apparently not all of them.

For example, firefox requires the following:

<link rel="alternate" type="application/rss+xml" title="RSS" href="index.rss" />

done

--Joey

Posted Tue Feb 20 00:27:48 2007