如何删除参考书目中 URL 前的额外空格?

如何删除参考书目中 URL 前的额外空格?

请问如何删除这个空格?我正在使用natbib

网址前的空格

代码来自 ref.bib

@article{stats2017,
  title={Digest of Education Statistics 2017},
  author={\text{Statistics Mauritius}},
  year={2017},
  url={\url{http://statsmauritius.govmu.org/English/Publications/Pages/Edu_Stats_Yr2017.aspx}}
}

书目格式

%\printbibliography
\setcitestyle{numbers} % set the citation style to ``numbers''.
\bibliographystyle{agsm}
\bibliography{ref.bib}

答案1

最简单的解决方案(假设您的 TeX 发行版是最新的)包括加载xurl包;它允许在 URL 字符串中任意换行。如果您的 TeX 发行版缺少该xurl包,我建议您 (a) 使用url选项spaces和加载包,并且 (b)在 之前hyphens切换到。\raggedright\bibliography{ref}

无论您做什么,请用author一对额外的花括号将字段括起来。这样做会告知 BibTeX 它正在与“公司”作者打交道,而不是与名字为“Statistics”、姓氏为“Mauritius”的人打交道。并且也请删除包装器\text,因为它在这里不合适。

在此处输入图片描述

\RequirePackage{filecontents}
\begin{filecontents}{ref.bib}
@article{stats2017,
  title  = "{Digest of Education Statistics 2017}",
  author = "{Statistics Mauritius}",
  year   = 2017,
  url    = "http://statsmauritius.govmu.org/English/Publications/Pages/Edu_Stats_Yr2017.aspx",
}
\end{filecontents}

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[numbers,round]{natbib}
\bibliographystyle{agsm}
\renewcommand\harvardurl[1]{\textbf{URL}: \url{#1}} % optional
\usepackage{xurl} % allow line breaks anywhere in URL string

\begin{document}
\cite{stats2017}
\bibliography{ref}  % not "\bibliography{ref.bib}"
\end{document} 

相关内容