PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MikTex + TexMaker + Biber



taugenix
24-10-2012, 23:56
Hi,
ich habe vor meine Abschlussarbeit mit Latex zu verfassen. Dazu habe ich mir einige Vorlagen im Netz angeschaut und bin auf das Hagenberg package gestoßen, welches das ganze um einiges vereinfachen "SOLLTE". Im Grunde finde ich es auch wunderbar, nur eine Sache stört mich doch sehr. Das Literaturquellenverzeichnis bleibt immer leer. Ich erhalte immer die Warnung:


Package biblatex Warning: No "backend" specified, using Biber backend.
(biblatex) To use BibTeX, load biblatex with
(biblatex) the "backend=bibtex" option.

Hier der quellcode:


\documentclass[bachelor,german]{hgbthesis}
% Zul�ssige Class Options:
% Typ der Arbeit: diplom, master (default), bachelor, praktikum
% Hauptsprache: german (default), english

%%------------------------------------------------------------

\graphicspath{{images/}} % wo liegen die Bilder?
\AddBibFile{literatur.bib} % Angabe der BibTeX-Datei

%%%----------------------------------------------------------
\begin{document}
%%%----------------------------------------------------------

% Eintr�ge f�r ALLE Arbeiten: --------------------------------
\title{Partielle Lösungen zur allgemeinen Problematik}
\author{Peter A.\ Schlaumeier}
\studiengang{Universal Computing}
\studienort{Hagenberg}
%\abgabedatum{2012}{08}{07} % {YYYY}{MM}{DD}

%% f�r Bachelorarbeit und Praktikumsbericht entsprechende Eintr�ge erg�nzen:

%%% zus�tzlich f�r eine Bachelorarbeit: ---------------------
\nummer{XXXXXXXXXX-A} % XX...X = Stud-ID, z.B. 0310238045-A
% (A = 1. Bachelorarbeit)
\semester{Sommersemester 2012}
\gegenstand{Einführung in die Tiefere Problematik 1}
\betreuer{Alois B.~Treuer, Pd.\ Phil.} % oder \betreuerin{..}


\frontmatter
\maketitle
\tableofcontents
%%%----------------------------------------------------------
\mainmatter % Hauptteil (ab hier arab. Seitenzahlen)
%%%----------------------------------------------------------
\chapter{Einleitung}
\label{cha:Einleitung}
\section{Zielsetzung}
...
Übrigens, genau hier am Ende des Einleitungskapitels (und nicht
etwa in der Kurzfassung) ist der richtige Platz, um die
inhaltliche Gliederung der nachfolgenden Arbeit zu beschreiben.
Hier soll dargestellt werden, welche Teile (Kapitel) der Arbeit
welche Funktion haben und wie sie inhaltlich zusammenhängen. Auch
die Inhalte des \emph{Anhangs} -- sofern vorgesehen -- sollten hier
kurz beschrieben werden.

Das geht dann so \cite{Lamport95}.
%%%----------------------------------------------------------


%%%----------------------------------------------------------
\MakeBibliography{Quellenverzeichnis}
%%%----------------------------------------------------------

\end{document}


und der inhalt der literatur.bib:


@book{Lamport95,
author={Lamport, Leslie},
title={Das {LaTeX}-Handbuch},
publisher={Addison-Wesley},
address={Reading, MA},
year={1995},
hyphenation={german}
}


Ich weiss einfach nicht woran es liegen kann. In der Konfiguration habe ich bereits biblatex durch biber ersetzt.

http://imageshack.us/a/img534/7275/screenshotskn.png

was mache ich noch falsch, warum hasst mich latex???

mfg
david

bobmalaria
25-10-2012, 00:31
hi,

in der hgbthesis.cls sollte es einen eintrag wie \RequirePackage{biblatex} oder \usepackage{biblatex} geben. biblatex erwartet das du sowas wie \usepackage[backend=biber]{biblatex} angibst.

allerdings sagt dir die warnung auch das wenn kein backend angegeben ist biber als default gewählt wird.

