# 在 amsrefs 中的 url 中

# 在 amsrefs 中的 url 中

我想使用 amsrefs 和网页参考书目条目类型包含对网页的引用。网址中有 #。发出错误消息,但进入滚动模式后,排版正确。有没有办法避免出现错误消息?

\documentclass{amsart}
\usepackage{amsrefs}
\begin{document}
Main text
\begin{bibdiv}
\begin{biblist}

\bib{web}{webpage}{
accessdate={2015-3-10},
title={My web page},
url={http://www.mywebpage/#name},
}
\end{biblist}
\end{bibdiv}
\end{document}

这传达了以下信息:

./amsrefs.tex:18: Illegal parameter number in definition of \star@a.
<to be read again> 
n
l.14    url={http://www.mywebpage/#name}

答案1

这应该被视为一个错误;也许使用该url包(也由 加载hyperref)可能会解决它。

对于这种特殊情况,你可以添加一个技巧:

\documentclass{amsart}
\usepackage{amsrefs}
\usepackage{etoolbox}
\usepackage{hyperref} % optional

\AtBeginEnvironment{biblist}{\catcode`\#=12 }

\begin{document}
Main text
\begin{bibdiv}
\begin{biblist}

\bib{web}{webpage}{
accessdate={2015-3-10},
title={My web page},
url={http://www.mywebpage/#name},
}
\bib{google}{webpage}{
accessdate={2015-3-10},
title={My web page},
url={http://www.google.com/#},
}
\end{biblist}
\end{bibdiv}
\end{document}

在此处输入图片描述

hyperref如果使用,第二个链接是有效的。

相关内容