In terms of the efficiency/speed of compiling which is the more effective place to put bibliography option changes: In the biblatex.cfg, a .cls file calling a new class or a .sty file.
Any insight would be appreciated.
In terms of the efficiency/speed of compiling which is the more effective place to put bibliography option changes: In the biblatex.cfg, a .cls file calling a new class or a .sty file.
Any insight would be appreciated.
There are several places where you can put your customisation and performance wise they should by and large be equivalent (save for the overhead of loading new files). So the choice should depend on the exact nature and aim of the modifications.
The preamble is useful if you want to apply a one-off change to your document that does not take too many lines of code (of course you can externalise long code with \input).
\inputExternalise the code from your preamble to an external .tex file. You can then \input that file into your preamble.
.sty files..sty FilesYou can place biblatex code in .sty files just as you can place it in the preamble of your document.
Keep in mind that you should probably load the .sty after you load biblatex to make sure all the commands are defined.
.sty might not work together with all bibliography styles, you should be aware of that and not load the fill without checkingThis method might be useful if you want something more "permanent" than just an externalised preamble with \input. You can reuse this for other documents of a similar type.
.cls FilesIf you plan on writing a custom .cls for this particular project (type of project with very specific rules of formatting: a thesis template for a particular university department, say) you might as well include the biblatex code there, but the caveats of the .sty file method apply as well.
In a multi-purpose .cls file bilatex code is certainly amiss, people should be able to decide which style and even which bibliography package to use and your class shouldn't interfere with that.
biblatex.cfgbiblatex.cfg is placed in a shared folder such that it applies to all your documents, but you can also place it in the current directory to affect only the documents there)biblatex.cfg was loaded until you consult the .log fileThe configuration file biblatex.cfg is loaded after the style files (.bbx, .cbx) and can modify their behaviour.
Because of the scope issue I would only place style-independent modifications that you want to apply to all documents you write in biblatex.cfg.
You can build upon existing styles with \RequireBibliographyStyle, \RequireCitationStyle and just add your modifications. A good example is Joseph Wright's biblatex-phys that builds on numeric-comp: phys.cbx and phys.bbx. You can of course also roll your own from scratch.
This method is especially suited for creating "new styles" you might want use more often and for several (types of) documents.
Because you could introduce additional loading of files via the rerouteing with \RequireBibliographyStyle, \RequireCitationStyle you might technically be a bit worse off speed wise, but that is certainly nothing to lose sleep over.
In conclusion: If you have a some lines of code you need for certain applications put them in the preamble, externalise them with \input, or write a .sty. (The three alternatives are ordered by easiness of reuse.)
If you have a few lines of style-agnostic code you want to apply all the time, use biblatex.cfg.
If you modify a specific style to meet certain guidelines write your own .bbx/.cbx file to be able to reuse the style document-independent.