von daher sollte das eigentlich kein problem sein und das verzeichnis sollte angezeigt werden. zitierst du denn überhaupt irgendwo irgendwas? also steht im code irgendwo sowas wie \cite{schlüssel}

gruss

ps: vorlagen sind manchmal auch von nachteil, gerade wenn man einsteiger ist und deren qualität nicht beurteilen kann.

taugenix
25-10-2012, 01:18
hi,
ps: vorlagen sind manchmal auch von nachteil, gerade wenn man einsteiger ist und deren qualität nicht beurteilen kann.

das kann gut sein,aber ich habe keine zeit mich erst einmal 1 halbes jahr in latex einzuarbeiten. Ich möchte mich eigentlich auf den Inhalt konzentrieren, deswegen ja LATEX.

der debugger sagt mir doch folgendes:


To use BibTeX, load biblatex with
(biblatex) the "backend=bibtex" option.

Wie kann ich nun biblatex mit der backend-option laden? Ist Option gleichbedeutend mit Kommandozeilen-Parameter?
brauche da ein konkretes Bsp. wie man das evtl. per cmd machen würde.
Vielleicht so: biblatex -backend ??? wohl eher nicht, ich verstehe auch nicht, warum es hier wieder um bibtex geht, das hatte ich doch mit biber ersetzt. Wie nutze ich bei Biber die backend -Option?
Wie ihr seht viele Fragen. Aber ich denke, wenn das Lit.verzeichnis-Problem gelöst ist, kann ich direkt loslegen.

edit:Hat jemand ein funktionierendes Beispiel für ein Literaturverzeichnis. Egal ob bibtex oder biber,hauptsache es geht. Suche schon seit Stunden und finde einfach nix funktionierendes

hakaze
25-10-2012, 08:02
Ein Paket zweimal zu laden, um die Optionen zu ändern, ist keine gute Idee. Das führt zu "Option clash" Fehlermeldungen.
Du kannst aber auch bei Paketen, die bereits von der Dokumentenklasse oder anderen Paketen geladen wurden, nachträglich noch Optionen angeben. IN deinem Beispiel sollte das helfen, manuell von biber auf bibtex umzustellen:
\PassOptionsToPackage{backend=bibtex}{biblatex}Pac k die Zeile möglichst weit oben (am besten noch vor \documentclass) in dein Hauptdokument.

Ansonsten schau mal in Doku zu biblatex (texdoc biblatex)! Im Kapitel 4 "Author guide" werden auf 3-4 Seiten anhand eines Beispiel die unterschiedlichen Befehle des traditionellen Ansatz (nur bibtex) im Vergleich zum modernen Ansatz (biblatex + bibtex/biber) beschrieben.

rstuby
25-10-2012, 08:08
Du musst einfach anstatt
\usepackage{biblatex} jetzt \
usepackage[backend=biber]{biblatex} schreiben.
Oder entsprechend RequirePackage, wenn es nicht in der .tex-Datei, sondern in der .cls-Datei steht.
Wenn du das nicht machst, ist es aber auch nicht schlimm, weil ja in der Warnung steht, dass biber sowieso per default verwendet wird! Wenn du bibtex stattessen wolltest, müsstest du es angeben, aber das willst du ja gar nicht.

Dass dein Verzeichnis leer bleibt, muss also an etwas Anderem liegen!

Denkst du auch daran, dass du

biber Dateiname

mit dem Namen deiner Hauptdatei abzüglich .tex-Endung
und nicht etwa

biber literatur.bib

aufrufen musst?

u_fischer
25-10-2012, 09:58
In der Konfiguration habe ich bereits biblatex durch biber ersetzt.

Du solltest nicht bibtex und biblatex verwechseln. biblatex ist das LaTeX-Paket, das mit den beiden möglichen Backends bibtex und biber benutzt werden kann.



Ich erhalte immer die Warnung:

