我對 LaTeX 的寫作評估相對較新(對於我的研究)。
我正在嘗試設置一個模板,到目前為止它對我來說看起來不錯。但我完全不知道如何設定我的 biblatex 以滿足我的需求(大學指南)。
我已經閱讀和測試了兩天,但我感覺完全迷失在所有這些資訊和解決問題的不同方法中。
我需要什麼?
對於 citestyle,我需要一個腳註引用,其中包含以下內容:作者的姓氏、年份(如果未定義年份,則為短標題)以及引用所在的頁面。
所以這適用於@Book
KochELT302
:
Koch,《布爾代數與組合 Schaltkreise》,第 21 頁。
對於 bibstyle,我需要更多資訊。我需要家族姓名、名字(如果有多個作者,只需姓名首字母)、年份、完整標題、版本和地點。
例如@Book
DigitaltechnikFricke2018
Fricke, Klaus,(2018),Digitaltechnik Lehr- und Übungsbuch fürElektrotechniker und Informatiker,8. überarbeitete und aktualisierte Auflage,(威斯巴登)
我閱讀了不同的文章和文檔,我認為我需要更新 citestyle 的巨集並定義我需要的格式。
我讀了這篇文章:自訂 biblatex 樣式的指南
但我如何知道我的情況使用了哪個巨集?
這就是我到目前為止所得到的:
\documentclass[12pt,a4paper,headinclude,footinclude]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{setspace}
\usepackage[a4paper]{geometry}
\geometry{top=3cm,bottom=3cm,left=4.5cm,right=2cm,}
\usepackage[babel, german=guillemets]{csquotes}
\usepackage[
bibstyle=authoryear,
citestyle=authortitle,
autocite=footnote,
sorting=nty,
maxcitenames=3,
mincitenames=3,
maxbibnames=8,
minbibnames=8,
]{biblatex}
\addbibresource{literatur.bib}
% Diverse Anpassungen für Literaturverzeichnis und Zitate
\DeclareFieldFormat[book]{title}{\mkbibquote{#1\isdot}}
\DeclareNameAlias{default}{family-given}
\DeclareNameAlias{sortname}{default}
\DefineBibliographyStrings{german}{andothers = {et al.}}
\DefineBibliographyStrings{german}{nodate = {o.J.}}
\title{AKAD-Vorlage}
\author{Author}
\date{August 2020}
\begin{document}
\maketitle
\newpage
\section{Test-1}
Test\autocite[Site 31]{KochELT302} \\
Test2\autocite{Gehrke2016}
\newpage
\printbibliography
\end{document}
所以,我可能需要一些幫助,或者可能需要輕輕推動:-)
這是我的圍兜文件
% Encoding: UTF-8
@Book{DigitaltechnikFricke2018,
author = {Klaus Fricke},
date = {2018},
title = {Digitaltechnik},
edition = {{8. überarbeitete und aktualisierte Auflage}},
location = {Wiesbaden},
subtitle = {Lehr- und Übungsbuch fürElektrotechniker und Informatiker},
}
@Book{Gehrke2016,
author = {Winfried Gehrke and Marco Winzker and Klaus Urbanski and Roland Woitowitz},
date = {2016},
title = {Digitaltechnik},
edition = {{7. überarbeitete und aktualisierte Auflage}},
location = {Berlin, Heidelberg},
subtitle = {Grundlagen, VHDL, FPGAs, Mikrocontroller},
}
@Book{KochELT302,
author = {Andreas Koch},
title = {Boolesche Algebra und kombinatorische Schaltkreise},
subtitle = {Digitaltechnik - ELT302},
}
@Book{KochELT303,
author = {Andreas Koch and Dietmar Möller and Tobias Schubert and Dieter Jäger},
title = {Sequenzielle Schaltungen, Schaltwerke und Simulationssoftware},
subtitle = {Digitaltechnik - ELT303},
}
@Comment{jabref-meta: databaseType:biblatex;}
非常感謝您的幫忙。
編輯:
我編輯了文本,使其更加緊湊,並更準確地定義了我需要的內容。
答案1
中的指南自訂 biblatex 樣式的指南是一個很好的開始,但是如果您想做更大的修改,那麼您必須查看biblatex
樣式程式碼。
正如中所解釋的如何建立 biblatex 參考書目和引文格式,biblatex 引文樣式文件的位置在哪裡?,編輯引文樣式(詳細同上)你會想看看
biblatex.def
standard.bbx
<(bib)style>.bbx
<(cite)style>.cbx
對於最重要的定義(連結的答案包含有關在哪裡可以找到什麼以及如何首先找到這些文件的更多詳細資訊)。
根據你的描述我想出了以下內容
\documentclass[12pt,a4paper,headinclude,footinclude]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[babel, german=guillemets]{csquotes}
\usepackage[
style=authoryear,
autocite=footnote,
maxcitenames=3,
mincitenames=3,
maxbibnames=8,
minbibnames=8,
]{biblatex}
\renewcommand*{\newunitpunct}{\addcomma\space}
\renewcommand*{\finentrypunct}{}
\DeclareFieldFormat[book]{title}{\mkbibquote{#1\isdot}}
\DeclareNameAlias{default}{family-given}
\DeclareNameAlias{sortname}{default}
\DeclareListWrapperFormat{location}{\mkbibparens{#1}}
\DefineBibliographyStrings{german}{
andothers = {et al\adddot},
nodate = {o.J\adddot},
}
\DeclareDelimFormat{nameyeardelim}{\addcomma\space}
\DeclareDelimFormat[bib]{nameyeardelim}{\addcomma\space}
\renewbibmacro*{cite:label}{%
\printtext[bibhyperref]{\printfield{label}}}
\newbibmacro*{cite:labeltitle}{%
\printtext[bibhyperref]{\printfield[citetitle]{labeltitle}}}
\renewbibmacro*{cite}{%
\iffieldundef{shorthand}
{\ifthenelse{\ifnameundef{labelname}}
{\usebibmacro{cite:label}%
\setunit{\printdelim{nonameyeardelim}}}
{\printnames{labelname}%
\setunit{\printdelim{nameyeardelim}}}%
\ifboolexpr{ test {\iffieldundef{labelyear}}
or test {\iffieldequalstr{labelyear}{nodate}}}
{\usebibmacro{cite:labeltitle}}
{\usebibmacro{cite:labeldate+extradate}}}
{\usebibmacro{cite:shorthand}}}
\begin{filecontents}{\jobname.bib}
@Book{DigitaltechnikFricke2018,
author = {Klaus Fricke},
date = {2018},
title = {Digitaltechnik},
edition = {8. überarbeitete und aktualisierte Auflage},
location = {Wiesbaden},
subtitle = {Lehr- und Übungsbuch für Elektrotechniker und Informatiker},
}
@Book{Gehrke2016,
author = {Winfried Gehrke and Marco Winzker and Klaus Urbanski and Roland Woitowitz},
date = {2016},
title = {Digitaltechnik},
edition = {7. überarbeitete und aktualisierte Auflage},
location = {Berlin, Heidelberg},
subtitle = {Grundlagen, VHDL, FPGAs, Mikrocontroller},
}
@Book{KochELT302,
author = {Andreas Koch},
title = {Boolesche Algebra und kombinatorische Schaltkreise},
subtitle = {Digitaltechnik - ELT302},
}
@Book{KochELT303,
author = {Andreas Koch and Dietmar Möller and Tobias Schubert and Dieter Jäger},
title = {Sequenzielle Schaltungen, Schaltwerke und Simulationssoftware},
subtitle = {Digitaltechnik - ELT303},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
Test\autocite[31]{KochELT302}
Lorem\autocite{DigitaltechnikFricke2018}
Test2\autocite{Gehrke2016}
\printbibliography
\end{document}