我的简历中有不同类型的出版物,我想为它们使用不同的格式。我可以使用 printbibliography 包来实现这一点,但引文本身看起来是一样的。
期望的行为是将会议出版物列为 C1、C2、C3... 将期刊列为 J1、J2、J3... 然后,当我引用它们时,我希望将它们称为 [C1]、[J2] 等等,但这不起作用。
以下是 MWE:
\documentclass[10pt,roman,a4paper,sans]{moderncv} % possible options include font size ('10pt', '11pt' and '12pt'), paper size ('a4paper', 'letterpaper', 'a5paper', 'legalpaper', 'executivepaper' and 'landscape') and font family ('sans' and 'roman')
\nocite{*}
\usepackage[maxbibnames=99,defernumbers=true,sorting=ydnt]{biblatex}
\addbibresource{publications.bib}
\moderncvstyle{classic}
\moderncvcolor{red}
\name{Sparky}{McSparkface}
\begin{document}
\makecvtitle
\section{Publications}
\DeclareFieldFormat{labelnumberwidth}{C#1.}
\printbibliography[title = Refereed Conference Publications,keyword = conference]
\DeclareFieldFormat{labelnumberwidth}{J#1.}
\printbibliography[title = Journal Publications, keyword = journal,resetnumbers = true]
\DeclareFieldFormat{labelnumberwidth}{U#1.}
\printbibliography[title = Technical Reports and Preprints, keyword = unpub,resetnumbers = true]
I want to cite the conference using \texttt{cite} like this C1, but it does this: \cite{conf1}.
\end{document}
我正在使用以下 .bib 文件:
@misc{unpubA,
year = {2024},
author = {Albus Dumbeldore and Severus Snape},
title = {How to Discipline Young Wizards},
note= {In Submission},
keywords = {unpub}
}
@misc{unpubB,
year = {2024},
author = {Charles Xavier and Erik Lenscherr},
title = {Mind Over Matter: Empirical and Theoretical Analysis},
keywords = {unpub},
note = {In Submission}
}
@inproceedings{conf1,
author = {Tony Stark and Bruce Banner},
title = {Creating Embodied Artificial Intelligence: Risks and Lessons Learned},
booktitle = {In Proceedings of the 31st Conference on Artificial Intelligence},
year = {2024},
keywords ={conference}
}
@article{jour1,
author = {Bruce Wayne and Clark Kent},
title = {Money, Power and Flight},
year = {2023},
issue_date = {June 2023},
volume = {1},
number = {1},
journal = {Transactions on Capitalism},
month = {jun},
articleno = {7},
keywords ={journal}
}
答案1
为了正确处理引用标签的前缀,您需要使用refcontext
s 及其labelprefix
选项。这可能如下所示
\documentclass[10pt,roman,a4paper,sans]{moderncv}
\usepackage[maxbibnames=99,defernumbers=true,sorting=ydnt]{biblatex}
\nocite{*}
\moderncvstyle{classic}
\moderncvcolor{red}
\name{Sparky}{McSparkface}
\begin{filecontents}{\jobname.bib}
@misc{unpubA,
year = {2024},
author = {Albus Dumbeldore and Severus Snape},
title = {How to Discipline Young Wizards},
note = {In Submission},
keywords = {unpub},
}
@misc{unpubB,
year = {2024},
author = {Charles Xavier and Erik Lenscherr},
title = {Mind Over Matter: Empirical and Theoretical Analysis},
keywords = {unpub},
note = {In Submission},
}
@inproceedings{conf1,
author = {Tony Stark and Bruce Banner},
title = {Creating Embodied Artificial Intelligence: Risks and Lessons Learned},
booktitle = {In Proceedings of the 31st Conference on Artificial Intelligence},
year = {2024},
keywords = {conference},
}
@article{jour1,
author = {Bruce Wayne and Clark Kent},
title = {Money, Power and Flight},
year = {2023},
issue_date = {June 2023},
volume = {1},
number = {1},
journal = {Transactions on Capitalism},
month = {jun},
articleno = {7},
keywords = {journal},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\makecvtitle
\section{Publications}
\newrefcontext[labelprefix=C]
\printbibliography[title = Refereed Conference Publications,keyword = conference]
\newrefcontext[labelprefix=J]
\printbibliography[title = Journal Publications, keyword = journal,resetnumbers = true]
\newrefcontext[labelprefix=U]
\printbibliography[title = Technical Reports and Preprints, keyword = unpub,resetnumbers = true]
I want to cite the conference using \texttt{cite} like this C1, but it does this: \cite{conf1}.
\end{document}