Die Warnung ist harmlos. Sie sagt dir nur, dass biblatex davon ausgeht, dass du biber als Backend benutzen willst, was du ja auch willst (und solltest). Die Warnung soll eigentlich nur die Leute, die schon länger biblatex nutzen, darüber informieren, dass sich der Defaultbackend von bibtex auf biber geändert hat.

Dein Problem ist, dass der biber-Aufruf nicht erfolgreich ist. Entweder, weil du biber gar nicht korrekt aufrufst oder weil es Fehler gibt (den \AddBibFile{literatur.bib}-Befehl finde ich etwas seltsam, aber vielleicht definiert den ja die Vorlage).

Schau mal ob du in deinem Ordner eine aktuelle .blg-Datei findet, die biber-Meldungen enthält.

taugenix
25-10-2012, 10:59
die .blg:


This is BibTeX, Version 0.99dThe top-level auxiliary file: literatur.aux
I found no \citation commands---while reading file literatur.aux
I found no \bibdata command---while reading file literatur.aux
I found no \bibstyle command---while reading file literatur.aux
(There were 3 error messages)


mein biber-aufruf ist einfach "biber %" also ohne dateiendung. Vorher stand an dieser stelle "bibtex %",ebenfalls ohne endung. Vielleicht ist irgendwie meine Kompilier-Reihenfolge falsch? Bekomme selbst bei den einfachsten Bibliographie-Beispielen kein Lit.Verzeichnis. Beim Texmaker hingegen schon. Texmaker benutzt zwar miktex-pdflatex.exe , miktex-makeindex.exe und miktex-bibtex.exe
aber das kann man ja im tex-maker auch so machen. Leider führt das zu nix, Lit. bleibt leer.

Muss ich zuerst die bib-Datei kompilieren und erst dann das Hauptdokument durch latex oder pdflatex jagen???

rstuby
25-10-2012, 11:05
Nein, der biber (oder bibtex)-Aufruf muss immer zwischen erstem und zweitem pdflatex-Aufruf kommen.

Heißt deine Haupt-tex-Datei wirklich "literatur.tex"???
Deren Namen (ohne Endung) musst du bei biber angeben, nicht den der bib-Datei, von der ich mal eher glaube, dass sie literatur.bib heißt!

u_fischer
25-10-2012, 11:12
This is BibTeX, Version 0.99dThe top-level auxiliary file: literatur.aux

Nun, offensichtlich wird bibtex benutzt und nicht biber. Falls du latexmk benutzt, hast du vielleicht dieses Problem:
http://tex.stackexchange.com/questions/8950/using-biber-with-latexmk

Benutze mal nicht "Quick Build", sondern rufe biber explizit auf, da gibt es bestimmt irgendwo einen entsprechenden Menupunkt in TeXmaker.

Festus
25-10-2012, 11:44
Wie ich im übrigen aber auch aus der .cls-Datei entnehme erwartet \MakeBibliography, dass du drei Filter für deine Bibliographie-Einträge setzt: literature, avmedia und online. Die würden dann in drei separaten Quellenverzeichnissen erscheinen. wenn du das nicht willst (sieht in deinem Bsp. so aus) musst du


\MakeBibliography}[nosplit]{Titel}

laden. Ich hab keine Ahnung was passieren würde, wenn da filter-Aufrufe gemacht werden deren Äquivalente in der bib-Datei gar nicht existieren.

taugenix
25-10-2012, 17:29
danke für eure bemühungen, habs jetzt erst einmal aufgegeben mit dem hagenberg-package. Kennt jemand von euch ein gutes Schritt für Schritt Tutorial speziell für Diplom/Bachelor/Master-Arbeit? Alles was ich finde ist total veraltet und funktioniert überhaupt nicht.

nixversteh
25-10-2012, 18:49
Hallo taugenix,

unter Linux Mint Maya 13 64 bit, Kile 2.1 und Texlive 2012 (alles aktuell, nur die neuen Libertine-Pakete nicht geladen) klappt alles wunderbar, sogar Biber ...

Lieben Gruß

Martin

