如何删除 \autocite 中空白注释后的空格?

如何删除 \autocite 中空白注释后的空格?

我目前正在撰写论文,我想在我的论文中放置一个“cf.”的占位符,autocite如下所示:

\autocite[\cf][]{Author.2016}

原因:万一我的导师希望我使用需要引用的引用样式,我想“切换”引用的开启和关闭。但是,如果我将命令定义\cf为空(\newcommand{\cf}{}),则 autocite 命令会自动在作者前面添加一个空格:(Schmidt 等人,2013 年)。

使用以下命令取消定义 cf 命令\let\cf\undefined(如“取消定义自定义命令“)不起作用,因为命令未定义:D

有什么想法可以告诉 LaTeX 只是“忽略” \cf(或删除空白注释后的空格)?

谢谢!!

编辑:工作示例

文档.tex:

\documentclass{scrreprt}

\usepackage[backend=biber,bibencoding=utf8,style=authoryear-icomp]{biblatex}
\addbibresource{bibliography.bib}

\newcommand{\cf}{}

\begin{document}
    This is some text~\autocite[\cf][]{Schmidt.2013}
\end{document}

书目.bib:

@book{Schmidt.2013,
 author = {Schmidt},
 year = {2013},
 title = {Some Title}
}

答案1

卑鄙的伎俩!

\begin{filecontents*}{\jobname.bib}
@book{Schmidt.2013,
 author = {Schmidt},
 year = {2013},
 title = {Some Title}
}
\end{filecontents*}

\documentclass{scrreprt}

\usepackage[backend=biber,bibencoding=utf8,style=authoryear-icomp]{biblatex}
\addbibresource{\jobname.bib}

\newcommand\nocfspace{\renewcommand{\prenotedelim}{}}
\newcommand{\cf}{\aftergroup\nocfspace}

\begin{document}

This is some text~\autocite[\cf][]{Schmidt.2013}

This is some other text \autocite[as in][]{Schmidt.2013}

\end{document}

在此处输入图片描述

相关内容