
Я хочу добавить следующую строку перед booktitle
записью в некоторых @inproceedings
. Я пишу строку в файле .bib как
@String {Conf. = {Proc. {IEEE} Int. Conf.} }
Тогда запись будет
@inproceedings{key,
title = {},
author = {},
booktitle= Conf. Signal Processing
}
Я хочу получить вывод в виде Proc. IEEE Int. Conf. Signal Processing
.
решение1
Вы не можете сделать то, что (я думаю) вы надеетесь сделать. Вы должны конкатенировать @string
s только с другими @string
s. Но, конечно, вы можете использовать макросы, как и ожидалось. Сравните две записи:
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@string{ CONF = "Proc. {IEEE} Int. Conf." }
@string{ SIGPROC = " Signal Processing" }
@preamble{ "\providecommand*{\CONF}{Proc. {IEEE} Int. Conf.}" }
@inproceedings{key,
title = {Title},
author = {Author},
booktitle= CONF # SIGPROC,
year = 2000,
}
@inproceedings{key1,
title = {Title},
author = {Author},
booktitle={\CONF{} Signal Processing},
year = 2000,
}
\end{filecontents*}
\usepackage{natbib}
\begin{document}
\cite{key}
\cite{key1}
\bibliographystyle{plainnat}
\bibliography{\jobname}
\end{document}