Last modified: 2012-07-26 19:48:25 UTC
This may be a bug against the Sort extension or the
FootNote (neither available in MediaZilla).
index.php?title=Footnote-sort -- Footnotes appear in the
page after the sort-Block, but should be at it's end.
The installation is 1.9-svn - not updated since Novembre
18, 2006. It is likely to remain at that revision for about
the rest of the year.
Where did the <footnote> parser hook come from?
Here is a 'tail' of LocalSettings.php :
$wgRightsIcon = "http://creativecommons.org/images/
# $wgRightsCode = "by-nc-sa"; # Not yet used
$wgDiff3 = "/usr/bin/diff3";
# When you make changes to this configuration file,
this will make
# sure that cached pages are cleared.
$configdate = gmdate( 'YmdHis',
@filemtime( __FILE__ ) );
$wgCacheEpoch = max( $wgCacheEpoch, $configdate );
'FootNote/Footnote.php', # Ok.
'ParserFunctions/ParserFunctions.php', # Ok.
'ShowProcesslist/ShowProcesslist.php', # ?
'Sort/Sort.php', # Ok.
'inputbox/inputbox.php', # OK.
'Patroller/Patroller.php' # needs install
) or die( "Failed to load" );
All .php files and directories under extensions are
symlinks to a separate checkout directory, where all
extensions are, i.e.
There are 2 or 3 more language/MessagesXxx.php files
Nothing else has been tweaked.
The remark "OK." above says basic functionality has
been tested and is working.
ExtensionFunctions.php was included "just in case",
Special:ShowProcesslist curently says "no Right"
Patroller: additinoal tables have not yet been created.
Does that answer your question?
Please verify that this bug is in either MediaWiki or one of the extensions in
SVN before reopening. If the bug is in another extension, as seems likely, the
appropriate course of action is to contact that extension's author(s), who more
than likely don't read this bug tracker.
No chance. This is only an unimportant temporary test
installation meant for something else. I simply don't
have the time to delve more deeply into this bug.
I stumbled accidentally over it, and thought it to be
better than not, to pass it on.
Then thank you, but it's probably not anything we can debug or fix.
Where did FootNote come from?
Simetrical; for bugs in extensions used on Wikimedia sites, and for those in
Subversion, bug reports here do no harm. If FootNote is in SVN, then we may want
to fix it up to work with other, dare I say more "official" extensions (such as
Sort). Then again, we may just want to bitch at the creator. :D
I thought FootNote and Sort weren't in SVN (got confused by "neither available
in MediaZilla", Mediazilla vs. SVN, d'oh). My mistake, both are in SVN, so this
Oops. 2 Collisions.
I've e-mailed this URL to the authors mentioned in the
For the installation, I used two svn co commands,
trunk of mediawiki to .../wiki and trunk of extions to
.../extensions - both into the web space.
When I wanted to bug report @extensions, I found
neither Sort nor FootNote there.
Right, the cause for this is quite straightforward; Footnote makes use of the
ParserBeforeTidy hook, which is called on parse operations. The problem is that
Sort (and quite a few other extensions) call a parse run within their hook
functions, which causes this hook to be called; hence the stuff is injected into
the parsed output that Sort returns.
Footnote has a check to make sure that it isn't injecting two sets of endnotes,
so of course, once the first lot comes out, no more will be printed, which has
the effect that the only endnotes on the page appear under a sorted list.
That sounds as if the two cannot share the same hook,
or some sort of hook funtion stacking is needed, that
effectively would make the hook function calls within
a <sort> private to that <sort> separating all parsed
data processed within from the data processed outside.
They aren't sharing a hook at all; Sort does not use the ParserBeforeTidy hook.
Sort *does* call an internal parse operation, which will cause that hook to be
called, and then Footnote comes along. It's not the *fault* of their extension,
nor is it the fault of Wegge or myself (the authors).
It's probably better, now that we have it, to use the Cite extension, with <ref>
and <references> for exact positioning of the references block wherever you want
it. It's probably not realistic for extensions to expect that Parser::parse()
will only ever run once for a given piece of text where parser hooks are involved.
(I think,I understood it right, that the call to the
ParserBeforeTidy hook was an indirect one. Thus, my
writing they 'share' it was a bit sloppy indeed.
Still, stacking would be a possible solution to such
problems, but from my experience with similar
solutions, I'd rather avoid it if possible, since it
may quickly become very complicated and confusing to
use. Truly reentrant code would be preferrable)
Thank you for your diagnosis!
Should this issue be closed? And if so, is FootNote obsolete in favour of Cite? The last change to Footnote was pre r10812 (August 2005). Rob Church has done some refactoring on Sort in July 2007, which sortof makes it maintained (ill, though).
FootNote was replaced by Cite.