User:Mendel/Templates

My Templates
These are harm- and useless:
 * /show3 =
 * /returnlist =
 * /passthrough =
 * /Skill box data = too big to put in here
 * /Blinding Surge = verbatim copy of Template:Blinding Surge
 * /Blinding Surge (PvP) = verbatim copy of Template:Blinding Surge (PvP)
 * /merge PvPvE = too big to put in here
 * /Skill box test based on Shadowcrest's version
 * /Merged skill =
 * Usage:


 * Template:Valid XHTML 1.0 =
 * Template:trim trims whitespace and newlines off the start and the end
 * Template:Skillset (see User:Blue.rellik/testMonster)
 * Template:Skill list item =
 * User talk:M.mendel/archiveline =
 * /nowrap =
 * /D =

See User:M.mendel/Wikibase for these two:
 * /Get =
 * /GetFrom =


 * /Quote = work in progress on Template:Quote


 * /t2d converts a table to dialogue div format; usage is a bit kludgy, though
 * /t2d2 little robot helper for d2t

Template Tests
The big idea now is to make a "Template:Skill box data" that takes all parameters and puts them into a big string with a nice separator such as "$". Then I call that with another template, maybe and then mergePvEvP calls displayPvEvP with a long parameter list that has been extracted from the big strings using explode. DisplayPvEvP will then display a merged skill description for both skills, and of course anybody could use their own display function. Maybe I'll just copy Shadowcrest's. Muahahaha.

Automagically extracting the Notes from the main articles is then left as a minor exercise to finish up. ;-)

Statistics for Blinding Surge as of now: Pre-expand include size: 80600/2097152 bytes Post-expand include size: 39809/2097152 bytes Template argument size: 150530/2097152 bytes Template argument size seems critical, so no more than 10 of these on a single page. mendel 11:19, 30 May 2008 (UTC)
 * 1) ifexist count: 0/100

awk Scripts
To extract all attributes from a template, or a number of templates all concatenated into a big file. Manually delete everything to just before the first {{{. BEGIN{RS="{{{"; FS="}}}"}

{ sub("\\|.*", "", $1); if (attr[$1]==0) {attr[$1]=1; print $1;} }