Anzeige:
Ergebnis 1 bis 9 von 9

Thema: Welches Bibtex?

  1. #1
    Registrierter Benutzer
    Registriert seit
    19.02.2011
    Beiträge
    76

    Welches Bibtex?

    Hallo,
    ich muss die Zitationsweise in meinem Bibtex umstellen. Da ich aber auch schon gelesen hatte, dass es einige bessere(=einfache/mehr optionalere) Pakete gibt, bin ich auch bereit umzusteigen.

    Ich bin aber auch an einige Restriktionen gebunden. Ich arbeite in einer Cloud. Darin dürfen nur tex und pdf files vorhanden sein. Rest wird Serverseitig gelöscht. Daher habe ich mein TeXnicCenter umgestellt und alle notwendigen Dateien ausgelagert. Mein bisheriges Zitieren geschah wie folgt:

    Pakete:
    Code:
    \usepackage{cite}
    \usepackage{harvard}
    \usepackage{filecontents}
    bibtex.tex - Speicherung der Quellen, wie z.B.:
    Code:
    \begin{filecontents*}{\jobname.bib}
    @book{Buchmann,
      title={Einf\"uhrung In Die Kryptographie},
      author={Buchmann, J.},
      isbn={9783642111860},
      series={Springer-Lehrbuch},
      url={http://books.google.de/books?id=bmGIyeec0HIC},
      year={2010},
      publisher={Springer}
    }
    
    @book{Washington,
      title={Elliptic curves: number theory and cryptography},
      author={Washington, L.C.},
      isbn={9781420071467},
      lccn={2008006296},
      series={Discrete Mathematics and Its Applications Series},
      url={http://books.google.de/books?id=loh0mAEACAAJ},
      year={2008},
      publisher={Chapman \& Hall/CRC}
    }
    \end{filecontents*}
    Erstellen des Inhaltsverzeichnisses:
    Code:
    \nocite{*}
    \bibliographystyle{aer} 			
    \bibliography{D:/temp/\jobname}\addcontentsline{toc}{chapter}{Literaturverzeichnis}
    Damit funktioniert es einwandfrei.

    Ich möchte nun folgendes erreichen:

    Durch das Aufrufen von \cite[Optional~Seite/Kapitel]{Quelle} soll im Fließtext (Quelle, Jahr, Optional) erscheinen.
    Das Literaturverzeichnis sollte nach Literatur und Internetquellen getrennt alphabetisch aufsteigend sortiert werden.
    Die Literaturangaben sollen nach den Regeln zum Zitieren in wissenschaftlichen Text dargestellt werden. Da ich nur Fachbücher (ähnlich obiger Quellen) und einige Paper aus dem Internet nutze, genügt es nur hierin zu unterscheiden. Ggf. existiert eine Zeitschrift, aus der ich zitieren kann, aber diese habe ich noch nicht gefunden. D.h. Literaturangaben nur für Fachbücher, Paper und Zeitschriften unterscheiden.

    Kann mir hier jemand helfen und ggf. den notwendigen Quellcode mit einer kurzen Erläuterung posten?

    Viele Grüße und vielen Dank,
    Shalec

  2. #2
    Registrierter Benutzer
    Registriert seit
    09.12.2005
    Beiträge
    1.326
    Quellcode kann ich Dir im Augenblick nicht liefern, aber mit biblatex (und vorzugsweise biber statt bibtex) sollte all das möglich sein. Vielleicht willst Du die Gelegenheit ja nutzen, um Dir das mal näher anzuschauen.

  3. #3
    Registrierter Benutzer
    Registriert seit
    19.02.2011
    Beiträge
    76
    Hallo,
    ich habe mir nun Biblatex angeguckt.. leider wird bei mir keine Literaturdatenbank erzeugt (heißt die *.bib ist leer) oder auch nur das kommando "cite" verwendet.

    Hier ein Minimalbeispiel:

    Code:
    \documentclass[a4paper,ngerman]{scrartcl}
    \usepackage{babel}
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage{csquotes}
    \usepackage[style=authortitle,maxnames=10]{biblatex}
    
    \usepackage{filecontents}
    \begin{filecontents}{sample.bib}
    @ARTICLE{liu:11,
      author = {Shumin Liu and Fang Lu and Xijun Wang and Wenjun Sun and Pingping
    	Chen and Wanru Dong},
      title = {Metabolomic Study of a Rat Fever Model Induced with 2,4-Dinitrophenol
    	and the Therapeutic Effects of a Crude Drug Derived from Coptis chinensis.},
      journal = {Am J Chin Med},
      year = {2011},
      volume = {39},
      pages = {95--109},
      number = {1},
      abstract = {This study... },
      owner = {Jo},
      pii = {S0192415X11008671},
      pmid = {21213401},
      timestamp = {2011.01.10}
    }
    \end{filecontents}
    
    
    
    \bibliography{D:/Temp/sample}
    \begin{document}
    Hier steht ein Beispielartikel~\cite{liu:11}.
    
    \printbibliography
    \end{document}
    Ich verwende das Texniccenter 1.0 stable und das aktuelle MikTex (2.9?).
    Im Texniccenter habe ich das Ausgabeprofil auf PDF-Latex eingestellt und folgende Zeilenmodifikationen vorgenommen:

    Code:
    Argumente, die an den Latex-compiler übergeben werden:
    -synctex=-1 -interaction=nonstopmode --output-directory="D:\temp"  "%pm"
    
    Arugmente an BibTex:
    "D:\temp\%tm"
    
    Argumente an MakeIndex:
    "D:\temp\%tm" -i "D:\temp\%tm".idx -o "%tm".ind -t "%tm".ilg -s Stil.ist
    MakeIndex ist hier allerdings egal. Wichtiger sind die Argumente an den Latex-compiler.
    Meine vorherige Zitationsweise hatte funktioniert, brachte allerdings nicht das geforderte Ergebnis.
    d.h. mit
    \usepackage{cite, harvard}
    und bibliography{D:/temp/\jobname} hatte es geklappt.

    ---
    Durchgearbeitet habe ich folgende Datei:
    ftp://ftp.tex.ac.uk/tex-archive/info...iblatex-de.pdf

    Minimalbeispiel kopiert von:
    http://www.mrunix.de/forums/showthread.php?t=70189
    und modifiziert.

  4. #4
    Registrierter Benutzer
    Registriert seit
    09.12.2005
    Beiträge
    1.326
    Die bib-Datei erzeugst Du ja selbst, die wenn die wirklich leer ist, funktioniert etwas gravierendes nicht. \cite-Anweisungen fallen auch nicht vom Himmel, die musst Du schon an passender Stelle selbst einfügen. Dann wird auch ein Literaturverzeichnis eingefügt. Ein Literaturverzeichnis gibt es nämlich nur, wenn man auch Einträge darin hat. Die Einträge werden als Seiteneffekt von \cite erzeugt. Alternativ kann man mit \nocite Einträge hinzufügen, die nicht zitiert werden bzw. mit \nocite{*} alle Einträge der Datenbank ins Verzeichnis einfügen lassen.

    Statt bibtex sollte man mit biblatex besser biber verwenden. Das wird auch in der Voreinstellung so erwartet. Allerdings muss man das dem Editor meist erst noch beibringen. Siehe dazu http://www.texwelt.de/wissen/fragen/...-meinem-editor.

    Die \bibliography-Anweisung solltest Du übrigens durch:
    Code:
    \addbibresource{sample.bib}
    ersetzen. Siehe auch hierzu die biblatex-Anleitung.

    Wenn man die Umstellung auf biber wie erwähnt vornimmt, erhält man dann auch mit
    Code:
    \documentclass[a4paper,ngerman]{scrartcl}
    \usepackage{babel}
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage{csquotes}
    \usepackage[style=authortitle,maxnames=10]{biblatex}
    
    \usepackage{filecontents}
    \begin{filecontents}{sample.bib}
    @ARTICLE{liu:11,
      author = {Shumin Liu and Fang Lu and Xijun Wang and Wenjun Sun and Pingping
    	Chen and Wanru Dong},
      title = {Metabolomic Study of a Rat Fever Model Induced with 2,4-Dinitrophenol
    	and the Therapeutic Effects of a Crude Drug Derived from Coptis chinensis.},
      journal = {Am J Chin Med},
      year = {2011},
      volume = {39},
      pages = {95--109},
      number = {1},
      abstract = {This study... },
      owner = {Jo},
      pii = {S0192415X11008671},
      pmid = {21213401},
      timestamp = {2011.01.10}
    }
    \end{filecontents}
    
    
    
    \addbibresource{sample.bib}
    \begin{document}
    Hier steht ein Beispielartikel~\cite{liu:11}.
    
    \printbibliography
    \end{document}
    Nach pdflatex + biber + pdflatex:
    Geändert von klops (15-04-2014 um 08:48 Uhr)

  5. #5
    Registrierter Benutzer
    Registriert seit
    19.02.2011
    Beiträge
    76
    Hallo,
    ich hatte mir gestern noch Biber eingerichtet und dennoch klappt es nicht.

    Nun habe ich mir auch zusätzlich das TexnicCenter 2.0 Beta 2 geladen. Auch da klappte das mit Biber nicht. Grund hierfür waren meine Postprozesse, die die Inhalte in den D:\temp\ kopieren und aus dem Arbeitsverzeichnis löschen. Nur Ordner und *.tex, *.cls, *.sty sowie *.pdf bleiben erhalten. Dieser Postprozess hatte auch die PDF "aktualisiert". Die PDF, die das Inhaltsverzeichnis druckt, wurde gegen eine Alte ausgetauscht. Daher ging das nicht.

    Nun muss ich das noch soweit umstellen, dass die Kompilate in D:\temp landen und auch dort gearbeitet wird. Die Ergebnisse sollen nur dann rüber kopiert werden.

    Wie kann man bei Biber die input und output Stelle ändern? Lässt sich "\addbibresource{D/temp/sample.bib}" verwenden?
    Falls ja, muss ich biber nur noch sagen, dass dieser die Dateien in "temp" abzulegen hat.

    Viele Grüße

  6. #6
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Zitat Zitat von Shalec Beitrag anzeigen
    Grund hierfür waren meine Postprozesse, die die Inhalte in den D:\temp\ kopieren und aus dem Arbeitsverzeichnis löschen.
    Da verweise ich mal hierauf:
    "99 times out of a 100 when someone configures tex to write the output
    somewhere non standard people get error messages with one or other of
    the auxiliary programs not finding stuff. It is so much easier just
    not to do that, and to let Tex write stuff where everything expects
    things to be written.... –"
    http://tex.stackexchange.com/questio...t348895_152843


    Lässt sich "\addbibresource{D/temp/sample.bib}" verwenden?
    D:/temp ist der falsche Ordner für eine bib-Datei. Das ist ja keine temporäre Datei, sondern wie deine tex-Datei eine Quelldatei.

  7. #7
    Registrierter Benutzer
    Registriert seit
    19.02.2011
    Beiträge
    76
    Zitat Zitat von u_fischer Beitrag anzeigen
    D:/temp ist der falsche Ordner für eine bib-Datei. Das ist ja keine temporäre Datei, sondern wie deine tex-Datei eine Quelldatei.
    Aber leider ist das eine Anordnung der Cloud. Ich hatte was gelesen, dass die Datei auch im Bibtex-verzeichnis liegen dürfen. Vlt schreibe ich mir eine Batch, die die entsprechenden Dateien dahinkopiert.

    Auf welche Dateien braucht Biber bzw. Biblatex?
    Ich muss das leider so konfigurieren. Alternativ muss ich einen "Off-Cloud"-Ordner erzeugen, in dem das alles gebaut wird, obwohl das ebenfalls "verboten" ist.

    Viele Grüße

  8. #8
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    biber braucht die bib + die bcf-Datei.

    Du könntest die bib-Datei per filecontents in einer tex-Datei "verstecken. Aber
    grundsätzlich scheint mir deine Cloud nicht wirklich geeignet für das Arbeiten mit tex zu sein.

  9. #9
    Registrierter Benutzer
    Registriert seit
    19.02.2011
    Beiträge
    76
    Hinter dem Edit ist mein aktueller Stand zu sehen.
    Zitat Zitat von u_fischer Beitrag anzeigen
    biber braucht die bib + die bcf-Datei.

    Du könntest die bib-Datei per filecontents in einer tex-Datei "verstecken. Aber
    grundsätzlich scheint mir deine Cloud nicht wirklich geeignet für das Arbeiten mit tex zu sein.
    Ich habe nun einen Kompromiss schließen dürfen. Zu Kompilierungszwecken darf ich auf meinem eigenen Rechner arbeiten. Hier funktioniert auch (mit Texniccenter 2) Biber mit Biblatex problemlos. Das alte Literaturverzeichnis durfte nur wegen der Formatierung nicht stehen bleiben, hatte aber problemlos funktioniert in der Cloud.

    Nun muss ich die Literaturdatenbank und die Zitierweise im Text entsprechend umdefinieren.

    Literatur:
    Maximal 5 Autoren, danach et al. (lässt sich leicht durch eine Option einstellen)
    Autoren werden mit Komma untereinander getrennt.
    das &-Zeichen trennt den letzten Autor von dem Rest anstelle eines Kommas.
    Nachname und Vorname werden durch ein Komma getrennt.
    Nachnamen werden ausgeschrieben, Vorname abgekürzt:

    Nachname1, V., Nachname2, V. ... & Nachname5, V.

    im Anschluss folgt das Jahr in Klammern (Jahr)
    Beendet wird dies durch einen Punkt, also (Jahr).

    Titel des Werkes (Punkt)
    Ort: Verlag

    Also im Gesamten:
    Nachname1, V., Nachname2, V. ... & Nachname5, V. (Jahr). Titel des Werkes. Ort: Verlag


    Im Text: Falls Autor im Fließtext genannt wird, erscheint dahinter nur noch (Jahr, Seiten)
    Falls nicht: (Nachname, Jahr, Seiten)

    Wird ein Verweis auf weiterführende Literatur angestellt, so erscheint dies in der Fußnote nach dem APA-Stil.

    [aufgeräumt]

    Auch falls es 3-5 Autoren sind, nach dem ersten \parentcite Aufruf nur noch "(Autor1 et al., Jahr, Seiten)" erzeugen.
    Bei mehr als 5 Autoren direkt diese Notation.

    Vielen Dank für die bereits geleistete Hilfe an dieser Stelle :-)


    Edit:
    Ich habe nun fast alles realisiert bekommen. Eine paar Dinge verbleiben.

    \parencite und \parencite* sind für mich die verbleibenden wichtigen Befehle. Es verbleibt die Änderung an \parencite.
    Die Anzahl der Autoren für Parencite muss zu einer Fallunterscheidung führen: (Pseudocode)
    Code:
    Falls \value{listtotal} < 3 -> schreibe alle Autoren
    Ansonsten Falls \value{listtotal}< 6 -> falls parencitecount=1 -> schreibe alle \value{listtotal} Autoren ansonsten schreibe Autor 1 et al.
    Ansonsten -> schreibe Autor 1 et al.

    Gelöst mit:
    Code:
    \usepackage[
    backend=biber,% 
    style=authoryear-comp,%
    natbib=true,%	
    maxbibnames=5,%Es werden maximal 5 Namen in der Bibliographie ausgegeben
    sorting=nyt,%Name, year, title
    firstinits=true,%Vornamen werden abgekürzt
    uniquename=init,% Einzigartige Namen werden abgekürzt
    isbn=false,%Isbn wird nicht ausgegeben
    doi=false,%doi wird nicht ausgegeben
    clearlang=false,%	macht was mit der Sprache
    maxcitenames=2%in Zitationen erscheinen höchstens zwei Autoren
    ]{biblatex}
    
    \DeclareBibliographyDriver{book}{%
    \printnames{author}%\newunit Autoren
    \space (\printfield{year})%(Jahr).
    \newunit\newblock \printfield{title}%Titel.
    \newunit \printlist{location}%	Ort:
    \newunit\newblock \printlist{publisher}%Verlag
    \finentry}
    
    %%% Nachfolgend erzeugt den Doppelpunkt hinter dem Ort
    \DeclareListFormat{location}{%
    #1:%
    \ifthenelse{\value{listcount}<\value{liststop}} {\addcomma\space} {}}
    
    %%% Ändert "`u.a."' zu "`et al."'
    \DefineBibliographyStrings{ngerman}{andothers={et\addabbrvspace al\adddot}}
    
    %%% Ändert "und" in "&"
    \DefineBibliographyStrings{german}{and={\&}}  
    
    %%% Autorennennung - last-first
    %%% Autorennennung - last-first
    \DeclareNameFormat{author}{%
    \iffirstinits
    {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}
    {\usebibmacro{name:last-first}{#1}{#4}{#5}{#7}}%
    \usebibmacro{name:andothers}}
    Geändert von Shalec (15-04-2014 um 22:02 Uhr) Grund: Teilgelöst

Lesezeichen

Berechtigungen

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