将 URL 添加到 asmems4.bst

将 URL 添加到 asmems4.bst

asmems4.bst我在整合我所在部门提供的论文时遇到了问题。我的一些参考资料是网站,并且asmems4.bst没有在我的参考书目中输出 URL。根据对另一个问题的回答,我修改了 .bst 文件,如下所示,但结果更糟。当我将其包含format.url output在代码中时,编译后的 PDF 不再显示title网页的字段,只显示authordate字段,而不显示url字段的内容。

(无格式.url)

[6] Statista,2019 年。2010 年至 2018 年西班牙家庭电价,每半年一次(单位:欧分/千瓦时)。

对阵

(使用 format.url)

[6] Statista,2019 年。

这是我添加的功能:

FUNCTION {format.url}
{ url duplicate$ empty$
    { pop$ "" }
    { "\url{" swap$ * "}" * 
      urldate duplicate$ empty$
        { pop$ }
        { " (Accessed: "  swap$ * ")" * * }
      if$
    }
  if$
}

misc然后我修改了处理类型条目的函数@misc

FUNCTION {misc}
{ output.bibitem
  format.authors output
  author format.key output              % ASME puts year
  output.year.check                     % after author(s)
  title howpublished new.block.checkb
  format.title output
  howpublished new.block.checka
  howpublished output
  format.date output
  new.block
  note output
%I added this format line
  format.url output
  fin.entry
  empty.misc.check
}

有什么建议么?

更新:

我找到了另一个类似的问题,并做了一些修改。我一直使用 Mendeley 自动填充我的refs.bib,但显然访问日期无法通过从 Mendeley 到 Overleaf 的同步。因此,我web.bib为我的网站参考资料创建了第二个文件。

除此之外,我在 的 ENTRY 中加入了url和。使用与上面相同的功能,我现在在网站参考文献和下一个参考文献之间有一个很大的间隙,但没有 url 或访问日期。在下图中,参考文献 [6] 和 [7] 都是在线参考文献,后面有很大的间隙,而 [5] 和 [8] 是期刊文章,空间只有一半。urldateasmems4.bstformat.url

没有 URL 的网站引用之间存在差距

答案1

亚伦——这继续我上面的评论,并附带代码。

我将您FUNCTION {format.url}和您的编辑添加到FUNCTION {misc}我的 amsems4.bst 副本中,使用以下示例文件:

\documentclass[11pt]{article}

\usepackage{hyperref}

\begin{document}

\nocite{*}
\bibliographystyle{asmems4}
\bibliography{asmejour-sample}

\end{document}  

我所拥有的书目是一长串的条目,而不是根本为此特定的 .bst 设置,但这里有两个例子:

@misc{mpl,
    title={mpl colormaps},
    author={St{\'e}fan {van der Walt} and Nathaniel Smith},
    URL = {http://bids.github.io/colormap/},
    urldate = {Aug. 26, 2018},
    year = 2015,
    organization = {GitHub},
    address = {San Francisco, CA},
    month = {September},
}

@misc{GSL,
    title    =  {{GNU} Scientific Library Release 2.4},
    URL = {https://www.gnu.org/software/gsl/},
   author = {Mark Galassi 
    and Jim Davies
    and James Theiler
    and Brian Gough
    and Gerard Jungman
    and Patrick Alken
    and Michael Booth
    and Fabrice Rossi
    and Rhys Ulerich},
   year = 2017,
   organization = {Free Software Foundation},
   address = {Boston, MA},
   urldate = {Dec. 12, 2018},
   month = {June},
}

结果如下: 在此处输入图片描述

请注意,我已经hyperref加载,因此超链接已设置,如 URL 周围的细青色框所示。

希望这可以帮助。

答案2

我从未弄清楚如何让这些功能发挥作用,但我确实找到了一个对我有用的解决方案。由于 Mendeley Online 无法正确导出网络参考资料,因此我不得不.bib为我的网络参考资料创建一个新文件。当我这样做时,我只需添加 URL 和访问日期,howpublished={<url>~(Accessed on dd mo, yyyy)}这样就成功了。

相关内容