Git Product home page Git Product logo

Comments (12)

moewew avatar moewew commented on September 26, 2024

Das ist in

\iffieldundef{title}%
{\setunit{\addspace}}%
{\newunit\newblock}%
\usebibmacro{in:}%

so festgelegt.

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on September 26, 2024

genau, aber dennoch wird komischerweise ein Komma ausgegeben.

\documentclass[german,ngerman]{scrbook}
\usepackage{filecontents,babel}
\begin{filecontents}{\jobname.bib}
@Inbook{Kohlmeyer1983,
  author       = {K. Kohlmeyer},
  booktitle    = {Tierbilder aus vier Jahrtausenden},
  year         = {1983},
  editor       = {U. Gehrig},
  booksubtitle = {Antiken der Sammlung Mildenberg},
  pages        = {20 Nr. 9},
  location     = Mainz,
}
@Incollection{Koudounaris1985,
  author       = {Koudounaris, Aristides L.},
  booktitle    = {Antike Kunst auf Zypern im Museum der Pierides Stiftung},
  year         = {1985},
  booksubtitle = {L’Art Chypriote antique au Musée de la Fondation Piéridès},
  publisher    = {Pierides Stiftung},
  pages        = {19--21},
  editor       = {Karageorghis, Vassos},
  location     = {Larnaka},
  groups       = {21rogge},
}
\end{filecontents}
\usepackage[           
  backend=biber,
%style=../biblatex-archaeologie/archaeologie,
  style=archaeologie,
]{biblatex}	
\addbibresource{\jobname.bib}

\begin{document}
\printbibliography
\nocite{*}
\end{document}
  
 

from biblatex-archaeologie.

moewew avatar moewew commented on September 26, 2024

Ach so, ich wusste nicht, was das gewünschte Ergebnis war.

Das Problem ist das \setunit{\isdot\addcomma\addspace} in

\renewbibmacro{in:}{%
\setunit{\isdot\addcomma\addspace}%
\printtext{\bibstring{in}\intitlepunct}}}

das sorgt immer für ein Komma vor dem 'in'. Ich hätte erwartet, dass die Standarddefinition

\newbibmacro*{in:}{%
  \printtext{%
    \bibstring{in}\intitlepunct}}

ausreicht. Aber ich weiß nicht für welche Fälle das \setunit{\isdot\addcomma\addspace} eingebaut wurde.

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on September 26, 2024

Mit \setunit{\isdot\addcomma\addspace} habe ich den nachfolgenden Fall lösen können, bei bei einem Titel oder was auch immer davor mit einem . endet, dennoch ein Komma vor dem in: gesetzt wird und das in: nicht großgeschrieben wird, weil ja zuvor ein Punkt steht.

\documentclass[german,ngerman]{scrbook}
\usepackage{filecontents,babel}
\begin{filecontents}{\jobname.bib}
@incollection{EckTauschungOffentlichkeitProzess1997,
  langid = {german},
  location = {{München}},
  title = {Die Täuschung der Öffentlichkeit. Der Prozess gegen Cnaeus Calpurnius Piso im Jahre 20 n.\,Chr.},
  isbn = {978-3-406-42686-5},
  booktitle = {Große Prozesse der römischen Antike},
  publisher = {{Beck}},
  author = {Eck, Werner},
  editor = {Manthe, Ulrich},
  date = {1997},
  pages = {128--145},
  keywords = {(DE-588)4076778-4,Imperium Romanum,Italien Geschichte 753 v Chr-500,Kongress,Reich Rom,Römisches Reich,Römisches Reich Antike,Prozess,Geschichte 200 v Chr-300,Augst 1996,Gerichtsverfahren,(DE-588)4047577-3,Gerichtsprozess,Prozesse}
}
\end{filecontents}
\usepackage[           
  backend=biber,
%style=../biblatex-archaeologie/archaeologie,
  style=archaeologie,
]{biblatex}	
\addbibresource{\jobname.bib}

\begin{document}
\printbibliography
\nocite{*}
\end{document}
  

from biblatex-archaeologie.

moewew avatar moewew commented on September 26, 2024

Da sehe ich zwei Möglichkeiten.

Entweder müssen Nutzer Punkte am Ende von title-Feldern selbst mit \isdot bearbeiten, wenn sie Abkürzungen anzeigen und nicht den Satz beenden.
Oder Du machst das mit

\DeclareFieldFormat*{title}{#1\isdot}

automatisch.
Die Standard-Definitionen sind übrigens

\DeclareFieldFormat{title}{\mkbibemph{#1}}
\DeclareFieldFormat
  [article,inbook,incollection,inproceedings,patent,thesis,unpublished]
  {title}{\mkbibquote{#1\isdot}}
\DeclareFieldFormat
  [suppbook,suppcollection,suppperiodical]
  {title}{#1}

Für @inbook, @article, @incollection und Ähnliches nimmt biblatex also an, dass ein . eine Abkürzung markiert, für die anderen Typen ist es ein Satzendpunkt. Keine Ahnung, warum das genau so aufgeteilt ist.

from biblatex-archaeologie.

moewew avatar moewew commented on September 26, 2024

Wenn Du damit zur Standard-Definition von in: zurückgehen kannst, hätte das den Vorteil, dass Du damit sofort ein von mir erzeugtes Problem löst.
Ich habe in

\renewbibmacro{in:}{%
\setunit{\isdot\addcomma\addspace}%
\printtext{\bibstring{in}\intitlepunct}}}

eine schließende Klammer zu viel gelassen.

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on September 26, 2024

Hiermit klappt beides, \isdot ist drin und bei fehlendem Titel kein Komma:

\renewbibmacro{in:}{%
 \setunit{\isdot%
   \iffieldundef{title}
     {}
     {\addcomma}%
     \addspace}%
     \printtext{\bibstring{in}\intitlepunct}}

Spricht da etwas dagegen?

from biblatex-archaeologie.

moewew avatar moewew commented on September 26, 2024

Das ist nicht ganz mein Geschmack. Ich finde es immer unschön, ein Makro mit Befehlen für Zeichensetzung zu beginnen.

Mein Vorschlag wäre

\DeclareFieldFormat*{title}{#1\isdot}

und die Standard-Definition von in:.

from biblatex-archaeologie.

moewew avatar moewew commented on September 26, 2024

Technisch gesehen spricht aber glaube ich nichts gegen Deinen Vorschlag. Ich bin mir aber nicht ganz sicher.

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on September 26, 2024

Aber mit deinem Vorschlag klappt es auch und man muss die Standard-Definition von in: nicht anfassen, was immer besser ist (ich meine, dass "früher" auch per default ein in: bei Zeitschriften gesetzt wurde, weswegen ich es geändert hatte).

Ich teste gerade noch, ob

\DeclareFieldFormat*{subtitle}{#1\isdot}

auch notwendig ist

from biblatex-archaeologie.

moewew avatar moewew commented on September 26, 2024

Bin mir ziemlich sicher, dass \DeclareFieldFormat*{subtitle}{#1\isdot} nicht nötig ist.
Normalerweise werden Titel mit

\printtext[title]{%
  \printfield[titlecase]{title}%
  \setunit{\subtitlepunct}%
  \printfield[titlecase]{subtitle}}

ausgegeben. Da wird das Format subtitle gar nicht benutzt. Nur title und titlecase werden genutzt.

from biblatex-archaeologie.

LukasCBossert avatar LukasCBossert commented on September 26, 2024

Selbstverständlich hast du recht (sonst hättest du das sicherlich auch vorgeschlagen wenn das bei subtitle notwendig wäre). Alle Tests sind bestanden.

from biblatex-archaeologie.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.