4

This seems like it should be easy. In preparing syllabi for graduate seminars I like to organize my LaTeX sections as weeks (easy to do) and under each section include a list of the papers to be read and discussed. (So far, so good.)

However, for each week's section, I include the full citation with its abstract.

For APA style including the full citation w/o abstract is easy --- I simply use "\fullcitebib{jones15}".

HOWEVER, I have been manually inserting each abstract into the next line. Obviously this is tedious to do. This is LaTeX!! There MUST a better way!!! ??

1 Answer 1

5

Based on tmgriffiths' answer to Bibliography Style with abstract and numbered references we could try

\DeclareFieldFormat{abstract}{\par{\small\bibsentence\mkbibbold{\bibstring{abstract}}\addcolon\space #1}}
\renewbibmacro*{finentry}{%
  \iffieldundef{abstract}
    {\finentry}
    {\finentrypunct\printfield{abstract}\finentry}}

MWE

\documentclass[british]{article}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber,
  style=apa,
]{biblatex}
\usepackage{hyperref}

\DeclareLanguageMapping{british}{british-apa}

\addbibresource{biblatex-examples.bib}

\DeclareFieldFormat{abstract}{\par{\small\bibsentence\mkbibbold{\bibstring{abstract}}\addcolon\space #1}}
\renewbibmacro*{finentry}{%
  \iffieldundef{abstract}
    {\finentry}
    {\finentrypunct\printfield{abstract}\finentry}}

\begin{document}
Lorem \fullcitebib{sigfridsson}
\end{document}

example output: abstract shows when cited with <code>\fullcitebib</code>


If you want the abstract to appear only when cited with \fullcitebib, we need to move the modification above inside the definition of \fullcitebib

\DeclareFieldFormat{abstract}{\par{\small\bibsentence\mkbibbold{\bibstring{abstract}}\addcolon\space #1}}
\DeclareCiteCommand{\fullcitebib}
  {\renewcommand{\finalnamedelim}{\ifnum\value{liststop}>2 \finalandcomma\fi\addspace\&\space}%
   \list{}
   {\setlength{\leftmargin}{\bibhang}%
     \setlength{\itemindent}{-\leftmargin}%
     \setlength{\itemsep}{\bibitemsep}%
     \setlength{\parsep}{\bibparsep}}\item}
  {\usedriver
    {\DeclareNameAlias{sortname}{default}%
      \global\boolfalse{bbx:parens}%
      \global\boolfalse{bbx:volseen}%
      \global\boolfalse{bbx:titleinauthpos}%
      \global\boolfalse{bbx:editorinauthpos}%
      \global\boolfalse{bbx:in}
      \renewbibmacro*{finentry}{%
      \iffieldundef{abstract}
        {\finentry}
        {\finentrypunct\printfield{abstract}\finentry}}}
    {\thefield{entrytype}}\finentry}
  {\item}
  {\endlist
   \usebibmacro{cite:post}}
1
  • This is wonderful! Many thanks. I am using the version that modifies \fullcitebib.
    – Wayne
    Commented Nov 17, 2015 at 23:05

You must log in to answer this question.

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