Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

NUDTPaper默认文献处理工具改为biber #29

Open
liubenyuan opened this issue Jul 6, 2020 · 19 comments
Open

NUDTPaper默认文献处理工具改为biber #29

liubenyuan opened this issue Jul 6, 2020 · 19 comments

Comments

@liubenyuan
Copy link
Owner

liubenyuan commented Jul 6, 2020

之前nudtpaper的bst是我从北邮论文模板中提取的,由于我不懂bst语法(也不懂biber。。。惭愧),维护起来较为困难。

hushidong @hushidongbiblatex-gb7714-2015 包的作者。他最新提交的 pull #27 可供大家使用biber处理文献。biblatex-gb7714-2015目前已被texlive收录,大家只需安装biberbiblatex-gb7714-2015即可使用。

今后,nudtpaper将默认使用biber,原因是:参考文献格式规范,且有大牛维护,可让nudtpaper的文献格式更规范、更好处理。

大家有问题可以先在这里查看升级提示,如果没有找到对应的答案,可以提交issue并at @hushidong ,或者去biblatex-gb7714-2015 项目提交issue,点心(star:)

谢谢大家的支持!

@liubenyuan liubenyuan pinned this issue Jul 6, 2020
@liubenyuan liubenyuan changed the title nudtpaper模板的默认文献处理工具改为biber NUDTPaper默认文献处理工具改为biber Jul 6, 2020
@liubenyuan
Copy link
Owner Author

建议最终版使用方正字体,更标准。
[2020/07/10] #30 tilde符号还需安装FreeSerif字体,下载链接FreeSerif

@hushidong
Copy link
Collaborator

hushidong commented Jul 10, 2020

使用biber时,编译命令说明见: https://github.com/liubenyuan/nudtpaper/wiki

好的,你直接改就行,对整个格式把握你更熟悉。包括那个波浪号,我是从xecjk的unicode symbol里找的像一点的,有合适的你改过来就行。

@liubenyuan
Copy link
Owner Author

#31
[2020/07/11] 目前无论biber还是bibtex,上标索引都是citeupcite,行内非上标索引parenciteinlinecite

好的,你直接改就行,对整个格式把握你更熟悉。包括那个波浪号,我是从xecjk的unicode symbol里找的像一点的,有合适的你改过来就行。

就用FreeSerif字体,对于没有找到字体的同学,可以自行下载并用fc-cache -fvr更新

@charryzzz
Copy link
Contributor

用biber不能修改参考文献 *bib的位置吗

@hushidong
Copy link
Collaborator

参考如下修改:

1 \addbibresource{bibfile1.bib} %本地数据源
2 \addbibresource{bibfile2.bib}
3 \addbibresource[location=local]{D:/zlatexreference/paperone.bib}
4 \addbibresource[location=remote]{http://www.citeulike.org/bibtex/group/9517} %网络数据源
5 \addbibresource[location=remote,label=lan]{ftp://192.168.1.57/~user/file.bib}

@charryzzz
Copy link
Contributor

我测试了一下,在thesis.tex 里修改bib 文件的位置没有用,只有在nudtpaper.cls中修改bib文件的位置才行

@charryzzz
Copy link
Contributor

\addbibresource[location=local]{D:/zlatexreference/paperone.bib}

请问这个代码是加在什么位置?是在thesis.tex中,还是nudtpaper.cls里?

@hushidong
Copy link
Collaborator

导言区就行

@charryzzz
Copy link
Contributor

导言区就行

建议把*.cls 中的\addbibresource[location=local]{ref/refs.bib}删掉,因为我就是删掉ref/refs.bib后,再修改用\addbibresource[location=local]{D:/zlatexreference/paperone.bib}
就无效了,应该把*.bib的路径都放在thesis.tex里指定

@hushidong
Copy link
Collaborator

可以的,这样会比较好,你可以做个pr。

@charryzzz
Copy link
Contributor

@hushidong 大佬你好,现有的biber生成的参考文献都会带有电子版的地址,因为在提交论文的时候,一般是没有电子版的网络地址的,可否把这一项去掉?或者加一个开关?

@hushidong
Copy link
Collaborator

使用url=false,doi=false选项,

@charryzzz
Copy link
Contributor

使用url=false,doi=false选项,

谢谢,还有一个问题请教:
*.bib文献库中包含了一些乱码,如(40–110 µm,从Elsevier导出来的时候就是这样)如果用biber编译就会报错,用bibtex就没问题,请问有解决办法吗,含有乱码的条目比较多...

@hushidong
Copy link
Collaborator

一般biber是更不容易出现问题的,因为它全面支持utf字符,相比bibtex要强的。你上面的字符显然也是不会有问题的。

比如:

\documentclass{article}
\usepackage[backend=biber,style=gb7714-2015]{biblatex}%citexref=true

\begin{filecontents}{\jobname.bib}
@incollection{article3,
  author =   {Sally Scribe},
  title =    {40–110 µm},
  pages =    {1--20},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
\cite{article3}
\printbibliography
\end{document} 

结果为:

图片

那么你出现错误的可能性就不好说了,你的bib文件的编码是否是utf8?
你最好用一个简单的例子来测试一下,然后把例子和错误结果发上来。

@charryzzz
Copy link
Contributor

@hushidong 感谢回复
这个乱码是在abstract里,如果乱码仅仅存在于title,论文模板是可以编译成功的。我的bib文件的编码是utf8的
最后在cls文件中加入
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldset=abstract, null]
}
}
}
可以忽略摘要,模板work了

@hushidong
Copy link
Collaborator

摘要和标题本质是一样的,标题能处理这些字符说明摘要也是没有问题的,更大的可能是你的摘要里头有一些其它的需要转义的字符字符没有处理,你可以检查一下。

比如:

\documentclass{article}
\usepackage[backend=biber,style=gb7714-2015]{biblatex}%citexref=true

\begin{filecontents}{\jobname.bib}
@incollection{article3,
  author =   {Sally Scribe},
  title =    {title},
  abstract =    {40–110 µm},
  pages =    {1--20},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
\cite{article3}
\printbibliography
\end{document} 

结果为:

当然你这么处理可以的。你找了个好技巧呢,一般大家不太会自己去看biblatex的文档。加的那段放导言区也行的。
的确DeclareSourcemap现在已经改成可以使用多次了,1年前你这个技巧还不能用,而DeclareStyleSourcemap3.7版本后就可以使用多次了,DeclareSourcemap则要更晚一下。

@foxwho
Copy link

foxwho commented Apr 16, 2021

为什么下载的模板直接运行跑不通呢,只要一加bib就有问题,具体报错如下:
INFO - This is Biber 2.14
INFO - Logfile is 'refs.blg'
ERROR - Cannot find 'refs.bcf'!
INFO - ERRORS: 1

@hushidong
Copy link
Collaborator

上述问题,已解决,下次如有新的问题,请开新的issue。

@hushidong
Copy link
Collaborator

使用texstudio时,选择biber选项,那么设置默认文献工具为biber:

图片

不使用biber时,
图片

设置完毕后点击构建并查看按钮
图片
,即可完成自动编译。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants