summaryrefslogtreecommitdiff
path: root/doc/todo/else_parameter_for_map_plugin.mdwn
blob: a59bcfd14d43d22310d678aca691d2681564ce8f (plain)

[[!tag patch]]

[[plugins/map]] (and I) could benefit from a bonus parameter:

else="Display this if no page matches the PageSpec"

This was quite simple, so I implemented this (branch "map" in my ikiwiki repo, see my user page for the up-to-date URL). Not patched the documentation yet, I'm waiting for feedback first, but I'll do it for sure. -- [[intrigeri]]

Can't a [[plugins/conditional]] be for this? --[[Joey]]

Hmmm, what do you mean? Adding a syntax such as the one below? Or something else?

    \[[if test="map(" then="..." else="..."]]

What would you write in the then clause? I'm not opposed at all to rewrite my two-liner, but I don't understand. --[[intrigeri]]

\[[if  test="foo/*" then="""
[[map pages="foo/*"]]
""" else="no pages"]]

--[[Joey]]

I'm not convinced: the syntax you're proposing implies to duplicate the pagespec (once in the test clause, and once in the map query), which I find not only inelegant, which I can live with, but also tiring and unpractical: my else suggestion finds its roots in map queries with rather long pagespecs. On the other hand, if I'm the only one using map in such a way, I can live with this heavy duplicated syntax without bloating the map plugin with features no-one but me needs. On the other other hand, the patch is a 3-liner. I'm not fixed yet, I'll think about it. --[[intrigeri]]

Write a [[plugins/template]] which accepts a pagespec and an "else" clause, and then you won't have to duplicate the pagespec. --[[JoshTriplett]]