commit 168a7b4208a07f1c2af3c8d089c042206784fbf8 Author: Alfred Krohmer Date: Mon Oct 14 23:19:04 2013 +0200 Bericht Template hinzugefĂŒgt diff --git a/bericht/alphadin.bst b/bericht/alphadin.bst new file mode 100644 index 0000000..8496cac --- /dev/null +++ b/bericht/alphadin.bst @@ -0,0 +1,1665 @@ +%% ALPHADIN.BST Ausgabe [8] 10/10/00 +%% (C) Klaus F. Lorenzen, Hamburg email: lorenzen.marxen@t-online.de +%% ersetzt ALPHADIN.BST Ausgabe [7,1] vom 23/11/99 +%% ersetzt DinAlpha.BST von 1994 +%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +%% ALPHADIN.BST wurde entwickelt aus BibTeX standard bibliography style +%% `alpha'.Mit ALPHADIN.BST werden Literaturverzeichnisse gemaess der deutschen +%% Zitiernorm DIN 1505 Teil 2 formatiert. +%% Analog zu den 4 US standard styles wird ein vollstaendiger Satz von +%% 4 DIN-gerechten bst-style Dateien veroeffentlicht (alphadin.bst, +%% plaindin.bst, unsrtdin.bst, abbrvdin.bst). Die gueltige Version +%% ist am schnellsten aus dem WWW ueber folgende URL zu beziehen +%% http://www.fh-hamburg.de/pers/Lorenzen/bibtex/ +%% Stand: 16/6/99 +%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +%% WAS IST ALPHADIN.BST ? +%% Dieser style produziert "deutsche" Literaturzitate in Literaturverzeichnis- +%% sen gemaess der deutschen Norm DIN 1505, Teil 2 vom Jan. 1984. +%% Die Literaturzitate werden alphabetisch nach Verfassern sortiert +%% und sind durch abgekuerzte Verfasserbuchstaben plus Erscheinungsjahr in +%% eckigen Klammern gekennzeichnet. +%% Es gibt Unterschiede zwischen der US- und der deutschen Zitierkonvention, +%% was die bibliographischen Typen und die verschiedenen Trennzeichen zwischen +%% den Feldern angeht. Daher ist auch keine 100%ige Abbildung der beiden +%% Regelwerke aufeinander moeglich. Dies ist aber immer durch eine achtsame +%% Erfassung beherrschbar! Die vorliegenden DIN-styles versuchen einige +%% bibliographische Beschraenkungen der Originalstyles zu ueberwinden. +%% Es laesst sich in fast allen Faellen problemlos ein Original-bib-file +%% (d.i. die Datenbank, die die bibliographischen Informationen enthaelt) +%% wahlweise nach US-Norm oder deutscher DIN-Norm verarbeiten. +%% [Beispiel: Produzieren Sie mit der XAMPL.bib-Datenbank aus dem Original- +%% paket 2 verschiedene Literaturverzeichnisse.] Zu Gunsten +%% der Allgemeingueltigkeit von bib-files ist bei den Publikationstypen +%% (entry-types) und den bibliographischen Kategorien (fields) in Zweifels- +%% faellen immer die originale US-Bedeutung beibehalten worden. +%% Bei der Erfassung von Literaturquellen in bib-files +%% gelten folglich die in der TEX-Literatur veroeffentlichten Regeln. +%% Kommt es dennoch zu kleineren "Schoenheitsfehlern" im fertig gesetzten +%% output, so koennen diese so gut wie immer durch eine leicht veraenderte +%% Erfassung im bib-inputfile beseitigt werden. Last but not least koennen +%% Sie im output-file < *.bbl > noch letzte Hand zur Korrektur ansetzen. +% +%% UMGANG MIT FEHLERMELDUNGEN +%% Noch nicht alle ueberfluessigen Fehlermeldungen des Original-style sind +%% ausgemerzt. Die meisten Warnmeldungen beruhen auf +%% den andersartigen bibliographischen Regeln nach DIN 1505 und dem damit +%% verbundenen Ermessensspielraum, sind also in Wahrheit keine "Fehler". +%% Dennoch sollten Sie diese Warnungen beachten, um herauszufinden, ob +%% evtl. eine unzulaessige Kombination von Publikationstyp (=entry-type) und +%% "fields" vorgenommen worden ist. Das fuehrt mitunter zu Wasserfallartigen +%% Fehlermeldungen: meistens duerfen Sie das einfach ignorieren. +%% +%% DANKSAGUNG +%% Hartmut Lueddecke, FH Hamburg habe ich fuer viele Verbesserungsvorschlaege +%% und stete Unterstuetzung zu danken. Vielen an dieser Stelle ungenannt +%% bleibenden Anwendern gilt mein Dank, die in den vergangenen Jahren durch +%% ihre Aufmerksamkeit dazu beigetragen haben, Fehler auszumerzen und +%% Verbesserungen vorzunehmen. +%% +%% HINWEIS: es gibt eine Kombination von ALPHADIN.BST mit dem NATBIB-Stil +%% von Patrick W.Daly), womit Literaturverzeichnisse komplett nach +%% DIN 1505 Teil 2 UND Teil 3 formatiert werden koennen. Naeheres +%% per URL http://www.fh-hamburg.de/pers/Lorenzen/bibtex/ +%% +%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +%% Eine ausfuehrliches Internet-Tutorial mit Beispielen ist in Vorbereitung. +%% Fuer den Anfang ist diese Datei schon etwas kommentiert! +%% Kritik, Vorschlaege usw. bitte an : +%% FH Hamburg, Klaus F. Lorenzen, Grindelhof 30, 20146 Hamburg +%% e-mail: lorenzen.marxen@t-online.de +%% 16/6/99 +%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +% version 0.99c for BibTeX versions 0.99c or later, LaTeX2e +% Copyright (C) 1985, all rights reserved. +% Copying of this file is authorized only if either +% (1) you make absolutely no changes to your copy, including name, or +% (2) if you do make changes, you name it something other than +% bstdin.doc, plaindin.bst, unsrtdin.bst, alphadin.bst, and abbrvdin.bst. +% This restriction helps ensure that all standard styles are identical. +%% ==> The file btxbst.doc has the original documentation for style 'alpha'. +%% + +ENTRY + { address %% Verlagsort + author %% persoenlicher Urheber eines Werkes + booktitle %% a) Gesamttitel eines mehrbaendigen Werkes +% %% b) Titel des Sammelwerks, das einzelne selbstaendige +% %% Beitraege mit eigenem Titel enthaelt (->incollection) + chapter %% Kapitel in einem Buch (Monographie) + edition %% Auflagevermerk + editor %% Persoenl.Herausgeber oder Koerperschaftlicher Herausgeber + howpublished %% beliebiger Verlegervermerk: von wem, wo + institution %% Institution, die e.Verlagsfreie Veroeffentlichung betreibt + isbn %% Standardnr fuer Buecher + issn %% - " - : Zeitschriften u. Serien + journal %% Titel einer Zeitschrift + key %% Zusaetzlich vergebener Sortierschluessel, mitunter notwend. + month %% naehere Bestimmung des Erscheinungsjahres (-> macro 's) + note %% freies Eingabefeld fuer zusaetzliche Informationen + number %% Mehrfachbedeutung in Abhaengigkeit vom Eingabetyp + organization %% a) Name der Organisation/des Veranstalters e. Tagung,Konferenz +% %% b) Name einer Firma/Gesellschaft, die ein ->manual herausgab + pages %% Umfangsangaben, meist Seitenzahlen + publisher %% Verlag + school %% Hochschule/Universitaet, die eine Dipl.-Arb./Dissertation veroeff. + series %% Titel e.Reihe, in der ein best. Buchtitel erschienen ist + title %% Titel einer (namentlich gekennzeichneten) Veroeffentlichung + type %% Zusatzfeld z.Kennzeichnung e.besonderen Publikationstyps + volume %% a) Zaehlung bei einem mehrbaendigen Werk (-> book) +% %% b) Jahrgang einer Zeitschrift (-> article + year %% Erscheinungsjahr + } + {} + { label extra.label sort.label } + +INTEGERS { output.state before.all mid.sentence after.sentence after.block } + +%% die folg. BOOLE'sche VAR steuern d. Ausg. ": " nach Urheber-Feldern +%% und ". - " vor ISBN oder Anmerkungen (NOTE) + +INTEGERS { colon.after period.dash } + +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'colon.after := + #5 'period.dash := +} +INTEGERS { zahl lang } + +STRINGS { h s t u v } + +%% neue DIN-Funktion, 16/2/94 + +FUNCTION {output.nonnull} +{ 's := + output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + { write$ } + { output.state colon.after = + { ": " * write$ + newline$ + "\newblock " write$ + } + { output.state period.dash = + { ". -- " * write$ + newline$ + "\newblock " write$ + } + { output.state mid.sentence = + { ", " * write$ } + { write$ + newline$ + "\newblock " write$ + } + if$ + } + if$ + } + if$ + } + if$ + after.block 'output.state := + } + if$ + s +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[" write$ + label write$ + "]{" write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {fin.entry} %%$$$ nach DIN neu 16/2/94 +{ write$ + newline$ +} + +FUNCTION {set.period.dash} %% Wenn ein ". - " die Satzteile trennen soll.! +{ output.state before.all = + 'skip$ + { period.dash 'output.state := } + if$ +} + +%% neu 16/2/94 +%% prueft, ob PAGES, ISBN- oder NOTE-Feld vh. ist und setzt dann ". - " davor. + +FUNCTION {set.period.dash.check} +{ empty$ + 'skip$ + 'set.period.dash + if$ +} + +FUNCTION {set.colon.after} %%$$$ Wenn ein ": " d. Satzteile trennen soll! +{ output.state before.all = + 'skip$ + { colon.after 'output.state := } + if$ +} + +%% neu / alt 17/2/94 Wenn ein " " die Satzteile trennen soll.! +FUNCTION {new.sentence} +{ output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ +} + +%% neu 17/2/94 Wenn ein ", " die Satzteile trennen soll.! +FUNCTION { part.of.sentence } +{ output.state before.all = + 'skip$ + { mid.sentence 'output.state := } + if$ +} + + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} + +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} + +INTEGERS { nameptr namesleft numnames } + +STRINGS { fkt } + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} + +%% neu, setzt Autor/Hrsg. in Kapitaelchen 9/3/94 +FUNCTION { capitalize } + { duplicate$ empty$ + { pop$ "" } + { "\textsc{" swap$ * "}" * } + if$ +} + +%%$$$ DIN-Quellenangabe : spezieller unselbst. Teil ist erschienen "In: " +%% dem bibliogr. selbst. Werk, z.B. Zeitschrift, Buch + +%% 1/4/96 +FUNCTION {article.in.journal} +{ duplicate$ empty$ + { pop$ "" } + { author missing$ + { title missing$ + { emphasize " " * * }%% wenn ein Zs-Heft als ganzes zitiert wird + { emphasize "{In: }" swap$ " " * * } + if$ + } + { emphasize "{In: }" swap$ " " * * } + if$ + } + if$ +} + +%% nach Vorschlag von H.Lueddecke, um Adelspraedikate beim Sortieren +%% nach den(m) Vornamen aufzufuehren. Lo, 2/11/94 +FUNCTION {format.names} +{ 's := + "" 'u := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { + s nameptr "{vv~}{ll}" format.name$ 't :=%% das ergibt DIN-Ansetzung + %% Lue's Vorschlag s nameptr "{ll}" format.name$ 't := + t capitalize 't := + s nameptr "{, ff}" format.name$ 'u := + %% Lue's Vorschlag s nameptr "{, ff}{ vv}" format.name$ 'u := + u text.length$ 'lang := + #1 'zahl := + "" 'v := + { zahl lang < } + { u zahl #1 substring$ "~" = + { v "" = + { u #1 zahl #1 - substring$ 'v := } + 'skip$ + if$ + v u zahl #2 substring$ * "." * 'v := } + 'skip$ + if$ + zahl #1 + 'zahl := } + while$ + v "" = + { u 'v := } + 'skip$ + if$ +%% der string fkt enthaelt " (Hrsg.)", wenn Editorfeld nicht leer ist + t v * fkt * 't := %% Komma nach Nachnamen wird oben erledigt! + %% t enthaelt nun d. formatierten Nnamen, Vnamen + nameptr #1 > + { namesleft #1 > + { " ; " * t * } + { numnames #2 > + { " " * } + 'skip$ + if$ +%% %% n. schindle's hinweis 12/1/96 erweitert + t "\textsc{others}" = t "\textsc{others} (Hrsg.)" = or + { " [u.~a.]" * }%% 13/2/94 +%%%% { "et~al." * } %% Geschmackssache, waehle eins von beiden + { " ; " * t * } + if$ + } + if$ %% Ende der namesleft-Pruefung + } + 't + %% hierdurch wird bei jed. Schleifendurchgang das sich komplet- + %% tierende Zwischen-Namensergebnis wieder auf den stack gelegt + + if$ %% Ende der nameptr-Pruefung + + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ %% Ende von { namesleft #0 > } ganz oben + "" 'fkt := %% fkt wird zurueckgesetzt +} + +%%$$$ geaendert 14/2/94 + +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} + +%%$$$ geaend. 20/2/94 Anpassung an DIN, wonach Autor + Hrsg. zusammen vorkom- +%% men duerfen.!! + +FUNCTION {format.editors} +{ editor empty$ + { author empty$ + { "Weder Verfasser noch Hrsg. in " cite$ * warning$ } + 'skip$ + if$ + } + { author empty$ + { " (Hrsg.)" 'fkt := + editor format.names + } + { " (Hrsg.)" 'fkt := + " ; " * editor format.names * + } + if$ + } + if$ + } + +%% Lo, 12/5/99 neue Funktion fuer proceedings, misc usw. + +FUNCTION { format.editors.organization } +{ organization empty$ + 'skip$ + { type$ "misc" = + { organization } + { " ; " * organization " (Veranst.)" *} + if$ + } + if$ +} + +%%$$$ Sonderfall: Herausgeber bei Typ incollection, 21/2/94 +FUNCTION {format.ed.incoll} +{ editor empty$ + { "" } + { " (Hrsg.)" 'fkt := + editor format.names + } + if$ +} + +FUNCTION {format.title} +{ title empty$ + { "" } + { title } %% Text so wie er dasteht im Feld title + if$ +} + +FUNCTION {n.dashify} +{ 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +%% geaendert 24/2/94 +FUNCTION {format.date} +{ year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + month + } + if$ + } + { month empty$ %% b. Buechern nur Jahr, ohne Monat ausgeb. im Impressum + 'year + { month " " * year * } + if$ + } + if$ +} + +%% +%%$$$ neue Fkt., 16/2/94 u. 14/3/94 das sog. Impressum +FUNCTION {format.address.publisher.year} +{ publisher empty$ + { address empty$ + { year empty$ + { "" } + { year } + if$ + } + { "Es gibt einen Verlagsort, aber keinen Verlag in " cite$ * warning$ + address ", " * format.date * + } + if$ + } + { address empty$ + { year empty$ + { "Es gibt nur eine Verlagsangabe in " cite$ * warning$ + publisher + } + { publisher ", " * format.date * } + if$ + } + { year empty$ + { address " : " * publisher * } + { address " : " * publisher * ", " * format.date * } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.btitle} +{ title emphasize +} + + +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ * * +} + +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} + +%% neu 8/3/94 in dieser Funkt. steckt im volume empty-Teil noch ein bug, der +%% aber ignoriert werden kann; das Ergebnis ist ok. +FUNCTION {format.btitle.vol} +{ number empty$ + { series empty$ + { volume empty$ + { title emphasize } + { title emphasize ". Bd." * volume tie.or.space.connect } + if$ + } + { volume empty$ + { title emphasize }%% ein Buch, das zusaetzl. SERIES=Reihentitel besitzt + %% jetzt kommt d. Fall des mehrbaendigen Werkes mit Gesamttitel=SERIES + %% Zaehlung=VOLUME und Bandtitel=TITLE; + { series emphasize ". Bd." * volume tie.or.space.connect + ": " * "{\emph{" * title * "}}" * } + if$ + } + if$%% series-test + } + { title emphasize }%% wenn number ex., dann immer title-Feld + if$%% Ende number-test +} + +%%$$$ neu 16/2/94 +%% Serien- / Reihentitel werden im Feld series gespeichert. Weist die +%% Serie eine Zaehlung der Einzeltitel auf, gibt man entweder nach DIN alles +%% in das Feld series so ein: ---> TITEL DER SERIE NR. (der Vorlage) <--- +%% z. B. SERIES= { Mensch und Computer 12 }. +%% [ Die Nummer der Vorlage darf auch durch " ; " abgesetzt werden. ] +%% oder: +%% man gibt die Zaehlung in das Feld NUMBER ein, z.B. NUMBER = {12}. +%% Achtung!! +%% Bei mehrbaendigen Werken steht d. Gesamttitel im Feld SERIES und die +%% Bandzaehlung im Feld VOLUME; NUMBER darf dann nicht besetzt sein! +%% Anderenfalls liegt ein Erfassungsfehler vor, da sich Reihe u. mehrbd. +%% Werk gegenseitig ausschliessen. + +FUNCTION {format.series.number.din} +{ volume empty$ + { number empty$ + { series empty$ + { "" }%% Ausstieg mit Nullstring + { "(" series * ")" * } %% d. Seriennr koennte auch gleich hier + %% im SERIES-Feld miterfasst werden + if$ + } + { series empty$ + { "(" number tie.or.space.connect ")" * + "there's a number but no series in " cite$ * warning$ + } + { "(" series * number tie.or.space.connect ")" * } + if$ + } + if$ + } + { series empty$ + { "" } + { type$ "proceedings" = %% Sonderfall, es darf VOLUME und NUMBER ex. ! + { number empty$ + { "(" series * ")" * } + { "(" series * number tie.or.space.connect ")" * } + if$ + } + { "" }%% Ausstieg mit Nullstring, s. Kommentar + if$ + }%% bei gezaehlten Reihen MUSS die Reihennr. im Feld NUMBER stehen! + if$ %% wenn also d. Feld VOLUME nicht leer ist, dann liegt ausser bei + %% Typ PROCEEDINGS falsche + } %% Erfassung vor und es erfolgt d. Ausstieg mit d. Nullstring! + if$ +} + +%% seltener Fall bei MISC: Ausgabe einer Serie; die Nummer der Serie muss +%% in SERIES miterfasst werden 16/6/99 + +FUNCTION {format.misc.series} +{ series empty$ + { "" } + { "(" series * ")" * } + if$ +} + + +%%$$$ 16/2/94 +%% Auflagenvermerke gibt man komplett, einschliesslich Abkuerzungen in +%% das Feld edition ein: ---> EDITION= { 3., erw. und verb. Aufl. } +%% oder fremdsprachlich: EDITION= { 2nd edition } + +FUNCTION {format.edition} +{ edition empty$ + { "" } + { edition } + if$ +} + +%%$$$ neu, 18/3/94 +FUNCTION { format.isbn.issn } +{ isbn empty$ + { issn empty$ + { "" } + { "ISSN" issn n.dashify tie.or.space.connect } + if$ + } + { "ISBN" isbn n.dashify tie.or.space.connect } + if$ +} + +%%$$$ geaendert, 21/2/94 gibt Seitenzahl bei BOOK-Typ und verwandten T. aus +FUNCTION {format.pages.book} +{ pages empty$ + { "" } + { "" pages n.dashify tie.or.space.connect " S" *} %% 17/12/95 + if$ +} + +%%$$$ alle anderen Seitenang. zB. Zeitschrft., INBOOK usw. a la Orig., 9/3/94 +FUNCTION {format.pages} +{ pages empty$ + { "" } + { "S." pages n.dashify tie.or.space.connect } + if$ +} + +%% Angaben v. Jahrgang, Jahr, Heftnr., Seiten bei Artikel-Typ +%% 14/3/94, 26/2/97 + +FUNCTION {format.vol.year.num.pages} +{ volume field.or.null + year empty$ + { "Es gibt einen Jahrgang, aber kein Jahr in " cite$ * warning$ } + { " (" year * ")" * * } + if$ + month empty$ + 'skip$ + { ", " month * * } + if$ + number empty$ + 'skip$ + { ", Nr. " number * * } + if$ + pages empty$%% Lo, 26/2/97 + 'skip$ + { ", " format.pages * *}%% + if$ + +%% pages empty$%% das war die Fass. Nov. 96, die auch ging +%% 'skip$ +%% { duplicate$ empty$ +%% { pop$ format.pages }%% da pages leer, wird nur "" auf stack gelegt +%% { ", " format.pages * *} +%% if$ +%% } +%% if$ + +} + +%% geaendert 21/2/94 +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "Kapitel " } + { type } + if$ + chapter tie.or.space.connect + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +%%$$$ geaendert 21/2/94 +FUNCTION {format.in.ed.booktitle.din} +{ booktitle empty$ + { "" } + { editor empty$ + { volume empty$ + { "{In: }" booktitle emphasize * }%% n. Belieben fettes In: + { "{In: }" booktitle emphasize * %% - " - + " Bd." volume tie.or.space.connect * + } + if$ + } + { volume empty$ + { "{In: }" format.ed.incoll * ": " * booktitle emphasize * } + { "{In: }" format.ed.incoll * ": " * booktitle emphasize * + " Bd." volume tie.or.space.connect * + } + if$ + } + if$ + } + if$ +} + +%% geaendert 1/3/94 +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type + } + if$ +} + +%% geaendert 23/2/94 i.Orig. wird zuerst die number, dann der type getestet +FUNCTION {format.tr.number.din} +{ type empty$ + { number empty$ + { " -- Forschungsbericht" } %% bei Minimalangaben besser ohne "."! + { "(" number tie.or.space.connect "). -- Forschungsbericht" * } + if$ + } + { number empty$ + { " -- " type * } %% bei Minimalangaben besser ohne "."! + { "(" number tie.or.space.connect "). -- " * type * } + if$ + } + if$ +} + + +FUNCTION {format.article.crossref} +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { "{In: }{\em " journal * "\/}" * }%% + if$ + } + { "{In: }" key * }%% + if$ + "{\cite{" * crossref * "}" * "}" * ", " * format.pages * +%% " (siehe \cite{" * crossref * "}" * "), " * format.pages * +} + +%%geaendert 7/3/94 und noch einmal nach Lueddecke, s.o. +FUNCTION {format.crossref.editor} +%vorher,Lue { editor #1 "{vv~}{ll}" format.name$ " (Hrsg.)" * + { editor #1 "{ll}" format.name$ " (Hrsg.)" * + editor num.names$ duplicate$ + #2 > + { pop$ " [u.~a.]" * } +%% { pop$ " et~al." * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { " [u.~a.]" } +%% { " et~al." * } + { " ; " * editor #2 "{vv~}{ll}" format.name$ * " (Hrsg.)" * } + if$ + } + if$ + } + if$ +} + + +FUNCTION {format.book.crossref} +{ volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + "{\texttt{siehe}} " +%% "(siehe " + } + { ". -- Bd." volume tie.or.space.connect + " von " * + } + if$ + editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { series empty$ + { "need editor, key, or series for " cite$ * " to crossref " * + crossref * warning$ + "" * + } + { "" * }%% dadurch kommt nach der Bandzaehl. gleich das label 2/6/99 +%% { "{\emph{" * series * "}} {\texttt{siehe}}" * } + if$ + } + { key * } + if$ + } + { "" * }%% nach der Bandzaehlung kommt gleich das label; Lo 2/6/99 +%% { format.crossref.editor * } + if$ + "{\cite{" * crossref * "}" * "}" * +%% "{\cite{" * crossref * "}" * "}" * %%"), " * format.pages * +} + +FUNCTION {format.incoll.inproc.crossref} +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { booktitle empty$ + { "need editor, key, or booktitle for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { "{In: }{\emph " booktitle * "}" * }%% fettes In: n. Belieben + if$ + } + { "{In: }" }%% 26/5/99 +%% { "{In: }" key * } + if$ + } +%% { "{In: }{\em " booktitle * "\/}" * }%% + { "{In: }" }%% Lo, 10/2/99 es sieht der reine Bezug (Referenz) besser aus! + if$ +%% " (siehe \cite{" * crossref * "}" * "), " * format.pages * + "{\cite{" * crossref * "}" * "}" * ", " * format.pages *%% das fette label, Lo 23/2/99 +%% alte Vers. bis 27/2/97 " (siehe \cite{" * crossref * "}" * ")" * +} + +%%geaendert +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + set.colon.after + format.title "title" output.check + crossref missing$ + { journal article.in.journal output.nonnull % 26/2/97 + new.sentence + format.vol.year.num.pages output + } + { format.article.crossref output.nonnull } + if$ + note set.period.dash.check + note output + issn set.period.dash.check + format.isbn.issn output + fin.entry +} + +%%$$$ geaendert, 20/2/94 +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors format.editors output.nonnull } + if$ + set.colon.after + crossref missing$ + { format.btitle.vol "title" output.check } + { format.btitle "title" output.check } + if$ + format.edition "edition" output.check + format.address.publisher.year "publisher" output.check + new.sentence + crossref missing$ + { format.series.number.din output + pages set.period.dash.check%% 19/5/99 wie bei adinat.bst + format.pages.book output + } + { format.book.crossref output.nonnull + pages set.period.dash.check + format.pages.book output + } + if$ + note set.period.dash.check + note output + isbn set.period.dash.check + format.isbn.issn output + fin.entry +} + +%% geaendert 23/2/94 +FUNCTION {inbook} +{ output.bibitem +%% unselbst. Teile eines Buches werden am Anf. genannt, dann d selbst. Quelle + chapter empty$ + { "Es fehlen die Kapitelangaben in " cite$ * warning$ } + { type empty$ + { "Kap. " }%% d.i. die Standardvorgabe + { type }%% wenn man keine bes. Typform angeben will, koennte ein kl. +%% Zwischenraum gewaehlt werden, z.B. " \, " + if$ + chapter tie.or.space.connect " {In: }" * * %% n. Belieben fettes In: + } + if$ + +%% -------- jetzt kommt der bibliogr. selbst. Teil + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + } + if$ + set.colon.after + format.btitle.vol "title" output.check + crossref missing$ + { format.edition output + format.address.publisher.year "publisher" output.check + new.sentence + format.series.number.din output +%% vorher note ... + part.of.sentence + format.pages "pages" output.check + note set.period.dash.check + note output + } + { format.book.crossref output.nonnull + note set.period.dash.check + note output + } + if$ + isbn set.period.dash.check + format.isbn.issn output + fin.entry +} + +%% geaenderte Seitenzahlausgabe, wenn crossref-Feld benutzt wird, 27/2/97 +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + set.colon.after + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle.din "booktitle" output.check + format.edition output + format.address.publisher.year "publisher" output.check + new.sentence + format.series.number.din output + note set.period.dash.check + note output + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + part.of.sentence + format.chapter.pages "pages" output.check + } + { format.incoll.inproc.crossref output.nonnull + note set.period.dash.check + note output + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + } + if$ + fin.entry +} + +%% geaendert 22/2/94, 15/11/96 (Hinweis v. Alin Shindun, Uni Siegen) +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + set.colon.after + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle.din "booktitle" output.check + address empty$ + { organization new.sentence.checka + organization output + part.of.sentence + format.address.publisher.year output + } + { format.address.publisher.year "publisher" output.check } + if$ + new.sentence + series empty$ %%neu nach Hinweis v. Alin Shindun, 15/11/96 + 'skip$ + { format.series.number.din output } + if$ + note set.period.dash.check + note output + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + part.of.sentence + format.pages output + } + { format.incoll.inproc.crossref output.nonnull + note set.period.dash.check + note output + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + } + if$ + fin.entry +} + +FUNCTION {conference} { inproceedings }%% nach Patashnik, wg US-Kompatibilitaet + +%% geaendert, 11/6/99 +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization empty$ + { title empty$ + 'skip$ + {format.btitle "title" output.check } + if$ + } + { organization output.nonnull + set.colon.after + format.btitle "title" output.check + } + if$ + } + { format.authors output.nonnull + set.colon.after + format.btitle "title" output.check + } + if$ + format.edition "edition" output.check + author empty$ + { organization empty$ + { address output + part.of.sentence + } + 'skip$ + if$ + } + { address ": " * organization * output + part.of.sentence + } + if$ + format.date output + pages set.period.dash.check + format.pages.book output + note set.period.dash.check + note output + fin.entry +} + +%% MASTERSTHESIS ersetzt zugleich PHDTHESIS !! KFL, 17/2/94 +%% Ausgabe-Standard ist "Diplomarbeit", fuer andere Abschlussarbeiten +%% bei der Erfassung TYPE="anderer Typ" eingeben. +%% z.B. TYPE={Dissertation}, TYPE={Diss.}, TYPE={Habil.}, TYPE={Magisterarb.} +%% +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + set.colon.after + format.btitle "title" output.check + address output + part.of.sentence + school "school" output.check + part.of.sentence + "Diplomarbeit" format.thesis.type output.nonnull + part.of.sentence + format.date "year" output.check +%% pages new.sentence.checka + pages set.period.dash.check + format.pages.book output + note set.period.dash.check + note output + fin.entry +} + +FUNCTION {phdthesis} %% {mastersthesis}% ist identisch bis auf Standardwert, s.o. +{ output.bibitem + format.authors "author" output.check + set.colon.after + format.btitle "title" output.check + address output + part.of.sentence + school "school" output.check + part.of.sentence + "Diss." format.thesis.type output.nonnull % koennte auch `Dissertation' sein + part.of.sentence + format.date "year" output.check + pages set.period.dash.check + format.pages.book output + note set.period.dash.check + note output + fin.entry +} + +%% hiermit werden u.a. Normen erfasst +FUNCTION {misc} +{ output.bibitem + note empty$ + { title empty$ + { "" } + { format.authors format.editors output.nonnull + format.btitle output + howpublished output + format.date output + } + if$ + } + { note duplicate$ #1 #4 substring$ "Norm" = + { output new.sentence + format.date output + format.title output + } + { pop$ "" + author empty$ + { editor empty$ + { organization empty$ + { 'skip$ } + { format.editors.organization output.nonnull + set.colon.after } + if$ + } + { format.editors format.editors.organization output.nonnull + set.colon.after } + if$ + } + { format.authors format.editors output.nonnull + set.colon.after } + if$ + format.btitle output + howpublished output + format.date output + new.sentence + format.misc.series output%% neu 16/6/99 + note set.period.dash.check + note output + } + if$ + } + if$ + fin.entry +} + +FUNCTION {booklet} {misc}%% booklet ist nach dt. Vorgehensweise oft ueberfluessig + +%% geaendert 21/5/99 +FUNCTION {proceedings} +{ output.bibitem + editor empty$ + { organization empty$ + { "" } + { organization " (Veranst.)" * output } + if$ + } + { format.editors format.editors.organization output.nonnull } + if$ + set.colon.after + format.btitle "title" output.check + volume empty$ + { "" output.nonnull } + { "{\textnormal{Bd.}}" volume tie.or.space.connect emphasize "volume" output.check } + if$ + format.address.publisher.year "publisher" output.check + new.sentence + format.series.number.din output.nonnull + pages set.period.dash.check + format.pages.book output + note set.period.dash.check + note output + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + fin.entry +} + +%% geaendert 23/2/94 auch fuer Firmenschriften u."a. zu benutzen +FUNCTION {techreport} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors format.editors output.nonnull } + if$ + set.colon.after + format.title "title" output.check + institution new.sentence.checka + institution empty$ + 'skip$ + { " / " institution * output.nonnull } + if$ + format.address.publisher.year output + number new.sentence.checka + format.tr.number.din "number" output.check +%% new.sentence + pages set.period.dash.check + format.pages.book output + note "note" output.check + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + fin.entry +} + +FUNCTION {unpublished} {misc}%% author, title, note muessen sein! howpublished +%% %% entfaellt natuerlich +FUNCTION {default.type} { misc } + +MACRO {jan} {"Januar"} + +MACRO {feb} {"Februar"} + +MACRO {mar} {"M{\^^b a}rz"} +%% nach Bernd Raichle, Febr. 1999 + +MACRO {apr} {"April"} + +MACRO {mai} {"Mai"} + +MACRO {may} {"Mai"} + +MACRO {jun} {"Juni"} + +MACRO {jul} {"Juli"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {okt} {"Oktober"} + +MACRO {oct} {"Oktober"} + +MACRO {nov} {"November"} + +MACRO {dez} {"Dezember"} + +MACRO {dec} {"Dezember"} + +%% stillgelegte Beispiele fuer den Gebrauch von Kuerzeln (hier Zs-Titel). + +%%MACRO {acmcs} {"ACM Computing Surveys"} + +%%MACRO {acta} {"Acta Informatica"} + +%%MACRO {cacm} {"Communications of the ACM"} + +%%MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +%%MACRO {ibmsj} {"IBM Systems Journal"} + +%%MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +%%MACRO {ieeetc} {"IEEE Transactions on Computers"} + +%%MACRO {ieeetcad} +%% {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +%%MACRO {ipl} {"Information Processing Letters"} + +%%MACRO {jacm} {"Journal of the ACM"} + +READ + +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} + +INTEGERS { et.al.char.used } + +FUNCTION {initialize.et.al.char.used} +{ #0 'et.al.char.used := +} + +EXECUTE {initialize.et.al.char.used} + +FUNCTION {format.lab.names} +{ 's := + s num.names$ 'numnames := + numnames #1 > + { numnames #4 > + { #3 'namesleft := } + { numnames 'namesleft := } + if$ + #1 'nameptr := + "" + { namesleft #0 > } + { nameptr numnames = + { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" = +%% { "\," * %% kein besonderes Zeichen fuer "others" i. label + { "{\etalchar{+}}" * %% ein plus-Zeichen (+) fuer "others"! + #1 'et.al.char.used := + } +%% { s nameptr "{v{}}{l{}}" format.name$ * } + { s nameptr "{l{}}" format.name$ * } + if$ + } +%% { s nameptr "{v{}}{l{}}" format.name$ * } + { s nameptr "{l{}}" format.name$ * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ + numnames #4 > +%% { "\," * %% s. Bemerkung oben + { "{\etalchar{+}}" * + #1 'et.al.char.used := + } + 'skip$ + if$ + } +%% { s #1 "{v{}}{l{}}" format.name$ + { s #1 "{l{}}" format.name$ + duplicate$ text.length$ #2 < + { pop$ s #1 "{ll}" format.name$ #3 text.prefix$ } %% vgl. Anmerkung! + 'skip$ + if$ + } + if$ +} +%% Anmerkung, Lo 14/12/95: +%% wenn man in der letzten label-Bearbeitung #4 statt #3 setzt, dann werden +%% auch Umlaute oder á an 3. Stelle im Namen korrekt in das label genommen. +%% Tip: Aendere diese Zahl nur, wenn in einer Lit.-Liste der Umlautsonderfall +%% stoerend auffaellt. + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + { key #3 text.prefix$ } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + { key #3 text.prefix$ } + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.key.organization.label} +{ author empty$ + { key empty$ + { organization empty$ + { cite$ #1 #3 substring$ } + { "The " #4 organization chop.word #3 text.prefix$ } + if$ + } + { key #3 text.prefix$ } + if$ + } + { author format.lab.names } + if$ +} +%% neu 19/5/99 damit eigene labels fuer Konferenzen erzeugt werden koennen, +%% darf man zusaetzlich auch ein key-Feld eingeben. Das produziert +%% dann vorrangig das label. +FUNCTION {editor.key.organization.label} +{ editor empty$ + { key empty$ + { organization empty$ + { cite$ #1 #3 substring$ } + { "The " #4 organization chop.word organization } %% Lo, 26/1/98 +%% { "The " #4 organization chop.word #3 text.prefix$ } + if$ + } + { key #5 text.prefix$ }%% man kann Laenge des key einstellen + if$ + } + { key empty$%% wenn key vh., dann macht er das label! Lo,18/5/99 + { editor format.lab.names } + { key #5 text.prefix$ } + if$ + } + if$ +} + +FUNCTION {calc.label} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.organization.label + { type$ "manual" = + 'author.key.organization.label + 'author.key.label + if$ + } + if$ + } + if$ + duplicate$ + year field.or.null purify$ #-1 #2 substring$ + * + 'label := + year field.or.null purify$ #-1 #4 substring$ + * + sortify 'sort.label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { " " * } + 'skip$ + if$ +% s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := +% +% Zeile geaendert, damit die Namenszusaetze wie von, de usw nach deutscher +% Norm richtig einsortiert werden. 27.10.94 Lueddecke +% + s nameptr "{ll{ }}{ ff{ }}{ vv{ }}{ jj{ }}" format.name$ 't := + nameptr numnames = t "others" = and + { "[u.~a.]" * } + %% { "et al" * }% Geschmackssache + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + "A " #2 + "An " #3 + "Der " #4 + "Die " #4 + "Das " #4 + "Ein " #4 + "Eine " #5 + "The " #4 t chop.word + chop.word + chop.word + chop.word + chop.word + chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.organization.sort} +{ author empty$ + { organization empty$ + { key empty$ + { "to sort, need author, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {editor.organization.sort} +{ editor empty$ + { organization empty$ + { key empty$ + { "to sort, need editor, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { editor sort.format.names } + if$ +} + +FUNCTION {presort} +{ calc.label + sort.label + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.organization.sort + { type$ "manual" = + 'author.organization.sort + 'author.sort + if$ + } + if$ + } + if$ + * + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} + +SORT + +STRINGS { longest.label last.sort.label next.extra } + +INTEGERS { longest.label.width last.extra.num } + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #0 int.to.chr$ 'last.sort.label := + "" 'next.extra := + #0 'longest.label.width := + #0 'last.extra.num := +} + +FUNCTION {forward.pass} +{ last.sort.label sort.label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + sort.label 'last.sort.label := + } + if$ +} + +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + label extra.label * 'label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ + extra.label 'next.extra := +} + +EXECUTE {initialize.longest.label} + +ITERATE {forward.pass} + +REVERSE {reverse.pass} + +FUNCTION {begin.bib}%%lt. Original wiederhergestellt 4/1/96 +{ et.al.char.used + { "\newcommand{\etalchar}[1]{$^{#1}$}" write$ newline$ } + 'skip$ + if$ + preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} + +%% Ende von ALPHADIN.BST KFL, 23/11/99 diff --git a/bericht/bericht.pdf b/bericht/bericht.pdf new file mode 100644 index 0000000..c891802 Binary files /dev/null and b/bericht/bericht.pdf differ diff --git a/bericht/bericht.tex b/bericht/bericht.tex new file mode 100644 index 0000000..537aa6d --- /dev/null +++ b/bericht/bericht.tex @@ -0,0 +1,12 @@ +\documentclass[german,plainarticle,utf8]{zihpub} + +\author{Patrick Schöps, Jörg Thalheim, Alfred Krohmer} +\title{LCTP – Praktikum Wintersemester 2013 / 2014} + +\begin{document} + +\section{Hardwareaufbau} + +Lorem ipsum un so + +\end{document} diff --git a/bericht/plaindin.bst b/bericht/plaindin.bst new file mode 100644 index 0000000..e8c199e --- /dev/null +++ b/bericht/plaindin.bst @@ -0,0 +1,1493 @@ +%% PLAINDIN.BST Ausgabe [8] vom 10/10/00 +%% (C) Klaus F. Lorenzen, Hamburg email: lorenzen.marxen@t-online.de +%% ersetzt PLAINDIN.BST Ausgabe [7] 19/6/99 +%% ersetzt DINPLAIN.BST von 28/3/94 +%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +%% PLAINDIN.BST wurde entwickelt aus BibTeX standard bibliography style +%% `plain'.Mit PLAINDIN.BST werden Literaturverzeichnisse gemaess der deutschen +%% Zitiernorm DIN 1505 Teil 2 formatiert. +%% Analog zu den 4 US standard styles wird ein vollstaendiger Satz von +%% 4 DIN-gerechten bst-style Dateien veroeffentlicht (alphadin.bst, +%% plaindin.bst, unsrtdin.bst, abbrvdin.bst). Die gueltige Version +%% ist am schnellsten aus dem WWW ueber folgende URL zu beziehen +%% http://www.fh-hamburg.de/pers/Lorenzen/bibtex/ +%% Stand: 10/10/00 +%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +%% WAS IST PLAINDIN.BST ? +%% Dieser style produziert Literaturzitate in Literaturverzeichnissen +%% gemaess der deutschen Norm DIN 1505, Teil 2 vom Jan. 1984. +%% Die Literaturzitate werden alphabetisch nach Verfassern sortiert +%% und fortlaufend in eckigen Klammern gezaehlt. +%% Es gibt Unterschiede zwischen der US- und der deutschen Zitierkonvention, +%% was die bibliographischen Typen und die verschiedenen Trennzeichen zwischen +%% den Feldern angeht. Daher ist auch keine 100%ige Abbildung der beiden +%% Regelwerke aufeinander moeglich. Dies ist aber immer durch eine achtsame +%% Erfassung zu beherrschen! Die vorliegenden DIN-styles versuchen einige +%% bibliographische Beschraenkungen der Originalstyles zu ueberwinden. +%% Es laesst sich in fast allen Faellen problemlos ein Original-bib-file +%% (d.i. die Datenbank, die die bibliographischen Informationen enthaelt) +%% wahlweise nach US-Norm oder deutscher DIN-Norm verarbeiten. +%% [Beispiel: Produzieren Sie mit der XAMPL.bib-Datenbank aus dem Original- +%% paket 2 verschiedene Literaturverzeichnisse.] Zu Gunsten +%% der Allgemeingueltigkeit von bib-files ist bei den Publikationstypen +%% (entry-types) und den bibliographischen Kategorien (fields) in Zweifels- +%% faellen immer (ja, mit endlichen Ausnahmen) die originale US-Bedeutung +%% beibehalten worden. Bei der Erfassung von Literaturquellen in bib-files +%% gelten folglich die in der TEX-Literatur veroeffentlichten Regeln. +%% Kommt es dennoch zu kleineren "Schoenheitsfehlern" im fertig gesetzten +%% output, so koennen diese so gut wie immer durch eine leicht veraenderte +%% Erfassung im bib-inputfile beseitigt werden. Last but not least koennen +%% Sie im output-file < *.bbl > noch letzte Hand zur Korrektur ansetzen. +% +%% UMGANG MIT FEHLERMELDUNGEN +%% Noch nicht alle ueberfluessigen Fehlermeldungen des Original-style sind +%% ausgemerzt. Die meisten Warnmeldungen beruhen auf +%% den andersartigen bibliographischen Regeln nach DIN 1505 und dem damit +%% verbundenen Ermessensspielraum, sind also in Wahrheit keine "Fehler". +%% Dennoch sollten Sie diese Warnungen beachten, um heraus zu finden, ob +%% evtl. eine unzulaessige Kombination von Publikationstyp (=entry-type) und +%% "fields" vorgenommen worden ist. Das fuehrt mitunter zu Wasserfallartigen +%% Fehlermeldungen: meistens duerfen Sie das einfach ignorieren. +%% +%% DANKSAGUNG +%% Hartmut Lueddecke, FH Hamburg habe ich fuer viele Verbesserungsvorschlaege +%% und stete Unterstuetzung zu danken. Vielen an dieser Stelle ungenannt +%% bleibenden Anwendern gilt mein Dank, die in den vergangenen Jahren durch +%% ihre Aufmerksamkeit dazu beigetragen haben, Fehler auszumerzen und +%% Verbesserungen vorzunehmen. +%% +%% HINWEIS: es gibt eine Kombination von ALPHADIN.BST mit dem NATBIB-Stil +%% von Patrick W.Daly), womit Literaturverzeichnisse komplett nach +%% DIN 1505 Teil 2 UND Teil 3 formatiert werden koennen. Naeheres +%% per URL http://www.fh-hamburg.de/pers/Lorenzen/bibtex/ +%% +%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +%% Eine ausfuehrliches Internet-Tutorial mit Beispielen ist in Vorbereitung. +%% Fuer den Anfang ist diese Datei schon etwas kommentiert! +%% Kritik, Vorschlaege usw. bitte an : +%% FH Hamburg, Klaus F. Lorenzen, Grindelhof 30, 20146 Hamburg +%% e-mail: lorenzen.marxen@t-online.de +%% 16/6/99 +%% ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +% version 0.99c for BibTeX versions 0.99c or later, LaTeX2e +% Copyright (C) 1985, all rights reserved. +% Copying of this file is authorized only if either +% (1) you make absolutely no changes to your copy, including name, or +% (2) if you do make changes, you name it something other than +% bstdin.doc, plaindin.bst, unsrtdin.bst, alphadin.bst, and abbrvdin.bst. +% This restriction helps ensure that all standard styles are identical. +%% ==> The file btxbst.doc has the original documentation for style 'alpha'. +%% KFL, 15/1/96 +%% + +ENTRY + { address %% Verlagsort + author %% persoenlicher Urheber eines Werkes + booktitle %% a) Gesamttitel eines mehrbaendigen Werkes +% %% b) Titel des Sammelwerks, das einzelne selbstaendige +% %% Beitraege mit eigenem Titel enthaelt (->incollection) + chapter %% Kapitel in einem Buch (Monographie) + edition %% Auflagevermerk + editor %% Persoenl.Herausgeber oder Koerperschaftlicher Herausgeber + howpublished %% beliebiger Verlegervermerk: von wem, wo + institution %% Institution, die e.Verlagsfreie Veroeffentlichung betreibt + isbn %% Standardnr fuer Buecher + issn %% - " - : Zeitschriften u. Serien + journal %% Titel einer Zeitschrift + key %% Zusaetzlich vergebener Sortierschluessel, mitunter notwend. + month %% naehere Bestimmung des Erscheinungsjahres (-> macro 's) + note %% freies Eingabefeld fuer zusaetzliche Informationen + number %% Mehrfachbedeutung in Abhaengigkeit vom Eingabetyp + organization %% a) Name der Organisation/des Organisators e. Tagung,Konferenz +% %% b) Name einer Firma/Gesellschaft, die ein ->manual herausgab + pages %% Umfangsangaben, meist Seitenzahlen + publisher %% Verlag + school %% Hochschule/Universitaet, die eine Dipl.-Arb./Dissertation veroeff. + series %% Titel e.Reihe, in der ein best. Buchtitel erschienen ist + title %% Titel einer (namentlich gekennzeichneten) Veroeffentlichung + type %% Zusatzfeld z.Kennzeichnung e.besonderen Publikationstyps + volume %% a) Zaehlung bei einem mehrbaendigen Werk (-> book) +% %% b) Jahrgang einer Zeitschrift (-> article + year %% Erscheinungsjahr + } + {} + { label extra.label sort.label } + +INTEGERS { output.state before.all mid.sentence after.sentence after.block } + +%% die folg. BOOLE'sche VAR steuern d. Ausg. ": " nach Urheber-Feldern +%% und ". - " vor ISBN oder Anmerkungen (NOTE) + +INTEGERS { colon.after period.dash } + +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'colon.after := + #5 'period.dash := +} +INTEGERS { zahl lang } + +STRINGS { h s t u v } + +%% neue DIN-Funktion, 16/2/94 + +FUNCTION {output.nonnull} +{ 's := + output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + { write$ } + { output.state colon.after = + { ": " * write$ + newline$ + "\newblock " write$ + } + { output.state period.dash = + { ". -- " * write$ + newline$ + "\newblock " write$ + } + { output.state mid.sentence = + { ", " * write$ } + { write$ + newline$ + "\newblock " write$ + } + if$ + } + if$ + } + if$ + } + if$ + after.block 'output.state := + } + if$ + s +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[" write$ + label write$ + "]{" write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {fin.entry} %%$$$ nach DIN neu 16/2/94 +{ write$ + newline$ +} + +FUNCTION {set.period.dash} %% Wenn ein ". - " die Satzteile trennen soll.! +{ output.state before.all = + 'skip$ + { period.dash 'output.state := } + if$ +} + +%% neu 16/2/94 +%% prueft, ob PAGES, ISBN- oder NOTE-Feld vh. ist und setzt dann ". - " davor. + +FUNCTION {set.period.dash.check} +{ empty$ + 'skip$ + 'set.period.dash + if$ +} + +FUNCTION {set.colon.after} %%$$$ Wenn ein ": " d. Satzteile trennen soll! +{ output.state before.all = + 'skip$ + { colon.after 'output.state := } + if$ +} + +%% neu / alt 17/2/94 Wenn ein " " die Satzteile trennen soll.! +FUNCTION {new.sentence} +{ output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ +} + +%% neu 17/2/94 Wenn ein ", " die Satzteile trennen soll.! +FUNCTION { part.of.sentence } +{ output.state before.all = + 'skip$ + { mid.sentence 'output.state := } + if$ +} + + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} + +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} + +INTEGERS { nameptr namesleft numnames } + +STRINGS { fkt } + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} + +%% neu, setzt Autor/Hrsg. in Kapitaelchen 9/3/94 +FUNCTION { capitalize } + { duplicate$ empty$ + { pop$ "" } + { "\textsc{" swap$ * "}" * } + if$ +} + +%%$$$ DIN-Quellenangabe : spezieller unselbst. Teil ist erschienen "In: " +%% dem bibliogr. selbst. Werk, z.B. Zeitschrift, Buch + +%% 1/4/96 +FUNCTION {article.in.journal} +{ duplicate$ empty$ + { pop$ "" } + { author missing$ + { title missing$ + { emphasize " " * * }%% wenn ein Zs-Heft als ganzes zitiert wird + { emphasize "{In: }" swap$ " " * * } + if$ + } + { emphasize "{In: }" swap$ " " * * } + if$ + } + if$ +} + +%% nach Vorschlag von H.Lueddecke, um Adelspraedikate beim Sortieren +%% nach den(m) Vornamen aufzufuehren. Lo, 2/11/94 +FUNCTION {format.names} +{ 's := + "" 'u := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { + %vorher, Lue s nameptr "{vv~}{ll}" format.name$ 't := + s nameptr "{ll}" format.name$ 't := + t capitalize 't := + %vorher,Lue s nameptr "{, ff}" format.name$ 'u := + s nameptr "{, ff}{ vv}" format.name$ 'u := + u text.length$ 'lang := + #1 'zahl := + "" 'v := + { zahl lang < } + { u zahl #1 substring$ "~" = + { v "" = + { u #1 zahl #1 - substring$ 'v := } + 'skip$ + if$ + v u zahl #2 substring$ * "." * 'v := } + 'skip$ + if$ + zahl #1 + 'zahl := } + while$ + v "" = + { u 'v := } + 'skip$ + if$ +%% der string fkt enthaelt " (Hrsg.)", wenn Editorfeld nicht leer ist + t v * fkt * 't := %% Komma nach Nachnamen wird oben erledigt! + %% t enthaelt nun d. formatierten Nnamen, Vnamen + nameptr #1 > + { namesleft #1 > + { " ; " * t * } + { numnames #2 > + { " " * } + 'skip$ + if$ +%% %% n. schindle's hinweis 12/1/96 erweitert + t "\textsc{others}" = t "\textsc{others} (Hrsg.)" = or + { " [u.~a.]" * }%% 13/2/94 +%%%% { "et~al." * } %% Geschmackssache, waehle eins von beiden + { " ; " * t * } + if$ + } + if$ %% Ende der namesleft-Pruefung + } + 't + %% hierdurch wird bei jed. Schleifendurchgang das sich komplet- + %% tierende Zwischen-Namensergebnis wieder auf den stack gelegt + + if$ %% Ende der nameptr-Pruefung + + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ %% Ende von { namesleft #0 > } ganz oben + "" 'fkt := %% fkt wird zurueckgesetzt +} + +%%$$$ geaendert 14/2/94 + +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} + +%%$$$ geaend. 20/2/94 Anpassung an DIN, wonach Autor + Hrsg. zusammen vorkom- +%% men duerfen.!! + +FUNCTION {format.editors} +{ editor empty$ + { author empty$ + { "Weder Verfasser noch Hrsg. in " cite$ * warning$ } + 'skip$ + if$ + } + { author empty$ + { " (Hrsg.)" 'fkt := + editor format.names + } + { " (Hrsg.)" 'fkt := + " ; " * editor format.names * + } + if$ + } + if$ + } + +%% Lo, 12/5/99 neue Funktion fuer proceedings, misc usw. + +FUNCTION { format.editors.organization } +{ organization empty$ + 'skip$ + { type$ "misc" = + { organization } + { " ; " * organization " (Veranst.)" *} + if$ + } + if$ +} + +%%$$$ Sonderfall: Herausgeber bei Typ incollection, 21/2/94 +FUNCTION {format.ed.incoll} +{ editor empty$ + { "" } + { " (Hrsg.)" 'fkt := + editor format.names + } + if$ +} + +FUNCTION {format.title} +{ title empty$ + { "" } + { title } %% Text so wie er dasteht im Feld title + if$ +} + +FUNCTION {n.dashify} +{ 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +%% geaendert 24/2/94 +FUNCTION {format.date} +{ year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + month + } + if$ + } + { month empty$ %% b. Buechern nur Jahr, ohne Monat ausgeb. im Impressum + 'year + { month " " * year * } + if$ + } + if$ +} + +%% +%%$$$ neue Fkt., 16/2/94 u. 14/3/94 das sog. Impressum +FUNCTION {format.address.publisher.year} +{ publisher empty$ + { address empty$ + { year empty$ + { "" } + { year } + if$ + } + { "Es gibt einen Verlagsort, aber keinen Verlag in " cite$ * warning$ + address ", " * format.date * + } + if$ + } + { address empty$ + { year empty$ + { "Es gibt nur eine Verlagsangabe in " cite$ * warning$ + publisher + } + { publisher ", " * format.date * } + if$ + } + { year empty$ + { address " : " * publisher * } + { address " : " * publisher * ", " * format.date * } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.btitle} +{ title emphasize +} + + +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ * * +} + +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} + +%% neu 8/3/94 in dieser Funkt. steckt im volume empty-Teil noch ein bug, der +%% aber ignoriert werden kann; das Ergebnis ist ok. +FUNCTION {format.btitle.vol} +{ number empty$ + { series empty$ + { volume empty$ + { title emphasize } + { title emphasize ". Bd." * volume tie.or.space.connect } + if$ + } + { volume empty$ + { title emphasize }%% ein Buch, das zusaetzl. SERIES=Reihentitel besitzt + %% jetzt kommt d. Fall des mehrbaendigen Werkes mit Gesamttitel=SERIES + %% Zaehlung=VOLUME und Bandtitel=TITLE; + { series emphasize ". Bd." * volume tie.or.space.connect + ": " * "{\emph{" * title * "}}" * } + if$ + } + if$%% series-test + } + { title emphasize }%% wenn number ex., dann immer title-Feld + if$%% Ende number-test +} + +%%$$$ neu 16/2/94 +%% Serien- / Reihentitel werden im Feld series gespeichert. Weist die +%% Serie eine Zaehlung der Einzeltitel auf, gibt man entweder nach DIN alles +%% in das Feld series so ein: ---> TITEL DER SERIE NR. (der Vorlage) <--- +%% z. B. SERIES= { Mensch und Computer 12 }. +%% [ Die Nummer der Vorlage darf auch durch " ; " abgesetzt werden. ] +%% oder: +%% man gibt die Zaehlung in das Feld NUMBER ein, z.B. NUMBER = {12}. +%% Achtung!! +%% Bei mehrbaendigen Werken steht d. Gesamttitel im Feld SERIES und die +%% Bandzaehlung im Feld VOLUME; NUMBER darf dann nicht besetzt sein! +%% Anderenfalls liegt ein Erfassungsfehler vor, da sich Reihe u. mehrbd. +%% Werk gegenseitig ausschliessen. + +FUNCTION {format.series.number.din} +{ volume empty$ + { number empty$ + { series empty$ + { "" }%% Ausstieg mit Nullstring + { "(" series * ")" * } %% d. Seriennr koennte auch gleich hier + %% im SERIES-Feld miterfasst werden + if$ + } + { series empty$ + { "(" number tie.or.space.connect ")" * + "there's a number but no series in " cite$ * warning$ + } + { "(" series * number tie.or.space.connect ")" * } + if$ + } + if$ + } + { series empty$ + { "" } + { type$ "proceedings" = %% Sonderfall, es darf VOLUME und NUMBER ex. ! + { number empty$ + { "(" series * ")" * } + { "(" series * number tie.or.space.connect ")" * } + if$ + } + { "" }%% Ausstieg mit Nullstring, s. Kommentar + if$ + }%% bei gezaehlten Reihen MUSS die Reihennr. im Feld NUMBER stehen! + if$ %% wenn also d. Feld VOLUME nicht leer ist, dann liegt ausser bei + %% Typ PROCEEDINGS falsche + } %% Erfassung vor und es erfolgt d. Ausstieg mit d. Nullstring! + if$ +} + +%% seltener Fall bei MISC: Ausgabe einer Serie; die Nummer der Serie muss +%% in SERIES miterfasst werden 16/6/99 + +FUNCTION {format.misc.series} +{ series empty$ + { "" } + { "(" series * ")" * } + if$ +} + + +%%$$$ 16/2/94 +%% Auflagenvermerke gibt man komplett, einschliesslich Abkuerzungen in +%% das Feld edition ein: ---> EDITION= { 3., erw. und verb. Aufl. } +%% oder fremdsprachlich: EDITION= { 2nd edition } + +FUNCTION {format.edition} +{ edition empty$ + { "" } + { edition } + if$ +} + +%%$$$ neu, 18/3/94 +FUNCTION { format.isbn.issn } +{ isbn empty$ + { issn empty$ + { "" } + { "ISSN" issn n.dashify tie.or.space.connect } + if$ + } + { "ISBN" isbn n.dashify tie.or.space.connect } + if$ +} + +%%$$$ geaendert, 21/2/94 gibt Seitenzahl bei BOOK-Typ und verwandten T. aus +FUNCTION {format.pages.book} +{ pages empty$ + { "" } + { "" pages n.dashify tie.or.space.connect " S" *} %% 17/12/95 + if$ +} + +%%$$$ alle anderen Seitenang. zB. Zeitschrft., INBOOK usw. a la Orig., 9/3/94 +FUNCTION {format.pages} +{ pages empty$ + { "" } + { "S." pages n.dashify tie.or.space.connect } + if$ +} + +%% Angaben v. Jahrgang, Jahr, Heftnr., Seiten bei Artikel-Typ +%% 14/3/94, 26/2/97 + +FUNCTION {format.vol.year.num.pages} +{ volume field.or.null + year empty$ + { "Es gibt einen Jahrgang, aber kein Jahr in " cite$ * warning$ } + { " (" year * ")" * * } + if$ + month empty$ + 'skip$ + { ", " month * * } + if$ + number empty$ + 'skip$ + { ", Nr. " number * * } + if$ + pages empty$%% Lo, 26/2/97 + 'skip$ + { ", " format.pages * *}%% + if$ + +%% pages empty$%% das war die Fass. Nov. 96, die auch ging +%% 'skip$ +%% { duplicate$ empty$ +%% { pop$ format.pages }%% da pages leer, wird nur "" auf stack gelegt +%% { ", " format.pages * *} +%% if$ +%% } +%% if$ + +} + +%% geaendert 21/2/94 +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "Kapitel " } + { type } + if$ + chapter tie.or.space.connect + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +%%$$$ geaendert 21/2/94 +FUNCTION {format.in.ed.booktitle.din} +{ booktitle empty$ + { "" } + { editor empty$ + { volume empty$ + { "{In: }" booktitle emphasize * }%% n. Belieben fettes In: + { "{In: }" booktitle emphasize * %% - " - + " Bd." volume tie.or.space.connect * + } + if$ + } + { volume empty$ + { "{In: }" format.ed.incoll * ": " * booktitle emphasize * } + { "{In: }" format.ed.incoll * ": " * booktitle emphasize * + " Bd." volume tie.or.space.connect * + } + if$ + } + if$ + } + if$ +} + +%% geaendert 1/3/94 +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type + } + if$ +} + +%% geaendert 23/2/94 i.Orig. wird zuerst die number, dann der type getestet +FUNCTION {format.tr.number.din} +{ type empty$ + { number empty$ + { " -- Forschungsbericht" } %% bei Minimalangaben besser ohne "."! + { "(" number tie.or.space.connect "). -- Forschungsbericht" * } + if$ + } + { number empty$ + { " -- " type * } %% bei Minimalangaben besser ohne "."! + { "(" number tie.or.space.connect "). -- " * type * } + if$ + } + if$ +} + + +FUNCTION {format.article.crossref} +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { "{In: }{\em " journal * "\/}" * }%% + if$ + } + { "{In: }" key * }%% + if$ + "{\cite{" * crossref * "}" * "}" * ", " * format.pages * +%% " (siehe \cite{" * crossref * "}" * "), " * format.pages * +} + +%%geaendert 7/3/94 und noch einmal nach Lueddecke, s.o. +FUNCTION {format.crossref.editor} +%vorher,Lue { editor #1 "{vv~}{ll}" format.name$ " (Hrsg.)" * + { editor #1 "{ll}" format.name$ " (Hrsg.)" * + editor num.names$ duplicate$ + #2 > + { pop$ " [u.~a.]" * } +%% { pop$ " et~al." * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { " [u.~a.]" } +%% { " et~al." * } + { " ; " * editor #2 "{vv~}{ll}" format.name$ * " (Hrsg.)" * } + if$ + } + if$ + } + if$ +} + + +FUNCTION {format.book.crossref} +{ volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + "{\texttt{siehe}} " +%% "(siehe " + } + { ". -- Bd." volume tie.or.space.connect + " von " * + } + if$ + editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { series empty$ + { "need editor, key, or series for " cite$ * " to crossref " * + crossref * warning$ + "" * + } + { "" * }%% dadurch kommt nach der Bandzaehl. gleich das label 2/6/99 +%% { "{\emph{" * series * "}} {\texttt{siehe}}" * } + if$ + } + { key * } + if$ + } + { "" * }%% nach der Bandzaehlung kommt gleich das label; Lo 2/6/99 +%% { format.crossref.editor * } + if$ + "{\cite{" * crossref * "}" * "}" * +%% "{\cite{" * crossref * "}" * "}" * %%"), " * format.pages * +} + +FUNCTION {format.incoll.inproc.crossref} +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { booktitle empty$ + { "need editor, key, or booktitle for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { "{In: }{\emph " booktitle * "}" * }%% fettes In: n. Belieben + if$ + } + { "{In: }" }%% 26/5/99 +%% { "{In: }" key * } + if$ + } +%% { "{In: }{\em " booktitle * "\/}" * }%% + { "{In: }" }%% Lo, 10/2/99 es sieht der reine Bezug (Referenz) besser aus! + if$ +%% " (siehe \cite{" * crossref * "}" * "), " * format.pages * + "{\cite{" * crossref * "}" * "}" * ", " * format.pages *%% das fette label, Lo 23/2/99 +%% alte Vers. bis 27/2/97 " (siehe \cite{" * crossref * "}" * ")" * +} + +%%geaendert +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + set.colon.after + format.title "title" output.check + crossref missing$ + { journal article.in.journal output.nonnull % 26/2/97 + new.sentence + format.vol.year.num.pages output + } + { format.article.crossref output.nonnull } + if$ + note set.period.dash.check + note output + issn set.period.dash.check + format.isbn.issn output + fin.entry +} + +%%$$$ geaendert, 20/2/94 +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors format.editors output.nonnull } + if$ + set.colon.after + crossref missing$ + { format.btitle.vol "title" output.check } + { format.btitle "title" output.check } + if$ + format.edition "edition" output.check + format.address.publisher.year "publisher" output.check + new.sentence + crossref missing$ + { format.series.number.din output + pages set.period.dash.check%% 19/5/99 wie bei adinat.bst + format.pages.book output + } + { format.book.crossref output.nonnull + pages set.period.dash.check + format.pages.book output + } + if$ + note set.period.dash.check + note output + isbn set.period.dash.check + format.isbn.issn output + fin.entry +} + +%% geaendert 23/2/94 +FUNCTION {inbook} +{ output.bibitem +%% unselbst. Teile eines Buches werden am Anf. genannt, dann d selbst. Quelle + chapter empty$ + { "Es fehlen die Kapitelangaben in " cite$ * warning$ } + { type empty$ + { "Kap. " }%% d.i. die Standardvorgabe + { type }%% wenn man keine bes. Typform angeben will, koennte ein kl. +%% Zwischenraum gewaehlt werden, z.B. " \, " + if$ + chapter tie.or.space.connect " {In: }" * *%% n. Belieben fettes "In:" + %% diese Plazierung und der 2. * stammt v. N. Zacharias, Oldenburg, Juli 2000 + } + if$ + +%% -------- jetzt kommt der bibliogr. selbst. Teil + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + } + if$ + set.colon.after + format.btitle.vol "title" output.check + crossref missing$ + { format.edition output + format.address.publisher.year "publisher" output.check + new.sentence + format.series.number.din output + part.of.sentence + format.pages "pages" output.check + note set.period.dash.check + note output + } + { format.book.crossref output.nonnull + note set.period.dash.check + note output + } + if$ + isbn set.period.dash.check + format.isbn.issn output + fin.entry +} + +%% geaenderte Seitenzahlausgabe, wenn crossref-Feld benutzt wird, 27/2/97 +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + set.colon.after + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle.din "booktitle" output.check + format.edition output + format.address.publisher.year "publisher" output.check + new.sentence + format.series.number.din output + note set.period.dash.check + note output + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + part.of.sentence + format.chapter.pages "pages" output.check + } + { format.incoll.inproc.crossref output.nonnull + note set.period.dash.check + note output + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + } + if$ + fin.entry +} + +%% geaendert 22/2/94, 15/11/96 (Hinweis v. Alin Shindun, Uni Siegen) +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + set.colon.after + format.title "title" output.check + crossref missing$ + { format.in.ed.booktitle.din "booktitle" output.check + address empty$ + { organization new.sentence.checka + organization output + part.of.sentence + format.address.publisher.year output + } + { format.address.publisher.year "publisher" output.check } + if$ + new.sentence + series empty$ %%neu nach Hinweis v. Alin Shindun, 15/11/96 + 'skip$ + { format.series.number.din output } + if$ + note set.period.dash.check + note output + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + part.of.sentence + format.pages output + } + { format.incoll.inproc.crossref output.nonnull + note set.period.dash.check + note output + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + } + if$ + fin.entry +} + +FUNCTION {conference} { inproceedings }%% nach Patashnik, wg US-Kompatibilitaet + +%% geaendert, 11/6/99 +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization empty$ + { title empty$ + 'skip$ + {format.btitle "title" output.check } + if$ + } + { organization output.nonnull + set.colon.after + format.btitle "title" output.check + } + if$ + } + { format.authors output.nonnull + set.colon.after + format.btitle "title" output.check + } + if$ + format.edition "edition" output.check + author empty$ + { organization empty$ + { address output + part.of.sentence + } + 'skip$ + if$ + } + { address ": " * organization * output + part.of.sentence + } + if$ + format.date output + pages set.period.dash.check + format.pages.book output + note set.period.dash.check + note output + fin.entry +} + +%% MASTERSTHESIS KFL, 17/2/94 +%% Ausgabe-Standard ist "Diplomarbeit", fuer andere Abschlussarbeiten +%% bei der Erfassung TYPE="anderer Typ" eingeben. +%% z.B. TYPE={Dissertation}, TYPE={Diss.}, TYPE={Habil.}, TYPE={Magisterarb.} +%% +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + set.colon.after + format.btitle "title" output.check + address output + part.of.sentence + school "school" output.check + part.of.sentence + "Diplomarbeit" format.thesis.type output.nonnull + part.of.sentence + format.date "year" output.check +%% pages new.sentence.checka + pages set.period.dash.check + format.pages.book output + note set.period.dash.check + note output + fin.entry +} + +FUNCTION {phdthesis} %% {mastersthesis}% ist identisch bis auf Standardwert, s.o. +{ output.bibitem + format.authors "author" output.check + set.colon.after + format.btitle "title" output.check + address output + part.of.sentence + school "school" output.check + part.of.sentence + "Diss." format.thesis.type output.nonnull % koennte auch `Dissertation' sein + part.of.sentence + format.date "year" output.check + pages set.period.dash.check + format.pages.book output + note set.period.dash.check + note output + fin.entry +} + + +%% hiermit werden u.a. Normen erfasst +FUNCTION {misc} +{ output.bibitem + note empty$ + { title empty$ + { "" } + { format.authors format.editors output.nonnull + format.btitle output + howpublished output + format.date output + } + if$ + } + { note duplicate$ #1 #4 substring$ "Norm" = + { output new.sentence + format.date output + format.title output + } + { pop$ "" + author empty$ + { editor empty$ + { organization empty$ + { 'skip$ } + { format.editors.organization output.nonnull + set.colon.after } + if$ + } + { format.editors format.editors.organization output.nonnull + set.colon.after } + if$ + } + { format.authors format.editors output.nonnull + set.colon.after } + if$ + format.btitle output + howpublished output + format.date output + new.sentence + format.misc.series output%% neu 16/6/99 + note set.period.dash.check + note output + } + if$ + } + if$ + fin.entry +} + +FUNCTION {booklet} {misc}%% booklet ist nach dt. Vorgehensweise oft ueberfluessig + +%% geaendert 21/5/99 +FUNCTION {proceedings} +{ output.bibitem + editor empty$ + { organization empty$ + { "" } + { organization " (Veranst.)" * output } + if$ + } + { format.editors format.editors.organization output.nonnull } + if$ + set.colon.after + format.btitle "title" output.check + volume empty$ + { "" output.nonnull } + { "{\textnormal{Bd.}}" volume tie.or.space.connect emphasize "volume" output.check } + if$ + format.address.publisher.year "publisher" output.check + new.sentence + format.series.number.din output.nonnull + pages set.period.dash.check + format.pages.book output + note set.period.dash.check + note output + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + fin.entry +} + +%% geaendert 23/2/94 auch fuer Firmenschriften u."a. zu benutzen +FUNCTION {techreport} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors format.editors output.nonnull } + if$ + set.colon.after + format.title "title" output.check + institution new.sentence.checka + institution empty$ + 'skip$ + { " / " institution * output.nonnull } + if$ + format.address.publisher.year output + number new.sentence.checka + format.tr.number.din "number" output.check +%% new.sentence + pages set.period.dash.check + format.pages.book output + note "note" output.check + isbn set.period.dash.check + issn set.period.dash.check + format.isbn.issn output + fin.entry +} + + +FUNCTION {unpublished} {misc}%% author, title, note muessen sein! howpublished +%% %% entfaellt natuerlich +FUNCTION {default.type} { misc } + +MACRO {jan} {"Januar"} + +MACRO {feb} {"Februar"} + +MACRO {mar} {"M{\^^b a}rz"} +%% nach Bernd Raichle, Febr. 1999 + +MACRO {apr} {"April"} + +MACRO {mai} {"Mai"} + +MACRO {may} {"Mai"} + +MACRO {jun} {"Juni"} + +MACRO {jul} {"Juli"} + +MACRO {aug} {"August"} + +MACRO {sep} {"September"} + +MACRO {okt} {"Oktober"} + +MACRO {oct} {"Oktober"} + +MACRO {nov} {"November"} + +MACRO {dez} {"Dezember"} + +MACRO {dec} {"Dezember"} + + + +%%$$$ stillgelegte Beispiele fr den Gebrauch von Krzeln (hier Zs-Titel). + +%%MACRO {acmcs} {"ACM Computing Surveys"} + +%%MACRO {acta} {"Acta Informatica"} + +%%MACRO {cacm} {"Communications of the ACM"} + +%%MACRO {ibmjrd} {"IBM Journal of Research and Development"} + +%%MACRO {ibmsj} {"IBM Systems Journal"} + +%%MACRO {ieeese} {"IEEE Transactions on Software Engineering"} + +%%MACRO {ieeetc} {"IEEE Transactions on Computers"} + +%%MACRO {ieeetcad} +%% {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} + +%%MACRO {ipl} {"Information Processing Letters"} + +%%MACRO {jacm} {"Journal of the ACM"} + +READ + +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { " " * } + 'skip$ + if$ +%% s nameptr "{vv{ } }{ll{ }}{ ff{ }}{ jj{ }}" format.name$ 't := +% +% Zeile geaendert, damit die Namenszusaetze wie "von", "de" usw nach deutscher +% Norm richtig einsortiert werden. 27.10.94 Lueddecke +% + s nameptr "{ll{ }}{ ff{ }}{ vv{ }}{ jj{ }}" format.name$ 't := + nameptr numnames = t "others" = and + { "et al" * } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + "A " #2 + "An " #3 + "Der " #4 + "Die " #4 + "Das " #4 + "Ein " #4 + "Eine " #5 + "The " #4 t chop.word + chop.word + chop.word + chop.word + chop.word + chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.organization.sort} +{ author empty$ + { organization empty$ + { key empty$ + { "to sort, need author, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {editor.organization.sort} +{ editor empty$ + { organization empty$ + { key empty$ + { "to sort, need editor, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { editor sort.format.names } + if$ +} + +FUNCTION {presort} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.organization.sort + { type$ "manual" = + 'author.organization.sort + 'author.sort + if$ + } + if$ + } + if$ + " " + * + year field.or.null sortify + * + " " + * + title field.or.null + sort.format.title + * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} + +SORT + +STRINGS { longest.label } + +INTEGERS { number.label longest.label.width } + +FUNCTION {initialize.longest.label}%% nicht identisch mit der Fkt.im ALPHA-Stil +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} + +FUNCTION {longest.label.pass} +{ number.label int.to.str$ 'label := + number.label #1 + 'number.label := + label width$ longest.label.width > + { label 'longest.label := + label width$ 'longest.label.width := + } + 'skip$ + if$ +} + +EXECUTE { initialize.longest.label } + +ITERATE { longest.label.pass } + +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} + +%% Ende von PLAINDIN.BST KFL, 10/10/00 \ No newline at end of file diff --git a/bericht/zihpub.cls b/bericht/zihpub.cls new file mode 100644 index 0000000..777564d --- /dev/null +++ b/bericht/zihpub.cls @@ -0,0 +1,1248 @@ +%% +%% ZIH Style-File fuer ZIH Publikationen +%% +%% Autor: Guido Juckeland (guido.juckeland@tu-dresden.de) +%% Datum: Aug 14, 2012 +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{zihpub} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Load packages + +% Font-Codierung setzen +\RequirePackage[T1]{fontenc} + +% Schriftart setzen +\RequirePackage{times} + +% Bilder einbinden +\RequirePackage{graphicx} + +% URL's zulassen +\RequirePackage{url} + +% schoene Listings +\RequirePackage{fancyvrb} + +% Mathe-krempel laden +\RequirePackage{amsmath} +\RequirePackage{amsfonts} +\RequirePackage{amssymb} + +% farbe fuer correctme +\RequirePackage{color} + +% enumerates mit benutzerdefinierten labels +\RequirePackage{enumerate} + +% besseres 1.5 zeilig +\RequirePackage{setspace} + +% Sprachwechsel Deutsch-Englisch +\RequirePackage[ngerman,american]{babel} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Provide Options + +% Proseminar-Vorlage +\newif\if@proseminar +\@proseminarfalse +\DeclareOption{proseminar}{% + \@proseminartrue +} + +% Hauptseminar-Vorlage +\newif\if@hauptseminar +\@hauptseminarfalse +\DeclareOption{hauptseminar}{% + \@hauptseminartrue +} + +% Seminar Mathematik Vorlage +\newif\if@mathseminar +\@mathseminarfalse +\DeclareOption{mathseminar}{% + \@mathseminartrue +} + +% Grosser Beleg-Vorlage +\newif\if@beleg +\@belegfalse +\DeclareOption{beleg}{% + \@belegtrue +} + +% Diplom Inf-Vorlage +\newif\if@diplominf +\@diplominffalse +\DeclareOption{diplominf}{% + \@diplominftrue +} + +% Bachelor Inf-Vorlage +\newif\if@bachinf +\@bachinffalse +\DeclareOption{bachinf}{% + \@bachinftrue +} + +% Master Inf-Vorlage +\newif\if@mastinf +\@mastinffalse +\DeclareOption{mastinf}{% + \@mastinftrue +} + +% Diplom IST-Vorlage +\newif\if@diplomist +\@diplomistfalse +\DeclareOption{diplomist}{% + \@diplomisttrue +} + +% Diplom TechMath-Vorlage +\newif\if@diplomtmath +\@diplomtmathfalse +\DeclareOption{diplomtmath}{% + \@diplomtmathtrue +} + +% Diss rer nat +\newif\if@dissrernat +\@dissrernatfalse +\DeclareOption{dissrernat}{% + \@dissrernattrue +} + +% Diss ing +\newif\if@dissing +\@dissingfalse +\DeclareOption{dissing}{% + \@dissingtrue +} + +% keine Aufgabenstellung +\newif\if@kurz +\@kurzfalse +\DeclareOption{kurz}{% + \@kurztrue% +}% + +% fuer die Frauen das "in" am Titel +\newif\if@female +\@femalefalse +\DeclareOption{female}{% + \@femaletrue +} + +% plain-vorlage article +\newif\if@plainarticle +\@plainarticlefalse +\DeclareOption{plainarticle}{% + \@plainarticletrue +} + +% plain-vorlage article +\newif\if@plainreport +\@plainreportfalse +\DeclareOption{plainreport}{% + \@plainreporttrue +} + +% ZIH auf Titelseite nicht RA +\newif\if@zihtitle +\@zihtitlefalse +\DeclareOption{zihtitle}{% + \@zihtitletrue +} + +% References numbered not alpha +\newif\if@bibnum +\@bibnumfalse +\DeclareOption{bibnum}{\@bibnumtrue} + +% Abbildungsverzeichnis +\newif\if@lof +\@loffalse +\DeclareOption{lof}{\@loftrue} + +% Tabellenverzeichnis +\newif\if@lot +\@lotfalse +\DeclareOption{lot}{\@lottrue} + + +% Hyperref +\newif\if@hyperref +\@hyperreffalse +\DeclareOption{hyperref}{% + \@hyperreftrue +} + +% Nomenclature +\newif\if@nomencl +\@nomenclfalse +\DeclareOption{nomencl}{% + \@nomencltrue +} + +%utf8-Zeichenkodierung +\newif\if@utf +\@utffalse +\DeclareOption{utf8}{ + \@utftrue +} + + +%german-Option verarbeiten +\newif\if@german +\@germanfalse +\DeclareOption{german}{% + \@germantrue% +}% + +% formatierung fuer zih-report +\newif\if@final +\@finalfalse +\DeclareOption{final}{% + \@finaltrue% +}% + +% kein Inhaltsverzeichnis +\newif\if@notoc +\@notocfalse +\DeclareOption{notoc}{% + \@notoctrue% +}% + +% keine Aufgabenstellung +\newif\if@noproblem +\@noproblemfalse +\DeclareOption{noproblem}{% + \@noproblemtrue% +}% + +% zweiseitig wenn nicht 'final' +\newif\if@twoside +\@twosidefalse +\DeclareOption{twoside}{% + \@twosidetrue% +}% +\ProcessOptions + + +% jetzt ``vergewaltigen'' wir ein paar variablen fuer eigene zwecke +\newcommand\matno[1]{\def\@matno{#1}} +\newcommand\betreuer[1]{\def\@betreuer{#1}} +\newcommand\hsl[1]{\def\@hsl{#1}} +\newcommand\copyrighterklaerung[1]{\def\@copyrighterklaerung{#1}} +\newcommand\bibfiles[1]{\def\@bibfiles{#1}} +\newcommand\gutachter[1]{\def\@gutachter{#1}} +\newcommand\birthday[1]{\def\@birthdate{#1}} +\newcommand\placeofbirth[1]{\def\@birthplace{#1}} +\newcommand\acknowledgments[1]{\def\@acknowledgments{#1}} + +%\newif\if@isreport \@isreportfalse \DeclareOption{isreport}{\@isreporttrue} +\def\@acknowledgments{} +\def\@isreport{} +\def\@isplain{} +\def\@isdiploma{} +\def\@isdiss{} +\def\@bibfiles{} +\def\@copyrighterklaerung{} +\def\@abstractde{} +\def\@abstracten{} +\def\@hsl{} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% set document type + +\if@beleg + \def\@isreport{1} +\fi +\if@diplominf + \def\@isreport{1} + \def\@isdiploma{1} +\fi +\if@mastinf + \def\@isreport{1} + \def\@isdiploma{1} +\fi +\if@bachinf + \def\@isreport{1} + \def\@isdiploma{1} +\fi +\if@diplomist + \def\@isreport{1} + \def\@isdiploma{1} +\fi +\if@diplomtmath + \def\@isreport{1} + \def\@isdiploma{1} +\fi +\if@dissrernat + \if@kurz + \else + \def\@isreport{1} + \fi + \def\@isdiss{1} +\fi +\if@dissing + \if@kurz + \else + \def\@isreport{1} + \fi + \def\@isdiss{1} +\fi +\if@plainreport + \def\@isreport{1} + \def\@isplain{1} +\fi +\if@plainarticle + \def\@isplain{1} +\fi + +\ifx\@empty\@isreport + \if@final + \LoadClass[cleardoublepage=empty, listof=totoc, bibliography=totoc, index=totoc, 11pt, abstracton, numbers=noenddot, twoside,titlepage,headings=normal]{scrartcl}% + \else + \if@twoside + \LoadClass[cleardoublepage=empty, listof=totoc, bibliography=totoc, index=totoc, 11pt, abstracton, numbers=noenddot, twoside,titlepage,headings=normal]{scrartcl}% + \else + \LoadClass[cleardoublepage=empty, listof=totoc, bibliography=totoc, index=totoc, 11pt, abstracton, numbers=noenddot, oneside,titlepage,headings=normal]{scrartcl}% + \fi + \fi +\else + \if@final + \LoadClass[cleardoublepage=empty, listof=totoc, bibliography=totoc, index=totoc, 11pt, abstracton, numbers=noenddot, twoside,titlepage,openright,headings=normal]{scrreprt}% + \else + \if@twoside + \LoadClass[cleardoublepage=empty, listof=totoc, bibliography=totoc, index=totoc, 11pt, abstracton, numbers=noenddot, twoside,titlepage,openright,headings=normal]{scrreprt}% + \else + \LoadClass[cleardoublepage=empty, listof=totoc, bibliography=totoc, index=totoc, 11pt, abstracton, numbers=noenddot, oneside,titlepage,openright,headings=normal]{scrreprt}% + \fi + \fi +\fi + +% deckblatttitel, je nachdem, was fuer ein dokument erstellt werden soll + +\newcommand{\titleheader}[0]{$\quad$} +\newcommand{\copyrightinfo}[0]{ } +\newcommand{\betreuerlabel}[0]{ } +\newcommand{\hsllabel}[0]{ } +\newcommand{\matnolabel}[0]{ } +\newcommand{\matnoclosing}[0]{ } +\newcommand{\birthstart}[0]{ } +\newcommand{\birthmiddle}[0]{ } +\newcommand{\birthclosing}[0]{ } + +\if@proseminar% +\renewcommand{\titleheader}[0]{Proseminar ``Rechnerarchitektur''} +\fi + +\if@hauptseminar% +\renewcommand{\titleheader}[0]{Hauptseminar\\ ``Rechnerarchitektur und Programmierung''} +\fi + +\if@mathseminar% +\renewcommand{\titleheader}[0]{Seminar ``Programmier- und Compilertechniken im +Wissenschaftlichen Hochleistungsrechnen''} +\fi + +\if@beleg% +\renewcommand{\titleheader}[0]{Gro{\ss}er Beleg} +\fi + +\if@female + \def\@female{in} +\else + \def\@female{} +\fi + +\ifx\@empty\@isdiploma +\else + \if@bachinf + \def\@doctype{Bachelor-Arbeit} + \else + \if@mastinf + \def\@doctype{Master-Arbeit} + \else + \def\@doctype{Diplomarbeit} + \fi + \fi +\fi + +\if@diplominf% +\renewcommand{\titleheader}[0]{Diplomarbeit \\[1cm]\large zur Erlangung des akademischen Grades\\ Diplom-Informatiker\@female} +\def\@faculty{Informatik} +\fi + +\if@bachinf% +\renewcommand{\titleheader}[0]{Bachelor-Arbeit \\[1cm]\large zur Erlangung des akademischen Grades\\ Bachelor of Science} +\def\@faculty{Informatik} +\fi + +\if@mastinf% +\renewcommand{\titleheader}[0]{Master-Arbeit \\[1cm]\large zur Erlangung des akademischen Grades\\ Master of Science} +\def\@faculty{Informatik} +\fi + +\if@diplomist% +\renewcommand{\titleheader}[0]{Diplomarbeit \\[1cm]\large zur Erlangung des akademischen Grades\\ Diplomingenieur\@female~f\"{u}r Informationssystemtechnik} +\def\@faculty{Elektrotechnik und Informationstechnik} +\fi + +\if@diplomtmath% +\renewcommand{\titleheader}[0]{Diplomarbeit \\[1cm]\large zur Erlangung des akademischen Grades\\ Diplom-Mathematiker\@female~(Technomathematik)} +\def\@faculty{Mathematik und Naturwissenschaften, Fachrichtung Mathematik} +\fi + + + +\if@dissrernat% +\if@kurz +\renewcommand{\titleheader}[0]{\begin{large}\textbf{Kurzfassung}\\[1cm]zur Erlangung des akademischen Grades Doktor rerum naturalium (Dr.\ rer.\ nat.)\end{large}} +\else +\renewcommand{\titleheader}[0]{\begin{large}\textbf{Dissertation}\\[1cm]zur Erlangung des akademischen Grades Doktor rerum naturalium (Dr.\ rer.\ nat.)\end{large}} +\fi +\def\@faculty{Informatik} +\fi + +\if@dissing% +\if@kurz +\renewcommand{\titleheader}[0]{\begin{large}\textbf{Kurzfassung}\\[1cm]zur Erlangung des akademischen Grades Doktoringenieur (Dr.-Ing.)\end{large}} +\else +\renewcommand{\titleheader}[0]{\begin{large}\textbf{Dissertation}\\[1cm]zur Erlangung des akademischen Grades Doktoringenieur (Dr.-Ing.)\end{large}} +\fi +\def\@faculty{Informatik} +\fi +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Set page-layout + +% Definition der Seitenraender +%\setlength{\hoffset}{-1in} +%\addtolength{\hoffset}{2cm} +%\setlength{\voffset}{-1in} +%\addtolength{\voffset}{2cm} +%\addtolength{\voffset}{-\baselineskip} +%\setlength{\topmargin}{0mm} +%\setlength{\headheight}{2.0\baselineskip} +%\setlength{\headsep}{\baselineskip} +\setlength{\textheight}{24.5cm} +\setlength{\textwidth}{16cm} +\setlength{\evensidemargin}{0mm} +\setlength{\oddsidemargin}{0mm} +%\setlength{\marginparsep}{0mm} +%\setlength{\marginparwidth}{0mm} +%\setlength{\marginparpush}{0mm} +%\setlength{\footskip}{\baselineskip} +\setlength{\parindent}{0mm} +%\setlength{\parskip}{2mm} +%\setlength{\partopsep}{0mm} +\renewcommand{\cleardoublepage}{\cleardoublestandardpage} +\def\@chapapp{} +% enhanced tables +\RequirePackage{tabularx} +\RequirePackage{longtable} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Option "german" bearbeiten + +%Neudeutsch laden +\if@german% +\RequirePackage{ngerman}% +\fi + +%Da man bei Neudeutsch ebenfalls Zitate in Altdeutsch haben wird, +%Wird das german-Paket auf jeden Fall benoetigt. +\if@german% + \RequirePackage{german}% + \def\@copyrightlabel{Erkl\"{a}rungen zum Urheberrecht} + \renewcommand\copyrightinfo[0]{% + \cleardoublepage + \ifx\@empty\@isreport + \section*{\@copyrightlabel} + \else + \chapter*{\@copyrightlabel} + \fi + \@copyrighterklaerung} + \ifx\@empty\@isplain + \renewcommand{\betreuerlabel}[0]{Betreuer: } + \renewcommand{\hsllabel}[0]{Hochschullehrer: } + \renewcommand{\matnolabel}[0]{(Mat.-Nr.: } + \renewcommand{\matnoclosing}[0]{)} + \renewcommand{\birthstart}[0]{(Geboren am } + \renewcommand{\birthmiddle}[0]{ in } + \renewcommand{\birthclosing}[0]{)} + \fi +\else + \def\@copyrightlabel{Copyright Information} + \renewcommand\copyrightinfo[0]{% + \cleardoublepage + \ifx\@empty\@isreport + \section*{\@copyrightlabel} + \else + \chapter*{\@copyrightlabel} + \fi + \@copyrighterklaerung} + \ifx\@empty\@isplain + \renewcommand{\betreuerlabel}[0]{Tutor: } + \renewcommand{\hsllabel}[0]{Professor: } + \renewcommand{\matnolabel}[0]{(Mat.-No.: } + \renewcommand{\matnoclosing}[0]{)} + \renewcommand{\birthstart}[0]{(Born } + \renewcommand{\birthmiddle}[0]{ in } + \renewcommand{\birthclosing}[0]{)} + \fi +\fi + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Format der Eingabedateien; Standard: latin1 +\if@utf +\RequirePackage[utf8]{inputenc} +\else +\RequirePackage[latin1]{inputenc} +\fi + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Hyperref laden, wenn gewuenscht +\if@hyperref +\RequirePackage{hyperref} +\fi + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Nomenclature laden +\if@nomencl + \if@german + \RequirePackage[german,intoc]{nomencl} + \else + \RequirePackage[intoc]{nomencl} + \fi + + % Randbreite definieren + \def\@nomenclmargin{3cm} + \newcommand\setnomenclmargin[1]{\def\@nomenclmargin{#1}} + + % index erstellen + \makenomenclature + +\fi +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Abstracts zusammenbauen +\newcommand{\abstractde}[1]{\def\@abstractde{#1}} +\newcommand{\abstracten}[1]{\def\@abstracten{#1}} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Gliederung und Numerierung +\setcounter{secnumdepth}{3} +\setcounter{tocdepth}{3} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% kopfzeile auch bei chapters +\ifx\@empty\@isreport +\else +\renewcommand*{\chapterpagestyle}{fancy} +\fi + +% kopfzeile auch bei abstract +\let\@altab=\abstract +\let\end@altab=\endabstract +\renewenvironment{abstract}{% +\fancyfoot{} +\fancyhead{} +\if@final + \fancyhead[LE,RO]{\thepage} +\else + \if@twoside + \fancyhead[LE,RO]{\thepage} + \else + \fancyhead[R]{\thepage} + \fi +\fi +\begin{@altab}% +\thispagestyle{fancy}}{\end{@altab}% +\cleardoublepage +\ifx\@empty\@isreport + \if@final + \fancyhead[LO]{\@author} + \fancyhead[RE]{\@title} + \else + \if@twoside + \fancyhead[LO]{\@author} + \fancyhead[RE]{\@title} + \else + \fancyhead[L]{\@author -- \@title} + \fi + \fi +\else + \if@final + \fancyhead[LO]{\rightmark} + \fancyhead[RE]{\leftmark} + \else + \if@twoside + \fancyhead[LO]{\rightmark} + \fancyhead[RE]{\leftmark} + \else + \fancyhead[L]{\rightmark} + \fi + \fi +\fi} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Institution fuer Titelseite +\if@zihtitle + \if@german + \newcommand{\@institution}{ + \begin{center} + %Institution an der die Arbeit geschrieben wurde + \huge + \textsc{Technische Universit\"{a}t Dresden} + + \bigskip + \Large + \textsc{Zentrum f\"{u}r Informationsdienste\\ und Hochleistungsrechnen\\ + Prof. Dr. Wolfgang E. Nagel\\ + $\quad$\\ + $\quad$} + \end{center} + } + \else + \newcommand{\@institution}{ + \begin{center} + %Institution an der die Arbeit geschrieben wurde + \huge + \textsc{Technische Universit\"{a}t Dresden} + + \bigskip + \Large + \textsc{Center for Information Services\\ \& High Performance Computing\\ + Prof. Dr. Wolfgang E. Nagel\\ + $\quad$\\ + $\quad$} + \end{center} + } + \fi +\else + \if@mathseminar + % Seminare nur in Deutsch + \newcommand{\@institution}{ + \begin{center} + %Institution an der die Arbeit geschrieben wurde + \huge + \textsc{Technische Universit\{"a}t Dresden} + + \bigskip + \Large + \textsc{Fakult\"{a}t Mathematik und Naturwissenschaften\\ + Fachrichtung Mathematik\\ + Institut f\"{u}r Wissenschaftliches Rechnen\\ + Professur f\"{u}r Angewandte Diskrete Mathematik\\ + Prof. Dr. Wolfgang V. Walter} + \end{center} + } + \else + \if@german + \newcommand{\@institution}{ + \begin{center} + %Institution an der die Arbeit geschrieben wurde + \huge + \textsc{Technische Universit\"{a}t Dresden} + + \bigskip + \Large + \textsc{Fakult\"{a}t Informatik\\ + Institut f\"{u}r Technische Informatik\\ + Professur f\"{u}r Rechnerarchitektur\\ + Prof. Dr. Wolfgang E. Nagel} + \end{center} + } + \else + \newcommand{\@institution}{ + \begin{center} + %Institution an der die Arbeit geschrieben wurde + \huge + \textsc{Technische Universit\"{a}t Dresden} + + \bigskip + \Large + \textsc{Department of Computer Science\\ + Institute of Computer Engineering\\ + Chair of Computer Architecture\\ + Prof. Dr. Wolfgang E. Nagel} + \end{center} + } + \fi + \fi +\fi +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Style fuer Bibliography +\if@bibnum + \if@german + \bibliographystyle{plaindin} + \else + \bibliographystyle{plain} + \fi +\else + \if@german + \bibliographystyle{alphadin} + \else + \bibliographystyle{alpha} + \fi +\fi +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% List of tables/figures hinzu falls gewuenscht +\if@lof + \newcommand{\printlof}{\listoffigures} +\else + \newcommand{\printlof}{ } +\fi +\if@lot + \newcommand{\printlot}{\listoftables} +\else + \newcommand{\printlot}{ } +\fi + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% zeile unter dem autor zusammenstellen +\ifx\@empty\@isdiss + \ifx\@empty\@isdiploma + \ifx\@empty\@isplain + \def\@subauthor{\matnolabel\@matno\matnoclosing} + \else + \def\@subauthor{$\quad$} + \fi + \else + \def\@subauthor{\birthstart\@birthdate \birthmiddle\@birthplace\birthclosing} + \fi + \else + \def\@subauthor{geboren am \@birthdate in \@birthplace} +\fi + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Literatur-, Abbildungs- und Tabellenverzeichnis vor dem Anhang +\def\@haveapp{} +\let\@altapp=\appendix +\renewcommand{\appendix}[0]{\cleardoublestandardpage +\ifx\@empty\@bibfiles +\else + \bibliography{\@bibfiles} +\fi +\cleardoublestandardpage +\printlof +\cleardoublestandardpage +\printlot +\cleardoublestandardpage +\@altapp +\def\@haveapp{1} +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Kopfzeile +\RequirePackage{fancyhdr} + +% Automatische Generierung des Dokumentgrundgeruests +\ifx\@empty\@isdiss + \let\@altdoc=\document + \let\end@altdoc=\enddocument + \renewenvironment{document}{% + \begin{@altdoc}% + %\thispagestyle{empty} + %\pagestyle{empty} + \ifx\@empty\@isplain + \else + \def\@publishers{$\quad$} + \def\@subject{$\quad$} + \fi + \begin{titlepage} + \enlargethispage{1cm} + + \@institution + \vspace{2cm} + + \begin{center} + % Titel der Arbeit + \huge + \titleheader\\[1.5cm] + \huge + \@title + \vspace{2cm} + + % Zweck der Arbeit + \Large + {\Large \@author }\\\@subauthor\\[2cm] + + \end{center} + \vfill + + \begin{flushleft} + \Large + \ifx\@empty\@isplain + \ifx\@empty\@hsl + \hsllabel Prof. Dr. Wolfgang E. Nagel + \\ + \else + \hsllabel \@hsl + \\ + \fi + \betreuerlabel \@betreuer + \\[1cm] + \else + $\quad$\\[1cm] + \fi + Dresden, \@date\\[2cm] + \end{flushleft} + \end{titlepage} + \pagestyle{empty} + \cleardoublepage + + % Seitenstil festlegen + \fancyfoot{} + \fancyhead{} + \pagestyle{fancy} + \thispagestyle{fancy} + % Aufgabenstellung + \ifx\@empty\@isdiploma + \else + \if@noproblem + \else + \textbf{\Large Hier Aufgabenstellung einf\"{u}gen!} + \fi + \fi + \cleardoublestandardpage + %Selbst‰ndigkeitserklaerung + \ifx\@empty\@isdiploma + \else + \if@german + \else + \selectlanguage{ngerman} + \fi + + \chapter*{Selbstst\"{a}ndigkeitserkl\"{a}rung} + + Hiermit erkl\"{a}re ich, dass ich die von mir am heutigen Tag dem Pr\"{u}fungsausschuss der Fakult\"{a}t \@faculty~eingereichte \@doctype~zum Thema: + \begin{center} + \textit{\@title} + \end{center} + + vollkommen selbstst\"{a}ndig verfasst und keine anderen als die angegebenen Quellen und Hilfsmittel benutzt sowie Zitate kenntlich gemacht habe.\\[2cm] + + Dresden, den \@date\\[3cm] + \@author + + \if@german + \else + \selectlanguage{american} + \fi + \fi + \cleardoublestandardpage + %Zusammenfassung + \ifx\@empty\@isdiploma + \else + \if@german + {\vspace*{2cm} + \minisec{Kurzfassung} + \@abstractde + \vspace{2cm} + \selectlanguage{american} + \minisec{Abstract} + \@abstracten + \selectlanguage{ngerman} + } + \else + {\vspace*{2cm} + \selectlanguage{ngerman} + \minisec{Kurzfassung} + \@abstractde + \selectlanguage{american} + \vspace{2cm} + \minisec{Abstract} + \@abstracten + } + \fi + \fi + % zeilenabstand ja nach variante + \if@final + %\singlespacing + \else + \onehalfspacing + \fi + \normalsize + \cleardoublestandardpage + %Inhaltsverzeichnis + \pagenumbering{arabic} + \if@final + \fancyhead[LE,RO]{\thepage} + \else + \if@twoside + \fancyhead[LE,RO]{\thepage} + \else + \fancyhead[R]{\thepage} + \fi + \fi + \if@notoc + \else + \tableofcontents + \cleardoublestandardpage + \fi + %Nomenclature + \if@nomencl + % \if@german + % \addcontentsline{toc}{chapter}{Symbolverzeichnis} + % \else + % \addcontentsline{toc}{chapter}{Nomenclature} + % \fi + % \label{sec:Nomenclature} + \printnomenclature[\@nomenclmargin] + \fi + %Kopfzeile basteln + \markboth{}{} + \ifx\@empty\@isreport + \if@final + \fancyhead[LO]{\@author} + \fancyhead[RE]{\@title} + \else + \if@twoside + \fancyhead[LO]{\@author} + \fancyhead[RE]{\@title} + \else + \fancyhead[L]{\@author -- \@title} + \fi + \fi + \else + \if@final + \fancyhead[LO]{\rightmark} + \fancyhead[RE]{\leftmark} + \else + \if@twoside + \fancyhead[LO]{\rightmark} + \fancyhead[RE]{\leftmark} + \else + \fancyhead[L]{\leftmark} + \fi + \fi + \fi}{% + % Literatur-, Abbildungs- und Tabellenverzeichnis, wenn nicht schon bei + % \appendix automatisch davor eingefuegt + \ifx\@empty\@haveapp + \cleardoublestandardpage + \ifx\@empty\@bibfiles + \else + \bibliography{\@bibfiles} + \fi + \cleardoublestandardpage + \printlof + \cleardoublestandardpage + \printlot + \fi + \cleardoublestandardpage + %Danksagung + \ifx\@empty\@acknowledgments + \else + \if@german + \@mkboth{Danksagung}{} + \else + \@mkboth{Acknowledgments} + \fi + \ifx\@empty\@isreport + \if@german + \section*{Danksagung} + \else + \section*{Acknowledgments} + \fi + \else + \if@german + \chapter*{Danksagung} + \else + \chapter*{Acknowledgments} + \fi + \fi + \@acknowledgments + \fi + % Copyright-Kram + \cleardoublestandardpage + \ifx\@empty\@copyrighterklaerung + \else + \@mkboth{\@copyrightlabel}{} + \copyrightinfo + \fi + \cleardoublestandardpage + \end{@altdoc}} +\else + \let\@altdoc=\document + \let\end@altdoc=\enddocument + \renewenvironment{document}{% + \begin{@altdoc}% + %\thispagestyle{empty} + %\pagestyle{empty} + \begin{titlepage} + \enlargethispage{1cm} + \begin{center} + \sffamily + \vspace*{25mm} + \begin{Large} + \textbf{\@title} + \end{Large} + + \vspace{20mm} + \titleheader\\[1.5cm] + \begin{large} + \vspace{18mm} + vorgelegt an der\\ + Technischen Universit\"at Dresden\\ + Fakult\"{a}t \@faculty + + \vspace{12mm} + + eingereicht von + + \vspace{6mm} + + {\textbf{\@author}}\\\@subauthor\\[2cm] + \vfill + %\vspace{18mm} + Betreuender Hochschullehrer: \@gutachter\\[2cm] + \bigskip + % \textbf{Tag der Verteidigung:} 16. Dezember 2008 + % + % \bigskip + Dresden, \@date\\[2cm] + \end{large} + \end{center} + \end{titlepage} + \cleardoubleemptypage + \ifx\@dedication\@empty \else + \next@tpage\null\vfill + {\centering \em \@dedication \par}% + \vskip \z@ \@plus3fill + \if@twoside \next@tpage\cleardoubleemptypage \fi + \fi + % Seitenstil festlegen + \fancyfoot{} + \fancyhead{} + \pagestyle{fancy} + \thispagestyle{fancy} + % zeilenabstand ja nach variante + \if@final + %\singlespacing + \else + \onehalfspacing + \fi + \normalsize + \cleardoublestandardpage + \if@kurz + \else + %Zusammenfassung + \if@german + {\vspace*{2cm} + \minisec{Kurzfassung} + \@abstractde + \vspace{2cm} + \selectlanguage{american} + \minisec{Abstract} + \@abstracten + \selectlanguage{ngerman} + } + \else + {\vspace*{2cm} + \selectlanguage{ngerman} + \minisec{Kurzfassung} + \@abstractde + \selectlanguage{american} + \vspace{2cm} + \minisec{Abstract} + \@abstracten + } + \fi + \cleardoublestandardpage + \fi + %Inhaltsverzeichnis + \pagenumbering{arabic} + \if@final + \fancyhead[LE,RO]{\thepage} + \else + \if@twoside + \fancyhead[LE,RO]{\thepage} + \else + \fancyhead[R]{\thepage} + \fi + \fi + \if@notoc + \else + \tableofcontents + \cleardoublestandardpage + \fi + %Nomenclature + \if@nomencl + % \if@german + % \addcontentsline{toc}{chapter}{Symbolverzeichnis} + % \else + % \addcontentsline{toc}{chapter}{Nomenclature} + % \fi + % \label{sec:Nomenclature} + \printnomenclature[\@nomenclmargin] + \fi + %Kopfzeile basteln + \markboth{}{} + \ifx\@empty\@isreport + \if@final + \fancyhead[LO]{\@author} + \fancyhead[RE]{\@title} + \else + \if@twoside + \fancyhead[LO]{\@author} + \fancyhead[RE]{\@title} + \else + \fancyhead[L]{\@author -- \@title} + \fi + \fi + \else + \if@final + \fancyhead[LO]{\rightmark} + \fancyhead[RE]{\leftmark} + \else + \if@twoside + \fancyhead[LO]{\rightmark} + \fancyhead[RE]{\leftmark} + \else + \fancyhead[L]{\leftmark} + \fi + \fi + \fi + }{% + % Literatur-, Abbildungs- und Tabellenverzeichnis, wenn nicht schon bei + % \appendix automatisch davor eingefuegt + \ifx\@empty\@haveapp + \cleardoublestandardpage + \ifx\@empty\@bibfiles + \else + \bibliography{\@bibfiles} + \fi + \cleardoublestandardpage + \printlof + \cleardoublestandardpage + \printlot + \fi + \cleardoublestandardpage + %Danksagung + \ifx\@empty\@acknowledgments + \else + \if@german + \@mkboth{Danksagung}{} + \else + \@mkboth{Acknowledgments} + \fi + \ifx\@empty\@isreport + \if@german + \section*{Danksagung} + \else + \section*{Acknowledgments} + \fi + \else + \if@german + \chapter*{Danksagung} + \else + \chapter*{Acknowledgments} + \fi + \fi + \@acknowledgments + \fi + % Copyright-Kram + \cleardoublestandardpage + \ifx\@empty\@copyrighterklaerung + \else + \@mkboth{\@copyrightlabel}{} + \copyrightinfo + \fi + \cleardoublestandardpage + \end{@altdoc} + } +\fi + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +% Nuetzliche Zusatzkommandos + +\newcommand\longcite[2]{(vgl.~\cite{#1}, S.~#2)} + +\newcommand\shortcite[2]{(\cite{#1}, S.~#2)} + +%% itemize ohne abstand zw. den items +%\let\@altitemize=\itemize +%\let\end@altitemize=\enditemize +%\renewenvironment{itemize}{% +%\begin{@altitemize}% +%\ifnum \@itemdepth = 1 +% \vspace{-10pt} +% \setlength{\itemsep}{-1pt} +%\else +% \ifnum \@itemdepth = 2 +% \vspace{-6pt} +% \setlength{\itemsep}{0pt} +% \else +% \ifnum \@itemdepth = 3 +% \vspace{-2pt} +% \setlength{\itemsep}{1pt} +% \else +% \vspace{0pt} +% \setlength{\itemsep}{2pt} +% \fi +% \fi +%\fi +% \setlength{\parsep}{0pt} +%\setlength{\labelsep}{12pt} +%}% +%{\end{@altitemize}\vspace{-2pt}} + +%% enumerate ohne abstand zw. den items +%\def\enumerate{% +% \ifnum \@enumdepth >3 \@toodeep\else +% \ifnum \@enumdepth = 0 +% \vspace{-10pt} +% \setlength{\itemsep}{-1pt} +% \else +% \ifnum \@enumdepth = 1 +% \vspace{-6pt} +% \setlength{\itemsep}{0pt} +% \else +% \ifnum \@enumdepth = 2 +% \vspace{-2pt} +% \setlength{\itemsep}{1pt} +% \else +% \vspace{0pt} +% \setlength{\itemsep}{2pt} +% \fi +% \fi +% \fi +% \setlength{\parsep}{0pt} +% \setlength{\labelsep}{12pt} +% \advance\@enumdepth \@ne +% \edef\@enumctr{enum\romannumeral\the\@enumdepth}\fi +% \@ifnextchar[{\@@enum@}{\@enum@}} +%\def\@@enum@[#1]{% +% \@enLab{}\let\@enThe\@enQmark +% \@enloop#1\@enum@ +% \ifx\@enThe\@enQmark\@warning{The counter will not be printed.% +% ^^J\space\@spaces\@spaces\@spaces The label is: \the\@enLab}\fi +% \expandafter\edef\csname label\@enumctr\endcsname{\the\@enLab}% +% \expandafter\let\csname the\@enumctr\endcsname\@enThe +% \csname c@\@enumctr\endcsname7 +% \expandafter\settowidth +% \csname leftmargin\romannumeral\@enumdepth\endcsname +% {\the\@enLab\hspace{\labelsep}}% +% \@enum@} +%\def\@enum@{\list{\csname label\@enumctr\endcsname}% +% {\usecounter{\@enumctr}\def\makelabel##1{\hss\llap{##1}}}} + +% paragraph mit Zeilenumbruch nach der Ueberschrift +\newcommand\Paragraph[1]{\minisec{#1}} + +% im text korrekturen anzeigen +\newcommand{\correctme}[1]{\textcolor{red}{#1}} + +% korrekturen ueber mehrere absaetze +\newenvironment{correctmore}{\color{red}}{\color{black}}