8

I want to have the DOI field explicitly printed for just one (or two) citations (\fullfootcite in my case). For the rest of the document, I use the doi=false option of biblatex combined with a DOI link included in the title of the reference. The other questions about per citation options found here and here are only concerned with modifying the number of printed author names.

5
  • 2
    Why not skip an explicit call to \fullfootcite and simply use \citefield{<entry key>}{doi} along with \fullcite in a \footnote command?
    – jon
    Jul 23, 2013 at 19:15
  • @jon That's certainly a possibility, I didn't know the \citefield command. However, it would be interesting to know whether there is a more general solution which does not include the manual workaround.
    – sebschub
    Jul 23, 2013 at 19:41
  • Well, rather than fiddle with a basic citation command for what you consider to be an exception to the normal operation of things, I think it is better to wrap my suggestion into a custom command of your own (which I should perhaps have mentioned explicitly), or by using biblatex's \DeclareCiteCommand.
    – jon
    Jul 23, 2013 at 20:43
  • @jon Because \citefield doesn't apply the same format as the bibliography driver. The user would also have to replicate the driver's order and unit punctuation. Small changes to existing citation commands are best handled using the citation hooks. For big changes \DeclareCiteCommand should almost always be preferred over generic LaTeX commands.
    – Audrey
    Jul 23, 2013 at 21:52
  • @Audrey -- I agree that using biblatex methods is usually the better way forward (and +1 for your simple and elegant answer), but if one is globally turning off the DOI field, there is no a priori reason to assume that the bibliography driver is doing or even needs to be doing the 'right thing' with the formatting of the DOI field. Thus the simpler, and perhaps much faster (depending on one's knowledge of biblatex), though certainly less cleaner, solution may be to use a low-level command for what amounts to an ad hoc problem.
    – jon
    Jul 23, 2013 at 22:19

1 Answer 1

9

From standard.bbx it is apparent that the doi option setting toggles the value of bbx:doi. Loading biblatex with doi=false essentially invokes \togglefalse{bbx:doi}. To enable doi for just a few \fullfootcite commands, use:

\AtNextCite{\toggletrue{bbx:doi}}\fullfootcite{<keys>}

Note that use of \AtNextCite is appropriate here because the scope of doi is global. Scope of all standard options can be found in the biblatex manual appendix called "Option Scope".

1
  • @sebschub As a regular user of FontPro, this is the least I could do.
    – Audrey
    Jul 25, 2013 at 16:10

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .