Highlighting an Author's Name for CV Using IEEEtran
Highlighting a specific author's name is useful and widely used in CV. But there is no elegant way to do it with existing latex packages.
The IEEEtran.bst style does not provide this functionality neither. There are many ways hacking the latex to achieve the goal. Many of them are error-prone, only working for particular cases and not easy to understand.
Here is a solution that is relatively elegant, easy to understand and maintain. The main idea is to modify the bst
file, match the specific author's name and then highlight it. Thus, no modification need to be done to the bib file.
- add a highlight function to the IEEEtran.bst before
FUNCTION {format.names}
FUNCTION {highlight.if.cv.author}
{ duplicate$ purify$ "Y. Zhang" purify$ =
{ "\textbf{" swap$ * "}" * }
'skip$
if$
}
```
**NOTE**: The command is trying to compare the string. So you need to provide the `Y. Zhang` to the highlight function rather than `Zhang, Yu` in bibtex entry.
1. call `highlight.if.cv.author` in `FUNCTION {format.names}` between `format.name$` and `bibinfo bibinfo.check` as below
```tex
FUNCTION {format.names}
{ 'bibinfo :=
duplicate$ empty$ 'skip$ {
this.to.prev.status
this.status.std
's :=
"" 't :=
#1 'nameptr :=
s num.names$ 'numnames :=
numnames 'namesleft :=
{ namesleft #0 > }
{ s nameptr
name.format.string
format.name$
highlight.if.cv.author
bibinfo bibinfo.check
't :=
nameptr #1 >
{ nameptr num.names.shown.with.forced.et.al #1 + =
numnames max.num.names.before.forced.et.al >
is.forced.et.al and and
{ "others" 't :=
#1 'namesleft :=
}
{ skip$ }
if$
namesleft #1 >
{ ", " * t do.name.latex.cmd * }
{ s nameptr "{ll}" format.name$ duplicate$ "others" =
{ 't := }
{ pop$ }
if$
t "others" =
{ " " * bbl.etal emphasize * }
{ numnames #2 >
{ "," * }
{ skip$ }
if$
bbl.and
space.word * t do.name.latex.cmd *
}
if$
}
if$
}
{ t do.name.latex.cmd }
if$
nameptr #1 + 'nameptr :=
namesleft #1 - 'namesleft :=
}
while$
cap.status.std
} if$
} - test in your tex file.
\documentclass{article}
\begin{document}
\nocite{*}
\bibliographystyle{IEEEtran}
\bibliography{your_reference}
\end{document}