"Magnus Manske" magnusmanske@googlemail.com wrote in message news:fab0ecb70709240411tb301940tb53f7eb531aedfae@mail.gmail.com...
On 9/24/07, Mark Clements gmane@kennel17.co.uk
wrote:
Both of these points seem unnecessarily limiting! What if the template
has
a name parameter? What if the input needs to be on more than one line?
I
see no reason not to build with this flexibility now - it will only end
up
being a future request if not, and a lot harder to fix if we have hacked together a clumsy syntax that we have to stick to for backward compatability.
Not sure we're in sync here. In the mail you replied to, I agreed to alter the extension so you can write
<templatelink name="The name of the link"> Test |param1=value1 |param2=value2 </templatelink>
What's the problem with that?
My confusion - I thought you meant something like:
<templatelink> Test param1=value1 param2=value2 name=The name of the link </templatelink>
Where (a) 'name' was a parameter in the body of the tag, and (b) you were unable to have multi-line parameter values.
What about the suggestion I made yesterday, about using the standard
link
syntax, potentially with an extra symbol at the beginning? So {{Test}} means transclude, [[Template:Test]] means link to and [[#Test]] (or [[#Template:Test]] if you like) means link to a special page, showing
the
rendered template.
Of course, I've now realised that # is not a suitable character for
this, as
although it is invalid in page names, it is valid in links as an in-page link, so maybe another character would need to be used (how about
question
mark?) Or perhaps use [[Test#]] instead?
(See my previous post for more details about my suggestion).
This idea is much more concise than <templatelink>Test</templatelink>
which
is what is currently proposed...
More concise, yes, as '' is more concise than <i>. But <templatelink> is a lot cleaner IMHO. Just imagine the mess we'd be in with the redesign of the reference system if we had used wikisyntax for that...
I expect <templatelink> to be buried in templates anyway, and rarely used directly. Its use only makes sense if you have a single large "form" (template) to fill with lots'o' data sets.
Hmmm... well if that is the case then perhaps you're approach might be better. I guess it also means it can be written as an extension (which is probably more appropriate anyway) rather than having to build it into the core code.
Also, do I understand correctly that <templatelink name="The name of the link">test|param1=value1|param2=value2</templatelink> would also work? And if so, what about:
<templatelink name="The name of the link">test|param1=a long value with multiple lines|param2=value2</templatelink>
If both the above will work OK, then the only distinction between the two methods is the use of <templatelink></templatelink> as opposed to a more standard link syntax: [[]] with some modifier. The first is clearer, the second is more concise. If that is the only difference then I agree that clearer is better.
- Mark Clements (HappyDog)