PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bibtopic und TeXnicCenter



bat
01-09-2008, 14:28
Hallo,

ich habe ein Problem mit Bibtopic und TeXnicCenter, zu dem ich hier im Forum zwar schon vieles gefunden habe, was aber meine Frage nicht beantwortet. Wie z. B. diesem Thread (http://www.mrunix.de/forums/showthread.php?t=52575&highlight=bibtopic) zu entnehmen ist, haben auch andere Leute das gleiche Problem, daher an dieser Stelle noch mal die Frage:

Wie genau muss ich bibtex in TeXnicCenter aufrufen, wenn ich das bibtopic-Packet nutze?

Mit

"latex dateiname
bibtex dateiname1
bibtexdateiname2
latex dateiname
latex dateiname"

kann ich leider nicht viel anfangen, da mir nicht bewusst ist, wie und wo ich das in TeXnicCenter eingebe...

Wie genau muss ich die batch-Datei, die das Ganze übernehmen soll, einbinden bzw. aufrufen????

Sorry, aber ich glaube zwar, theoretisch zu verstehen, was in den bisherigen Threads steht, aber die praktische Umsetzung ist mir völlig schleierhaft (und offensichtlich nicht nur mir..)

Besten Dank schon mal im Voraus!

mechanicus
01-09-2008, 14:44
Hallo,

wenn du zwei bib-Dateien hast, dann verfahre wie folgt:
Ich gehe davon aus:

%Literaturverzeichnis
\bibliographystylebuch{alphadin}
\bibliographybuch{LITERATURVERZEICHNIS}
%Internetquellen
\bibliographystyleint{alphadin}
\bibliographyint{INTERNETQUELLEN}
In diesem Fall hast du in deinem Projektordner beim ersten Kompilieren zwei datei:

int.aux
buch.aux
Diese Dateien musst du mit dem TexnicCenter öffnen und annschließend beide Dateien einzeln über:

Ausgabe-Aktives Dokument-bibtex
ausführen.
Anschließend zwei Latex-Durchläufe derin Hauptdatei und fertig ist es.

Gruß
Marco

bat
01-09-2008, 15:29
"\bibliographybuch{LITERATURVERZEICHNIS}" gibt einen Fehler (Undefined control sequence).

Ich habe jetzt zwei Bibliotheken: buch und zeit, die ich jetzt folgendermaßen eingebunden habe:

%bücher
\bibliography{buch}

%zeitschriften
\bibliography{zeit}


Beide erscheinen auch links in der Navigationsleiste von TeXnicCenter, zitieren funktioniert, beim Kompilieren keine Fehlermeldung, dafür Warnungen:

bibtopic Warning: Ignoring \bibliography command (not compatible with bibtopic.sty)


Danach habe ich auch nur *eine* bib-Datei: buch.bib, aber keine Datei "zeit.bib". Öffne ich buch.bib mit TeXnicCenter und folge

Ausgabe-Aktives Dokument-bibtex

erhalte ich den Fehler "couldn't open file".

bat
01-09-2008, 16:14
Jetzt sind beide bib-Dateien da, aber ich erhalte immer noch Warnungen.

Die bibtopic Doku deckt sich mit den Angaben hier im Forum:


To produce a .dvi file, you’ll have to run LATEX and BIBTEX as follows:
$ latex sample
. . . (message from bibtopic.sty to run BibTEX on ‘sample1’ and ‘sample2’ ) . . .
$ bibtex sample1 (Note: Filename without extension! )
$ bibtex sample2
$ latex sample
. . . (message from LATEX: ‘Rerun to get references right’ ) . . .
$ latex sample

Genau diese Meldung


Please (re)run BibTex on the files

dateiname1
dateiname1

and after that rerun LaTeX.


bekomme ich auch.

Aber WIE mach ich das, WIE "rerunne" ich BibTex??????? :confused:

mechanicus
01-09-2008, 16:27
Hallo,

du hast also die Dateien:

buch.aux
zeit.aux.
Jetzt öffne buch.aux mit TexnicCenter und mache

Ausgabe-Aktives Dokument-bibtex
schließe die buch. aux und wiederhole das mit der zeit.aux. Jetzt lasse noch zweimal deine Hauptdateidurchlaufen und fertig.

Gruß
Marco

mechanicus
01-09-2008, 16:47
Hallo,

ich nochmal, ich habe eben ein Minimalbeispiel erstellt. Kopiere es in dein Texniccenter und führer es aus.

\documentclass[oneside,12pt,ngerman,a4paper,bibtotoc]{scrbook}
%%%%%%%%%%%%%
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage{filecontents}
\begin{filecontents}{buch.bib}
@BOOK{BUCH,
author = {SCHREIBER},
title = {DAS BUCH},
publisher = {DIE},
year = {1986},
}
\end{filecontents}
\begin{filecontents*}{zeit.bib}
@BOOK{INT,
author = {VERFASSER},
title = {INTERNET},
publisher = {DU},
year = {1987},
}
\end{filecontents*}
%%%%%%%%%%%%%%%%%%%%%%
\usepackage{multibib}
\newcites{buch}{Literaturverzeichnis}
\newcites{zeit}{Internetquellen}
%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{blindtext}


\begin{document}

\tableofcontents
\chapter{EINS}
\blindtext
nach \citebuch{BUCH} und \citezeit{INT}
%Literaturverzeichnis
\bibliographystylebuch{alphadin}
\bibliographybuch{buch}
%Internetquellen
\bibliographystylezeit{alphadin}
\bibliographyzeit{zeit}
\end{document}
Du erhälts 5 Warnungen, erstmal ignorieren. Nun sind in dem Ordner, in dem die Tex-Datei abgespeichert ist die beiden Dateien:

buch.aux
zeit.aux
angelegt worden. Öffne beide Dateien mit dem Texniccenter und verfahre wie oben.

Gruß
Marco

bat
01-09-2008, 16:55
Hallo & Danke schon mal für die Hilfe!



du hast also die Dateien:

buch.aux
zeit.aux.

Ja, die habe ich.




Jetzt öffne buch.aux mit TexnicCenter und mache

Ausgabe-Aktives Dokument-bibtex
schließe die buch. aux und wiederhole das mit der zeit.aux.

Dabei bekomme ich jeweils die Fehlermeldung:

"I couldn't open file name F:\Verzeichnis\buch.bib.aux" bzw.

"I couldn't open file name F:\Verzeichnis\zeit.bib.aux"




Jetzt lasse noch zweimal deine Hauptdateidurchlaufen und fertig.

Dann habe ich trotzdem immer noch Warnungen, darunter die schon besagte



Please (re)run BibTex on the files

dateiname1
dateiname1

and after that rerun LaTeX.


sofern ich folgenden Code verwende:



\begin{btSect}{buch}
\section*{Bücher}
\btPrintAll
\end{btSect}

\begin{btSect}{zeit}
\section*{Zeitschriften}
\btPrintAll
\end{btSect}


Verwende ich stattdessen nur

\bibliography{buch}
\bibliography{zeit}

erhalte ich zwar diese Warnung nicht mehr, dafür gibt es dann aber auch gar kein Literaturverzeichnis.

Bin ratlos.

Gruß

Beate

mechanicus
01-09-2008, 17:08
Hallo,

ich glaube bei deinen Texniccenter Einstellungen passt was nicht, was hast du unter:

Ausgabe-Ausgabeprofil definieren - LATEX=>"DEINE AUSGABEFORMAT" unter Argumente, die an bibtex übergeben werden sollen zu stehen. Bei mit steht

"%bm"

Gruß

bat
01-09-2008, 17:17
Hallo,

ich glaube bei deinen Texniccenter Einstellungen passt was nicht, was hast du unter:

Ausgabe-Ausgabeprofil definieren - LATEX=>"DEINE AUSGABEFORMAT"

LaTeX => DVI
LaTeX => PDF
LaTeX => PS




unter Argumente, die an bibtex übergeben werden sollen zu stehen. Bei mit steht
"%bm"


Bei mir auch.

mechanicus
01-09-2008, 17:51
Danach habe ich auch nur *eine* bib-Datei: buch.bib, aber keine Datei "zeit.bib". Öffne ich buch.bib mit TeXnicCenter und folge

Ausgabe-Aktives Dokument-bibtex

erhalte ich den Fehler "couldn't open file".
Du Hast die bib.Dateien geöffnet, nicht die .aux-Dateien

bat
01-09-2008, 19:10
Ich glaube, hier hab ich mich falsch ausgedrückt; die bib-Dateien waren ja schon immer da, die aux-Dateien entstehen erst durchs Kompilieren & das hatte anfangs nur bei einer der beiden bibs geklappt. Mittlerweile sind aber beide aux-Dateien da & auch nur diese hatte ich geöffnet...

Allerdings bin ich mir grad nicht mehr so sicher, da nur der Dateiname ("buch"), nicht aber der Typ ("*.aux") angezeigt wird. Ursprünglich sind es die Dateien, die JabRef erstellt (das sind doch bib-Dateien, oder?) und diese habe ich nicht geöffnet, sondern eben die, die erst später von Texniccenter erstellt wurden (dies sollten doch aux-Dateien sein?). Sitze jetzt leider nicht an dem Rechner, mit dem betreffenden Projekt, überprüfe das morgen früh noch mal & gebe Rückmeldung.

So far - vielen Dank!

bat
02-09-2008, 09:34
Also, die von JabRef erzeugten Dateien sind BibTex-Dateien ("buch" und "zeit"); die daraus durch TexnicCenter erstellten Dateien heißen "buch.bib" bzw. "zeit.bib" und sind BAK-Dateien.

Keine aux-Dateien sichtbar. :eek:

Hä??? :confused:

bat
02-09-2008, 11:56
Nochmal: Ich verwende das Package bibtopic, nicht multibib (Ich möchte keine verschiedenen Lit.verzeichnisse, sondern nur eines, welches aber untergliedert ist ("Bücher", "Zeitschriften" etc.), deshalb haut auch das Minimalbsp. von mechanicus nicht hin - die Befehle funktionieren nicht mit bibtopic.

Ich habe jetzt mal ein neues Test-Dokument ("test") angefangen und den Code aus der bibtopic-Doku verwendet:



\documentclass[10pt]{article}
\usepackage{bibtopic}
\begin{document}
\bibliographystyle{alpha}
\section{Testing}
Let’s cite all the books: and
and an article: .

\begin{btSect}{buch}
\section{References from books}
\btPrintCited
\end{btSect}
\begin{btSect}[plain]{zeit}
\section{References from articles}
\btPrintCited
\section{Articles not cited}
\btPrintNotCited
\end{btSect}
\end{document}



Soweit ich es verstehe, wird bei bibtopic die Bibliothek nicht über "\bibliography{name}" eingebunden (daher die Warnungen...), sondern über "\begin{btSect}{name}"; hierzu ist in TexnicCenter besagte etwas umständliche Prozedur erforderlich, die ich bislang nicht verstanden habe.

TexnicCenter erstellt in der Tat zwei aux-Dateien, allerdings nicht "buch.aux", sondern "test1.aux" und "test2.aux" ("test" ist der Dateiname). Wenn ich *diese* mit Latex öffne, Ausgabe-Aktives Dokument-bibtex ausführe und dann zwei Latex-Durchläufe der Hauptdatei durchführe, dann klappt es soweit.

Allerdings frage ich mich, wie ich jetzt die Verweise "reinbekomme".

Ich arbeite mit Projekten, dadurch habe ich in der linken Navigationsleiste die Möglichkeit, mir den Inhalt der angelegten Bibliotheken anzuschauen und von dort aus den Verweis einzufügen. Das geht nun nicht mehr.

Wie also bekomme ich den Verweis auf eine Quelle rein? Muss man das dann wirklich manuell machen? ("\cite{Quelle}")??

bugmenot
28-10-2008, 18:57
Mit Hilfe von dem kleinen Programm FORFILES.EXE (http://www.ss64.com/nt/forfiles.html) kann mann es relativ einfach lösen:

1. Die auf den oben genannten Seite gelinkte Datei herunterladen und in einer geeigneter Ordner legen (zB C:\Program Files\).
2. Eine neue Ausgabeprofile definieren. (Ausgabe >> Ausgabeprofile definieren).
3. Kopiere eine der schon vorhandenen Ausgabeprofilen, zB "LaTeX ==> PDF", in einer neuen; die neue kann mann zB. "LaTeX ==> PDF + bibtopic" nennen.
4. In der neue Profile, unter "BibTeX", die genannte Pfad und Datei mit der kompletten Pfad für forfiles.exe ersetzen
5. Als Argumente für BibTeX, dieses einschreiben (der Pfad zu bibtex.exe muss möglicherweise geändert werden!):
-m%tm*.bbl -c"C:\Program Files\MiKTeX 2.7\miktex\bin\bibtex.exe @FNAME_WITHOUT_EXT"
6. Schliesslich, bei neuen Projekten, sicherstell dass du den Projekteigenschaft "Verwendet BibTeX" gewählt hast.
7. Falls du die Literaturverweise im Navigator haben möchtest, kannst du einfach irgendwo im LaTeX-Datei einen \bibliography{bibtex-datei1, bibtex-datei2, usw}-Kommando einfügen. Dies erzeugt zwar eine Warnung bei der Dokumenterstellung, wird aber von LaTeX bei Nutzung von bibtopic ganz ignoriert, zeigt aber auch für TeXnicCenter die richtige(n) BibTeX-Datei(en) beim speichern.

bat
01-11-2008, 12:38
hallo bugmenot,

vielen dank schon mal für den tipp!!!!


ich werde es mal versuchen & melde mich dann wieder.

ThW
11-11-2008, 01:24
Hi bugmenot,

hätte ich deinen Eintrag früher gefunden, hätte ich viele Stunden gespart. Danke für deine Anleitung. Funktioniert!

Der Fehler, von dem du gesprochen hast, ist folgender?



Die Datei
D:\...(Pfad)...\Praktikumsbericht-P12.bbl
wurde außerhalb von TeXnicCenter geändert. Soll Sie neu geladen werden?


Lässt sich das auch noch irgendwie umgehen? Danke auf jeden Fall schon mal für deine Antwort.

Gruß Thomas