PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : quellenverzeichnis als ein einizger block, nicht zeilenweise?



sanchez
23-03-2007, 17:42
Hi,
such mich shcon seit heute morgen halbtot, hoffe mir kann jemand helfen:
Ich entwerfe gerade einen Flyer, der auch über ein Quellenverzeichnis verfügen soll. Da es sich um viele Quellen handelt, würden die schon das ganze A4-Blatt füllen, wenn ich ganz normal mit \bibstyle{plain} arbeiten würde.
Deshalb will ich die Quellen gerne als einen Einzigen Block haben. Also etwa

[1] Manfred Mustermann. Die Leiden eines Newbies. März 2007 [2] Karin Musterfrau. Wie werd ich zum LaTeX-Style-Crack? mrunix.de April 2007 [3] Udo Crackpot. Technik: Der Schlüssel zur Sucht. Juni 2001 [4] Miguel Sanchez. "Ich denke es wird deutlich" 23. März 2007

(Benutzte @manual, da ich manchmal eben nur den Titel habe) Hab mich an einer Kopie des Bibstyles plain probiert, und auch ein wenig mit scrartcl vo KOMA-Script herumprobiert, bin daran aber mehr oder weniger kläglich gescheitert.
Ich fühle mich durch die Experimente nur in dem Glauben bestärkt, dass man im documentstyle herumpfuschen muss.
Irgendwer eine Idee? - Die Bibdatei hat locker 500 Zeilen...hätte ich damit gerechnet, hätte ich die Quellenangaben wohl einfach so eingetippt und diesmal auf BibTeX verzichtet. Vielen Dank schon einmal,
liebe Grüße,
Michi


[falls hier was bei herauskommt...etwas zum besseren finden: bibliographie bibliografie literaturverzeichnis quellenverzeichnis blocktext block keine liste kompakt ohne zeilenumbruch neue zeile]

sofa-surfer
24-03-2007, 17:27
Hallo,

eine richtige Lösung habe ich auch nicht für dich parat (vielleicht kommt da ja noch jemand anderes von den wirklichen Auskennern :D ) Ich kenne mich mit den (La)TeX-Interna auch nicht weiter aus. Soweit ich weiß, wird die bibliography-Umgebung aber als Liste implementiert, so dass es (zumindest mit meinem beschränkten Wissen) nicht so leicht sein wird, deine Wünsche zu realisieren. Beim Stöbern bin ich auf das biblatex-Paket gestoßen. Ich habe es noch nie benutzt und auch nur kurz durch die Doku (ftp://tug.ctan.org/pub/tex-archive/macros/latex/exptl/biblatex/doc/biblatex.pdf) geblättert, kann dir also keine direkte Empfehlung oder Tipps dazu geben. Allerdings habe ich dort einen Codeschnipsel gefunden, der genau das tun soll, was du willst (Seite 70 oben).
So wie es aus dem TeX-Catalogue (http://texcatalogue.sarovar.org/entries/biblatex.html) herauszulesen ist, erfordert das Paket wohl etwas Zeit zum Einarbeiten/Umgewöhnen, denn:


The biblatex package is a complete reimplementation of the bibliographic facilities provided by LaTeX in conjunction with BibTeX. It redesigns the way in which LaTeX interacts with BibTeX at a fairly fundamental level. With biblatex, BibTeX is only used to sort the bibliography and to generate labels. Instead of being implemented in BibTeX's style files, the formatting of the bibliography is entirely controlled by TeX macros. Good working knowledge in LaTeX should be sufficient to design new bibliography and citation styles. There is no need to learn BibTeX's postfix stack language. Just like the bibliography styles, all citation commands may be freely (re)defined.


Aber vielleicht lohnt es sich für dich ja.

Matthias

sanchez
25-03-2007, 01:06
Hi! erstmal vielen dank für den tip...das paket werde ich mir auf jeden fall noch sehr genau ansehen, denn es spricht für sich, dass ich bereits bei meinem zweiten richtigen latex-dokument eine derartige extrawurst will :)
bei den recherchen (zum inhalt des flyers) habe ich mir zu den notierten stichpunkten auch gleich den entsprechenden bezeichner der quelle in der bib-datei notiert. da ich mich recht bald um meine mündliche mathe-nachprüfung kümmern muss und ich den flyer auf jeden fall vorher fertig haben wollte, werd ich wohl erstmal das prinizip hinter bibtex pervertieren, und die verweise im text manuell auflösen. ich glaube damit bin ich erstmal fixer als wenn ich mich in biblatex noch einarbeite.
hierzu habe ich mir eine kopie von strartcl erstellt, und dort den bereich "%%% From File: scrkbib.dtx" modifiziert. vorsicht, bestimmt 1a abführmittel für leute die ahnung haben:



\newcommand*\refname{References}
\newcommand*{\bibpreamble}{\relax}
%\let\bibpreamble\relax
\newcommand{\setbibpreamble}[1]{\def\bibpreamble{#1}}
%\newcommand*\bib@heading{%
% \section*{\refname}%
% \@mkboth{\refname}{\refname}%
%}
%\newdimen\bibindent
%\bibindent=1.5em
\newenvironment{thebibliography}[1]{%
%\bib@heading
%\ifx\bibpreamble\relax\else\ifx\bibpreamble\@empt y\else
% \noindent\bibpreamble\par\nobreak
%\fi\fi
%\list{%
% \@biblabel{\@arabic\c@enumiv}%
%}{%
% \settowidth\labelwidth{\@biblabel{#1}}%
% \leftmargin\labelwidth
% \advance\leftmargin\labelsep
% \@openbib@code
% \usecounter{enumiv}%
% \let\p@enumiv\@empty
% \renewcommand*\theenumiv{\@arabic\c@enumiv}%
%}%
%\sloppy\clubpenalty4000 \widowpenalty4000
\sfcode`\.=\@m
}{%
\def\@noitemerr{%
\@latex@warning{Empty `thebibliography' environment}%
}%
%\endlist
}
\newcommand*\newblock{\hskip .11em\@plus.33em\@minus.07em}
\let\@openbib@code\@empty



dazu habe ich den bibstyle plain kopiert und bearbeitet:



FUNCTION {output.bibitem}
{ newline$
"\noindent\stepcounter{enumiv}\label{" write$
%%% seh hier gerad, \label wohl überflüssig...bin aber zu müde das jetzt rauszufinden, sorry
cite$ write$
"} " write$
"[\arabic{enumiv}] " write$
newline$
""
before.all 'output.state :=
}

FUNCTION {fin.entry}
{ add.period$
write$
%newline$
}

FUNCTION {begin.bib}
{ preamble$ empty$
'skip$
{ preamble$ write$ newline$ }
if$
"\vspace{1mm}\begin{thebibliography}{" longest.label * "}" * write$ newline$
"{\bf Quellen:}" write$
}

(nur die unterschiede, diff mit (g)vim)

Eingebunden habe ich die bibliographie per


\bibliographystyle{compact}
{\tiny\renewcommand{\baselineskip}{1pt}\bibliograp hy{flyer}}


Die Ausgabe habe ich angehängt. An dieser Stelle (auch wenn der thread hier denkbar ungünstig dafür ist) noch die frage: wie bekomme ich den abstand zwischen den zeilen kleiner. funzt offenbar nicht so richtig.
außerdem war ich zu faul meine test-datei noch zu bereinigen, der untere teil der seite ist der "interessante"
man sieht halt, es stehen im text bei den \cite befehlen nur fragezeichen. ich werde deshalb die quellen per \nocite einbinden, am ende schauen, welche nummern bei rauskommen, die bei meinen notizen vermerken und sie halt selbst an die entsprechende stelle tippen. wie gesagt, bibtex vollkommen pervertiert, aber die quellen bleiben zumindest sauber in der bibdatei hinterlegt und müssen nicht auch nochmal geschrieben werden. abgesehen von den modifikationen an den style-files kostet mich das halt wohl 5 minuten oder so, von daher werde ich es dieses eine mal wohl verschmerzen.
lieben gruß und vielen dank nocheinmal für den biblatex tipp,
michi

rais
25-03-2007, 11:59
hierzu habe ich mir eine kopie von strartcl erstellt, und dort den bereich "%%% From File: scrkbib.dtx" modifiziert.um so etwas nicht machen zu müssen, dafür gibt's \renewcommand bzw \renewenvironment


An dieser Stelle (auch wenn der thread hier denkbar ungünstig dafür ist) noch die frage: wie bekomme ich den abstand zwischen den zeilen kleiner. funzt offenbar nicht so richtig.
(..)
man sieht halt, es stehen im text bei den \cite befehlen nur fragezeichen.
vgl mal:


\begin{filecontents}{foolit.bib}
@manual{t1,
author={Manfred Mustermann},
title={Die Leiden eines Newbies},
month={März},
year={2007}
}

@manual{t2,
author={Karin Musterfrau},
title={Wie werd ich zum LaTeX-Style-Crack?},
note={\url{mrunix.de}},
month={April},
year={2007}
}

@manual{t3,
author={Udo Crackpot},
title={Technik: Der Schlüssel zur Sucht},
month={Juni},
year={2001}
}

@manual{t4,
author={Miguel Sanchez},
title={Ich denke es wird deutlich},
year={23. März 2007}
}
\end{filecontents}
\documentclass[ngerman]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{babel,url}
\addto\captionsngerman{\renewcommand\refname{Quell en}}
\makeatletter
%\def\@bibitem#1{\item\if@filesw...
\def\@bibitem#1{%
\stepcounter{\@listctr}\@biblabel{\arabic{\@listct r}}\if@filesw \immediate\write\@auxout
{\string\bibcite{#1}{\the\value{\@listctr}}}\fi\ig norespaces}
\renewcommand*\bib@heading{%

\noindent\hrulefill\par\vspace{0.5ex}
\noindent{\footnotesize\textbf{\refname}}
}
\renewenvironment{thebibliography}[1]{%
\bib@heading%
\ifx\bibpreamble\relax\else\ifx\bibpreamble\@empty \else
\noindent\bibpreamble\par\nobreak
\fi\fi
\list{\@biblabel{\@arabic\c@enumiv}}%
{\settowidth\labelwidth{\@biblabel{#1}}%
% \leftmargin\labelwidth
\leftmargin0pt
% \advance\leftmargin\labelsep
\@openbib@code
\usecounter{enumiv}%
\let\p@enumiv\@empty
\renewcommand*\theenumiv{\@arabic\c@enumiv}}%
\sloppy\clubpenalty4000\widowpenalty4000%
\sfcode`\.=\@m}
{\def\@noitemerr
{\@latex@warning{Empty `thebibliography' environment}}%
\endlist}
\makeatother
\bibliographystyle{plain}
\begin{document}
\nocite{*}
wie \cite{t1} und \cite{t4} zu berichten wissen\dots
\tiny\bibliography{foolit}
\end{document}

sicherlich nicht elegant, dafür kommt's mit unveränderten Dateien (scrartcl.cls, plain.bst) aus.
Wundere Dich aber nicht über die Meldung


LaTeX Warning: Empty `thebibliography' environment on input line 20.
-- schließlich sind die \items rausgekniffen ;)

MfG,

sanchez
25-03-2007, 12:44
*WOOHOOOOO* :)
vielen vieln dank...funktioniert ausgezeichnet! ...nachdem ich bei \usepackage[utf8]{inputenc} "latin1" angegeben hab...aber das liegt wohl nur am editor/os. endlich kanns an den inhalt des flyers gehen...
thx nochmal, genießt das tolle wetter :)
michi