我想amsrefs
打印(在参考书目中,而不是与实际引用一起,例如在页边距中)\bib
和\cite
命令中使用的标签(即 的第一个参数\bib
)。我试过这个:
\documentclass{article}
\usepackage{amsrefs}
\usepackage{lipsum}
\let\origbib=\bib
\def\bib#1#2#3{\llap{#1\qquad}\origbib{#1}{#2}{#3}}
\begin{document}
This: \cite{a} and that: \cite{b} are important papers.
\vspace{6\baselineskip}\lipsum[1-4] % to get a page break between papers in the bibliography
\begin{biblist}
\bib{a}{article}{
author={Someone},
title={A title},
}
\bib{b}{article}{
author={Another one},
title={Another title},
}
\end{biblist}
\end{document}
但效果不太好(\llap
在垂直模式下发布,\leavevmode
在之前添加会导致一些错误,由于截止日期,我没有足够的动力去调查... :-/)。\vspace{-\baselineskip}
在之后添加\llap
有点帮助,但仍然是第一的页面上的条目会打印在前一页上。我可以接受这种情况,但我也想知道是否有更好(也更优雅)的解决方案。
答案1
对我有用吗?
\documentclass{article}
\usepackage{amsrefs}
\usepackage{lipsum}
\usepackage{showkeys}
\begin{document}
This: \cite{a} and that: \cite{b} are important papers.
\vspace{6\baselineskip}\lipsum[1-4] % to get a page break between papers in the bibliography
\begin{biblist}
\bib{a}{article}{
author={Someone},
title={A title},
}
\bib{b}{article}{
author={Another one},
title={Another title},
}
\end{biblist}
\end{document}
答案2
对于这种情况的使用方式showlabels
如下
\usepackage{showlabels}
\showlabels{bib}
结果并不完全像您描述的一样,但确实在边距中标出了\bib
带有 的标签。 showlabels 包会尽力避免间距变化,因此如果在这种情况下确实出现了间距变化,则可能是 showlabels 的一个错误。{a}