0

To answer this upgraded question, you are pleased to read the base question before, how to show both author and year in a numerical Natbib citation, which answered the way to create a yourself citation style by using easily \newcommand.

That is a perfect answer for single citation, but when you go to multi citations, the embedded citation style will be like this,

e.g.

Lancaster1 et al., Lancaster2 et al., Lancaster3 et al.(1991, 1992, 1993)[1-3]

for \mycitet style

Do you know how to change it into a style of

Lancaster1 et al. (1991), Lancaster2 et al. (1992) and Lancaster3 et al. (1993)[1-3]

?

Thanks in advanced!

\documentclass[12pt,a4paper,english,french]{article} %% use 'article' so that output fits on one page
\usepackage{filecontents}
\begin{filecontents}{Bibliob.bib}
@article{Lancaster1,
   title={A new approach to {MSEs} Management},
   author={Lancaster1, James R. and Drauster, Mikael F. and Logan, Richard},
   journal={Journal of International Research on Management},
   volume={74},
   number={2},
   pages={132-157},
   year={1991},
   publisher={JSTOR}
}
@article{Lancaster2,
   title={A new approach to {MSEs} Management},
   author={Lancaster2, James R. and Drauster, Mikael F. and Logan, Richard},
   journal={Journal of International Research on Management},
   volume={74},
   number={2},
   pages={132-157},
   year={1992},
   publisher={JSTOR}
}
@article{Lancaster3,
   title={A new approach to {MSEs} Management},
   author={Lancaster3, James R. and Drauster, Mikael F. and Logan, Richard},
   journal={Journal of International Research on Management},
   volume={74},
   number={2},
   pages={132-157},
   year={1993},
   publisher={JSTOR}
}
\end{filecontents}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[frenchb]{babel}
\usepackage[round,super]{natbib}

%% The following lines are straight from https://tex.stackexchange.com/a/76075/5001
\usepackage{etoolbox}
\makeatletter
\patchcmd{\NAT@test}{\else \NAT@nm}{\else \NAT@hyper@{\NAT@nm}}{}{}
\makeatother

\usepackage[colorlinks=true, citecolor=blue]{hyperref}

%% Provide custom macros to mimic the look created by \citet and \citep
\newcommand{\mycitet}[1]{\citeauthor{#1} (\citeyear{#1}) \citep{#1}}
\newcommand{\mycitep}[1]{(\citeauthor{#1}, \citeyear{#1}) \citep{#1}}

\begin{document}
\mycitet{Lancaster1,Lancaster2,Lancaster3}

\mycitep{Lancaster1,Lancaster2,Lancaster3}

\bibliographystyle{plainnat}
\bibliography{Biblio}  
\end{document}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.