
我正在利用這門課來完成我的碩士論文book
。我需要將引文寫為文本中的腳註,並將它們收集在參考書目章節的末尾。為此,我需要兩種不同的樣式,一種用於腳註引用,另一種用於參考書目條目。
感謝這個xpatch
包,我已經創建了我需要的腳註樣式。但是,我不明白如何更改論文末尾參考書目中條目的樣式(目前,兩種樣式是相同的)。
對於腳註引用,它們必須顯示為:
N.姓氏等人,論文標題。期刊名稱, 編輯, 年份, 頁數
對於參考書目條目,它們必須顯示為:
姓氏,論文標題。期刊名稱, 編輯, 年份
這是MWE(腳註引用風格是正確的,參考書目風格是錯誤的)。我使用 XeLaTeX 和 Biber 進行編譯:
\documentclass[a4paper,12pt]{book}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsfonts}
\usepackage[style=verbose,
doi=false,
firstinits=true,
maxbibnames=99
]{biblatex}
\usepackage{fontspec}
\usepackage{titlesec}
\usepackage{titletoc}
\usepackage{xpatch}
\usepackage[english]{babel}
\setmainfont{Arial}
\pagestyle{plain}
\titleformat{\chapter}[hang]
{\normalfont\huge\bfseries}{\thechapter}{1em}{}
\addbibresource{Bib.bib}
% et al. italics
\xpatchbibmacro{name:andothers}{%
\bibstring{andothers}%
}{%
\bibstring[\emph]{andothers}%
}{}{}
\usepackage{xpatch}
\xpretobibmacro{title}{\unspace\addcomma\addspace}{}{}
\DeclareFieldFormat[article]{title}{\textit{#1}\addcomma}
\DeclareFieldFormat[book]{title}{\textit{#1}\nopunct}
\DeclareFieldFormat[book]{title}{\textit{#1}\addcomma}
\renewbibmacro{in:}{ in\nopunct}
\DeclareFieldFormat{journaltitle}{\guillemotleft #1\guillemotright \addcomma}
\DeclareFieldFormat{pages}{#1}
\setlength\bibitemsep{1.5\itemsep}
%**BEGIN DOCUMENT**
\begin{document}
\chapter{Introduction}
Lorem ipsum\footcite{Aiello2014}
Lorem ipsum\footcite{Arksey1999}
\printbibliography
\end{document}
這是 Bib.bib 文件
%Aiello_Bulgherano
@article{Aiello2014,
title={{An assessment of the Beerkan method for determining the hydraulic properties of a sandy loam soil}},
author={Aiello, R and Bagarello, V and Barbagallo, S and Consoli, S and Di Prima, S and Giordano, G and Iovino, M},
journal={Geoderma},
volume={235},
pages={300--307},
year={2014},
doi={10.1016/j.geoderma.2014.07.024}
}
%Arksey
@book{Arksey1999,
title={Interviewing for social scientists: An introductory resource with examples},
author={Arksey, Hilary and Knight, Peter T},
year={1999},
publisher={Sage}
}
答案1
對我來說,這種風格的一些方面仍然有點不清楚,但我想下面的內容應該已經讓你走得很遠了。
當我讀到這個問題時,它主要是關於名稱格式的。您需要變更的名稱格式稱為sortname
。在引文中,我們需要一種格式來提供名字首字母和姓氏(新格式g-family
)。
cite:full
只是一個副本cite:full
來自的副本verbose.cbx
, 二。 93-99,名稱格式已變更。
在參考書目中,我們希望採用「家族給出的」名稱順序,並且各部分之間沒有逗號(由 控制\revsdnamepunct
)。
我稍微重寫了您的方法,在引用的元素之間放置逗號:使用\renewcommand*{\newunitpunct}{\addcomma\space}
.
\documentclass[a4paper,12pt]{article}
\usepackage[english]{babel}
\usepackage[style=verbose,
maxbibnames=999,
doi=false,
]{biblatex}
\DeclareNameFormat{g-family}{%
\usebibmacro{name:given-family}
{\namepartfamily}
{\namepartgiveni}
{\namepartprefix}
{\namepartsuffix}%
\usebibmacro{name:andothers}}
\renewbibmacro*{cite:full}{%
\usebibmacro{cite:full:citepages}%
\printtext[bibhypertarget]{%
\usedriver
{\DeclareNameAlias{sortname}{g-family}}
{\thefield{entrytype}}}%
\usebibmacro{shorthandintro}}
\usepackage{xpatch}
\xpatchbibmacro{name:andothers}{%
\bibstring{andothers}%
}{%
\bibstring[\emph]{andothers}%
}{}{}
\renewcommand*{\newunitpunct}{\addcomma\space}
\renewcommand*{\intitlepunct}{\addspace}
\renewcommand*{\finentrypunct}{}
\DeclareNameAlias{sortname}{family-given}
\renewcommand*{\revsdnamepunct}{}
\DeclareFieldFormat[article]{title}{\mkbibemph{#1}}
\DeclareFieldFormat{journaltitle}{\guillemotleft #1\guillemotright}
\DeclareFieldFormat{pages}{#1}
\setlength\bibitemsep{1.5\itemsep}
\begin{filecontents}{\jobname.bib}
@article{Aiello2014,
title = {An assessment of the Beerkan method for determining
the hydraulic properties of a sandy loam soil},
author = {Aiello, R. and Bagarello, V. and Barbagallo, S. and Consoli, S.
and Di Prima, S. and Giordano, G. and Iovino, M.},
journal = {Geoderma},
volume = {235},
pages = {300--307},
year = {2014},
doi = {10.1016/j.geoderma.2014.07.024}
}
@book{Arksey1999,
title = {Interviewing for social scientists: An introductory resource with examples},
author = {Arksey, Hilary and Knight, Peter T.},
year = {1999},
publisher = {Sage}
}
\end{filecontents}
\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}
\begin{document}
Lorem ipsum\footcite{Aiello2014}
ipsum\footcite{Arksey1999}
dolor\footcite{sigfridsson}
\printbibliography
\end{document}