使用 babelbib 突出显示参考书目中的特定作者姓名

使用 babelbib 突出显示参考书目中的特定作者姓名

我想使用 突出显示(更准确地说是加粗)参考书目中的特定作者姓名bibtex。这个问题有几种答案,例如 或者这个。但是,我正在使用babelbib包,而以前的解决方案破解了普通风格。我认为更接近我尝试的解决方案是这个,但是我不熟悉用于编写 bst 文件的语言,因此无法正确修改它。

由于其他原因,我修改了babunsrt-lf样式以仅显示作者姓名首字母,而我想要突出显示的作者姓名具有以下形式Lastname, {\relax Th}eo

修补版本FUNCTION {format.names}取自这里

编辑:在@uT5r 询问后添加 MWE

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@CONFERENCE{CB:EPS36,
author      = {\textbf{Lastname, {\relax Th}eo} and Coauthor, John},
title       = {Some poster},
booktitle   = {36 Conference},
address     = {City},
year        = {2009},
pages       = {1015-1018},
}
\end{filecontents}

\documentclass{article}
\usepackage{filecontents}
\usepackage[francais,greek,english]{babel}
\usepackage{babelbib}
\selectbiblanguage{english}
\setbtxfallbacklanguage{english}
\begin{document}
bla
\bibliographystyle{bababbrv-lf}
\bibliography{\jobname}
\nocite{*}
\end{document}

答案1

这是一个相当手动和简单的解决方案,但是否可以简单地手动打开你的 .bib 文件并执行查找和替换

假设您想将“Bleeker, Marjo”设为粗体。您只需打开 .bib 文件,搜索Bleeker, Marjo,将其替换为\textbf{Bleeker, Marjo},然后编译您的 .tex。

\textbf{布利克,马乔}

\begin{filecontents}{\jobname.bib}
@article{janssen1996evaluation,
  title={Evaluation of the DNA fingerprinting method AFLP as a new tool in bacterial taxonomy},
  author={Janssen, Paul and Coopman, Renata and Huys, Geert and Swings, Jean and \textbf{Bleeker, Marjo} and Vos, Pieter and Zabeau, Marc and Kersters, Karel},
  journal={Microbiology},
  volume={142},
  number={7},
  pages={1881--1893},
  year={1996},
  publisher={Soc General Microbiol}
}
@article{vos1995aflp,
  title={AFLP: a new technique for DNA fingerprinting},
  author={Vos, Pieter and Hogers, Rene and \textbf{Bleeker, Marjo} and Reijans, Martin and Van de Lee, Theo and Hornes, Miranda and Friters, Adrie and Pot, Jerina and Paleman, Johan and Kuiper, Martin and others},
  journal={Nucleic acids research},
  volume={23},
  number={21},
  pages={4407--4414},
  year={1995},
  publisher={Oxford Univ Press}
}
\end{filecontents}

\documentclass{article}
\usepackage[style=authoryear, maxcitenames=2, maxbibnames=100, natbib=true, backend=bibtex]{biblatex}
\addbibresource{\jobname.bib}

\begin{document}

\noindent 
\citet[1229]{vos1995aflp} has argued that $y$. Second, \citep[1229]{janssen1996evaluation} also show $m$ and $x$ \citet{vos1995aflp,janssen1996evaluation}.

\printbibliography
\end{document}

答案2

因为您可以在 *.bib 源文件中使用突出显示命令。但是,我能够通过在引用信息的每一行中添加 \hl{} 命令来突出显示引用的特定部分:

@article{StephenPark,
  title={\hl{Integration of biological kinetics and computational fluid dynamics to model the growth of Nannochloropsis salina in an open channel raceway}},
  author={\hl{Park, Stephen and Li, Yebo}},
  journal={\hl{Biotechnology and bioengineering}},
  volume={\hl{112}},
  number={\hl{5}},
  pages={\hl{923--933}},
  year={\hl{2015}},
  publisher={\hl{Wiley Online Library}}
}

结果如下: 在此处输入图片描述

您可以\hl{}从任何引用部分删除该命令。

答案3

我经常尝试做同样的事情,而我刚刚想到的是,由于我有一个.bib用于出版物的单独文件和一个用于一般参考的文件,我可以定义一个类似的命令,\authoremph以突出显示当权者想要的任何内容,例如使用\textbf\underline,并确保每次出现我的名字时,都将其显示\authoremph{me}在我的.bib文件中。

如果\authoremph未定义,则\newcommand\authoremph[1]{#1}在文档序言中使用,或者\newcommand\authoremph[1]{\textbf{#1}}如果我正在写一份赠款......

测试一下 - 效果很好!(好吧,我知道,现在我必须在所有内容的序言中多加一行,但我使用 Sublime Text 3,所以我可以将其放在我的“论文”模板中。

相关内容