Kann man Titel verwandter Einträge sowohl im Literaturverzeichnis als auch in Abkürzungslisten verwenden?

Kann man Titel verwandter Einträge sowohl im Literaturverzeichnis als auch in Abkürzungslisten verwenden?

Dies ist eine Fortsetzung von 2 beantworteten Fragen:Kann man in Biblatex zwei Arten von Kurzlisten einrichten?UndKann man mit Biblatex nur den Titel des zugehörigen Eintrags in der Bibliografie drucken?

Ich versuche, diese Antworten zu kombinieren, um eine unterteilte Liste der Abkürzungen und eine unterteilte Bibliografie zu erstellen.

Ich möchte, dass im Abschnitt mit den Abkürzungen von Freges Werken nicht die deutschen Titel, sondern die zugehörigen englischen Titel angegeben werden.

David Purtons Antwort auf die zweite Frage, nämlich die Definition von a relatedtype={englishtitle}und a, \newbibmacro*{related:englishtitle}löst das Problem, dass die Frege-Einträge in der Bibliographie die englischen Titel angeben.

Im folgenden MWE habe ich versucht, \usebibmacro{related:englishtitle}einen neuen Treiber einzufügen \DeclareBibliographyDriver{fregeabbrevs}, um die englischen Frege-Titel im Abschnitt der Abkürzungsliste auszudrucken:

\documentclass{book}

\usepackage[backend=biber,style=authoryear]{biblatex}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}

