Last modified: 2011-07-20 19:12:32 UTC
Handling and comparison of already-linked parameters are sometimes necessary. Just see these unexpected results: *{{TALKPAGENAME: [[Foo]] }} → (expected Talk:Foo) *{{#ifexist: [[Piano]] |yes|no}} → no (expected yes) *{{NAMESPACE:[[Help:Bar]]}} → (expected Help) *{{fullurl:[[Article]]|query}} → (expected proper url) I request the addition of automatic delinking capability to all parser functions, proved that the parameter is a whole and unique link (ie. not a string with some portions linked).
This seems to mostly be a repeat of bug 29926. Hypothetically one could probably do this, but that'll mainly just increase the likelihood that something that's *not* a whole and unique link will also get thrown in there, and it still won't work. A parameter that is incorrectly filled with a single link could also be a single link with a reference, or two links, or an image, or something else. If you actually needed it to be a *page title* then make sure it's actually a page title, and don't invite random markup! Again I recommend correctly factoring the template & template parameters to begin with.
(In reply to comment #1) Are you sure it will MAINLY and JUST do that? I don't think so. What it will mainly do is to increase the likelihood that something that currently does not work will properly be parsed. Those few things that aren't whole and unique links and will happen to get thrown in there will *still* not work, as they currently don't. But those many that *are* what is expected will do. Of course, this proposal is intended to be done only for namespaces- and pagenames-related functions.