在Zotero中可以通过快捷键Ctrl+Shift+C直接复制参考文目录献条目,符合latex中可以使用Bibtex样式只有Bibtex generic citation style,输出的bib条目可读性很差,可以通过修改样式文件*.csl来美化一下。
进入样式编辑器里将Bibtex generic citation style的格式文件另存为新文件后,对其进行修改,修改完添加到样式里即可。记得修改XML文件里的title和id字段,不然导入的时候会覆盖。
修改后效果:
简单的修改换行和对齐效果的完整样式代码,只适合期刊和会议论文:
<?xml version="1.0" encoding="utf-8"?>
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only" default-locale="en-US">
<info>
<title>Aligned BibTeX citation style</title>
<id>AlignedBibtex</id>
<!-- only verified for article and paper-conference -->
<category citation-format="label"/>
<category field="generic-base"/>
<updated>2022-10-06T15:41:00</updated>
</info>
<macro name="zotero2bibtexType">
<choose>
<if type="bill book graphic legal_case legislation motion_picture report song" match="any">
<text value="book"/>
</if>
<else-if type="chapter" match="any">
<text value="inbook"/>
</else-if>
<else-if type="article article-journal article-magazine article-newspaper" match="any">
<text value="article"/>
</else-if>
<else-if type="thesis" match="any">
<text value="phdthesis"/>
</else-if>
<else-if type="manuscript" match="any">
<text value="unpublished"/>
</else-if>
<else-if type="paper-conference" match="any">
<text value="inproceedings"/>
</else-if>
<else-if type="report" match="any">
<text value="techreport"/>
</else-if>
<else>
<text value="misc"/>
</else>
</choose>
</macro>
<macro name="citeKey">
<group delimiter="_">
<text macro="author-short" text-case="lowercase"/>
<text macro="issued-year"/>
</group>
</macro>
<macro name="author-short">
<names variable="author">
<name form="short" delimiter="_" delimiter-precedes-last="always" et-al-min="11" et-al-use-first="10"/>
</names>
</macro>
<macro name="issued-year">
<date variable="issued">
<date-part name="year"/>
</date>
</macro>
<macro name="author">
<names variable="author">
<name sort-separator=", " delimiter=" and " delimiter-precedes-last="always" name-as-sort-order="all"/>
</names>
</macro>
<macro name="number">
<text variable="issue"/>
<text variable="number"/>
</macro>
<macro name="container-title">
<choose>
<if type="chapter paper-conference" match="any">
<text variable="container-title" prefix=" booktitle = {" suffix="}"/>
</if>
<else>
<text variable="container-title" prefix=" journal = {" suffix="}"/>
</else>
</choose>
</macro>
<macro name="pages">
<text variable="page"/>
</macro>
<citation disambiguate-add-year-suffix="true" disambiguate-add-names="false" disambiguate-add-givenname="false" collapse="year">
<sort>
<key macro="author"/>
<key variable="issued"/>
</sort>
<layout delimiter="_">
<text macro="citeKey"/>
</layout>
</citation>
<bibliography hanging-indent="false">
<sort>
<key macro="author"/>
<key variable="issued"/>
</sort>
<layout>
<text macro="zotero2bibtexType" prefix="@"/>
<group prefix="{" suffix=", }" delimiter=", ">
<text macro="citeKey"/>
<text macro="author" prefix=" author = {" suffix="}"/>
<text variable="title" prefix=" title = {" suffix="}"/>
<text macro="container-title"/>
<text macro="issued-year" prefix=" year = {" suffix="}"/>
<text variable="volume" prefix=" volume = {" suffix="}"/>
<text macro="number" prefix=" number = {" suffix="}"/>
<text macro="pages" prefix=" pages = {" suffix="}"/>
<text variable="DOI" prefix=" doi = {" suffix="}"/>
</group>
</layout>
</bibliography>
</style>