@Inproceedings{Frege1897a,
  author        = {Frege, Gottlob},
  title         = {Über die Begriffsschrift des Herrn Peano und meine eigene},
  booktitle     = {Berichte über die Verhandlungen der Königlich Sächsischen Gesellschaft der Wissenschaften zu Leipzig: Mathematisch-physische Klasse},
  date          = {1897},
  pages         = {361--378},
  volume        = {48},
  related       = {Frege1984h},
  relatedtype   = {englishtitle},
  shorthand     = {PCN},
}
@Inbook{Frege1984h,
  author   = {Frege, Gottlob},
  title    = {On Mr. Peano's Conceptual Notation and My Own},
  date     = {1984},
  pages    = {234--248},
  crossref = {Frege1984},
}
@Book{Frege1984,
  author     = {Frege, Gottlob},
  title      = {Collected Papers on Mathematics, Logic, and Philosophy},
  date       = {1984},
  location   = {Oxford},
  publisher  = {Blackwell},
  translator = {Black, Max},
  editor     = {McGuinness, Brian},
  shorthand  = {CP},
}
@Article{Moore1899,
  author       = {Moore, G. E.},
  title        = {The Nature of Judgment},
  journaltitle = {Mind},
  date         = {1899},
  volume       = {8},
  number       = {30},
  pages        = {176--193},
  shorthand    = {NJ},
}
@Book{Lewis1918,
  author         = {Lewis, C. I.},
  title          = {A Survey of Symbolic Logic},
  date           = {1918},
  location       = {Berkeley, CA},
  publisher      = {University of California Press},
  series         = {Semicentennial publications of the University of California, 1868-1918},
  shorthand  = {SL}
}
@Collection{Beaney2013,
  editor    = {Michael Beaney},
  title     = {The Oxford Handbook of the History of Analytic Philosophy},
  date      = {2013},
  publisher = {Oxford University Press},
  location  = {Oxford},
}

\end{filecontents}
\addbibresource{\jobname.bib}

% Main primary sources categories
\newcommand*{\generateauthorcategory}[3]{%   
    \DeclareBibliographyCategory{by#1}%   
    \DeclareIndexNameFormat{cat#1}{%     
        \ifboolexpr{
            test {\ifdefstring{\namepartfamily}{#2}}         
            and 
            test {\ifdefstring{\namepartgiven}{#3}}
        }%
        {\addtocategory{by#1}{\thefield{entrykey}}}       
        {}}%   
    \AtDataInput{\indexnames[cat#1][1-999]{author}}}

\generateauthorcategory{frege}{Frege}{Gottlob}
\generateauthorcategory{moore}{Moore}{G.\bibnamedelimi E.}

% Filter for other, i.e., not main, primary sources
\defbibfilter{notmainprimary}{%
not category=byfrege %
and not category=bymoore %
}

% Check to distinguish primary from secondary sources
\defbibcheck{primarysource}{%
\iffieldint{year}
{\ifnumless{\thefield{year}}{1936}
{}
{\skipentry}}
{\skipentry}}
\defbibcheck{secondarysource}{%
\iffieldint{year}
{\ifnumgreater{\thefield{year}}{1935}
{}
{\skipentry}}
{\skipentry}}

% Generating entries for the 3 abbreviations lists
\DeclareBiblistFilter{fregeabbrevs}{
    \filter[type=field,filter=shorthand]
}
\DeclareBiblistFilter{mainabbrevs}{
    \filter[type=field,filter=shorthand]
}
\DeclareBiblistFilter{moreabbrevs}{
    \filter[type=field,filter=shorthand]
}

% Sorting the abbreviations lists
\DeclareSortingTemplate{fregeabbrevs}{ \sort[final]{ \field{sortshorthand} } \sort{ \field{shorthand} } }
\DeclareSortingTemplate{mainabbrevs}{ \sort[final]{ \field{sortshorthand} } \sort{ \field{shorthand} } }
\DeclareSortingTemplate{moreabbrevs}{ \sort[final]{ \field{sortshorthand} } \sort{ \field{shorthand} } }

%
\newbibmacro*{related:englishtitle}[1]{%
  \entrydata{#1}{%
    \printtext{English title:}%
    \setunit{\addspace}%
    \usebibmacro{title}}}

% Drivers for printing abbreviations lists
\DeclareBibliographyDriver{fregeabbrevs}{%   
\usebibmacro{related:englishtitle}%   
\newunit\newblock   
\printdate}
\DeclareBibliographyDriver{mainabbrevs}{%   
\usebibmacro{title}%   
\newunit\newblock   
\printdate}
\DeclareBibliographyDriver{moreabbrevs}{%
\renewbibmacro*{date+extradate}{}%
\usebibmacro{author/editor+others/translator+others}%
\setunit{\addcomma\space}\newblock
\usebibmacro{title}%
\setunit{\addcomma\space}\newblock
\printdate}

% Environment for abbreviation lists, to italicize by \emph the shorthands
\defbibenvironment{abbrevs}
{\list
{\printfield[shorthandwidth]{shorthand}}
{\setlength{\labelwidth}{\shorthandwidth}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\labelsep}{\biblabelsep}%
\addtolength{\leftmargin}{\labelsep}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}%
\renewcommand*{\makelabel}[1]{\emph{##1}\hss}}}
{\endlist}
{\item}

% Titles for 4 parts of Bibliography: two main authors, other primary sources, secondary sources
\defbibheading{subbibtitleonly}[\bibname]{%
\section*{#1}}

\begin{document}
\chapter*{Abbreviations}

Full details of these works are in the Bibliography.

\printbiblist[env=abbrevs,title={Works of Frege}, heading=subbibtitleonly, category=byfrege]{fregeabbrevs}
\printbiblist[env=abbrevs,title={Works of Moore}, heading=subbibtitleonly, category=bymoore]{mainabbrevs}
\printbiblist[env=abbrevs,title={Other Primary Works}, heading=subbibtitleonly, check=primarysource, notcategory=byfrege, notcategory=bymoore]{moreabbrevs}

\nocite{Frege1897a,Moore1899,Lewis1918,Beaney2013}

\chapter*{Bibliography}

\printbibliography[title={Works by Frege}, heading=subbibtitleonly, category=byfrege]
\printbibliography[title={Works by Moore}, heading=subbibtitleonly, category=bymoore]
\printbibliography[title={Other Primary Sources}, heading=subbibtitleonly, check=primarysource, notcategory=byfrege, notcategory=bymoore]
\printbibliography[title={Secondary Sources}, heading=subbibtitleonly, check=secondarysource, notcategory=byfrege, notcategory=bymoore]

\end{document}

Das Ergebnis bringt allerdings überhaupt keine Titel hervor:

Bildbeschreibung hier eingeben

Wie also den englischen Titel "On Mr. Peano's Conceptual Notation and My Own" nachPCN, und vor dem Datum?

Noch ein paar Fragen:

  • Nach „The Nature of Judgment“ folgt ein Punkt, danach jedoch ein Komma.Ein Überblick über die symbolische Logik; wie kann ich sie einheitlich mit Kommas versehen?
  • Kann das Komma auch innerhalb des abschließenden Anführungszeichens des Titels stehen, also: „The Nature of Judgment“?

Antwort1

Verwenden

\DeclareBibliographyDriver{fregeabbrevs}{%   
  \iffieldequalstr{relatedtype}{englishtitle}
    {\entrydata{\thefield{related}}{\usebibmacro{title}}}
    {}%   
  \newunit\newblock   
  \printdate}

um den englischen Titel zu bekommen.

Ihre Zeichensetzung ist nicht einheitlich, da alle \DeclareBibliographyDrivers außer \DeclareBibliographyDriver{moreabbrevs}verwenden \newunit, während letzteres verwendet \setunit{\addcomma\space}. Sie können entweder definieren \renewcommand*{\newunitpunct}{\addcomma\space}und verwenden \newunit; oder Sie verwenden \setunit{\addcomma\space}überall. Was besser ist, hängt davon ab, was Sie in der eigentlichen Bibliographie haben möchten. Wenn Sie dort auch Kommas haben möchten, verwenden Sie \renewcommand*{\newunitpunct}{\addcomma\space}; wenn Sie die Punkte dort behalten möchten, müssen Sie \setunit{\addcomma\space}woanders explizit vorgehen.

babelBeim Laden mit der americanSprachoption wird das Komma in die Anführungszeichen verschoben .

verwandte Informationen