As it stands the only way to get CSL styles into Drupal is to first place the desired CSL files in the style directory BEFORE the CiteProc module is installed (and then install the module), or to install them from a list of available styles from a hardcoded Github repository. It's basically unusable, and at best very badly documented. If there is good documentation somewhere on how to use this thing properly, please oh please point it out.
This isn't a very flexible solution because if you have a file that you want to add then you need to first uninstall the CiteProc module and then install it again so it picks up the file in the syle directory. This is very, very bad for business because it will nuke all of your type mappings in the process, and then you have to redo all of those, etc... it's just very clunky.
I hope there are plans to improve on this interface in the future. The CSL engine is obviously the way to go as it is extremely flexible, it's just a shame that it's completely and utterly non-developer friendly at this time.
Specific features I'm requesting are:
1) The ability to edit/update existing CSL styles in the database through a UI.
2) The ability to add new CSL styles through a UI (click Browse... browse to .csl file on your computer, etc.)
3) Absolutely, positively get rid of the hardcoded Github association. If someone wants a particular style they can look it up, download it super quick, and install it on their own (also super quick if you implement feature #2 that I just suggested).
3a) Alternatively, keep the Github association, but actually download the files to the style directory. That way, these files could be edited and CiteProc could check these files to see if they've changed from what exists in the BLOB in the database currently.
As it stands the styles are sort of held prisoner in that BLOB and you can't change it. If a tweak needs to be made then, well, refer to what I wrote earlier...
I don't think anything that I've proposed would be terribly difficult to implement, and would make CiteProc INFINITELY more useful compared to how it currently stands.
Comments
Comment #1
lpeabody commentedComment #2
rjerome commentedWhile I understand that you may be frustrated with this particular implementation (and you raise some valid points), I think it would be wise to dial down the criticism somewhat.
I have a long history of responding positively to community feature requests and suggestions and all of the above requests / suggestions could have been presented without the negative connotations.
Comment #3
lpeabody commentedI'm sorry if it sounded brutal, I wrote this at the tail end of a 14 hour coding marathon and was a bit grumpy. I got frustrated because it was implied (http://drupal.org/node/1359518#comment-5317560) that I could just edit the csl files, and then I couldn't get the changes to take, and then discovered on my own that the files themselves aren't actually read after they're installed. I wasted a lot of time, that's all, so I was frustrated.
I'm deeply embedded in a research environment (even though I'm the farthest thing from a research scientist) and so I'm particularly keen on getting the CSL functionality rolled in... if there's anything I can do to help out, please let me know.
Comment #4
rjerome commentedYou will probably be interested in this change the I just pushed to the -dev branch.
Ron
Comment #5
lpeabody commentedHot. I've had Biblio locked down for a while now in Drush but I think I'm going to have to open it back up again to absorb this change. I haven't updated it in a couple months probably.