PS.: MikTex (überhaupt Windosen) scheint voller Probleme zu sein, entweder ist Mann/Frau fachlich versiert- oder es empfiehlt sich ein Umstieg auf Linux

u_fischer
25-10-2012, 18:49
Kennt jemand von euch ein gutes Schritt für Schritt Tutorial speziell für Diplom/Bachelor/Master-Arbeit?

Nein. Alle diese "ich-erkläre-alles-Tutorials" und "problemlosen Vorlagen" kranken daran, dass sie schnell zu kompliziert werden: Sie wollen für alle möglichen Varianten funktionieren, und enthalten dann alle möglichen Ordner mit Dateien, die man laden oder auch nicht kann und entsprechende "Wenn-Dann"-Anweisungen. Da verliere sogar ich gelegentlich den Überblick.

Außerdem ist LaTeX selbst ziemlich stabil, aber es gibt doch Entwicklungen (wie biblatex/biber) und daher sind viele Hilfen hier und da einfach veraltet.

Fang einfach mit einem einfachen Dokument an: Klasse scrbook, scrreprt oder memoir. Lade fontenc, inputenc, babel. Und füge Pakete und Optionen dann nach und nach hinzu.

Lilliane
26-10-2012, 00:00
Alles was ich finde ist total veraltet und funktioniert überhaupt nicht.

Auch wenn ich Ulrike eigentlich zustimme, kann ich mich noch gut daran erinnern, wie ich vor meiner ersten Latex-Umsetzung saß und wahnsinnig froh war, eine lauffähige Vorlage zu haben, die zu meinem Diplomarbeits-Thema passte. Das ist schon sooo lange her, da gabs noch nicht mal mr.unix ;)

Vielleicht kann Dir ja die Fachschaft an der Uni weiterhelfen. Wenn Du da nix in Deiner Fachschaft findest, könntest Du mal bei den naturwissenschaftlichen FS nachfragen, z. B. bei den Mathematikern. Da Word sich nach wie vor sehr schwer mit der Formelnummerierung und dem Formelsatz tut, sind die Mathematiker (und artverwandte Disziplinen) oft mit Latex unterwegs.

Viele Grüße

Lilly

TEX-er
26-10-2012, 02:24
Ich habe mir die Dateien mal runtergeladen und mit Deinem Beispielcode getestet. Auch ich bekomme das Literaturverzeichnis (unter Linux mit Kile und nem Makefile) nicht zum Laufen.
Den Befehl \AddBibFile kennt weder die cls- noch die sty-Datei, die eingebunden werden. Mit biblatex kenne ich mich leider gar nicht aus, da ich immer klassisches BibTeX verwendet habe.

Ich würde trotzdem sagen: Da die Dokumentenklasse ja sonst alles gut nach den Vorgaben für so eine Abschlussarbeit erstellt (beispielsweise das Deckblatt etc.), sollte man lieber versuchen, das Zitier-Problem anders zu lösen, als ein komplett neues File zu schreiben.

Ich probiere noch ein wenig herum. Wenn ich eine Lösung finde, bekommst Du sie.

TEX-er
26-10-2012, 02:31
Ging schneller, als ich dachte:


\documentclass[bachelor,german]{hgbthesis}
% Zulässige Class Options:
% Typ der Arbeit: diplom, master (default), bachelor, praktikum
% Hauptsprache: german (default), english

%%------------------------------------------------------------

\usepackage{natbib}

\graphicspath{{images/}} % wo liegen die Bilder?

%%%----------------------------------------------------------
\begin{document}
%%%----------------------------------------------------------

% Einträge für ALLE Arbeiten: --------------------------------
\title{Partielle Lösungen zur allgemeinen Problematik}
\author{Peter A.\ Schlaumeier}
\studiengang{Universal Computing}
\studienort{Hagenberg}
%\abgabedatum{2012}{08}{07} % {YYYY}{MM}{DD}

%% für Bachelorarbeit und Praktikumsbericht entsprechende Eintrüge ergänzen:

