OK, I checked in a description of the MakeCSL idea to the repository:
I’ve also expanded a bit on the example XHTML file with the forms.
My basic idea is one could use JS (say JQuery for convenience) to hide
and disclose portions of the form depending on earlier answers. For
example: user chooses, say, “history” as a field. Let’s say the next
question is about the type of style. The form might pre-select the
"footnote or endnote" option, and in turn from there hide all "based on"
style options except those of that class.
[This would be important because good previews of the base style would
take up some real estate, and if one considers all fields, there are a
fair number of “base” styles (not sure; maybe 10 or so?).]
For previewing (particularly of switching out particular macros to
customize rendering) I’m thinking some server side Ajax magic. So send a
parameter to the server, and it returns the rendered chunk so the user
can see the result of the choice.
My guess is smart use of such techniques would make the user experience
pretty streamlined in most cases, and much more efficient.
Assuming this makes sense, this of course would depend on having a
server-side CSL processor to interpret the parameters and send back the
When done with the process, the user would click submit, which would
submit the style to the repository (which would probably be
configurable), and the user would immediately see a link with the text
"install style now".
The advantages of this approach, in my view, are that it’s quicker to
develop than a full-blown editor, easier for the user (at least in most
cases; e.g. where we have the macros), and the styles are “freely
available.” It’s also browser-and-platform agnostic.
I may develop the XHTML file some more and ultimately check it in. It
might also make sense to create a CSL file that just contains the
generic macros that could be used in this process. But I can’t do the
rest on my own, so that’s likely as far as I’ll go.
I would encourage people working on styles to explore the possibility of
relying more on macros though, since it simplifies the this sort of
thing, as well as constructing new styles by hand.