# Natbib: Capital letters in “\citep” except for lowercase “et al.”

I changed the font shape of command \citep{} so that all letters appear in small-caps, according to following redefinition given in this question:

\makeatletter
\DeclareRobustCommand\citep
{\begingroup\NAT@swatrue\let\NAT@ctype\z@\NAT@partrue
\@ifstar{\scshape\NAT@fulltrue\NAT@citetp}{\scshape\NAT@fullfalse\NAT@citetp}}
\makeatother


However, when the authors' names are in the abbreviated form, the "et al." appears in small-caps as well. But, I want "et al." to remain in lowercase. Is this possible? I am using the dcu bibliography style.

• For example, the stardard dcu style is (Smith et al., 2017) with the modification I got (SMITH ET AL., 2017). But, I want (SMITH et al., 2017). – Lara Aug 10 '17 at 22:11
• It won't work unless you change the style (the bst) so that the et al is in some command that one could change. – Ulrike Fischer Aug 10 '17 at 22:15
• No problem. I already created a mydccu style. Because I need a specific punctuation between the authors' names. – Lara Aug 10 '17 at 22:20
• So you already have your own version of dcu.bst? – Alan Munn Aug 11 '17 at 2:56
• Yes, but I only changed the names in the list of references. It's an easy change to make. My question is more complex for me. – Lara Aug 11 '17 at 3:07

I suggest you proceed as follows:

• Open your already-modified version of the file dcu.bst in a text editor.

• In that file, change all five [5] instances of

et~al.


to

\textnormal{et~al.}


(\textup{et~al.} works too.)

• Save the modified bst file.

• Rerun BibTeX, and then LaTeX twice more.

Incidentally, do note that this approach to rendering the authors' names in small-caps in citation call-outs has several significant drawbacks. First, it does not ensure that the connector word "and" will be typeset with lowercase letters; this case arises when bib entries have exactly two authors. To remedy this, insert the instruction \providecommand\harvardand{\textnormal{and}} after loading natbib. Second, this approach also does nothing for cases of "et al." and "and" generated by \citet, \citet*. Third, it doesn't render the authors' names in small-caps when using \citeauthor, \citealp, \citealt, and so on. Last but not least, the formatted bibliographic entries will continue to have the authors' names shown in regular (i.e., non-smallcap) letters -- quite likely creating a weird discrepancy between the ways the authors' names are typeset in the citation call-outs on the one hand and in the bibliography on the other. A full solution, then, would involve modifying the dcu.bst bibliography style file much more thoroughly.

A full MWE and associated screenshot:

\RequirePackage{filecontents}
\begin{filecontents}{mybib.bib}
@misc{ab,author="Aaa and Bbb", title="Thoughts", year=3001}
@misc{abc,author="Aaa and Bbb and Ccc", title="Thoughts", year=3002}
\end{filecontents}

\documentclass{article}
\usepackage[round,authoryear]{natbib}
\makeatletter
\DeclareRobustCommand\citep
{\begingroup\NAT@swatrue\let\NAT@ctype\z@\NAT@partrue
\@ifstar{\scshape\NAT@fulltrue\NAT@citetp}%
{\scshape\NAT@fullfalse\NAT@citetp}}
\makeatother
\bibliographystyle{dcu-mod}
\providecommand\harvardand{\textnormal{and}}

\begin{document}
\citep{abc}, \citep{ab}
\bibliography{mybib}
\end{document}