占位标签 - 无对象标签

占位标签 - 无对象标签

对于海报和演示文稿,由于文档较小,我希望避免在繁琐的 bibtex 文件中写有关出版物的信息,而是直接在文档中引用所有内容。例如,最后我想创建手动参考书目:

  • papername1 label1 description1(文档中仅描述了论文名称和描述)

  • papername2 label2 description2...

然后在文本中我想通过名称引用标签,例如可以通过以下方式完成\nameref{label1}papername1显示。

现在,我采取的方法是直接输入而不使用标签,然后通过手动书写进行引用papername

如果知道它是否可以在不查看 BibTeX 文件的情况下使用标签,那就太好了。如果知道一些没有 BibTeX(或者至少只自动生成 BibTeX 文件,不需要大量输入)的解决方案,并且不需要在 BibTeX 约定中为特定类型的论文(例如文章、书籍等)写入变量,那就太好了。

答案1

如果您愿意使用如下所示的预定义界面\paperdesc{<paper>}{<description>}来设置您的论文描述,您可以使用它来自动更新\@currentlabel(保存当前标签值的宏)。将其更新为<paper>允许您使用\label-\ref像往常一样,检索适当的<paper>

在此处输入图片描述

\documentclass{article}

%\usepackage{hyperref}

\makeatletter
\newcommand{\paperdesc}[2]{%
  \csname phantomsection\endcsname % If using hyperref
  \def\@currentlabel{#1}% Update the current label
  \textsc{#1}, % Print paper in Small Caps
  #2% Print paper description
}
\makeatother

\begin{document}

See~\ref{paper:first} and~\ref{paper:third}

\begin{itemize}
  \item \paperdesc{Paper 1}{Description of Paper 1} \label{paper:first}
  \item \paperdesc{Paper B}{Description of Paper B}
  \item \paperdesc{Paper III}{Description of Paper III} \label{paper:third}
\end{itemize}

\end{document}

如果与其他非标准文档类或包结合使用,此解决方案可能需要更多工作。

相关内容