Anzeige:
Ergebnis 1 bis 3 von 3

Thema: Punkt zwischen Volume und Number entfernen.

  1. #1
    Registrierter Benutzer
    Registriert seit
    15.10.2012
    Beiträge
    11

    Punkt zwischen Volume und Number entfernen.

    Hallo Leute.

    Ich kämpfe seit kurzer Zeit mit BibLaTex, und dank etlicher kompetenter Leute im INternet komme ich auch voran, aber zuletzt scheitere ich an meinen Wünschen:

    Mein Biblatex-Literaturverzeichnis sieht jetz fast genau so aus wie es soll, nämlich wie folgt:

    R. D. Near, S. C. Hayden, and M. A. El-Sayed, Thin to Thick, Short to Long:
    Spectral Properties of Gold Nanorods by Theoretical Modeling, The Journal
    of Physical Chemistry C 2013, 117., 18653-18656.

    Allerdings stört mich der Punkt nach der Volume, sowie dessen aufrechte Schrift, ich möchte es so haben:

    R. D. Near, S. C. Hayden, and M. A. El-Sayed, Thin to Thick, Short to Long:
    Spectral Properties of Gold Nanorods by Theoretical Modeling, The Journal
    of Physical Chemistry C 2013, 117, 18653-18656.

    Das ganze wird geregelt durch folgenden Code:

    Code:
    \documentclass[a4paper,12pt, twoside=true, DIV10]{scrartcl}
    \usepackage[style=numeric, firstinits=true]{biblatex}
    \addbibresource{test.bib} 
    \DeclareCiteCommand{\cite}[\mkbibsuperscript]
      {\iffieldundef{prenote}
         {}
         {\BibliographyWarning{Ignoring prenote argument}}%
       \iffieldundef{postnote}
         {}
         {\BibliographyWarning{Ignoring postnote argument}}}
      {\usebibmacro{citeindex}%
       \bibopenbracket\usebibmacro{cite}\bibclosebracket}
      {\supercitedelim}
      {}
    \renewbibmacro{in:}{}
    \DeclareFieldFormat{date}{\bfseries{#1}} 
    \DeclareFieldFormat[article]{number}{}
    \DeclareFieldFormat[article]{title}{#1}
    \renewbibmacro*{journal+issuetitle}{% 
      \usebibmacro{journal}% 
      \setunit*{\addspace}% 
      \iffieldundef{series} 
        {} 
        {\newunit 
         \printfield{series}% 
         \setunit{\addspace}}% 
      \usebibmacro{issue+date}% 
      \setunit{\addcomma\space}% 
      \usebibmacro{volume+number+eid}% 
      \setunit{\addspace}% 
      \usebibmacro{issue}% 
      \newunit} 
    
    \newbibmacro*{issue+date}{% 
        \iffieldundef{issue} 
          {\usebibmacro{date}} 
          {\printfield{issue}% 
           \setunit*{\addspace}% 
           \usebibmacro{date}}% 
      \newunit} 
    
    
    
    
    
    
    \begin{document} 
    
    
    Zitat \cite{Near2013}
    
    \printbibliography
    \end{document}
    Code:
    @Article{Near2013,
      Title                    = {Thin to Thick, Short to Long: Spectral Properties of Gold Nanorods by Theoretical Modeling},
      Author                   = {Near, Rachel D. and Hayden, Steven C. and El-Sayed, Mostafa A.},
      Journal                  = {The Journal of Physical Chemistry C},
      Year                     = {2013},
      Number                   = {36},
      Pages                    = {18653-18656},
      Volume                   = {117},
    
      Doi                      = {10.1021/jp4078344},
      Eprint                   = {http://pubs.acs.org/doi/pdf/10.1021/jp4078344},
      Owner                    = {Fabian},
      Timestamp                = {2014.05.31},
      Url                      = {http://pubs.acs.org/doi/abs/10.1021/jp4078344}
    }
    Das einzige Problem ist der Punkt nach der Volume, der normal Volume und Number voneinander trennt. Da ich letztere allerdings nicht haben möchte, steht da ein Punkt und direkt im Anschluss ein Komma. Ich finde einfach die Stelle nicht, an der dieser eingeführt wird. Allgemein blicke ich nicht ganz durch wo diese "kombinierten" macros definiert sind bzw. wie man sie kombiniert, im standard-File stehen nur die einzelnen Macros.

    Vielen Dank schonmal.

  2. #2
    Registrierter Benutzer Avatar von bobmalaria
    Registriert seit
    28.11.2006
    Ort
    Düsseldorf
    Beiträge
    4.174
    hi,

    biblatex ist wirklich anpassbar aber auch verwinkelt! ich hab auch erstmal ein bisschen suchen müssen.

    mein vorgehen:
    1) im biblatex ordner in den bbx ordner. da sind die stile drin die man mit style= läd.
    2) in der numeric.bbx nach "volume" gesucht. kein ergebnis!
    3) dann schau ich was der stil läd. da sehe ich das als erstes standard.bbx geladen wird und dein numeric stil darauf basiert.
    4) standard.bbx aufgemacht und nach \DeclareBibliographyDriver{article} gesucht, denn diese driver definieren das aussehen konkrekt.
    5) darin findet man "volume" auch erstmal nicht aber "\usebibmacro{journal+issuetitle}%"
    6) dann suche ich in der datei ob dieses makro da definiert wird
    7) in diesem makro finde ich ein weiteres, nämlich "volume+number+eid"
    8) ich suche also nach "volume+number+eid" und finde
    Code:
      \printfield{volume}%
      \setunit*{\adddot}%
      \printfield{number}%
      \setunit{\addcomma\space}%
      \printfield{eid}}
    damit bin ich am ziel. denn in der zweiten zeile wird der punkt mit \setunit*{\adddot}% definiert. also muss ich einfach dieses makro umdefinieren.

    in deinem code hast du sowas schon mal gemacht. beachte das du nicht \newbibmacro verwendest sondern \renewbibmacro. sonst bekommst du eine warnung das der befehl schon definiert ist. das war bei deinem beispiel schon der fall.

    also alles in allem:

    Code:
    \begin{filecontents}{test.bib}
    @Article{Near2013,
      Title                    = {Thin to Thick, Short to Long: Spectral Properties of Gold Nanorods by Theoretical Modeling},
      Author                   = {Near, Rachel D. and Hayden, Steven C. and El-Sayed, Mostafa A.},
      Journal                  = {The Journal of Physical Chemistry C},
      Year                     = {2013},
      Number                   = {36},
      Pages                    = {18653-18656},
      Volume                   = {117},
    
      Doi                      = {10.1021/jp4078344},
      Eprint                   = {http://pubs.acs.org/doi/pdf/10.1021/jp4078344},
      Owner                    = {Fabian},
      Timestamp                = {2014.05.31},
      Url                      = {http://pubs.acs.org/doi/abs/10.1021/jp4078344}
    }
    \end{filecontents}
    
    
    \documentclass[a4paper,12pt, twoside=true, DIV10]{scrartcl}
    \usepackage[style=numeric, firstinits=true,url=false,doi=false,eprint=false,backend=biber]{biblatex}
    \addbibresource{test.bib} 
    \DeclareCiteCommand{\cite}[\mkbibsuperscript]
      {\iffieldundef{prenote}
         {}
         {\BibliographyWarning{Ignoring prenote argument}}%
       \iffieldundef{postnote}
         {}
         {\BibliographyWarning{Ignoring postnote argument}}}
      {\usebibmacro{citeindex}%
       \bibopenbracket\usebibmacro{cite}\bibclosebracket}
      {\supercitedelim}
      {}
    \renewbibmacro{in:}{}
    \DeclareFieldFormat{date}{\bfseries{#1}} 
    \DeclareFieldFormat[article]{number}{}
    \DeclareFieldFormat[article]{title}{#1}
    \DeclareFieldFormat[article]{volume}{\textit{#1}}
    \renewbibmacro*{journal+issuetitle}{% 
      \usebibmacro{journal}% 
      \setunit*{\addspace}% 
      \iffieldundef{series} 
        {} 
        {\newunit 
         \printfield{series}% 
         \setunit{\addspace}}% 
      \usebibmacro{issue+date}% 
      \setunit{\addcomma\space}% 
      \usebibmacro{volume+number+eid}% 
      \setunit{\addspace}% 
      \usebibmacro{issue}% 
      \newunit} 
    
    \renewbibmacro*{issue+date}{% 
        \iffieldundef{issue} 
          {\usebibmacro{date}} 
          {\printfield{issue}% 
           \setunit*{\addspace}% 
           \usebibmacro{date}}% 
      \newunit} 
    
    \renewbibmacro*{volume+number+eid}{%
      \printfield{volume}%
      %\setunit*{\adddot}%
      \printfield{number}%
      \setunit{\addcomma\space}%
      \printfield{eid}}
    
    \begin{document} 
    
    Zitat \cite{Near2013}
    
    \printbibliography
    \end{document}
    Mein Ball ist umgefallen

  3. #3
    Registrierter Benutzer
    Registriert seit
    15.10.2012
    Beiträge
    11
    Vielen, vielen Dank! Au mann, kein Wunder dass ich im .def-File die Makros nicht finde wenn sie in Standard.bbx stehen. Funktioniert bestens! Danke!

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •