Ich möchte ein Buch zitieren. Folgende bibliografischen Angaben habe ich von MathSciNet:
@book {Brylinski,
AUTHOR = {Brylinski, Jean-Luc},
TITLE = {Loop spaces, characteristic classes and geometric
quantization},
SERIES = {Progress in Mathematics},
VOLUME = {107},
PUBLISHER = {Birkh\"{a}user Boston, Inc., Boston, MA},
YEAR = {1993},
PAGES = {xvi+300},
ISBN = {0-8176-3644-7},
MRCLASS = {57Rxx (18G50 55P35 58F06)},
MRNUMBER = {1197353},
MRREVIEWER = {Daniel S. Freed},
DOI = {10.1007/978-0-8176-4731-5},
URL = {https://doi.org/10.1007/978-0-8176-4731-5},}
Leider zeigt der formatierte bibliografische Eintrag nicht die Anzahl der Seiten (die im pages
Feld des Eintrags gespeichert sind). Es erscheint
Jean-Luc Brylinski. Schleifenräume, charakteristische Klassen und geometrische Quantisierung, Band 107 von Progress in Mathematics. Birkhäuser Boston, Inc., Boston, MA, 1993.
Welche Änderungen muss ich vornehmen, damit auch die Seitenzahl angegeben wird?
Minimales Arbeitsbeispiel ist
\documentclass[12pt,reqno,a4paper]{amsart}
%\usepackage[utf8]{inputenc} % not needed with up-to-date TeX systems
\usepackage[english]{babel}
\usepackage{amsmath,amsthm,amsfonts,amssymb}
\usepackage{mathtools}
\usepackage{color}
\usepackage{mathrsfs}
\usepackage[all]{xy}
\usepackage{tikz-cd}
\usepackage[normalem]{ulem} % do you *really* need it?
\usepackage{datetime}
\usepackage{hyperref}
\theoremstyle{definition}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{construction}{Construction}[section]
\newtheorem{corollary}{Corollary}[section]
\newtheorem{lemma}{Lemma}[section]
\newtheorem{definition}{Definition}[section]
\newtheorem{remark}{Remark}[section]
\newtheorem{proposition}{Proposition}[section]
\newtheorem{example}{Example}[section]
\newtheorem*{question}{Question}
\newtheorem*{solution}{Solution}
\newtheorem{exercise}{Exercise}
\newcommand{\mc}{\mathcal}
\newcommand{\mf}{\mathfrak}
\newcommand{\xra}{\xrightarrow}
\newcommand{\ra}{\rightarrow}
\pagestyle{myheadings}
\textheight 9.3in
\textwidth 6.5in
\calclayout
% metadata
%\date{\today}
\title{****}
\author{***}
\begin{document}
%\today
\bibliography{****}
\bibliographystyle{plain}
\end{document}
Eigenständiges MWE (erfordert für diese [overwrite]
Funktion eine moderne LaTeX-Installation)
\documentclass[12pt,reqno,a4paper]{amsart}
\begin{filecontents}[overwrite]{sample.bib}
@book {Brylinski,
AUTHOR = {Brylinski, Jean-Luc},
TITLE = {Loop spaces, characteristic classes and geometric
quantization},
SERIES = {Progress in Mathematics},
VOLUME = {107},
PUBLISHER = {Birkh\"{a}user Boston, Inc., Boston, MA},
YEAR = {1993},
PAGES = {100-3010},
ISBN = {0-8176-3644-7},
MRCLASS = {57Rxx (18G50 55P35 58F06)},
MRNUMBER = {1197353},
MRREVIEWER = {Daniel S. Freed},
DOI = {10.1007/978-0-8176-4731-5},
URL = {https://doi.org/10.1007/978-0-8176-4731-5},}
\end{filecontents}
%\usepackage[utf8]{inputenc} % not needed with up-to-date TeX systems
\usepackage[english]{babel}
\usepackage{amsmath,amsthm,amsfonts,amssymb}
\usepackage{mathtools}
\usepackage{color}
\usepackage{mathrsfs}
\usepackage[all]{xy}
\usepackage{tikz-cd}
\usepackage[normalem]{ulem} % do you *really* need it?
\usepackage{datetime}
\usepackage{hyperref}
\theoremstyle{definition}
\newtheorem{theorem}{Theorem}[section]
\newtheorem{construction}{Construction}[section]
\newtheorem{corollary}{Corollary}[section]
\newtheorem{lemma}{Lemma}[section]
\newtheorem{definition}{Definition}[section]
\newtheorem{remark}{Remark}[section]
\newtheorem{proposition}{Proposition}[section]
\newtheorem{example}{Example}[section]
\newtheorem*{question}{Question}
\newtheorem*{solution}{Solution}
\newtheorem{exercise}{Exercise}
\newcommand{\mc}{\mathcal}
\newcommand{\mf}{\mathfrak}
\newcommand{\xra}{\xrightarrow}
\newcommand{\ra}{\rightarrow}
\pagestyle{myheadings}
\textheight 9.3in
\textwidth 6.5in
\calclayout
% metadata
\begin{document}
\nocite{*}
\bibliography{sample}
\bibliographystyle{plain}
\end{document}
Antwort1
Ich schlage vor, dass Sie wie folgt vorgehen:
Suchen Sie die Datei
plain.bst
in Ihrer TeX-Distribution. Erstellen Sie eine Kopie dieser Datei und nennen Sie die Kopie beispielsweiseplain-bookpages.bst
. (Bearbeiten Sie eine ursprüngliche, nicht umbenannte Datei Ihrer TeX-Distribution nicht direkt.)Öffnen Sie die Datei
plain-bookpages.bst
in einem Texteditor. Das Programm, das Sie zum Bearbeiten Ihrer Tex-Dateien verwenden, ist dafür geeignet.Suchen Sie in der Datei
plain-bookpages.bst
nach der BibTeX-Funktionbook
. In meiner Kopie der Datei beginnt diese Funktion in Zeile 557.Unmittelbar bevorFügen Sie für diese Funktion den folgenden Codeblock ein, der zwei BibTeX-Funktionen enthält –
bibinfo.check
undformat.book.pages
:FUNCTION {bibinfo.check} { swap$ duplicate$ missing$ { pop$ pop$ "" } { duplicate$ empty$ { swap$ pop$ } { swap$ pop$ } if$ } if$ } FUNCTION {format.book.pages} { pages "pages" bibinfo.check duplicate$ empty$ 'skip$ { " " * "pages" * } if$ }
Suchen Sie in der
book
Funktion nach der folgenden Zeile:publisher "publisher" output.check
Unmittelbar bevorFügen Sie in diese Zeile die folgende Zeile ein:
format.book.pages output
Speichern Sie die Datei
plain-bookpages.bst
entweder in dem Ordner, der Ihre Haupt-Tex-Datei(en) enthält, oder in einem Ordner, der von BibTeX durchsucht wird. Wenn Sie die zweite Option wählen, aktualisieren Sie unbedingt die Dateinamendatenbank Ihrer TeX-Distribution entsprechend. Wenn Ihnen der vorangehende Satz wie Kauderwelsch vorkommt, empfehle ich Ihnen, die erste Option zu wählen.Ändern Sie in Ihrer Haupt-Tex-Datei die Anweisung
\bibliographystyle{plain}
und\bibliographystyle{plain-bookpages}
führen Sie einen vollständigen Neukompilierungszyklus durch – LaTeX, BibTeX und LaTeX noch zweimal –, um alle Änderungen vollständig zu übernehmen.
Viel Spaß beim BibTeXen!
Übrigens, ich denke, es istfalschdass MathSciNet Informationen über den Herausgeber des Eintrags und die Adresse des Herausgebers in einem einzigen Feld kombiniert; es ist besser, separate publisher
und address
Felder im Auge zu behalten. Ich denke auch, dass es falsch von MathSciNet ist, die meisten Wörter in dem Feld klein zu schreiben title
.
Hier ist die Ausgabe eines vollständigen MWE (Minimum Working Example), das den neu erstellten plain-bookpages
Bib-Stil verwendet:
Und zum Vergleich: So wird der Eintrag formatiert, wenn der plain
Bibliografiestil verwendet wird:
Ein letzter Kommentar: Ich kann nicht umhin, anzumerken, dass es einen sehr guten Grund dafür gibt, warum praktisch alle jemals programmierten Bibliographiestile so eingerichtet sind,ignorierendas pages
Feld in Einträgen vom Typ @book
. Was ist der Grund dafür, fragen Sie sich vielleicht? Nun, es ist so, dass das pages
Feld in Einträgen vom Typ @book
für Leser ziemlich sicher überhaupt nicht von Interesse ist. Bibliografische Informationen sollen Lesern helfen, Kopien interessanter bibliografischer Einträge zu erhalten, entweder aus einer Bibliothek (physisch oder elektronisch) oder aus einem Buchladen. Deshalb ist das publisher
FeldIstrelevant für Einträge vom Typ @book
. Der Inhalt des pages
Feldes dient im Vergleich dazu keinem vergleichbaren Zweck.
\documentclass{article}
\begin{filecontents}[overwrite]{mybib.bib}
@book{Brylinski,
AUTHOR = {Brylinski, Jean-Luc},
TITLE = {Loop Spaces, Characteristic Classes and Geometric Quantization},
SERIES = {Progress in Mathematics},
VOLUME = {107},
PUBLISHER = {Birkh{\"a}user},
address = {Boston~MA},
YEAR = {1993},
PAGES = {xvi+300},
ISBN = {0-8176-3644-7},
MRCLASS = {57Rxx (18G50 55P35 58F06)},
MRNUMBER = {1197353},
MRREVIEWER= {Daniel S. Freed},
DOI = {10.1007/978-0-8176-4731-5},
URL = {https://doi.org/10.1007/978-0-8176-4731-5},
}
\end{filecontents}
\usepackage{cite}
\bibliographystyle{plain-bookpages}
\begin{document}
\nocite{Brylinski}
\raggedright
\bibliography{mybib}
\end{document}