As the IEEE use a numerical style, you will need to add some code from alphabetical styles into your source. Add the labelalpha
option to those used when loading biblatex
, to come after the bibstyle=ieee
option, and add the following code after loading biblatex
:
\defbibenvironment{bibliography}
{\list
{\printtext[labelalphawidth]{%
\printfield{prefixnumber}%
\printfield{labelalpha}%
\printfield{extraalpha}}}
{\setlength{\labelwidth}{\labelalphawidth}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\labelsep}{\biblabelsep}%
\addtolength{\leftmargin}{\labelsep}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}%
\renewcommand*{\makelabel}[1]{##1\hss}}
{\endlist}
{\item}
\DeclareFieldFormat{labelalphawidth}{\mkbibbrackets{#1}}
The mcite-like commands are defined in the biblatex module blx-mcite.def
. There you will find a citation command modifier \mcitelike
, used as follows.
\newrobustcmd*{<new mcite command>}{\mcitelike<existing citation command>}
An mcite-like \autocite
is somewhat odd because \autocite
is intended to be style-independent, but mcite-like commands are relevant only to numeric citation styles. That said you can define an mcite-variant of \autocite
with:
\newrobustcmd*{\mautocite}{\mcitelike\autocite}
Here's an example.
\documentclass{article}
\usepackage[backend=biber,style=numeric,mcite,subentry,autocite=superscript]{biblatex}
% just for demo
\ExecuteBibliographyOptions{firstinits,sorting=none}
% define mcite-like variant of \autocite
\newrobustcmd*{\mautocite}{\mcitelike\autocite}
\addbibresource{biblatex-examples.bib}
\begin{document}
\mtextcite{companion,bertram,knuth,*knuth:ct:a,*knuth:ct:b} showed that...
Filler text \autocite{knuth:ct:a}.
Filler text \mautocite{model,*weinberg,*glashow}.
Filler text \autocite{weinberg}.
\printbibliography
\end{document}
Note that here \mtextcite{companion,bertram,knuth,*knuth:ct:a,*knuth:ct:b}
is the equivalent of:
\defbibentryset{knuth}{knuth:ct:a,knuth:ct:b}
\textcite{companion,bertram,knuth}
Similarly \mautocite{model,*weinberg,*glashow}
becomes:
\defbibentryset{model}{weinberg,glashow}
\autocite{model}
Futher details can be found in the biblatex manual sections "mcite-like Citation Commands" and "Dynamic Entry Sets". Various label number and entry set bugs were introduced/fixed between versions 1.1 and 2.7, so you should upgrade to the latest biblatex and biber releases to get all relevant features working properly.
Best Answer
It should be enough to have
for lowercase numerals, or
for uppercase numerals.
If a
shorthand
is present it is used instead of a number, but still thelabelnumber
format seems to apply, so something likeis a bit safer.
MWE
Since
biblatex
version 3.1 and more specifically commite5c2826
the fix previously contained in this answer is obsolete; it has been removed (but can be of course be found in the revision history).