我想使用 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
如果使用,第二个链接是有效的。