%%% zusätzlich für eine Bachelorarbeit: ---------------------
\nummer{XXXXXXXXXX-A} % XX...X = Stud-ID, z.B. 0310238045-A
% (A = 1. Bachelorarbeit)
\semester{Sommersemester 2012}
\gegenstand{Einführung in die Tiefere Problematik 1}
\betreuer{Alois B.~Treuer, Pd.\ Phil.} % oder \betreuerin{..}


\frontmatter
\maketitle
\tableofcontents
%%%----------------------------------------------------------
\mainmatter % Hauptteil (ab hier arab. Seitenzahlen)
%%%----------------------------------------------------------
\chapter{Einleitung}
\label{cha:Einleitung}
\section{Zielsetzung}
...
Übrigens, genau hier am Ende des Einleitungskapitels (und nicht
etwa in der Kurzfassung) ist der richtige Platz, um die
inhaltliche Gliederung der nachfolgenden Arbeit zu beschreiben.
Hier soll dargestellt werden, welche Teile (Kapitel) der Arbeit
welche Funktion haben und wie sie inhaltlich zusammenhängen. Auch
die Inhalte des \emph{Anhangs} -- sofern vorgesehen -- sollten hier
kurz beschrieben werden.

Das geht dann so \cite{lamport95}.
%%%----------------------------------------------------------

\bibliographystyle{dinat}
\bibliography{literatur}

%%%----------------------------------------------------------

%%%----------------------------------------------------------

\end{document}
und in der Datei hgb.sty musst Du aus der Zeile

\RequirePackage[noadjust]{cite} % vermeidet zusätzliches Spacing vor [..]
ein

%\RequirePackage[noadjust]{cite} % vermeidet zusätzliches Spacing vor [..]
machen.

Dann Aufruf:



pdflatex --interaction nonstopmode thesis.tex
bibtex thesis
pdflatex --interaction nonstopmode thesis.tex
pdflatex --interaction nonstopmode thesis.tex


Und schwups, hast Du Deine PDF-Datei mit Quelle.

u_fischer
26-10-2012, 10:22
Ich würde trotzdem sagen: Da die Dokumentenklasse ja sonst alles gut nach den Vorgaben für so eine Abschlussarbeit erstellt (beispielsweise das Deckblatt etc.), sollte man lieber versuchen, das Zitier-Problem anders zu lösen, als ein komplett neues File zu schreiben.

Nun, als jemand der Leuten beim Debuggen ihrer Arbeiten berät, kann ich nur sagen, dass derartige Klassen eine Pest sind.

Das gilt auch hier. Es fängt schon damit an, dass hgbthesis auf book.cls aufbaut, statt auf scrbook oder memoir, und die Schriftgröße vorgibt:


\LoadClass[a4paper,11pt,oneside]{book}

Dann gibt es noch diverse problematische Zeilen in der von hgbthesis.cls geladenen hgb.sty (2010/06/23). Hier eine Auswahl:


\RequirePackage[latin1]{inputenc}

Kodierungseinstellung gehören nicht in ein sty: Ein späteres inputenc mit utf8-Option führt zu einem Option-Clash-Fehler. Wer also mit utf8 arbeiten will, muss rausfinden, wie man den Fehler umgeht.



\RequirePackage[english,german,ngerman]{babel}

% Hauptsprache einstellen (babel):
\ifthenelse{\equal{\hgb@MainLanguage}{german}}%
{\main@language{ngerman}}{}

Der Effekt dieser etwas wirren Deklaration ist, dass im Dokument z.B. "\usepackage[frenchb,ngerman]{babel}" nicht geht, und dass die Option "german" die Sprache "ngerman" einstellt.



\RequirePackage[dvips]{graphicx}
\RequirePackage{psfrag}

Keine so gute Idee mit pdflatex.


\RequirePackage[novbox]{pdfsync}

Veraltet und problematisch.
http://tex.stackexchange.com/questions/4491/what-is-the-status-of-pdfsync.


