当我从出口门德利到分享乳胶,一些参考文献包含url
如下字段:
@misc{15MPEDIA2014,
title = {{Lista de contactos de los nodos de la Plataforma DRY - 15Mpedia}},
year = {2014},
author = {{15MPEDIA}},
url = {https://15mpedia.org/wiki/Lista{\_}de{\_}contactos{\_}de{\_}los{\_}nodos{\_}de{\_}la{\_}Plataforma{\_}DRY}
}
如果您看到 URL,而不是有_
,{\_}
这显然会破坏链接。也许是 Sharelatex 的问题。他们告诉我他们不知道发生了什么…… :-(
那么,在这种情况下,对于这种类型的“url”,是否有任何方法可以更正这些不正确的 bib 条目,以使链接正常工作?例如,编码始终更改{\_}
为_
内部url = ...
字符串。
梅威瑟:
%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode
\documentclass{DissertateB5}
\captionsetup{labelfont=\rmdefault, textfont=\rmdefault }
\usepackage[natbibapa]{apacite}
\bibliographystyle{apacite}
\begin{document}
This is the reference \cite{15MPEDIA2014}
\end{document}
答案1
这是一个基于 LuaLaTeX 的解决方案。它定义了一个 Lua 函数,用于扫描所有输入行(包括\jobname.bbl
BibTeX 创建的文件中的行)并查找\url{...}
字符串。对于每个这样的字符串,{\_}
字符串中的所有 都会被 替换_
。这发生在处理的早期阶段,即在 LaTeX 开始其常规操作之前。
唯一的输入要求是包含 URL 的字符串及其封装宏“\url{...}”位于一行上。不允许换行。
_
单独的评论:您真的应该尝试弄清楚如何设置所有 Mendeley 参数。指示 Mendeley 不要将URL 中的所有 实例都用 括起来应该不难{\_}
。
\RequirePackage{filecontents}
\begin{filecontents}{mybib.bib}
@misc{15MPEDIA2014,
title = {{Lista de contactos de los nodos de la Plataforma DRY--\mbox{15Mpedia}}},
year = {2014},
author = {{15MPEDIA}},
url = {https://15mpedia.org/wiki/Lista{\_}de{\_}contactos{\_}de{\_}los{\_}nodos{\_}de{\_}la{\_}Plataforma{\_}DRY}
}
\end{filecontents}
\documentclass{article}
%%% Lua-related code begins here
\usepackage{luacode}
\begin{luacode}
function clean_underscore ( s )
return ( string.gsub ( s , "{\\_}" , "_" ) )
end
function clean_url ( s )
return ( string.gsub ( s , "\\url%b{}" , clean_underscore ) )
end
\end{luacode}
\AtBeginDocument{\luadirect{luatexbase.add_to_callback (
"process_input_buffer", clean_url, "clean_url" )}}
%%% Lua-related code ends here
\usepackage{natbib}
\bibliographystyle{plainnat}
\usepackage{url}
\usepackage[colorlinks,urlcolor=blue]{hyperref} % just for this example
\begin{document}
\nocite{*}
\bibliography{mybib}
\end{document}
附录:我刚刚注意到,您加载了apacite
引文管理包(带有选项natbibapa
)以及apacite
参考书目样式。使用这些信息,格式化的 bib 条目如下所示 - 请注意,Lua 函数继续完成工作: