Whether using biblatex
is allowed in the solution or not is unclear. However, if biblatex
is indeed allowed, I recommend using biblatex
's \textcite
(as well as \citeauthor
and \citeyear
), with the following tweaks:
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{mybiblio.bib}
@Book{Batchelor:2000,
address = {Cambridge, UK},
author = {Batchelor, G.{\,}K.},
title = {An Introduction to Fluid Dynamics},
publisher = {Cambridge University Press},
year = {2000},
}
\end{filecontents*}
\usepackage[style=authoryear]{biblatex}
\renewcommand*\bibopenparen{[}
\renewcommand*\bibcloseparen{]}
\addbibresource{mybiblio}
\begin{document}
\noindent
All of this is discussed in \textcite{Batchelor:2000}.\\
\citeauthor{Batchelor:2000}'s book was published in \citeyear{Batchelor:2000}.
\printbibliography
\end{document}

natbib
.BibTeX
style (the.bst
file) does your publisher use?xxxx.sty
file you're required to use provide its own citation-related commands by any chance? If so, you could use them instead of the (well-known) citation commands provided by thenatbib
package.\citeauthoryear
is the command I was looking for. Thanks a lot!