Derartige Vorlagen sind ok als Fundgrube: Man kann mal sehen, welche Befehle und Optionen vielleicht mal nützlich sein könnte. Man kann auch Diverses davon in das eigene Dokument kopieren. Aber als Ganzes sind sie für Anfänger einfach ungeeignet. Ich brauche vielleicht zwei Stunden, um die halbwegs auf Vordermann zu bringen, ein Anfänger braucht Tage und wird wahrscheinlich immer wieder mit seltsamen Fehlermeldungen gequält.

TEX-er
26-10-2012, 10:57
Ja, kann ich nur zustimmen, sehe ich alles auch so.
Vielleicht hatte ich mich etwas missverständlich ausgedrückt. Mein Anliegen war lediglich, dem Fragesteller möglichst schnell ein lauffähiges Dokument zu verschaffen, damit er mit der inhaltlichen Arbeit an seinem Werk loslegen kann und nicht von der Sorge darum blockiert ist, dass er seine Zeilen nicht in den gewünschten optischen Zustand bekommt.

Festus
26-10-2012, 11:32
Ja, kann ich nur zustimmen, sehe ich alles auch so.
Vielleicht hatte ich mich etwas missverständlich ausgedrückt. Mein Anliegen war lediglich, dem Fragesteller möglichst schnell ein lauffähiges Dokument zu verschaffen, damit er mit der inhaltlichen Arbeit an seinem Werk loslegen kann und nicht von der Sorge darum blockiert ist, dass er seine Zeilen nicht in den gewünschten optischen Zustand bekommt.

Aber das schöne an LaTeX ist ja, dass man diese kosmetischen Änderungen zu jeder Zeit machen kann, ohne dass es einem das ganze Dokument zerhaut. Man kann in einem sehr sparsam eingerichteten Dokument mit vlt. einem halben Dutzend Paketen schon mal fast alles machen. Das heißt, man kann den Inhalt schon mal genau so schreiben wie man will. Wenn man feststellt irgendwas inhaltliches geht nicht, sucht man sich ein Paket dazu. Das hat den Vorteil, dass man von Anfang an lernt welche Pakete was machen, wie man Dokumentationen liest, und wie man sich selbst hilft. Außerdem benutzt man nicht völlig veraltete Pakete (wie die meisten Vorlagen) oder lädt 20000 Pakete schon mal vorsorglich, von denen man 90% gar nicht braucht.

Und um die Formatierung kann man sich nach und nach kümmern, wenn man grad auf Inhalt keinen Bock hat. Auf lange Sicht ist das deutlich besser, weil man gar nicht erst in die Sparte rutscht, irgendwas mit LaTeX zu machen was irgendwie so halbwegs funktioniert und man weiß nie so recht wie und warum.

taugenix
26-10-2012, 22:19
Und schwups, hast Du Deine PDF-Datei mit Quelle.

wow danke,hätte wirklich nicht gedacht, dass das Problem lösbar ist.
Hatte das Hagenberg-Paket bereits verworfen und mich mit einer simpleren Lösung begnügt. Vielleicht sollte ich es doch noch einmal probieren.

zum Thema selber lernen vs. Vorlage: Sehe ich genauso wie ihr, aber: Ich habe wirklich keine Zeit LaTex anständig zu lernen, leider... ausserdem kommt es bei naturwissenschaftlichen Arbeiten nicht auf die Hochglanzpolitur sonder vielmehr auf den Inhalt an. Das einzige was man optisch beachten muss sind die etlichen Layout-Normen und das erledigt das hagenberg-package sehr gut. Im absoluten Notfall ist der Inhalt ausserdem nicht verloren und ich kann es immernoch mit einem "selbstgeschmiedeten" dokument versuchen, auch wenn es dann nicht so schön wird.

Danke nochmal für die Hilfe, werds direkt ausprobieren.

TEX-er
26-10-2012, 22:47
Cool, mach das. Wenns nicht gehen sollte, melde Dich einfach nochmal mit den neuen Fehlermeldungen.