diff options
author | Karl Berry <karl@freefriends.org> | 2012-04-09 17:06:36 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-04-09 17:06:36 +0000 |
commit | d07c8d47209341d677012804bf39382e7201943f (patch) | |
tree | 0ed21174f68333bd643c464ab609546510e938fb | |
parent | b2d9bdf22108173c04fbf491122cb81daa8750af (diff) |
bgteubner (8apr12)
git-svn-id: svn://tug.org/texlive/trunk@25892 c570f23f-e606-0410-a88d-b1316a301751
121 files changed, 31993 insertions, 1 deletions
diff --git a/Master/texmf-dist/bibtex/bst/bgteubner/bgteuabbr.bst b/Master/texmf-dist/bibtex/bst/bgteubner/bgteuabbr.bst new file mode 100644 index 00000000000..99f71cb2df2 --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/bgteubner/bgteuabbr.bst @@ -0,0 +1,1223 @@ +%% +%% This is file `bgteuabbr.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `bibstyle,short,names1') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% This BibTeX style is intended to be used with the bgteubner +%% document class and the babelbib package. It may work together with +%% other document classes but is unlikely to work without the +%% babelbib package. +%% +%% harald.harders@gmx.de +%% +ENTRY + { address + author + booktitle + chapter + edition + editor + howpublished + institution + isbn + issn + journal + key + language + month + note + number + organization + pages + publisher + school + series + title + type + url + volume + year + } + {} + { label } + +INTEGERS + { output.state + before.all + mid.sentence + after.sentence + after.block + before.title + } +STRINGS + { s + t + language.state + change.temp + } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'before.title := + "nostate" 'language.state := +} +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {language.change.case} +{ + 'change.temp := + 't := + "\btxifchangecase {" + t change.temp change.case$ * + "}{" * + t * + "}" * +} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { + output.state before.title = + { "\btxauthorcolon\ " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + mid.sentence '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$ + language empty$ + { "empty language in " cite$ * warning$ } + { language.state language = + 'skip$ + { "\btxselectlanguage {" language * "}" * write$ + newline$ + } + if$ + language 'language.state := + } + if$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {after.authors} +{ output.state before.all = + 'skip$ + { before.title 'output.state := } + if$ +} +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkc} +{ empty$ + swap$ empty$ + and + 'skip$ + 'after.authors + if$ +} +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {namefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxnamefont {" swap$ * "}" * } + if$ +} +FUNCTION {lastnamefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxlastnamefont {" swap$ * "}" * } + if$ +} +FUNCTION {titlefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxtitlefont {" swap$ * "}" * } + if$ +} +FUNCTION {journalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxjournalfont {" swap$ * "}" * } + if$ +} +FUNCTION {volumefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxvolumefont {" swap$ * "}" * } + if$ +} +FUNCTION {etalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxetalfont {" swap$ * "}" * } + if$ +} +INTEGERS { nameptr namesleft numnames } +FUNCTION {format.names} +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { + s nameptr "{f{.\,}.~}{vv~}" format.name$ + s nameptr "{ll}" format.name$ lastnamefont * + s nameptr "{, jj}" format.name$ * 't := + namesleft #1 > + { ", " * t namefont * } + { numnames #2 > + { "\btxandcomma {}" * } + 'skip$ + if$ + s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * t namefont * } + if$ + } + if$ + } + { + s nameptr "{ll}" format.name$ lastnamefont + s nameptr "{,~jj}{,~f{.\,}.}{~vv}" format.name$ * namefont + } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { "\ (\btxeditorsshort {.})" * } + { "\ (\btxeditorshort {.})" * } + if$ + } + if$ +} +FUNCTION {format.title} +{ title empty$ + { "" } + { title "t" language.change.case titlefont } + 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$ +} +FUNCTION {format.date} +{ year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + month + } + if$ + } + { month empty$ + 'year + { month "\ " * year * } + if$ + } + if$ +} +FUNCTION {format.btitle} +{ title titlefont +} +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ * * +} +FUNCTION {volume.tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ volumefont * * +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { output.state after.block = + { "\Btxvolumeshort {.}" } + { "\btxvolumeshort {.}" } + if$ + volume volume.tie.or.space.connect + series empty$ + 'skip$ + { " \btxofseriesshort {.}\ " * series titlefont * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { output.state mid.sentence = + { "\btxnumbershort {.}" } + { "\Btxnumbershort {.}" } + if$ + number tie.or.space.connect + series empty$ + { "there's a number but no series in " cite$ * warning$ } + { " \btxinseriesshort {.}\ " * series titlefont * } + if$ + } + if$ + } + { "" } + if$ +} +FUNCTION {format.edition} +{ edition empty$ + { "" } + { + output.state mid.sentence = + { edition "l" language.change.case "~\btxeditionshort {.}" * } + { edition "t" language.change.case "~\btxeditionshort {.}" * } + if$ + } + if$ +} +FUNCTION {format.isbn} +{ isbn empty$ + { "" } + { "\btxISBN~\btxISBNfont {" isbn * "}" * } + if$ +} +FUNCTION {format.issn} +{ issn empty$ + { "" } + { "\btxISSN~\btxISSNfont {" issn * "}" * } + if$ +} +FUNCTION {format.url} +{ url empty$ + { "" } + { "\btxurlfont {" url * "}" * } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages empty$ + { "" } + { pages multi.page.check + { "\btxpagesshort {.}" pages n.dashify tie.or.space.connect } + { "\btxpageshort {.}" pages tie.or.space.connect } + if$ + } + if$ +} + +FUNCTION {format.vol.num.pages} +{ volume field.or.null + number empty$ + 'skip$ + { "(" number * ")" * * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ":" * pages n.dashify * } + if$ + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "\btxchaptershort {.}" } + { type "l" language.change.case } + if$ + chapter tie.or.space.connect + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { editor empty$ + { "\Btxinshort {.}\ " booktitle titlefont * } + { "\Btxinshort {.}\ " format.editors * ": " * booktitle titlefont * } + if$ + } + if$ +} + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" language.change.case + } + if$ +} + +FUNCTION {format.tr.number} +{ + number empty$ + { + type empty$ + { "\btxtechrepshort {.}" } + { type "t" language.change.case } + if$ + } + { + type empty$ + { "\Btxtechrepshort {.}" } + { type "t" language.change.case } + if$ + number tie.or.space.connect + } + if$ +} + +FUNCTION {format.article.crossref} +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { "\Btxinshort {.}\ " journal titlefont * } + if$ + } + { "\Btxinshort {.}\ " key titlefont * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {format.crossref.editor} +{ editor #1 "{f.~}{vv~}{ll}{, jj}" format.name$ namefont + editor num.names$ duplicate$ + #2 > + { pop$ " " "\btxetalshort {.}" etalfont * * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv~}{ll}{ jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * editor #2 + "{f.~}{vv~}{ll}{, jj}" format.name$ + namefont * } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.book.crossref} +{ volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + "\Btxinshort {.}\ " + } + { "\Btxvolumeshort {.}" volume volume.tie.or.space.connect + " \btxofseriesshort {.}\ " * + } + 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$ + "" * + } + { series titlefont * } + if$ + } + { key titlefont * } + if$ + } + { format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +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$ + "" + } + { "\Btxinshort {.}\ " booktitle titlefont * } + if$ + } + { "\Btxinshort {.}\ " key titlefont * } + if$ + } + { "\Btxinshort {.}\ " format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { journal + title missing$ + { titlefont } + { journalfont } + if$ + "journal" output.check + format.vol.num.pages output + format.date "year" output.check + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.issn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {booklet} +{ output.bibitem + format.authors output + after.authors + format.title "title" output.check + howpublished address new.block.checkb + howpublished output + address output + format.date output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + new.sentence + publisher "publisher" output.check + address output + format.edition output + format.date "year" output.check + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + address empty$ + { organization publisher new.sentence.checkb + organization output + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + organization output + publisher output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization empty$ + 'skip$ + { organization output.nonnull + address output + } + if$ + } + { format.authors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + author empty$ + { organization empty$ + { address new.block.checka + address output + } + 'skip$ + if$ + } + { organization address new.block.checkb + organization output + address output + } + if$ + format.edition output + format.date output + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + "\btxmastthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + new.block + format.url output + note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + title howpublished new.block.checkc + format.title output + howpublished new.block.checka + howpublished output + format.date output + format.isbn output + format.issn output + new.block + format.url output + note output + fin.entry + empty.misc.check +} + +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.btitle "title" output.check + new.block + "\btxphdthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + editor empty$ + { organization output } + { format.editors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + format.bvolume output + format.number.series output + address empty$ + { editor empty$ + { publisher new.sentence.checka } + { organization publisher new.sentence.checkb + organization output + } + if$ + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.url output + note "note" output.check + format.date output + fin.entry +} + +FUNCTION {default.type} { misc } + +MACRO {jan} {"\btxmonjanshort {.}"} +MACRO {feb} {"\btxmonfebshort {.}"} +MACRO {mar} {"\btxmonmarshort {.}"} +MACRO {apr} {"\btxmonaprshort {.}"} +MACRO {may} {"\btxmonmayshort {.}"} +MACRO {jun} {"\btxmonjunshort {.}"} +MACRO {jul} {"\btxmonjulshort {.}"} +MACRO {aug} {"\btxmonaugshort {.}"} +MACRO {sep} {"\btxmonsepshort {.}"} +MACRO {oct} {"\btxmonoctshort {.}"} +MACRO {nov} {"\btxmonnovshort {.}"} +MACRO {dec} {"\btxmondecshort {.}"} +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"} +MACRO {jcss} {"Journal of Computer and System Sciences"} +MACRO {scp} {"Science of Computer Programming"} +MACRO {sicomp} {"SIAM Journal on Computing"} +MACRO {tocs} {"ACM Transactions on Computer Systems"} +MACRO {tods} {"ACM Transactions on Database Systems"} +MACRO {tog} {"ACM Transactions on Graphics"} +MACRO {toms} {"ACM Transactions on Mathematical Software"} +MACRO {toois} {"ACM Transactions on Office Information Systems"} +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} +MACRO {tcs} {"Theoretical Computer Science"} + +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 "{ll{ }}{ f{ }}{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 + "The " #4 t 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} +{ "" '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$ + " \providebibliographyfont{name}{}%" write$ newline$ + " \providebibliographyfont{lastname}{}%" write$ newline$ + " \providebibliographyfont{title}{\emph}%" write$ newline$ + " \providebibliographyfont{etal}{\emph}%" write$ newline$ + " \providebibliographyfont{journal}{}%" write$ newline$ + " \providebibliographyfont{volume}{}%" write$ newline$ + " \providebibliographyfont{ISBN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{ISSN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{url}{\url}%" write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} diff --git a/Master/texmf-dist/bibtex/bst/bgteubner/bgteuabbr2.bst b/Master/texmf-dist/bibtex/bst/bgteubner/bgteuabbr2.bst new file mode 100644 index 00000000000..017bcae1cc0 --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/bgteubner/bgteuabbr2.bst @@ -0,0 +1,1222 @@ +%% +%% This is file `bgteuabbr2.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `bibstyle,short,names2') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% This BibTeX style is intended to be used with the bgteubner +%% document class and the babelbib package. It may work together with +%% other document classes but is unlikely to work without the +%% babelbib package. +%% +%% harald.harders@gmx.de +%% +ENTRY + { address + author + booktitle + chapter + edition + editor + howpublished + institution + isbn + issn + journal + key + language + month + note + number + organization + pages + publisher + school + series + title + type + url + volume + year + } + {} + { label } + +INTEGERS + { output.state + before.all + mid.sentence + after.sentence + after.block + before.title + } +STRINGS + { s + t + language.state + change.temp + } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'before.title := + "nostate" 'language.state := +} +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {language.change.case} +{ + 'change.temp := + 't := + "\btxifchangecase {" + t change.temp change.case$ * + "}{" * + t * + "}" * +} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { + output.state before.title = + { "\btxauthorcolon\ " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + mid.sentence '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$ + language empty$ + { "empty language in " cite$ * warning$ } + { language.state language = + 'skip$ + { "\btxselectlanguage {" language * "}" * write$ + newline$ + } + if$ + language 'language.state := + } + if$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {after.authors} +{ output.state before.all = + 'skip$ + { before.title 'output.state := } + if$ +} +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkc} +{ empty$ + swap$ empty$ + and + 'skip$ + 'after.authors + if$ +} +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {namefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxnamefont {" swap$ * "}" * } + if$ +} +FUNCTION {lastnamefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxlastnamefont {" swap$ * "}" * } + if$ +} +FUNCTION {titlefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxtitlefont {" swap$ * "}" * } + if$ +} +FUNCTION {journalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxjournalfont {" swap$ * "}" * } + if$ +} +FUNCTION {volumefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxvolumefont {" swap$ * "}" * } + if$ +} +FUNCTION {etalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxetalfont {" swap$ * "}" * } + if$ +} +INTEGERS { nameptr namesleft numnames } +FUNCTION {format.names} +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { + s nameptr "{ll}" format.name$ lastnamefont + s nameptr "{,~jj}{,~f{.\,}.}{~vv}" format.name$ * 't := + namesleft #1 > + { ", " * t namefont * } + { numnames #2 > + { "\btxandcomma {}" * } + 'skip$ + if$ + s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * t namefont * } + if$ + } + if$ + } + { + s nameptr "{ll}" format.name$ lastnamefont + s nameptr "{,~jj}{,~f{.\,}.}{~vv}" format.name$ * namefont + } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { "\ (\btxeditorsshort {.})" * } + { "\ (\btxeditorshort {.})" * } + if$ + } + if$ +} +FUNCTION {format.title} +{ title empty$ + { "" } + { title "t" language.change.case titlefont } + 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$ +} +FUNCTION {format.date} +{ year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + month + } + if$ + } + { month empty$ + 'year + { month "\ " * year * } + if$ + } + if$ +} +FUNCTION {format.btitle} +{ title titlefont +} +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ * * +} +FUNCTION {volume.tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ volumefont * * +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { output.state after.block = + { "\Btxvolumeshort {.}" } + { "\btxvolumeshort {.}" } + if$ + volume volume.tie.or.space.connect + series empty$ + 'skip$ + { " \btxofseriesshort {.}\ " * series titlefont * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { output.state mid.sentence = + { "\btxnumbershort {.}" } + { "\Btxnumbershort {.}" } + if$ + number tie.or.space.connect + series empty$ + { "there's a number but no series in " cite$ * warning$ } + { " \btxinseriesshort {.}\ " * series titlefont * } + if$ + } + if$ + } + { "" } + if$ +} +FUNCTION {format.edition} +{ edition empty$ + { "" } + { + output.state mid.sentence = + { edition "l" language.change.case "~\btxeditionshort {.}" * } + { edition "t" language.change.case "~\btxeditionshort {.}" * } + if$ + } + if$ +} +FUNCTION {format.isbn} +{ isbn empty$ + { "" } + { "\btxISBN~\btxISBNfont {" isbn * "}" * } + if$ +} +FUNCTION {format.issn} +{ issn empty$ + { "" } + { "\btxISSN~\btxISSNfont {" issn * "}" * } + if$ +} +FUNCTION {format.url} +{ url empty$ + { "" } + { "\btxurlfont {" url * "}" * } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages empty$ + { "" } + { pages multi.page.check + { "\btxpagesshort {.}" pages n.dashify tie.or.space.connect } + { "\btxpageshort {.}" pages tie.or.space.connect } + if$ + } + if$ +} + +FUNCTION {format.vol.num.pages} +{ volume field.or.null + number empty$ + 'skip$ + { "(" number * ")" * * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ":" * pages n.dashify * } + if$ + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "\btxchaptershort {.}" } + { type "l" language.change.case } + if$ + chapter tie.or.space.connect + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { editor empty$ + { "\Btxinshort {.}\ " booktitle titlefont * } + { "\Btxinshort {.}\ " format.editors * ": " * booktitle titlefont * } + if$ + } + if$ +} + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" language.change.case + } + if$ +} + +FUNCTION {format.tr.number} +{ + number empty$ + { + type empty$ + { "\btxtechrepshort {.}" } + { type "t" language.change.case } + if$ + } + { + type empty$ + { "\Btxtechrepshort {.}" } + { type "t" language.change.case } + if$ + number tie.or.space.connect + } + if$ +} + +FUNCTION {format.article.crossref} +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { "\Btxinshort {.}\ " journal titlefont * } + if$ + } + { "\Btxinshort {.}\ " key titlefont * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {format.crossref.editor} +{ editor #1 "{ll}{, jj}{, f.}{~vv}" format.name$ namefont + editor num.names$ duplicate$ + #2 > + { pop$ " " "\btxetalshort {.}" etalfont * * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv~}{ll}{ jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * editor #2 + "{ll}{, jj}{, f.}{~vv}" format.name$ + namefont * } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.book.crossref} +{ volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + "\Btxinshort {.}\ " + } + { "\Btxvolumeshort {.}" volume volume.tie.or.space.connect + " \btxofseriesshort {.}\ " * + } + 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$ + "" * + } + { series titlefont * } + if$ + } + { key titlefont * } + if$ + } + { format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +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$ + "" + } + { "\Btxinshort {.}\ " booktitle titlefont * } + if$ + } + { "\Btxinshort {.}\ " key titlefont * } + if$ + } + { "\Btxinshort {.}\ " format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { journal + title missing$ + { titlefont } + { journalfont } + if$ + "journal" output.check + format.vol.num.pages output + format.date "year" output.check + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.issn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {booklet} +{ output.bibitem + format.authors output + after.authors + format.title "title" output.check + howpublished address new.block.checkb + howpublished output + address output + format.date output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + new.sentence + publisher "publisher" output.check + address output + format.edition output + format.date "year" output.check + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + address empty$ + { organization publisher new.sentence.checkb + organization output + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + organization output + publisher output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization empty$ + 'skip$ + { organization output.nonnull + address output + } + if$ + } + { format.authors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + author empty$ + { organization empty$ + { address new.block.checka + address output + } + 'skip$ + if$ + } + { organization address new.block.checkb + organization output + address output + } + if$ + format.edition output + format.date output + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + "\btxmastthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + new.block + format.url output + note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + title howpublished new.block.checkc + format.title output + howpublished new.block.checka + howpublished output + format.date output + format.isbn output + format.issn output + new.block + format.url output + note output + fin.entry + empty.misc.check +} + +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.btitle "title" output.check + new.block + "\btxphdthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + editor empty$ + { organization output } + { format.editors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + format.bvolume output + format.number.series output + address empty$ + { editor empty$ + { publisher new.sentence.checka } + { organization publisher new.sentence.checkb + organization output + } + if$ + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.url output + note "note" output.check + format.date output + fin.entry +} + +FUNCTION {default.type} { misc } + +MACRO {jan} {"\btxmonjanshort {.}"} +MACRO {feb} {"\btxmonfebshort {.}"} +MACRO {mar} {"\btxmonmarshort {.}"} +MACRO {apr} {"\btxmonaprshort {.}"} +MACRO {may} {"\btxmonmayshort {.}"} +MACRO {jun} {"\btxmonjunshort {.}"} +MACRO {jul} {"\btxmonjulshort {.}"} +MACRO {aug} {"\btxmonaugshort {.}"} +MACRO {sep} {"\btxmonsepshort {.}"} +MACRO {oct} {"\btxmonoctshort {.}"} +MACRO {nov} {"\btxmonnovshort {.}"} +MACRO {dec} {"\btxmondecshort {.}"} +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"} +MACRO {jcss} {"Journal of Computer and System Sciences"} +MACRO {scp} {"Science of Computer Programming"} +MACRO {sicomp} {"SIAM Journal on Computing"} +MACRO {tocs} {"ACM Transactions on Computer Systems"} +MACRO {tods} {"ACM Transactions on Database Systems"} +MACRO {tog} {"ACM Transactions on Graphics"} +MACRO {toms} {"ACM Transactions on Mathematical Software"} +MACRO {toois} {"ACM Transactions on Office Information Systems"} +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} +MACRO {tcs} {"Theoretical Computer Science"} + +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 "{ll{ }}{ f{ }}{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 + "The " #4 t 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} +{ "" '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$ + " \providebibliographyfont{name}{}%" write$ newline$ + " \providebibliographyfont{lastname}{}%" write$ newline$ + " \providebibliographyfont{title}{\emph}%" write$ newline$ + " \providebibliographyfont{etal}{\emph}%" write$ newline$ + " \providebibliographyfont{journal}{}%" write$ newline$ + " \providebibliographyfont{volume}{}%" write$ newline$ + " \providebibliographyfont{ISBN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{ISSN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{url}{\url}%" write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} diff --git a/Master/texmf-dist/bibtex/bst/bgteubner/bgteupln.bst b/Master/texmf-dist/bibtex/bst/bgteubner/bgteupln.bst new file mode 100644 index 00000000000..80a393f3c7c --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/bgteubner/bgteupln.bst @@ -0,0 +1,1223 @@ +%% +%% This is file `bgteupln.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `bibstyle,long,names1') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% This BibTeX style is intended to be used with the bgteubner +%% document class and the babelbib package. It may work together with +%% other document classes but is unlikely to work without the +%% babelbib package. +%% +%% harald.harders@gmx.de +%% +ENTRY + { address + author + booktitle + chapter + edition + editor + howpublished + institution + isbn + issn + journal + key + language + month + note + number + organization + pages + publisher + school + series + title + type + url + volume + year + } + {} + { label } + +INTEGERS + { output.state + before.all + mid.sentence + after.sentence + after.block + before.title + } +STRINGS + { s + t + language.state + change.temp + } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'before.title := + "nostate" 'language.state := +} +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {language.change.case} +{ + 'change.temp := + 't := + "\btxifchangecase {" + t change.temp change.case$ * + "}{" * + t * + "}" * +} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { + output.state before.title = + { "\btxauthorcolon\ " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + mid.sentence '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$ + language empty$ + { "empty language in " cite$ * warning$ } + { language.state language = + 'skip$ + { "\btxselectlanguage {" language * "}" * write$ + newline$ + } + if$ + language 'language.state := + } + if$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {after.authors} +{ output.state before.all = + 'skip$ + { before.title 'output.state := } + if$ +} +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkc} +{ empty$ + swap$ empty$ + and + 'skip$ + 'after.authors + if$ +} +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {namefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxnamefont {" swap$ * "}" * } + if$ +} +FUNCTION {lastnamefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxlastnamefont {" swap$ * "}" * } + if$ +} +FUNCTION {titlefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxtitlefont {" swap$ * "}" * } + if$ +} +FUNCTION {journalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxjournalfont {" swap$ * "}" * } + if$ +} +FUNCTION {volumefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxvolumefont {" swap$ * "}" * } + if$ +} +FUNCTION {etalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxetalfont {" swap$ * "}" * } + if$ +} +INTEGERS { nameptr namesleft numnames } +FUNCTION {format.names} +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { + s nameptr "{ff~}{vv~}" format.name$ + s nameptr "{ll}" format.name$ lastnamefont * + s nameptr "{, jj}" format.name$ * 't := + namesleft #1 > + { ", " * t namefont * } + { numnames #2 > + { "\btxandcomma {}" * } + 'skip$ + if$ + s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * t namefont * } + if$ + } + if$ + } + { + s nameptr "{ll}" format.name$ lastnamefont + s nameptr "{,~jj}{, ff}{~vv}" format.name$ * namefont + } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { "\ (\btxeditorslong {})" * } + { "\ (\btxeditorlong {})" * } + if$ + } + if$ +} +FUNCTION {format.title} +{ title empty$ + { "" } + { title "t" language.change.case titlefont } + 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$ +} +FUNCTION {format.date} +{ year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + month + } + if$ + } + { month empty$ + 'year + { month "\ " * year * } + if$ + } + if$ +} +FUNCTION {format.btitle} +{ title titlefont +} +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ * * +} +FUNCTION {volume.tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ volumefont * * +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { output.state after.block = + { "\Btxvolumelong {}" } + { "\btxvolumelong {}" } + if$ + volume volume.tie.or.space.connect + series empty$ + 'skip$ + { " \btxofserieslong {}\ " * series titlefont * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { output.state mid.sentence = + { "\btxnumberlong {}" } + { "\Btxnumberlong {}" } + if$ + number tie.or.space.connect + series empty$ + { "there's a number but no series in " cite$ * warning$ } + { " \btxinserieslong {}\ " * series titlefont * } + if$ + } + if$ + } + { "" } + if$ +} +FUNCTION {format.edition} +{ edition empty$ + { "" } + { + output.state mid.sentence = + { edition "l" language.change.case "~\btxeditionlong {}" * } + { edition "t" language.change.case "~\btxeditionlong {}" * } + if$ + } + if$ +} +FUNCTION {format.isbn} +{ isbn empty$ + { "" } + { "\btxISBN~\btxISBNfont {" isbn * "}" * } + if$ +} +FUNCTION {format.issn} +{ issn empty$ + { "" } + { "\btxISSN~\btxISSNfont {" issn * "}" * } + if$ +} +FUNCTION {format.url} +{ url empty$ + { "" } + { "\btxurlfont {" url * "}" * } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages empty$ + { "" } + { pages multi.page.check + { "\btxpageslong {}" pages n.dashify tie.or.space.connect } + { "\btxpagelong {}" pages tie.or.space.connect } + if$ + } + if$ +} + +FUNCTION {format.vol.num.pages} +{ volume field.or.null + number empty$ + 'skip$ + { "(" number * ")" * * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ":" * pages n.dashify * } + if$ + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "\btxchapterlong {}" } + { type "l" language.change.case } + if$ + chapter tie.or.space.connect + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { editor empty$ + { "\Btxinlong {}\ " booktitle titlefont * } + { "\Btxinlong {}\ " format.editors * ": " * booktitle titlefont * } + if$ + } + if$ +} + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" language.change.case + } + if$ +} + +FUNCTION {format.tr.number} +{ + number empty$ + { + type empty$ + { "\btxtechreplong {}" } + { type "t" language.change.case } + if$ + } + { + type empty$ + { "\Btxtechreplong {}" } + { type "t" language.change.case } + if$ + number tie.or.space.connect + } + if$ +} + +FUNCTION {format.article.crossref} +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { "\Btxinlong {}\ " journal titlefont * } + if$ + } + { "\Btxinlong {}\ " key titlefont * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {format.crossref.editor} +{ editor #1 "{ff~}{vv~}{ll}{, jj}" format.name$ namefont + editor num.names$ duplicate$ + #2 > + { pop$ " " "\btxetalshort {.}" etalfont * * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv~}{ll}{ jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * editor #2 + "{ff~}{vv~}{ll}{, jj}" format.name$ + namefont * } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.book.crossref} +{ volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + "\Btxinlong {}\ " + } + { "\Btxvolumelong {}" volume volume.tie.or.space.connect + " \btxofserieslong {}\ " * + } + 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$ + "" * + } + { series titlefont * } + if$ + } + { key titlefont * } + if$ + } + { format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +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$ + "" + } + { "\Btxinlong {}\ " booktitle titlefont * } + if$ + } + { "\Btxinlong {}\ " key titlefont * } + if$ + } + { "\Btxinlong {}\ " format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { journal + title missing$ + { titlefont } + { journalfont } + if$ + "journal" output.check + format.vol.num.pages output + format.date "year" output.check + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.issn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {booklet} +{ output.bibitem + format.authors output + after.authors + format.title "title" output.check + howpublished address new.block.checkb + howpublished output + address output + format.date output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + new.sentence + publisher "publisher" output.check + address output + format.edition output + format.date "year" output.check + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + address empty$ + { organization publisher new.sentence.checkb + organization output + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + organization output + publisher output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization empty$ + 'skip$ + { organization output.nonnull + address output + } + if$ + } + { format.authors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + author empty$ + { organization empty$ + { address new.block.checka + address output + } + 'skip$ + if$ + } + { organization address new.block.checkb + organization output + address output + } + if$ + format.edition output + format.date output + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + "\btxmastthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + new.block + format.url output + note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + title howpublished new.block.checkc + format.title output + howpublished new.block.checka + howpublished output + format.date output + format.isbn output + format.issn output + new.block + format.url output + note output + fin.entry + empty.misc.check +} + +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.btitle "title" output.check + new.block + "\btxphdthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + editor empty$ + { organization output } + { format.editors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + format.bvolume output + format.number.series output + address empty$ + { editor empty$ + { publisher new.sentence.checka } + { organization publisher new.sentence.checkb + organization output + } + if$ + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.url output + note "note" output.check + format.date output + fin.entry +} + +FUNCTION {default.type} { misc } + +MACRO {jan} {"\btxmonjanlong {}"} +MACRO {feb} {"\btxmonfeblong {}"} +MACRO {mar} {"\btxmonmarlong {}"} +MACRO {apr} {"\btxmonaprlong {}"} +MACRO {may} {"\btxmonmaylong {}"} +MACRO {jun} {"\btxmonjunlong {}"} +MACRO {jul} {"\btxmonjullong {}"} +MACRO {aug} {"\btxmonauglong {}"} +MACRO {sep} {"\btxmonseplong {}"} +MACRO {oct} {"\btxmonoctlong {}"} +MACRO {nov} {"\btxmonnovlong {}"} +MACRO {dec} {"\btxmondeclong {}"} +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"} +MACRO {jcss} {"Journal of Computer and System Sciences"} +MACRO {scp} {"Science of Computer Programming"} +MACRO {sicomp} {"SIAM Journal on Computing"} +MACRO {tocs} {"ACM Transactions on Computer Systems"} +MACRO {tods} {"ACM Transactions on Database Systems"} +MACRO {tog} {"ACM Transactions on Graphics"} +MACRO {toms} {"ACM Transactions on Mathematical Software"} +MACRO {toois} {"ACM Transactions on Office Information Systems"} +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} +MACRO {tcs} {"Theoretical Computer Science"} + +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 "{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 + "The " #4 t 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} +{ "" '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$ + " \providebibliographyfont{name}{}%" write$ newline$ + " \providebibliographyfont{lastname}{}%" write$ newline$ + " \providebibliographyfont{title}{\emph}%" write$ newline$ + " \providebibliographyfont{etal}{\emph}%" write$ newline$ + " \providebibliographyfont{journal}{}%" write$ newline$ + " \providebibliographyfont{volume}{}%" write$ newline$ + " \providebibliographyfont{ISBN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{ISSN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{url}{\url}%" write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} diff --git a/Master/texmf-dist/bibtex/bst/bgteubner/bgteupln2.bst b/Master/texmf-dist/bibtex/bst/bgteubner/bgteupln2.bst new file mode 100644 index 00000000000..e8f034c4d92 --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/bgteubner/bgteupln2.bst @@ -0,0 +1,1222 @@ +%% +%% This is file `bgteupln2.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `bibstyle,long,names2') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% This BibTeX style is intended to be used with the bgteubner +%% document class and the babelbib package. It may work together with +%% other document classes but is unlikely to work without the +%% babelbib package. +%% +%% harald.harders@gmx.de +%% +ENTRY + { address + author + booktitle + chapter + edition + editor + howpublished + institution + isbn + issn + journal + key + language + month + note + number + organization + pages + publisher + school + series + title + type + url + volume + year + } + {} + { label } + +INTEGERS + { output.state + before.all + mid.sentence + after.sentence + after.block + before.title + } +STRINGS + { s + t + language.state + change.temp + } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'before.title := + "nostate" 'language.state := +} +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {language.change.case} +{ + 'change.temp := + 't := + "\btxifchangecase {" + t change.temp change.case$ * + "}{" * + t * + "}" * +} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { + output.state before.title = + { "\btxauthorcolon\ " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + mid.sentence '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$ + language empty$ + { "empty language in " cite$ * warning$ } + { language.state language = + 'skip$ + { "\btxselectlanguage {" language * "}" * write$ + newline$ + } + if$ + language 'language.state := + } + if$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {after.authors} +{ output.state before.all = + 'skip$ + { before.title 'output.state := } + if$ +} +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkc} +{ empty$ + swap$ empty$ + and + 'skip$ + 'after.authors + if$ +} +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {namefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxnamefont {" swap$ * "}" * } + if$ +} +FUNCTION {lastnamefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxlastnamefont {" swap$ * "}" * } + if$ +} +FUNCTION {titlefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxtitlefont {" swap$ * "}" * } + if$ +} +FUNCTION {journalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxjournalfont {" swap$ * "}" * } + if$ +} +FUNCTION {volumefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxvolumefont {" swap$ * "}" * } + if$ +} +FUNCTION {etalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxetalfont {" swap$ * "}" * } + if$ +} +INTEGERS { nameptr namesleft numnames } +FUNCTION {format.names} +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { + s nameptr "{ll}" format.name$ lastnamefont + s nameptr "{, jj}{, ff}{~vv}" format.name$ * 't := + namesleft #1 > + { ", " * t namefont * } + { numnames #2 > + { "\btxandcomma {}" * } + 'skip$ + if$ + s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * t namefont * } + if$ + } + if$ + } + { + s nameptr "{ll}" format.name$ lastnamefont + s nameptr "{,~jj}{, ff}{~vv}" format.name$ * namefont + } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { "\ (\btxeditorslong {})" * } + { "\ (\btxeditorlong {})" * } + if$ + } + if$ +} +FUNCTION {format.title} +{ title empty$ + { "" } + { title "t" language.change.case titlefont } + 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$ +} +FUNCTION {format.date} +{ year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + month + } + if$ + } + { month empty$ + 'year + { month "\ " * year * } + if$ + } + if$ +} +FUNCTION {format.btitle} +{ title titlefont +} +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ * * +} +FUNCTION {volume.tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ volumefont * * +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { output.state after.block = + { "\Btxvolumelong {}" } + { "\btxvolumelong {}" } + if$ + volume volume.tie.or.space.connect + series empty$ + 'skip$ + { " \btxofserieslong {}\ " * series titlefont * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { output.state mid.sentence = + { "\btxnumberlong {}" } + { "\Btxnumberlong {}" } + if$ + number tie.or.space.connect + series empty$ + { "there's a number but no series in " cite$ * warning$ } + { " \btxinserieslong {}\ " * series titlefont * } + if$ + } + if$ + } + { "" } + if$ +} +FUNCTION {format.edition} +{ edition empty$ + { "" } + { + output.state mid.sentence = + { edition "l" language.change.case "~\btxeditionlong {}" * } + { edition "t" language.change.case "~\btxeditionlong {}" * } + if$ + } + if$ +} +FUNCTION {format.isbn} +{ isbn empty$ + { "" } + { "\btxISBN~\btxISBNfont {" isbn * "}" * } + if$ +} +FUNCTION {format.issn} +{ issn empty$ + { "" } + { "\btxISSN~\btxISSNfont {" issn * "}" * } + if$ +} +FUNCTION {format.url} +{ url empty$ + { "" } + { "\btxurlfont {" url * "}" * } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages empty$ + { "" } + { pages multi.page.check + { "\btxpageslong {}" pages n.dashify tie.or.space.connect } + { "\btxpagelong {}" pages tie.or.space.connect } + if$ + } + if$ +} + +FUNCTION {format.vol.num.pages} +{ volume field.or.null + number empty$ + 'skip$ + { "(" number * ")" * * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ":" * pages n.dashify * } + if$ + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "\btxchapterlong {}" } + { type "l" language.change.case } + if$ + chapter tie.or.space.connect + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { editor empty$ + { "\Btxinlong {}\ " booktitle titlefont * } + { "\Btxinlong {}\ " format.editors * ": " * booktitle titlefont * } + if$ + } + if$ +} + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" language.change.case + } + if$ +} + +FUNCTION {format.tr.number} +{ + number empty$ + { + type empty$ + { "\btxtechreplong {}" } + { type "t" language.change.case } + if$ + } + { + type empty$ + { "\Btxtechreplong {}" } + { type "t" language.change.case } + if$ + number tie.or.space.connect + } + if$ +} + +FUNCTION {format.article.crossref} +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { "\Btxinlong {}\ " journal titlefont * } + if$ + } + { "\Btxinlong {}\ " key titlefont * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {format.crossref.editor} +{ editor #1 "{ll}{, jj}{, ff}{~vv}" format.name$ namefont + editor num.names$ duplicate$ + #2 > + { pop$ " " "\btxetalshort {.}" etalfont * * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv~}{ll}{ jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * editor #2 + "{ll}{, jj}{, ff}{~vv}" format.name$ + namefont * } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.book.crossref} +{ volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + "\Btxinlong {}\ " + } + { "\Btxvolumelong {}" volume volume.tie.or.space.connect + " \btxofserieslong {}\ " * + } + 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$ + "" * + } + { series titlefont * } + if$ + } + { key titlefont * } + if$ + } + { format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +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$ + "" + } + { "\Btxinlong {}\ " booktitle titlefont * } + if$ + } + { "\Btxinlong {}\ " key titlefont * } + if$ + } + { "\Btxinlong {}\ " format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { journal + title missing$ + { titlefont } + { journalfont } + if$ + "journal" output.check + format.vol.num.pages output + format.date "year" output.check + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.issn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {booklet} +{ output.bibitem + format.authors output + after.authors + format.title "title" output.check + howpublished address new.block.checkb + howpublished output + address output + format.date output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + new.sentence + publisher "publisher" output.check + address output + format.edition output + format.date "year" output.check + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + address empty$ + { organization publisher new.sentence.checkb + organization output + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + organization output + publisher output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization empty$ + 'skip$ + { organization output.nonnull + address output + } + if$ + } + { format.authors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + author empty$ + { organization empty$ + { address new.block.checka + address output + } + 'skip$ + if$ + } + { organization address new.block.checkb + organization output + address output + } + if$ + format.edition output + format.date output + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + "\btxmastthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + new.block + format.url output + note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + title howpublished new.block.checkc + format.title output + howpublished new.block.checka + howpublished output + format.date output + format.isbn output + format.issn output + new.block + format.url output + note output + fin.entry + empty.misc.check +} + +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.btitle "title" output.check + new.block + "\btxphdthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + editor empty$ + { organization output } + { format.editors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + format.bvolume output + format.number.series output + address empty$ + { editor empty$ + { publisher new.sentence.checka } + { organization publisher new.sentence.checkb + organization output + } + if$ + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.url output + note "note" output.check + format.date output + fin.entry +} + +FUNCTION {default.type} { misc } + +MACRO {jan} {"\btxmonjanlong {}"} +MACRO {feb} {"\btxmonfeblong {}"} +MACRO {mar} {"\btxmonmarlong {}"} +MACRO {apr} {"\btxmonaprlong {}"} +MACRO {may} {"\btxmonmaylong {}"} +MACRO {jun} {"\btxmonjunlong {}"} +MACRO {jul} {"\btxmonjullong {}"} +MACRO {aug} {"\btxmonauglong {}"} +MACRO {sep} {"\btxmonseplong {}"} +MACRO {oct} {"\btxmonoctlong {}"} +MACRO {nov} {"\btxmonnovlong {}"} +MACRO {dec} {"\btxmondeclong {}"} +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"} +MACRO {jcss} {"Journal of Computer and System Sciences"} +MACRO {scp} {"Science of Computer Programming"} +MACRO {sicomp} {"SIAM Journal on Computing"} +MACRO {tocs} {"ACM Transactions on Computer Systems"} +MACRO {tods} {"ACM Transactions on Database Systems"} +MACRO {tog} {"ACM Transactions on Graphics"} +MACRO {toms} {"ACM Transactions on Mathematical Software"} +MACRO {toois} {"ACM Transactions on Office Information Systems"} +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} +MACRO {tcs} {"Theoretical Computer Science"} + +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 "{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 + "The " #4 t 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} +{ "" '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$ + " \providebibliographyfont{name}{}%" write$ newline$ + " \providebibliographyfont{lastname}{}%" write$ newline$ + " \providebibliographyfont{title}{\emph}%" write$ newline$ + " \providebibliographyfont{etal}{\emph}%" write$ newline$ + " \providebibliographyfont{journal}{}%" write$ newline$ + " \providebibliographyfont{volume}{}%" write$ newline$ + " \providebibliographyfont{ISBN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{ISSN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{url}{\url}%" write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} diff --git a/Master/texmf-dist/bibtex/bst/bgteubner/bgteupln3.bst b/Master/texmf-dist/bibtex/bst/bgteubner/bgteupln3.bst new file mode 100644 index 00000000000..94557960cf5 --- /dev/null +++ b/Master/texmf-dist/bibtex/bst/bgteubner/bgteupln3.bst @@ -0,0 +1,1224 @@ +%% +%% This is file `bgteupln3.bst', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `bibstyle,long,names3') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% This BibTeX style is intended to be used with the bgteubner +%% document class and the babelbib package. It may work together with +%% other document classes but is unlikely to work without the +%% babelbib package. +%% +%% harald.harders@gmx.de +%% +ENTRY + { address + author + booktitle + chapter + edition + editor + howpublished + institution + isbn + issn + journal + key + language + month + note + number + organization + pages + publisher + school + series + title + type + url + volume + year + } + {} + { label } + +INTEGERS + { output.state + before.all + mid.sentence + after.sentence + after.block + before.title + } +STRINGS + { s + t + language.state + change.temp + } +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'before.title := + "nostate" 'language.state := +} +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +FUNCTION {language.change.case} +{ + 'change.temp := + 't := + "\btxifchangecase {" + t change.temp change.case$ * + "}{" * + t * + "}" * +} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { + output.state before.title = + { "\btxauthorcolon\ " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + mid.sentence '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$ + language empty$ + { "empty language in " cite$ * warning$ } + { language.state language = + 'skip$ + { "\btxselectlanguage {" language * "}" * write$ + newline$ + } + if$ + language 'language.state := + } + if$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +FUNCTION {after.authors} +{ output.state before.all = + 'skip$ + { before.title 'output.state := } + if$ +} +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +FUNCTION {new.block.checkc} +{ empty$ + swap$ empty$ + and + 'skip$ + 'after.authors + if$ +} +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +FUNCTION {namefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxnamefont {" swap$ * "}" * } + if$ +} +FUNCTION {lastnamefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxlastnamefont {" swap$ * "}" * } + if$ +} +FUNCTION {titlefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxtitlefont {" swap$ * "}" * } + if$ +} +FUNCTION {journalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxjournalfont {" swap$ * "}" * } + if$ +} +FUNCTION {volumefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxvolumefont {" swap$ * "}" * } + if$ +} +FUNCTION {etalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxetalfont {" swap$ * "}" * } + if$ +} +INTEGERS { nameptr namesleft numnames } +FUNCTION {format.names} +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { + s nameptr "{f{.\,}.~}{vv~}" format.name$ + s nameptr "{ll}" format.name$ lastnamefont * + s nameptr "{, jj}" format.name$ * 't := + namesleft #1 > + { ", " * t namefont * } + { numnames #2 > + { "\btxandcomma {}" * } + 'skip$ + if$ + s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * t namefont * } + if$ + } + if$ + } + { + s nameptr "{f{.\,}.~}{vv~}" format.name$ + s nameptr "{ll}" format.name$ lastnamefont * + s nameptr "{, jj}" format.name$ * namefont + } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { "\ (\btxeditorslong {})" * } + { "\ (\btxeditorlong {})" * } + if$ + } + if$ +} +FUNCTION {format.title} +{ title empty$ + { "" } + { title "t" language.change.case titlefont } + 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$ +} +FUNCTION {format.date} +{ year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + month + } + if$ + } + { month empty$ + 'year + { month "\ " * year * } + if$ + } + if$ +} +FUNCTION {format.btitle} +{ title titlefont +} +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ * * +} +FUNCTION {volume.tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ volumefont * * +} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { output.state after.block = + { "\Btxvolumelong {}" } + { "\btxvolumelong {}" } + if$ + volume volume.tie.or.space.connect + series empty$ + 'skip$ + { " \btxofserieslong {}\ " * series titlefont * } + if$ + "volume and number" number either.or.check + } + if$ +} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { output.state mid.sentence = + { "\btxnumberlong {}" } + { "\Btxnumberlong {}" } + if$ + number tie.or.space.connect + series empty$ + { "there's a number but no series in " cite$ * warning$ } + { " \btxinserieslong {}\ " * series titlefont * } + if$ + } + if$ + } + { "" } + if$ +} +FUNCTION {format.edition} +{ edition empty$ + { "" } + { + output.state mid.sentence = + { edition "l" language.change.case "~\btxeditionlong {}" * } + { edition "t" language.change.case "~\btxeditionlong {}" * } + if$ + } + if$ +} +FUNCTION {format.isbn} +{ isbn empty$ + { "" } + { "\btxISBN~\btxISBNfont {" isbn * "}" * } + if$ +} +FUNCTION {format.issn} +{ issn empty$ + { "" } + { "\btxISSN~\btxISSNfont {" issn * "}" * } + if$ +} +FUNCTION {format.url} +{ url empty$ + { "" } + { "\btxurlfont {" url * "}" * } + if$ +} +INTEGERS { multiresult } +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +FUNCTION {format.pages} +{ pages empty$ + { "" } + { pages multi.page.check + { "\btxpageslong {}" pages n.dashify tie.or.space.connect } + { "\btxpagelong {}" pages tie.or.space.connect } + if$ + } + if$ +} + +FUNCTION {format.vol.num.pages} +{ volume field.or.null + number empty$ + 'skip$ + { "(" number * ")" * * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ":" * pages n.dashify * } + if$ + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "\btxchapterlong {}" } + { type "l" language.change.case } + if$ + chapter tie.or.space.connect + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { editor empty$ + { "\Btxinlong {}\ " booktitle titlefont * } + { "\Btxinlong {}\ " format.editors * ": " * booktitle titlefont * } + if$ + } + if$ +} + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" language.change.case + } + if$ +} + +FUNCTION {format.tr.number} +{ + number empty$ + { + type empty$ + { "\btxtechreplong {}" } + { type "t" language.change.case } + if$ + } + { + type empty$ + { "\Btxtechreplong {}" } + { type "t" language.change.case } + if$ + number tie.or.space.connect + } + if$ +} + +FUNCTION {format.article.crossref} +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { "\Btxinlong {}\ " journal titlefont * } + if$ + } + { "\Btxinlong {}\ " key titlefont * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {format.crossref.editor} +{ editor #1 "{f{.\,}.~}{vv~}{ll}{, jj}" format.name$ namefont + editor num.names$ duplicate$ + #2 > + { pop$ " " "\btxetalshort {.}" etalfont * * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv~}{ll}{ jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * editor #2 + "{f{.\,}.~}{vv~}{ll}{, jj}" format.name$ + namefont * } + if$ + } + if$ + } + if$ +} + +FUNCTION {format.book.crossref} +{ volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + "\Btxinlong {}\ " + } + { "\Btxvolumelong {}" volume volume.tie.or.space.connect + " \btxofserieslong {}\ " * + } + 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$ + "" * + } + { series titlefont * } + if$ + } + { key titlefont * } + if$ + } + { format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +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$ + "" + } + { "\Btxinlong {}\ " booktitle titlefont * } + if$ + } + { "\Btxinlong {}\ " key titlefont * } + if$ + } + { "\Btxinlong {}\ " format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { journal + title missing$ + { titlefont } + { journalfont } + if$ + "journal" output.check + format.vol.num.pages output + format.date "year" output.check + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.issn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {booklet} +{ output.bibitem + format.authors output + after.authors + format.title "title" output.check + howpublished address new.block.checkb + howpublished output + address output + format.date output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + new.sentence + publisher "publisher" output.check + address output + format.edition output + format.date "year" output.check + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + address empty$ + { organization publisher new.sentence.checkb + organization output + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + organization output + publisher output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization empty$ + 'skip$ + { organization output.nonnull + address output + } + if$ + } + { format.authors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + author empty$ + { organization empty$ + { address new.block.checka + address output + } + 'skip$ + if$ + } + { organization address new.block.checkb + organization output + address output + } + if$ + format.edition output + format.date output + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + "\btxmastthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + new.block + format.url output + note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + title howpublished new.block.checkc + format.title output + howpublished new.block.checka + howpublished output + format.date output + format.isbn output + format.issn output + new.block + format.url output + note output + fin.entry + empty.misc.check +} + +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.btitle "title" output.check + new.block + "\btxphdthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + editor empty$ + { organization output } + { format.editors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + format.bvolume output + format.number.series output + address empty$ + { editor empty$ + { publisher new.sentence.checka } + { organization publisher new.sentence.checkb + organization output + } + if$ + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.url output + note "note" output.check + format.date output + fin.entry +} + +FUNCTION {default.type} { misc } + +MACRO {jan} {"\btxmonjanlong {}"} +MACRO {feb} {"\btxmonfeblong {}"} +MACRO {mar} {"\btxmonmarlong {}"} +MACRO {apr} {"\btxmonaprlong {}"} +MACRO {may} {"\btxmonmaylong {}"} +MACRO {jun} {"\btxmonjunlong {}"} +MACRO {jul} {"\btxmonjullong {}"} +MACRO {aug} {"\btxmonauglong {}"} +MACRO {sep} {"\btxmonseplong {}"} +MACRO {oct} {"\btxmonoctlong {}"} +MACRO {nov} {"\btxmonnovlong {}"} +MACRO {dec} {"\btxmondeclong {}"} +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"} +MACRO {jcss} {"Journal of Computer and System Sciences"} +MACRO {scp} {"Science of Computer Programming"} +MACRO {sicomp} {"SIAM Journal on Computing"} +MACRO {tocs} {"ACM Transactions on Computer Systems"} +MACRO {tods} {"ACM Transactions on Database Systems"} +MACRO {tog} {"ACM Transactions on Graphics"} +MACRO {toms} {"ACM Transactions on Mathematical Software"} +MACRO {toois} {"ACM Transactions on Office Information Systems"} +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} +MACRO {tcs} {"Theoretical Computer Science"} + +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 "{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 + "The " #4 t 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} +{ "" '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$ + " \providebibliographyfont{name}{}%" write$ newline$ + " \providebibliographyfont{lastname}{}%" write$ newline$ + " \providebibliographyfont{title}{\emph}%" write$ newline$ + " \providebibliographyfont{etal}{\emph}%" write$ newline$ + " \providebibliographyfont{journal}{}%" write$ newline$ + " \providebibliographyfont{volume}{}%" write$ newline$ + " \providebibliographyfont{ISBN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{ISSN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{url}{\url}%" write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} diff --git a/Master/texmf-dist/doc/latex/bgteubner/01b.png b/Master/texmf-dist/doc/latex/bgteubner/01b.png Binary files differnew file mode 100644 index 00000000000..acbbc2b1e9d --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/01b.png diff --git a/Master/texmf-dist/doc/latex/bgteubner/02b.png b/Master/texmf-dist/doc/latex/bgteubner/02b.png Binary files differnew file mode 100644 index 00000000000..1f8c2448070 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/02b.png diff --git a/Master/texmf-dist/doc/latex/bgteubner/ChangeLog b/Master/texmf-dist/doc/latex/bgteubner/ChangeLog new file mode 100644 index 00000000000..f37074335ef --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/ChangeLog @@ -0,0 +1,161 @@ +2012/04/07 v2.02 Harald Harders (harald.harders@gmx.de) +- Adapted to Springer Vieweg Verlag + +2011/12/29 v2.01 Harald Harders (harald.harders@gmx.de) +- Only define \subtitle if not present already +- Fix later redefinition of \d for usage in math mode +- Added macro \emphindex for important index entryies + +2008/05/04 v2.00 Harald Harders (harald.harders@gmx.de) +- Adapted to Vieweg+Teubner Verlag + +2008/04/27 v1.40 Harald Harders (harald.harders@gmx.de) +- Adapted \signature for multiline texts + +2008/04/15 v1.39 Harald Harders (harald.harders@gmx.de) +- Indentation after the preface title fixed + +2006/04/20 v1.38 Harald Harders (harald.harders@gmx.de) +- Bug in BibTeX styles (format.crossref.editor) fixed + +2005/10/31 v1.37 Harald Harders (h.harders@tu-bs.de) +- Typeset abbreviated forenames with small space between them. +- Add new BiBTeX style with abbreviated forenames and long keywords. + +2005/10/28 v1.36 Harald Harders (h.harders@tu-bs.de) +- Fix bug using crossref with books in biliography. +- Fix sorting problem in the biliography. +- Introduce \btxlastname for formatting lastnames. + +2005/04/16 v1.35 Harald Harders (h.harders@tu-bs.de) +- Allow to number \paragraph and \subparagraph. + +2005/01/07 v1.34 Harald Harders (h.harders@tu-bs.de) +- Remove wasysym integrals before amsmath is loaded. + +2004/11/19 v1.33 Harald Harders (h.harders@tu-bs.de) +- Avoid to use the calc package since it causes problems with many + other packages. + +2004/08/19 v1.32 Harald Harders (h.harders@tu-bs.de) +- Move \ifhhcls@times outside definition of \appendixmore. +- Remove \rmfamily from pagehead since \normalfont does that already. + +2004/05/09 v1.31 Harald Harders (h.harders@tu-bs.de) +- Minor buxfix for titlepage. +- Do not compile cdcover if cd-cover.sty is not available. +- Fix documentation of \pdfoutput=0. + +2004/04/09 v1.30 Harald Harders (h.harders@tu-bs.de) +- Set PDF information only if PDF is produced. +- Write info file containing the same information as the PDF-info entries. +- Ignore class option `epsfigures'. +- Enable usage of \includegraphics with DVI output. +- Print error message when using ordinary latex (Use pdflatex with + \pdfoutput=0 for producing DVI). +- Redefine quotation marks to allow math mode and kerning. +- Use bold instead of bold extended with Times. +- Error rather than a warning for using not existing bold math. +- answer environment: Remove \begingroup and \endgroup because they + removed the correct linespacing. +- Make font in exercises adjustable. +- Improve spacing after title of theorem-like environment, subexercises, + and subanswers. +- Subanswers can have another linespacing than answers. +- Start prefaces on odd and even pages. +- Change from LPPL 1.2 to LPPL 1.3. + +2004/03/25 v1.21 Harald Harders (h.harders@tu-bs.de) +- Better top skip for important and longimportant when starting with + a theorem-like environment. Unfortunately, this does not work with + equations. +- Use correct framed.sty style if available, otherwise use workaround. + (At the moment, only an inoffical framed.sty version is available that + does not have the bug.) + +2004/03/07 v1.20 Harald Harders (h.harders@tu-bs.de) +- Enable use of the MathTime and MathTimePlus fonts if available (package + option "mathtime"). +- Bugfix: the mathcomp symbols (e.g., \tccelsius, \tcohm, \tcperthousand) + now use the correct fonts. +- With Times, many textcomp symbols are not available. Define substitutions + (sometimes with minor quality, then with a warning). This is done by the + package ptmxcomp.sty which someday may be available seperately. +- Bugfix: Avoid page break after title in theorem-like environments, + exercises, and answers. +- Warnings when using \oldstylenums. +- The titlepage now only types out how many figures, tables, and exercises + are used, if they really are used. +- Bugfix: The adjustment of many margins inside the important(*) and + longimportant environments is fixed again. +- Bugfix: Workaround for bug in framed.sty which caused a wrong margin + if only a theorem was inside longimportant. +- New environment longimportant* as important*. + +2003/12/17 v1.14 Harald Harders (h.harders@tu-bs.de) +- Avoid usage of \bgteubnerfileversion and \bgteubnerfiledate. +- New command \GetFileInfo (from url.sty). +- New abbreviated Bib styles (bgteuabbr.bst and bgteuabbr2.bst). + +2003/12/16 v1.13 Harald Harders (h.harders@tu-bs.de) +- Second Bib style with different name format (bgteupln2.bst). +- Use variable margins for theorem-like environments. +- Make delimiter for theorems configurable. +- Avoid negative margins of theorems grey boxes. +- Reduce margins of advanced and exercises in grey boxes. + +2003/11/13 v1.12 Harald Harders (h.harders@tu-bs.de) +- Problem with float.sty solved. +- Lists for new floats get the same layout as other lists. +- Redeclare captions of user-defined floats when using float.sty. + +2003/10/30 v1.10 Harald Harders (h.harders@tu-bs.de) +- Add proof environment. +- Smaller indentation for quote, quotation, example, etc. +- Spacing around important(*) and theorem-like environments improved. +- Limits for integrals below and above the sign in displayed equations. +- Command \qed for proofs introduced. +- Font size in theorem-like environments adjustable (global switch, + default is normalsize, now). +- Line break in ISBN prohibited. +- Use the same format for ISSN and ISBN. +- Class option `layoutraster' removed. + +2003/10/15 v1.07 Harald Harders (h.harders@tu-bs.de) +- Copyright changed to LPPL. +- Extended German LIESMICH file and new English README file. +- Distribution prepared for upload to CTAN (thus changed language in + ChangeLog to English). +- hhsubfigure package included. + +2003/10/12 v1.06 Harald Harders (h.harders@tu-bs.de) +- Paket hfoldsty statt hfo laden. +- Paket ginpenc statt hhinputenc laden. +- Befehl \tensor in \tens umbenannt. + +2003/09/25 v1.05 Harald Harders (h.harders@tu-bs.de) +- Auch ältere subfloat-Versionen erlaubt, die Unterschiede sind nur + marginal. + +2003/09/23 v1.04 Harald Harders (h.harders@tu-bs.de) +- CD-Hülle in die Hauptdistribution aufgenommen. +- Rücksetzen der Schreibmaschinenschrift auf Original cmtt nicht mehr + nötig. + +2003/09/18 v1.03 Harald Harders (h.harders@tu-bs.de) +- ifthen-Paket explizit laden. +- Times hat keine kursiven Kapitälchen, daher slantsc.sty dann nicht + laden. + +2003/09/17 v1.02 Harald Harders (h.harders@tu-bs.de) +- In allen englischen Dialekten \frenchspacing verwenden. +- \normalfont in Bildunterschriften und Fußnoten aufrufen. + +2003/09/16 v1.01 Harald Harders (h.harders@tu-bs.de) +- Befehl \acro für European Computer Modern serifenlos sowie kursive + Schreibmaschinenschrift mit \textsmaller statt \textsc. +- Römische Seitenzahlen (\frontmatter) für European Computer Modern in + Kapitälchen statt Versalien. + +2003/09/16 v1.00 Harald Harders (h.harders@tu-bs.de) +- Erste offizielle Version, an den Teubner Verlag geliefert. diff --git a/Master/texmf-dist/doc/latex/bgteubner/LIESMICH b/Master/texmf-dist/doc/latex/bgteubner/LIESMICH new file mode 100644 index 00000000000..2076f504da7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/LIESMICH @@ -0,0 +1,220 @@ + +Dokumentklasse zum Erstellen von Büchern für den Springer Vieweg Verlag +======================================================================= + + + +1. Einleitung +------------- + +Die Dokumentklasse »bgteubner.cls« habe ich im Auftrag des +Teubner-Verlags (der sich mittlerweile über Vieweg+Teubner in Springer +Vieweg umbenannt hat), Wiesbaden, programmiert, um den Büchern dieses +Verlags ein einheitliches Aussehen zu geben. Nach Absprache mit +dem Verlag darf ich die Dokumentklasse mit den zugehörigen +Dateien und Dokumentationen frei verfügbar machen. + +Da es sich um eine Vorlage für Bücher handelt, die möglichst gut +zusammen passen sollen, sind sehr viele Dinge (Layout usw.) fest +vorgegeben und können normalerweise durch den Anwender nicht +geändert werden. Sollten Sie diese Dokumentklasse für einen +anderen Zweck als einen Verlagsveröffentlichung beim Teubner-Verlag +verwenden, können dadurch ungewollte Einschränkungen entstehen +(beispielsweise bietet die Dokumentklasse nur die Papierformate +DIN A-5 und 17cm x 24cm an; es stehen nur die Schriftfamilien Times +oder European Computer Modern zur Verfügung). +Falls Sie Dateien Ihren Bedürfnissen anpassen wollen, müssen sie diese +entsprechend der LPPL-Lizenz vorher umbenennen. Beachten Sie dabei +bitte zusätzlich die Bestimmungen der Dateien bgteucls.dtx und +bgteubner.cls, die dort angegeben sind. + +Wenn Sie Dokumente mit Hilfe dieser Dokumentklasse erstellen, wird +in die PDF-Datei im Feld »Creator« ein Hinweis auf den Klassennamen +und den Teubner-Verlag abgelegt. Sollten Sie eine abgeleitete Klasse +entwickeln, müssen beide Einträge erhalten bleiben. Ich kann Ihnen +nach LPPL nicht verbieten, in Ihren Dokumenten den Eintrag zu +überschreiben, bitte Sie, auch im Namen des Verlags, aber darum, +dies zu unterlassen. + +Die Dokumentklasse verlangt bei einigen hinzugeladenen Paketen relativ +neue Versionen und lädt einige Pakete, die auf den meisten LaTeX- +Installationen wohl normalerweise nicht installiert sind. Eine Liste +aller benötigten Dateien ist in der Datei usefiles.txt enthalten. +Nicht alle Pakete werden, abhängig von den Klassenoptionen, immer +benötigt, auf eine genauere Aufschlüsselung verzichte ich jedoch. + +Falls Sie zu viele Pakete mit alten Versionen besitzen, könnte es +sich lohnen, eine moderne TeX-Distribution zu installieren. + +Die Dokumentationsdateien bgteubner-17x24-times.pdf und +bgteubner-17x24-cm.pdf (die sich nur in der verwendeten Brotschrift +unterscheiden) enthalten neben einer ausführlichen Anleitung +zur Verwendung der Dokumentklasse Installationsanweisungen für +TeXLive 8, wobei sich einige Dinge zur Herkunft bestimmter Dateien +auf die CD beziehen, die der Teubner-Verlag besitzt. Wenn diese +Dateien nicht in der Distribution der bgteubner-Klasse befinden, +sollten Sie sie auf einem CTAN-Server (z. B. ftp.dante.de) finden. + + + +2. Aufbau der Distribution und Installation +------------------------------------------- + +Der Aufbau der Distribution unterscheidet sich, je nachdem, ob Sie +eine CD vom Teubner-Verlag erhalten haben oder die Dokumentklasse von +CTAN (ftp-Server oder Abbild-CD) verwenden. + + +2.1 CTAN-Version +---------------- + +Das Bundle besitzt folgenden Aufbau: + +doc/ Dokumentation: + bgteubner-17x24-times.pdf Autorenrichtlinien (Times), + bgteucls.pdf Dokumentation der Dokumentklasse + (nur für Experten). +doc/src/ Quelltext der Dokumentation. +hhsubfigure/ Quelltext des hhsubfigure-Pakets. +source/ Quelltext der Dokumentklasse. + + +Zur Installation der Dokumentklasse und der Zusatzdateien müssen Sie in +das Verzeichnis source/ wechseln. Dort muss die Datei »bgteucls.ins« mit +LaTeX übersetzt werden. Dabei werden einige Dateien erzeugt, die in +unterschiedliche Verzeichnisse kopiert werden müssen. Wenn die TeX- +Distribution TDS-konform ist und der Lokale TeXMF-Baum $TEXMFLOCAL +heißt, sind dies: + + $TEXMFLOCAL/tex/latex/bgteubner/bgteubner.cls + $TEXMFLOCAL/tex/latex/ptmxcomp/ptmxcomp.sty + $TEXMFLOCAL/makeindex/bgteubner/bgteubner.ist + $TEXMFLOCAL/makeindex/bgteubner/bgteuglo.ist + $TEXMFLOCAL/makeindex/bgteubner/bgteuglochar.ist + $TEXMFLOCAL/bibtex/bst/bgteubner/bgteupln.bst + $TEXMFLOCAL/bibtex/bst/bgteubner/bgteupln2.bst + $TEXMFLOCAL/bibtex/bst/bgteubner/bgteuabbr.bst + $TEXMFLOCAL/bibtex/bst/bgteubner/bgteuabbr2.bst + +Wenn Sie unter Unix arbeiten, können Sie alle Schritte durch ein +einziges + make install +erledigen. + +Zusätzlich muss das hhsubfigure-Paket installiert werden. Dazu verwenden +Sie LaTeX im Verzeichnis hhsubfigure/ auf die Datei hhsubfigure.ins und +kopieren Sie anschließend die Datei hhsubfigure.sty in das Verzeichnis + + $TEXMFLOCAL/tex/latex/hhsubfigure/ + +Da sich das hhsubfigure-Paket nur intern von subfigure.sty unterscheidet, +verwenden Sie bitte die zu diesem Paket gehörige Dokumentation. + +Sicherlich werden Ihnen weitere Pakete fehlen, die von der Dokumentklasse +verwendet werden. Besorgen Sie sich diese bitte von eine CTAN-Server oder +der CTAN-CD. Einen Überblick über verwendete Pakete ist in usefiles.txt +enthalten. + + +2.2 Teubner-CD-Version +---------------------- + +Sollten Sie eine CD vom Teubner-Verlag erhalten haben, so hat sie +folgenden Aufbau: + +doc/ Dokumentation: + bgteubner-17x24-cm.pdf Autorenrichtlinien (European + Computer Modern), + bgteubner-17x24-times.pdf Autorenrichtlinien (Times), + bgteubner-17x24-mathtime.pdf Autorenrichtlinien (Times mit + MathTime und MathTimePlus), + bgteucls.pdf Dokumentation der Dokumentklasse + (nur für Experten). +doc/src/ Quelltext der Dokumentation. +pakete/ Klassen und Pakete, die in TeXLive 8 nicht oder nur veraltet + enthalten sind. +hhsubfigure/ Quelltext des hhsubfigure-Pakets. +source/ Quelltext der Dokumentklasse (nur für Experten). +alt/ Alte Versionen der Dokumentklasse. Dieses Verzeichnis kann + dann wichtig sein, wenn Sie ein Buch mit einer alten Version + übersetzt haben und sich beispielsweise die Umbrüche durch die + Verwendung einer neueren Version ändern, dies im speziellen + Fall aber unerwünscht ist. + +Konsultieren Sie bitte zur Installation die Dokumentation im PDF-Format. + + + +3. Update +--------- + +Falls Sie von einer älteren Version updaten, können Sie in der Datei +ChangeLog im Verzeichnis source/ oder am Ende der Datei bgteucls.pdf +im Verzeichnis doc/ nachlesen, was sich seit Ihrer alten Version +verändert hat. + +Von Version 1.07 auf 1.10 wurden einige Abstände verändert, so dass sich +viele Zeilen- und Seitenumbrüche verändern. Sollten Sie im Endstadium +einer Dokumenterstellung sein, kann es sinnvoll sein, das Klassenupdate +zu verschieben. + +Von Version 1.14 auf 1.21 wurden einige Randeinstellungen in den +important(*)- und lonimportant(*)-Umgebungen verändert, so dass es +zu Veränderungen des Umbruchs kommen kann. + + +Die folgenden Hinweise sind nur für Nutzer relevant, die schon eine +Version <1.06 verwendet haben: + +Wenn Sie bisher das Paket hfo.sty verwendet haben, so _ersetzen_ sie +dies bitte duch das hfoldsty-Paket. Dazu müssen Sie unterhalb des lokalen +TeXMF-Verzeichnisses (normalerweise »C:\Programme\TeXLive\texmf-local« +oder »/usr/TeX/texmf-local«) alle Verzeichnisse des Namens »hfo« löschen. +Dies sind im einzelnen »doc/latex/hfo«, »tex/latex/hfo«, +»fonts/vf/public/hfo« und »fonts/tfm/public/hfo«. Entpacken Sie +anschließend im lokalen TeXMF-Verzeichnis die Datei »hfoldsty-1_00.zip« +oder die entsprechende neuere Version. Abschließend muss noch die +Dateidatenbank aktualisiert werden, entweder über das Startmenü oder +durch den Programmaufruf »texhash«. + Aufgrund eines Namenskonflikts wurde der Befehl \tensor in der +Version 1.06 in \tens umbenannt. Bitte benennen Sie alle Aufrufe dieses +Befehls um. + + + +4. Lizenzbestimmungen (im englischen Originaltext) +-------------------------------------------------- + +bgteubner class bundle + +Copyright 2003--2012 Harald Harders + +This program may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3 +of this license or (at your opinion) any later version. +The latest version of this license is in + http://www.latex-project.org/lppl.txt +and version 1.3 or later is part of all distributions of LaTeX +version 1999/12/01 or later. + +This program consists of all files listed in manifest.txt. + +harald.harders@gmx.de + + +Für die Dateien bgteucls.dtx und bgteubner.cls gilt folgende +Zusatzbestimmung: + +If you modify a renamed copy of the files `bgteubner.cls' or +`bgteucls.dtx', you have to preserve some information in the +PDF /Creator entry. The following data have to remain: +- The name `bgteubner.cls', +- a hint that this class has been developed for the `Teubner + Verlag, Wiesbaden, Germany'. + + +-------------------------------------------------- + +Harald Harders +harald.harders@gmx.de +2012-04-07 diff --git a/Master/texmf-dist/doc/latex/bgteubner/Makefile.hhsubfigure b/Master/texmf-dist/doc/latex/bgteubner/Makefile.hhsubfigure new file mode 100644 index 00000000000..3cd64ab7557 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/Makefile.hhsubfigure @@ -0,0 +1,86 @@ +PACKAGE = hhsubfigure +######################################################################## +## LaTeX2e Makefile +## +## Update the following defines for your local configuration, +## +CONTRIB = /usr/local/lib/texmf/tex/contrib +## +DVIPS = dvips +GZIP = gzip +LATEX = latex +PDFLATEX = pdflatex +MAKEINDEX = makeindex +######################################################################## +## make [all] Generates the style (.sty) file and the +## documentation (.ps). If you don't have the +## required MAKEINDEX (along with `gglo.ist' and +## `gind.ist'), then change the first dependency +## of "all" from "fullps" to "ps" below. +## make [un]install Install or uninstall the style (.sty) file from +## the CONTRIB area. +## make [very]clean Clean out various auxillary files. "veryclean" +## cleans out more stuff. +######################################################################## +## make dvi Generate the *.dvi version of the documentation. +## make [full]ps Generate the documentation. The "fullps" version +## adds the change log and the cross-references. +## make idx Generate the change log and the cross-references +## (for fullps -- requires MAKEINDEX). +## make sty Generate the style (.sty) file. +######################################################################## +## make distribtion Builds a distribution (.tar.gz) file. +######################################################################## + +all: fullps clean + +install: sty + cp $(PACKAGE).sty $(CONTRIB) +uninstall: ; rm $(CONTRIB)/$(PACKAGE).sty +clean: ; -rm -f *.dvi *.log *.aux *.lof *.lot *.toc + -rm -f *.idx *.ind *.glo *.gls *.ilg *.out *~ +veryclean: clean + -rm -f *.sty *.cls *.ps *.pdf *.gz *pk ltxdoc.cfg + + +dvi: $(PACKAGE).dvi +fullps: dvi idx ps +idx: $(PACKAGE).ind $(PACKAGE).gls + $(LATEX) $(PACKAGE).dtx +ps: $(PACKAGE).ps +sty: $(PACKAGE).sty + +distribution: ; mkdir $(PACKAGE) + cp -p README Makefile $(PACKAGE) + cp -p $(PACKAGE).dtx $(PACKAGE).ins $(PACKAGE) + tar -cvf $(PACKAGE).tar ./$(PACKAGE) + rm -rf $(PACKAGE) + $(GZIP) -9 $(PACKAGE).tar + + +$(PACKAGE).aux: $(PACKAGE).dtx $(PACKAGE).sty + $(LATEX) $(PACKAGE).dtx + +$(PACKAGE).dvi: $(PACKAGE).dtx $(PACKAGE).sty $(PACKAGE).aux + $(LATEX) $(PACKAGE).dtx + $(LATEX) $(PACKAGE).dtx + $(LATEX) $(PACKAGE).dtx + +$(PACKAGE).glo: $(PACKAGE).dtx $(PACKAGE).sty + $(LATEX) $(PACKAGE).dtx + +$(PACKAGE).gls: $(PACKAGE).glo + $(MAKEINDEX) -s gglo.ist -o $(PACKAGE).gls $(PACKAGE).glo + +$(PACKAGE).idx: $(PACKAGE).dtx $(PACKAGE).sty + $(LATEX) $(PACKAGE).dtx + +$(PACKAGE).ind: $(PACKAGE).idx + $(MAKEINDEX) -s gind.ist $(PACKAGE).idx + +$(PACKAGE).ps: $(PACKAGE).dvi + $(DVIPS) -o $(PACKAGE).ps $(PACKAGE).dvi + +$(PACKAGE).sty: $(PACKAGE).dtx $(PACKAGE).ins + $(LATEX) $(PACKAGE).ins + diff --git a/Master/texmf-dist/doc/latex/bgteubner/Makefile.source b/Master/texmf-dist/doc/latex/bgteubner/Makefile.source new file mode 100644 index 00000000000..772c029bf0b --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/Makefile.source @@ -0,0 +1,110 @@ +## bgteubner class bundle +## +## Makefile +## Copyright 2003--2008 Harald Harders +# +# This program may be distributed and/or modified under the +# conditions of the LaTeX Project Public License, either version 1.3 +# of this license or (at your opinion) any later version. +# The latest version of this license is in +# http://www.latex-project.org/lppl.txt +# and version 1.3 or later is part of all distributions of LaTeX +# version 1999/12/01 or later. +# +# This program consists of all files listed in manifest.txt. + +SRCDIR=bgteubner +INSTALLDIR=`kpsewhich --expand-path='$$TEXMFLOCAL'`/tex/latex/bgteubner +PTMXCOMPDIR=`kpsewhich --expand-path='$$TEXMFLOCAL'`/tex/latex/ptmxcomp +DOCDIR=`kpsewhich --expand-path='$$TEXMFLOCAL'`/doc/latex/bgteubner +IDXDIR=`kpsewhich --expand-path='$$TEXMFLOCAL'`/makeindex/bgteubner +BSTDIR=`kpsewhich --expand-path='$$TEXMFLOCAL'`/bibtex/bst/bgteubner +VERSION=`latex getversion | grep '^VERSION' | sed 's/^VERSION \\(.*\\)\\.\\(.*\\)/\\1_\\2/'` + +.SUFFIXES: .sty .ins .dtx .dvi .ps .pdf .cls .bst .ist + +.ins.cls: + latex $< + +.dtx.pdf: + pdflatex $< + pdflatex $< + makeindex -s gind.ist $(*D)/$(*F) + makeindex -s gglo.ist -o $(*D)/$(*F).gls $(*D)/$(*F).glo + pdflatex $< + cp $(*D)/$(*F).pdf ../doc/ + +.dvi.ps: + dvips -o $(*D)/$(*F).ps $(*D)/$(*F) + + +all: bgteubner.cls bgteucls.pdf cdcover.pdf + +bgteubner.cls: bgteucls.ins bgteucls.dtx + latex bgteucls.ins + +bgteucls.pdf: bgteucls.dtx bgteucls.ins + +cdcover.pdf: cdcover.tex + @if [ "`kpsewhich cd-cover.sty`" ]; then pdflatex cdcover; fi + +clean: + @-rm -f bgteucls.glo bgteucls.gls bgteucls.idx bgteucls.ilg + @-rm -f bgteucls.ind bgteucls.aux bgteucls.log bgteucls.toc + @-rm -f bgteucls.dvi getversion.log + @-rm -f *~ + +distclean: clean + @-rm -f bgteucls.pdf + @-rm -f bgteubner.cls bgteubner.ist bgteuversion.tex + @-rm -f bgteuglo.ist bgteuglochar.ist bgteu*.bst + @-rm -f cdcover.aux cdcover.log cdcover.tex cdcover.pdf + +tar: all clean + if [ ! -f "../bgteubner" ]; then (cd .. ; ln -s source bgteubner ); fi + echo Generate bgteubner-$(VERSION).tar.gz + -rm -f bgteubner-$(VERSION).tar.gz + tar czCf .. bgteubner-$(VERSION).tar.gz \ + $(SRCDIR)/Makefile \ + $(SRCDIR)/bgteucls.dtx \ + $(SRCDIR)/bgteucls.ins \ + $(SRCDIR)/ptmxcomp.sty \ + $(SRCDIR)/ChangeLog \ + $(SRCDIR)/getversion.tex + rm -f getversion.log ../bgteubner + +install: all + if [ ! -d $(INSTALLDIR) ]; then mkdirhier $(INSTALLDIR); fi + if [ ! -d $(PTMXCOMPDIR) ]; then mkdirhier $(PTMXCOMPDIR); fi + if [ ! -d $(DOCDIR) ]; then mkdirhier $(DOCDIR); fi + if [ ! -d $(IDXDIR) ]; then mkdirhier $(IDXDIR); fi + if [ ! -d $(BSTDIR) ]; then mkdirhier $(BSTDIR); fi + install -m644 bgteubner.cls $(INSTALLDIR) + install -m644 ptmxcomp.sty $(PTMXCOMPDIR) + install -m644 bgteucls.pdf $(DOCDIR) + install -m644 ../doc/bgteubner-17x24-times.pdf $(DOCDIR)/bgteubner.pdf + install -m644 bgteubner.ist $(IDXDIR) + install -m644 bgteuglo.ist $(IDXDIR) + install -m644 bgteuglochar.ist $(IDXDIR) + install -m644 bgteu*.bst $(BSTDIR) + texhash + +zip: all + -@rm -f bgteubner-$(VERSION).zip + -@rm -f ../pakete/bgteubner-v*.zip + mkdirhier tex/latex/bgteubner + mkdirhier tex/latex/ptmxcomp + mkdirhier makeindex/bgteubner + mkdirhier bibtex/bst/bgteubner + mkdirhier doc/latex/bgteubner + mkdirhier source/latex/bgteubner + cp bgteubner.cls tex/latex/bgteubner/ + cp ptmxcomp.sty tex/latex/ptmxcomp/ + cp bgteubner.ist bgteuglo.ist bgteuglochar.ist makeindex/bgteubner/ + cp bgteu*.bst bibtex/bst/bgteubner/ + cp bgteucls.pdf ChangeLog doc/latex/bgteubner/ + cp Makefile bgteucls.ins bgteucls.dtx getversion.tex source/latex/bgteubner/ + zip -r bgteubner-$(VERSION).zip tex makeindex bibtex doc source + rm -rf tex makeindex bibtex doc source + cp bgteubner-$(VERSION).zip ../pakete + rm -f getversion.log diff --git a/Master/texmf-dist/doc/latex/bgteubner/Makefile.src b/Master/texmf-dist/doc/latex/bgteubner/Makefile.src new file mode 100644 index 00000000000..e6a4caad4ec --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/Makefile.src @@ -0,0 +1,138 @@ +## bgteubner class bundle +## +## Makefile +## Copyright 2003--2005 Harald Harders +# +# This program may be distributed and/or modified under the +# conditions of the LaTeX Project Public License, either version 1.3 +# of this license or (at your opinion) any later version. +# The latest version of this license is in +# http://www.latex-project.org/lppl.txt +# and version 1.3 or later is part of all distributions of LaTeX +# version 1999/12/01 or later. +# +# This program consists of all files listed in manifest.txt. + +LATEX= pdflatex '\pdfoutput=0\let\pdfoutput=\relax\input' +PDFLATEX= pdflatex + +TEX= \ + befehlsreferenz.tex \ + bgteubner.tex \ + bilder.tex \ + checkliste.tex \ + einleitung.tex \ + globales.tex \ + hyphenation.tex \ + installation.tex \ + literatur.bib \ + literatur.tex \ + optionen-advanced.tex \ + tex_aufruf.tex \ + tex_bilder.tex \ + tex_globales.tex \ + tex_textelemente.tex \ + tex_typographie.tex \ + tex_verzeichnisse.tex \ + textelemente.tex \ + verzeichnisse.tex \ + vorwort.tex \ + + +all: bgteubner-17x24-times.pdf + +cm: bgteubner-17x24-cm.pdf +times: bgteubner-17x24-times.pdf +mathtime: bgteubner-17x24-mathtime.pdf + +bgteubner-17x24-times.pdf: $(TEX) + -makeindex -c -g -s bgteuglochar.ist -o bgteubner-17x24-times.glscmd -t bgteubner-17x24-times.logcmd bgteubner-17x24-times.glocmd + -makeindex -c -g -s bgteubner.ist bgteubner-17x24-times + -bibtex bgteubner-17x24-times + $(PDFLATEX) bgteubner-17x24-times + +bgteubner-17x24-mathtime.pdf: $(TEX) + -makeindex -c -g -s bgteuglochar.ist -o bgteubner-17x24-mathtime.glscmd -t bgteubner-17x24-mathtime.logcmd bgteubner-17x24-mathtime.glocmd + -makeindex -c -g -s bgteubner.ist bgteubner-17x24-mathtime + -bibtex bgteubner-17x24-mathtime + $(PDFLATEX) bgteubner-17x24-mathtime + +bgteubner-17x24-cm.pdf: $(TEX) + -makeindex -c -g -s bgteuglochar.ist -o bgteubner-17x24-cm.glscmd -t bgteubner-17x24-cm.logcmd bgteubner-17x24-cm.glocmd + -makeindex -c -g -s bgteubner.ist bgteubner-17x24-cm + -bibtex bgteubner-17x24-cm + $(PDFLATEX) bgteubner-17x24-cm + +bgteubner-a5-times.pdf: $(TEX) + -makeindex -c -g -s bgteuglochar.ist -o bgteubner-a5-times.glscmd -t bgteubner-a5-times.logcmd bgteubner-a5-times.glocmd + -makeindex -c -g -s bgteubner.ist bgteubner-a5-times + -bibtex bgteubner-a5-times + $(PDFLATEX) bgteubner-a5-times + +bgteubner-a5-cm.pdf: $(TEX) + -makeindex -c -g -s bgteuglochar.ist -o bgteubner-a5-cm.glscmd -t bgteubner-a5-cm.logcmd bgteubner-a5-cm.glocmd + -makeindex -c -g -s bgteubner.ist bgteubner-a5-cm + -bibtex bgteubner-a5-cm + $(PDFLATEX) bgteubner-a5-cm + +class: + cd ../../source && make install + +clean: + -rm -f bgteubner-17x24-times.{bbl,blg,dvi,idx,ilg,ind,log,toc,glocmd,logcmd,glscmd,lox} + -rm -f bgteubner-17x24-mathtime.{bbl,blg,dvi,idx,ilg,ind,log,toc,glocmd,logcmd,glscmd,lox} + -rm -f bgteubner-17x24-cm.{bbl,blg,dvi,idx,ilg,ind,log,toc,glocmd,logcmd,glscmd,lox} + -rm -f bgteubner-a5-times.{bbl,blg,dvi,idx,ilg,ind,log,toc,glocmd,logcmd,glscmd,lox} + -rm -f bgteubner-a5-cm.{bbl,blg,dvi,idx,ilg,ind,log,toc,glocmd,logcmd,glscmd,lox} + -rm -f *.aux + +distclean: clean + -rm -f bgteubner-17x24-times.pdf + -rm -f bgteubner-17x24-mathtime.pdf + -rm -f bgteubner-17x24-cm.pdf + -rm -f bgteubner-a5-times.pdf + -rm -f bgteubner-a5-cm.pdf + -rm -f bgteubner-17x24-times.info + -rm -f bgteubner-17x24-mathtime.info + -rm -f bgteubner-17x24-cm.info + -rm -f bgteubner-a5-times.info + -rm -f bgteubner-a5-cm.info + +install: + $(PDFLATEX) bgteubner-17x24-times + bibtex bgteubner-17x24-times + $(PDFLATEX) bgteubner-17x24-times + makeindex -c -g -s bgteuglochar.ist -o bgteubner-17x24-times.glscmd \ + -t bgteubner-17x24-times.logcmd bgteubner-17x24-times.glocmd + makeindex -c -g -s bgteubner.ist bgteubner-17x24-times + $(PDFLATEX) bgteubner-17x24-times + $(PDFLATEX) bgteubner-17x24-times + makeindex -c -g -s bgteubner.ist bgteubner-17x24-times + $(PDFLATEX) bgteubner-17x24-times + cp -f bgteubner-17x24-times.pdf .. + echo '' + $(PDFLATEX) bgteubner-17x24-cm + bibtex bgteubner-17x24-cm + $(PDFLATEX) bgteubner-17x24-cm + makeindex -c -g -s bgteuglochar.ist -o bgteubner-17x24-cm.glscmd \ + -t bgteubner-17x24-cm.logcmd bgteubner-17x24-cm.glocmd + makeindex -c -g -s bgteubner.ist bgteubner-17x24-cm + $(PDFLATEX) bgteubner-17x24-cm + $(PDFLATEX) bgteubner-17x24-cm + makeindex -c -g -s bgteubner.ist bgteubner-17x24-cm + $(PDFLATEX) bgteubner-17x24-cm + cp -f bgteubner-17x24-cm.pdf .. + echo '' + $(PDFLATEX) bgteubner-17x24-mathtime + bibtex bgteubner-17x24-mathtime + $(PDFLATEX) bgteubner-17x24-mathtime + makeindex -c -g -s bgteuglochar.ist \ + -o bgteubner-17x24-mathtime.glscmd \ + -t bgteubner-17x24-mathtime.logcmd \ + bgteubner-17x24-mathtime.glocmd + makeindex -c -g -s bgteubner.ist bgteubner-17x24-mathtime + $(PDFLATEX) bgteubner-17x24-mathtime + $(PDFLATEX) bgteubner-17x24-mathtime + makeindex -c -g -s bgteubner.ist bgteubner-17x24-mathtime + $(PDFLATEX) bgteubner-17x24-mathtime + cp -f bgteubner-17x24-mathtime.pdf .. diff --git a/Master/texmf-dist/doc/latex/bgteubner/README b/Master/texmf-dist/doc/latex/bgteubner/README new file mode 100644 index 00000000000..48e78265603 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/README @@ -0,0 +1,181 @@ + +Document class for producing books for the Teubner Verlag, Germany +================================================================== + + +1. Introduction +--------------- + +I have programmed the "bgteubner.cls" document class by order of the +Teubner Verlag (which was renamed via Vieweg+Teubner to Springer Vieweg), +Wiesbaden, Germany. This has been done to ensure that +books of this publisher have a unique layout. The publisher has +allowed me to distribute the document class with auxilliary files +and documentation freely. Unfortunately, most of the documentation +is only available in German. + +Since the document class is intended to generate a unique layout, many +things (layout etc.) are fixed and cannot be altered by the used. +If you want to use the document class for another purpose than publishing +with the Teubner Verlag, this may arrise unwanted restrictions +(For instance, the document class provides only two paper sizes: +DIN A-5 and 17cm x 24cm; only two font families are supported: +Times and European Computer Modern). If you want to adapt some files +you have to rename them before, according to the LPPL license. Please +do it also according to the additional remarks in the files bgteucls.dtx +and bgteubner.cls. + +When you produce documents using this document class, the PDF file gets +a "Creator" entry that includes the class name and the name of the +Teubner Verlag. If you modify a copy of this class, these texts have +to be preserved. I cannot forbid you (according to LPPL) to overwrite +this entry in the document itself. But please don't do it since the +publisher has asked me to preserve that entry. + +The document class needs some additional packages, partly relatively +new ones, partly packages that are not installed on most TeX +installations. A list of needed packages is contained in usefiles.txt. +Depending on the class options, not all packages are needes; but I +will not specify it in more detail. + +If you recognize that many packages of your installation are too old +it may be worth to install a new distribution. + +The German documentation files bgteubner-17x24-times.pdf and +bgteubner-17x24-cm.pdf describe how to use the document class. In +addition, they include installation instructions for the TeXLive 8 +distribution. + + + +2. Files in the distribution and installation +--------------------------------------------- + +The distribution of the bgteubner bundle depends on how you got it +(did you get it from CTAN or as CD by the Teubner-Verlag?). + + +2.1 CTAN version +---------------- + +The bundle has following directories: + +doc/ Documentation (in German): + bgteubner-17x24-times.pdf Author guidelines (Times font), + bgteucls.pdf Documentation of the document class + itself (only experts). +doc/src/ Source code of the documentation. +hhsubfigure/ Source code of the hhsubfigure package. +source/ Source code of the document class. + + +To install the document class and the auxilliary files, you have to +change to the source/ directory. Run LaTeX on "bgteucls.ins". This +produces a couple of files that have to be copied to special directories. +If your TeX installation complies to the TDS the targets for theses files +are: + + $TEXMFLOCAL/tex/latex/bgteubner/bgteubner.cls + $TEXMFLOCAL/tex/latex/ptmxcomp/ptmxcomp.sty + $TEXMFLOCAL/makeindex/bgteubner/bgteubner.ist + $TEXMFLOCAL/makeindex/bgteubner/bgteuglo.ist + $TEXMFLOCAL/makeindex/bgteubner/bgteuglochar.ist + $TEXMFLOCAL/bibtex/bst/bgteubner/bgteupln.bst + $TEXMFLOCAL/bibtex/bst/bgteubner/bgteupln2.bst + $TEXMFLOCAL/bibtex/bst/bgteubner/bgteuabbr.bst + $TEXMFLOCAL/bibtex/bst/bgteubner/bgteuabbr2.bst + +If you use Unix you simply may use + make install +for everything. + +In addition, the hhsubfigure package has to be installed. Therefore, run +latex on hhsubfigure.ins in the hhsubfigure/ directory. Then, copy +hhsubfigure.sty to the + + $TEXMFLOCAL/tex/latex/hhsubfigure/ + +directory. Since usage of the hhsubfigure and the subfigure.sty packages +is identical, refer to the subfigure documentation. + +Surely, more needed packages are not installed on your system. Please have +a look to usefiles.txt to find out which you still need. You can download +them from the CTAN servers. + + +2.2 Teubner CD version +---------------------- + +If you have a CD of the Teubner Verlag, you have following directories: + +doc/ Documentation (in German): + bgteubner-17x24-cm.pdf Author guidelines (European + Computer Modern font), + bgteubner-17x24-times.pdf Author guidelines (Times font), + bgteubner-17x24-mathtime.pdf Author guidelines (Times font + with MathTime mathematics), + bgteucls.pdf Documentation of the document class + itself (only experts). +doc/src/ Source code of the documentation. +hhsubfigure/ Source code of the hhsubfigure package. +source/ Source code of the document class. +pakete/ Classes and packages that are not contained in TeXLive 8 or + that are too old there. +alt/ Old versions of the document class. + +Since it is unlikely that you get a CD by the Teubner Verlag an don't +speak German, there is no separat installation guide here. + + + +3. Update +--------- + +If you are updating from an older version, you can find out the +changes in the file source/ChangeLog or at the end of the file +doc/bgteucls.pdf. + +Many spacings have been changed from version 1.07 to 1.10. If you are +nearly ready with producing a document you better postpone the update. + +From version 1.14 to 1.21, some margins had to be changed in the +important(*) and longimportant(*) environments. Thus, changes of the +line and page breaks are possible there. + + +4. License +---------- + +bgteubner class bundle + +Copyright 2003--2012 Harald Harders + +This program may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.3 +of this license or (at your opinion) any later version. +The latest version of this license is in + http://www.latex-project.org/lppl.txt +and version 1.3 or later is part of all distributions of LaTeX +version 1999/12/01 or later. + +This program consists of all files listed in manifest.txt. + +harald.harders@gmx.de + + +For the files bgteucls.dtx and bgteubner.cls, there is an additional +license agreement: + +If you modify a renamed copy of the files `bgteubner.cls' or +`bgteucls.dtx', you have to preserve some information in the +PDF /Creator entry. The following data have to remain: +- The name `bgteubner.cls', +- a hint that this class has been developed for the `Teubner + Verlag, Wiesbaden, Germany'. + + +-------------------------------------------------- + +Harald Harders +harald.harders@gmx.de +2012-04-07 diff --git a/Master/texmf-dist/doc/latex/bgteubner/README.hhsubfigure b/Master/texmf-dist/doc/latex/bgteubner/README.hhsubfigure new file mode 100644 index 00000000000..7cb911215d5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/README.hhsubfigure @@ -0,0 +1,28 @@ +README +------ + +This directory contains version 2.1.4a of the hhsubfigure package. +This is a slightly modified version of the `subfigure' package by +Steven Douglas Cochran. The origianl package can be downloaded from +<ftp://ftp.dante.de/tex-archive/macros/latex/contrib/subfigure/>. + +MANIFEST: +--------- +Makefile UNIX makefile to extract the subfigure package + and related material. +README This file. +subfigure.dtx The documented subfigure package. +subfigure.ins The subfigure package installation file. + +For the original package `subfigure' refer to +<ftp://ftp.dante.de/tex-archive/macros/latex/contrib/subfigure/>. + +Since the hhsubfigure package is only intended to be used with +the bgteubner document class, the README file has been shortened. +When Steven will have distributed the (announced) successor of the +subfigure package, this package is likely to be deleted from CTAN. +Thus, please don't use it without the bgteubner document class. + +Harald Harders +h.harders@tu-bs.de +2003-10-15 diff --git a/Master/texmf-dist/doc/latex/bgteubner/ToDo b/Master/texmf-dist/doc/latex/bgteubner/ToDo new file mode 100644 index 00000000000..c6709a57ed5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/ToDo @@ -0,0 +1,8 @@ +- Use fix-cm.sty for European Computer Modern. +- Correct manifest.txt and usefiles.txt. +- Add \preface* command that does not perform a pagebreak. +- Add package `leadmark' to move !, ?, :, and ; away form the word. +- Proof natbib section from hhdiss.cls and maybe include it to bgteubner.cls. + What does it do exactly? +- Adapt bgteubner.cls to recent version of scrbook.cls +- Fix figure and table numbering in case sub-numbering etc. are used. diff --git a/Master/texmf-dist/doc/latex/bgteubner/anhang.tex b/Master/texmf-dist/doc/latex/bgteubner/anhang.tex new file mode 100644 index 00000000000..6de6b6d8c18 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/anhang.tex @@ -0,0 +1,18 @@ +% +% bgteubner class bundle +% +% anhang.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== + +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/befehlsreferenz.tex b/Master/texmf-dist/doc/latex/bgteubner/befehlsreferenz.tex new file mode 100644 index 00000000000..a31bd1c4dd3 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/befehlsreferenz.tex @@ -0,0 +1,134 @@ +% +% bgteubner class bundle +% +% befehlsreferenz.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\glossarycmd{advanced@\cs{advanced}}{eingerückter Textblock für weitergehende Dinge (\ref{sec:tex:saetze})}% +\glossarycmd{answer@\cs{answer}}{nummerierte Lösung (\ref{sec:tex:aufgaben})}% +\glossarycmd{answer*@\cs{answer*}}{unnummerierte Lösung (\ref{sec:tex:aufgaben})}% +\glossarycmd{author@\cs{author}}{Autoren (\ref{sec:tex:aufbau})}% +\glossarycmd{backmatter@\cs{backmatter}}{Schluss des Buchs (wird ignoriert)}% +\glossarycmd{bigskip@\cs{bigskip}}{Abschnitt mit großem Abstand (\ref{sec:tex:teile})}% +\glossarycmd{cases*@\env{cases*}}{Fallunterscheidung mit schließender Klammer (\ref{sec:tex:mathematik})}% +\glossarycmd{d@\cs{d}}{Mathematik: Differentialoperator $\d$, Text: Punkt unter dem folgenden Zeichen \d a (\ref{sec:tex:mathematik})}% +\glossarycmd{D@\cs{D}}{Differenzoperator $\D$ (\ref{sec:tex:mathematik})}% +\glossarycmd{dedication@\cs{dedication}}{Widmung (\ref{sec:tex:aufbau})}% +\glossarycmd{e@\cs{e}}{eulersche Zahl (\ref{sec:tex:mathematik})}% +\glossarycmd{edition@\cs{edition}}{Auf"|lage des Buchs (\ref{sec:tex:aufbau})}% +\glossarycmd{engl@\cs{engl}}{fremdsprachiger Begriff + (\ref{sec:tex:auszeichnungen})}% +\glossarycmd{equivalent@\cs{equivalent}}{Entspricht"=Zeichen: + $\equivalent$ (\ref{sec:tex:mathematik})}% +\glossarycmd{exercise@\env{exercise}}{nummerierte Aufgabe (\ref{sec:tex:aufgaben})}% +\glossarycmd{exercise*@\env{exercise*}}{unnummerierte Aufgabe (\ref{sec:tex:aufgaben})}% +\glossarycmd{frontmatter@\cs{frontmatter}}{Titelei des Buchs (\ref{sec:tex:aufbau})}% +\glossarycmd{glossary@\cs{glossary\meta{Name}}}{definiert einen Eintrag für einen Glossar des Typs \meta{Name} (\ref{sec:tex:glossary})}% +\glossarycmd{glossaryname@\cs{glossary\meta{Name}name}}{definiert den Überschriftsnamen für einen Glossar des Typs \meta{Name} (\ref{sec:tex:glossary})}% +\glossarycmd{glossarypreamble@\cs{glossary\meta{Name}preamble}}{definiert die Präambel eines Glossars des Typs \meta{Name} (\ref{sec:tex:glossary})}% +\glossarycmd{grad@\cs{grad}}{Gradient (\ref{sec:tex:mathematik})}% +\glossarycmd{important@\env{important}}{grau hinterlegte Box (mit Text + beginnend) (\ref{sec:tex:important})}% +\glossarycmd{important*@\env{important*}}{grau hinterlegte Box (mit + einer abgesetzten Formel beginnend) (\ref{sec:tex:important})}% +\glossarycmd{longimportant@\env{longimportant}}{lange grau hinterlegte + Box (mit Text beginnend) (\ref{sec:tex:important})}% +\glossarycmd{longimportant*@\env{longimportant*}}{lange grau hinterlegte + Box (\ref{sec:tex:important})}% +\glossarycmd{listofexamples@\cs{listofexamples}}{Beispielverzeichnis + (\ref{sec:tex:beispielverzeichnis})}% +\glossarycmd{listofexercises@\cs{listofexercises}}{Aufgabenverzeichnis + (\ref{sec:tex:beispielverzeichnis})}% +\glossarycmd{listofdefinitions@\cs{listofdefinitions}}{Verzeichnis der + Definitionen (\ref{sec:tex:beispielverzeichnis})}% +\glossarycmd{listofproofs@\cs{listofproofs}}{Verzeichnis der + Beweise (\ref{sec:tex:beispielverzeichnis})}% +\glossarycmd{listoftheorems@\cs{listoftheorems}}{Verzeichnis der Umgebungen einer Theoremart (\ref{sec:tex:saetze})}% +\glossarycmd{listoffigures@\cs{listoffigures}}{Abbildungsverzeichnis + (\ref{sec:tex:abbildungsverzeichnis})}% +\glossarycmd{listoftables@\cs{listoftables}}{Tabellenverzeichnis + (\ref{sec:tex:abbildungsverzeichnis})}% +\glossarycmd{mainmatter@\cs{mainmatter}}{Hauptteil des Buchs (\ref{sec:tex:aufbau})}% +\glossarycmd{makeglossary@\cs{makeglossary}}{definiert einen neuen Typ an glossarähnlicher Liste wie z.\,B.\ dieser Befehlsreferenz (\ref{sec:tex:glossary})}% +\glossarycmd{matr@\cs{matr}}{Matrix (\ref{sec:tex:mathematik})}% +\glossarycmd{medskip@\cs{medskip}}{Abschnitt mit mittlerem Abstand (\ref{sec:tex:teile})}% +\glossarycmd{new@\cs{new}}{neu eingeführter Begriff + (\ref{sec:tex:auszeichnungen})}% +\glossarycmd{newtheorem@\cs{newtheorem}}{Einrichten einer neuen theoremartigen Umgebung (\ref{sec:tex:saetze})}% +\glossarycmd{nomathindent@\env{nomathindent}}{Einzug von abgesetzten + Gleichungen reduzieren (\ref{sec:tex:mathematik})}% +\glossarycmd{person@\cs{person}}{Personenname + (\ref{sec:tex:auszeichnungen})}% +\glossarycmd{printglossary@\cs{printglossary\meta{Name}}}{Setzen eines Glossars des Typs \meta{Name} (\ref{sec:tex:glossary})}% +\glossarycmd{smallskip@\cs{smallskip}}{Abschnitt mit kleinem Abstand (\ref{sec:tex:teile})}% +\glossarycmd{subanswer@\env{subanswer}}{nummerierte Lösung (\ref{sec:tex:aufgaben})}% +\glossarycmd{subanswer*@\env{subanswer*}}{unnummerierte Lösung (\ref{sec:tex:aufgaben})}% +\glossarycmd{subexercise@\env{subexercise}}{Nummerierte Aufgabe (\ref{sec:tex:aufgaben})}% +\glossarycmd{subexercise*@\env{subexercise*}}{unnummerierte Aufgabe (\ref{sec:tex:aufgaben})}% +\glossarycmd{subtask@\env{subtask}}{Teilaufgaben (\ref{sec:tex:aufgaben})}% +\glossarycmd{subtaskref@\cs{subtaskref}}{Referenz auf eine Teilaufgabe (\ref{sec:tex:aufgaben})}% +\glossarycmd{subtitle@\cs{subtitle}}{Untertitel des Buchs (\ref{sec:tex:aufbau})}% +\glossarycmd{tensor@\cs{tensor}}{Tensor höherer Stufe (\ref{sec:tex:mathematik})}% +\glossarycmd{theglossary@\env{theglossary}}{manuell eingegebener Glossar (\ref{sec:tex:glossary})}% +\glossarycmd{example@\env{example}}{nummieriertes, abgesetztes Beispiel + (\ref{sec:tex:saetze})}% +\glossarycmd{example*@\env{example*}}{unnummeriertes, abgesetztes Beispiel (\ref{sec:tex:saetze})}% +\glossarycmd{definition@\env{definition}}{nummerierte, abgesetzte + Definition (\ref{sec:tex:saetze})}% +\glossarycmd{definition*@\env{definition*}}{unnummerierte, abgesetzte + Definition (\ref{sec:tex:saetze})}% +\glossarycmd{proof@\env{proof}}{nummerierte, abgesetzte + Beweise (\ref{sec:tex:saetze})}% +\glossarycmd{proof*@\env{proof*}}{unnummerierte, abgesetzte + Beweise (\ref{sec:tex:saetze})}% +\glossarycmd{qed@\cs{qed}}{rechtsbündiger schwarzer Kasten zum + Abschluss eines Beweises (\ref{sec:tex:saetze})}% +\glossarycmd{qedname@\cs{qedname}}{Text am Ende eines Beweises + (\ref{sec:tex:saetze})}% +\glossarycmd{title@\cs{title}}{Titel des Buchs (\ref{sec:tex:aufbau})}% +\glossarycmd{tr@\cs{tr}}{Spur eines Tensors (\ref{sec:tex:mathematik})}% +\glossarycmd{signature@\cs{signature}}{Unterschrift der Autoren für ein Vorwort (\ref{sec:vorwort})}% +\glossarycmd{vec@\cs{vec}}{Vektor (\ref{sec:tex:mathematik})}% +\glossarycmd{acro@\cs{acro}}{druckt eine Abkürzung aus + Versalien etwas kleiner (\ref{sec:tex:acro})}% +\glossarycmd{version@\cs{version}}{prüft, ob die richtige Version von + \texttt{bgteubner.cls} verwendet wird (\ref{sec:fortgeschrittene})}% +\glossarycmd{preface@\cs{preface}}{Überschrift für Vorworte (\ref{sec:vorwort})}% +\glossarycmd{f@\cs{f}}{im Index ein "`f"' an eine Seitenzahl hängen + (\ref{sec:tex_index})}% +\glossarycmd{ff@\cs{ff}}{im Index ein "`ff"' an eine Seitenzahl hängen + (\ref{sec:tex_index})}% +\glossarycmd{textbff@\cs{textbff}}{im Index ein "`f"' an eine fettgedruckte + Seitenzahl hängen (\ref{sec:tex_index})}% +\glossarycmd{textbfff@\cs{textbfff}}{im Index ein "`ff"' an eine fettgedruckte + Seitenzahl hängen (\ref{sec:tex_index})}% +\glossarycmd{subind@\cs{subind}}{Querverweis auf einen Unterpunkt im + Index (\ref{sec:tex_index})}% +\glossarycmd{index@\cs{index}}{Indexeintrag erzeugen + (\ref{sec:tex_index})}% +\glossarycmd{theoremdelimiter@\env{theoremdelimiter}}{den Doppelpunkt + nach der Überschrift einer theoremartigen Umgebung ersetzen + (\ref{sec:tex:theorem})}% +\glossarycmd{settheoremmargin@\cs{settheoremmargin}}{Einrückung + theoremartiger Umgebungen verändern (\ref{sec:tex:theorem})}% +\glossarycmd{exercisedelimiter@\env{exercisedelimiter}}{den Doppelpunkt + nach der Überschrift einer Aufgabe oder Lösung ersetzen + (\ref{sec:tex:aufgaben})}% + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: bgteubner.tex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/beispiel1.tex b/Master/texmf-dist/doc/latex/bgteubner/beispiel1.tex new file mode 100644 index 00000000000..7e149bda7c8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/beispiel1.tex @@ -0,0 +1,58 @@ +% ========================================================= +\documentclass[english,ngerman,ulinevec]{bgteubner} +% ========================================================= +% Einstellung des passenden Zeichensatzes +% Für Windows: +%\usepackage[ansinew]{inputenc} +% Für Unix und Linux: +\usepackage[latin1]{inputenc} +% ========================================================= +% Pakete laden: +\usepackage{dcolumn} +% ========================================================= +% Stichwortverzeichnis erzeugen: +\makeindex +% ========================================================= +\begin{document} +% ========================================================= +% römische Nummerierung +\frontmatter +% ========================================================= +% Titel des Buches: +\title{Erstellen von Büchern für den Teubner Verlag} +% Untertitel: +\subtitle{Autorenrichtlinien und Installationsanleitung} +% Angabe der Autoren +\author{Harald Harders} +% Auflagennummer: +\auflage{1} +% ========================================================= +% Titelseite erzeugen +\maketitle +% ========================================================= +% Vorwort +\include{vorwort} +% Inhaltsverzeichnis +\tableofcontents +% Arabische Nummerierung, von 1 beginnend +\mainmatter +% ========================================================= +% Kapitel +\include{kapitel1} +\include{kapitel2} +\include{kapitel3} +\include{kapitel4} +\include{kapitel5} +\include{kapitel6} +% ========================================================= +% Anhang: +\appendix +% ========================================================= +\include{anhang1} +\include{anhang2} +% ========================================================= +\bibliographystyle{bgteupln} +\bibliography{literatur1,literatur2} +% ========================================================= +\end{document} +% ========================================================= diff --git a/Master/texmf-dist/doc/latex/bgteubner/bgteubner-17x24-cm.tex b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-17x24-cm.tex new file mode 100644 index 00000000000..1c8fd56dae0 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-17x24-cm.tex @@ -0,0 +1,21 @@ +% +% bgteubner class bundle +% +% bgteubner-17x24-cm.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\PassOptionsToClass{cm}{bgteubner} +%\PassOptionsToClass{a5paper}{bgteubner} +% =================================================================== +\input{bgteubner} +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/bgteubner-17x24-mathtime.tex b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-17x24-mathtime.tex new file mode 100644 index 00000000000..4dbd9d5b1ae --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-17x24-mathtime.tex @@ -0,0 +1,21 @@ +% +% bgteubner class bundle +% +% bgteubner-17x24-mathtime.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\PassOptionsToClass{mathtime}{bgteubner} +%\PassOptionsToClass{a5paper}{bgteubner} +% =================================================================== +\input{bgteubner} +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/bgteubner-17x24-times.tex b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-17x24-times.tex new file mode 100644 index 00000000000..beda24d1dc0 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-17x24-times.tex @@ -0,0 +1,21 @@ +% +% bgteubner class bundle +% +% bgteubner-17x24-times.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +%\PassOptionsToClass{cm}{bgteubner} +%\PassOptionsToClass{a5paper}{bgteubner} +% =================================================================== +\input{bgteubner} +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/bgteubner-a5-cm.tex b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-a5-cm.tex new file mode 100644 index 00000000000..714cf22fda6 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-a5-cm.tex @@ -0,0 +1,21 @@ +% +% bgteubner class bundle +% +% bgteubner-a5-cm.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\PassOptionsToClass{cm}{bgteubner} +\PassOptionsToClass{a5paper}{bgteubner} +% =================================================================== +\input{bgteubner} +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/bgteubner-a5-times.tex b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-a5-times.tex new file mode 100644 index 00000000000..42e6df4d02a --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-a5-times.tex @@ -0,0 +1,21 @@ +% +% bgteubner class bundle +% +% bgteubner-a5-times.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +%\PassOptionsToClass{cm}{bgteubner} +\PassOptionsToClass{a5paper}{bgteubner} +% =================================================================== +\input{bgteubner} +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/bgteubner-with-hyperref.tex b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-with-hyperref.tex new file mode 100644 index 00000000000..da7cc945501 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bgteubner-with-hyperref.tex @@ -0,0 +1,395 @@ +% +% bgteubner class bundle +% +% bgteubner.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +%\newif\iffuerentwickler +%\fuerentwicklertrue +% =================================================================== +%\PassOptionsToPackage{draft}{graphicx} +% =================================================================== +%\PassOptionsToClass{layoutraster}{bgteubner} +%\PassOptionsToClass{draft}{bgteubner} +%\PassOptionsToClass{headingoutside}{bgteubner} +%\PassOptionsToClass{tocleft}{bgteubner} +%\PassOptionsToClass{a5paper}{bgteubner} +%\PassOptionsToClass{boldvec}{bgteubner} +\PassOptionsToClass{titlepage}{bgteubner} +\PassOptionsToClass{ulinevec}{bgteubner} +%\PassOptionsToClass{exercisetotoc}{bgteubner} +%\PassOptionsToClass{smalltheorem}{bgteubner} +\documentclass[english,ngerman,greybox]{bgteubner} +% =================================================================== +\listfiles +\makeindex +% =================================================================== +% Einstellung des passenden Zeichensatzes +% Für Windows: +%\usepackage[ansinew]{inputenc} +% Für Unix und Linux +\usepackage[latin1]{inputenc} +% =================================================================== +% Wenn Sie im Ausdruck sehen wollen, wie das Dokument auf dem Papier +% im Zielformat aussieht, aktivieren Sie eine der beiden folgenden +% Möglichkeiten: +%\usepackage[frame]{crop} +%\usepackage[cam,a4,center]{crop} +% =================================================================== +%\usepackage[activate]{pdfcprot} +\usepackage{verbatim} +%\usepackage{url} +\usepackage{printlen}[2001/12/09] +\usepackage[gen]{eurosym} +\usepackage[nice]{nicefrac} +\usepackage{float} +% =================================================================== +\usepackage[draft,margin]{fixme} +% =================================================================== +\newif\ifhhclshyperref +\hhclshyperreftrue +\ifhhclshyperref + %%%\PassOptionsToPackage{hyperref}{naturalnames=true} + \PassOptionsToPackage{hyperref}{hypertexnames=false} + \PassOptionsToPackage{hyperref}{backref=false} + \PassOptionsToPackage{hyperref}{bookmarks=true} + \PassOptionsToPackage{hyperref}{bookmarksnumbered=true} + \usepackage[debug]{hyperref} + \hypersetup{% + pdfpagemode=UseOutlines,% + pdfborder={0 0 0}% + } + \makeatletter + \def\toclevel@part{0} + \def\@addpart[#1]#2{% + \@spart{#2}% + \addcontentsline{toc}{part}{#1}% + } + \providecommand*{\toclevel@example}{8}% + \providecommand*{\toclevel@@exercise}{8}% + \providecommand*{\toclevel@exercise}{8}% + \providecommand*{\toclevel@@answer}{8}% + \providecommand*{\toclevel@answer}{8}% + \providecommand*{\toclevel@graphics}{8}% + \providecommand*{\toclevel@proof}{8}% + \makeatother +\else + \usepackage[implicit=false]{hyperref} + \hypersetup{% + pdfpagemode=None% + } + \makeatletter + \IfFileExists{\jobname.out}{% + \ClassError{bgteubner}{File `\jobname.out' exists.\MessageBreak + Delete it!\@gobble}{% + LaTeX run without hyperlinks does not work when the + file\MessageBreak + `\jobname.out' exists.\MessageBreak + You have to delete it and rerun again.\MessageBreak + You should also delete all `aux' files.}% + }{} + \makeatother +\fi +\let\url=\nolinkurl +\pdfstringdef\acro{} +\hypersetup{% + pdftitle={Schreiben mit \LaTeX},% + pdfsubject={Untertitel},% + pdfauthor={Harry},% + pdfcreator={bgteubner},% + pdfproducer={Harry nochmal},% + pdfkeywords={eins zwei drei},% + pdfstartpage={3},% + unicode +} +% =================================================================== +\input{hyphenation} +% =================================================================== +\newcommand*\feinschliff[4]{% + \ifafive{\iftimes{#3}{#4}}{\iftimes{#1}{#2}}% +} +% =================================================================== +\let\np=\numprint +\def\ch#1{\ensuremath{\mathrm{#1}}} +\newcommand\TeXLive{\TeX Live} +\begingroup +\shorthandon{"} +\gdef\pdfLaTeX{\textsc{pdf}"-\LaTeX} +\endgroup +\DeclareRobustCommand\BibTeX{\textsc{Bib}\TeX} +% =================================================================== +\feinschliff{% + \addtocontents{toc}{\protect\enlargethispage{-2\protect\baselineskip}}% +}{% + \addtocontents{toc}{\protect\enlargethispage{-2\protect\baselineskip}}% +}{}{} +% =================================================================== +\uselengthunit{mm} +% =================================================================== +\makeatletter +\newcommand\cmoldstylenums[1]{% + \ifhhcls@times + \begingroup + \spaceskip\fontdimen\tw@\font + \usefont{OML}{\rmdefault}{\f@series}{it}% + \mathgroup\symletters #1% + \endgroup + \else + \oldstylenums{#1}% + \fi +} +\newcommand\cmnewstylenums[1]{% + \ifhhcls@times + \begingroup + \spaceskip\fontdimen\tw@\font + \renewcommand\rmdefault{cmr}% + \usefont{T1}{\rmdefault}{\f@series}{n}% + \mathgroup\symletters #1% + \endgroup + \else + \newstylenums{#1}% + \fi +} +\makeatother +% =================================================================== +\makeatletter +\newcommand*\bsptheindex{% + \renewenvironment{theindex} + {\if@twocolumn + \@restonecolfalse + \else + \@restonecoltrue + \fi + \columnseprule \z@ + \columnsep 20\p@ + \parindent\z@ + \setlength{\parskip}{\z@ \@plus .3\p@}% + \setlength{\parfillskip}{\z@ \@plus 1fil}% + \let\item\@idxitem + \setlength\RaggedRightRightskip{\z@\@plus 4em}% + \RaggedRight\listsfont} + {}% + \noindent +} +\makeatother +% =================================================================== +\newcommand\texindex[1]{\index{#1|emph}} +\newcommand\macroindex[1]{\index{#1@\texttt{\textbackslash #1}|emph}} +\newcommand\envindex[1]{\index{#1@\texttt{#1}"=Umgebung|emph}} +\newcommand\srcindex[1]{\index{#1@\texttt{#1}|emph}} +\newcommand\styindex[1]{\index{#1@\texttt{#1}"=Paket|emph}} +\newcommand\clsindex[1]{\index{#1@\texttt{#1}"=Klasse|emph}} +\newcommand\optindex[1]{\index{#1@\texttt{#1}"=Klassenoption|emph}} +% =================================================================== +\setindexpreamble{% + \begingroup + \setlength{\parindent}{\baselineskip}% + \noindent\small + Normalerweise sind Seitenzahlen aufrecht gedruckt. + Wichtige Verweise, z.\,B.\ auf den Ort, an dem ein Begriff definiert + wird, werden fett gedruckt, falls mehrere Seitenzahlen für diesen + Begriff existieren. + Seitenzahlen, die sich auf die Durchführung mit \LaTeX\ beziehen, + sind kursiv gedruckt. + + Da der finanzielle Rahmen für die Erstellung der Dokumentklasse + sowie der Dokumentation begrenzt waren, habe ich mehr Wert darauf + gelegt, dass die Klasse und die Dokumentation selbst vernünftig + getestet wurden, als dass das Stichwortverzeichnis vollständig ist. + Das Stichwortverzeichnis ist somit leider nur unvollständig. + Nehmen Sie das bitte nicht als Vorbild für Ihr Stichwortverzeichnis. + \par + \endgroup + \bigskip +} +% =================================================================== +%\version{1.10} +% =================================================================== +\makeglossary[cmd] +\newcommand*\glossarycmdname{} +\addto\captionsgerman{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsngerman{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsaustrian{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsnaustrian{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsenglish{\renewcommand*\glossarycmdname{Command reference}} +\renewcommand\glossarycmdpreamble{% + \addchap{\glossarycmdname}% + \label{sec:befehlsreferenz}% + In dieser Befehlsreferenz sind hauptsächlich die Befehle und + Umgebungen aufgeführt, die von der + \texttt{bgteubner}-Klasse zusätzlich zum Standard bzw.\ der Klasse + \texttt{scrbook} aus dem \acro{KOMA}-Script-Paket definiert + werden. + + In Klammern wird jeweils der Abschnitt angegeben, in dem nähere + Erklärungen gefunden werden können. +} +% =================================================================== +\floatstyle{komabelow} +\newfloat{graphics}{tp}{gra}[chapter] +\floatname{graphics}{Grafik} +% =================================================================== +\makeatletter +\def\makeactive#1{\catcode`#1=13 } +\def\makeescape#1{\catcode`#1=\z@} +\def\makebgroup#1{\catcode`#1=\@ne} +\def\makeegroup#1{\catcode`#1=\tw@} +\let\@TBverbatim\verbatim +\let\@TBendverbatim\endverbatim +\def\verbatim{\obeylines + \futurelet\reserved@a\@switch@sqbverbatim} +\def\@switch@sqbverbatim{\ifx\reserved@a[%] + \expandafter\@sqbverbatim\else + \def\reserved@b{\@sqbverbatim[]}\expandafter\reserved@b\fi} +\def\@sqbverbatim[#1]{% + \par + \def\ruled{\let\if@ruled\iftrue}% + #1\@TBverbatim} +\let\if@ruled\iffalse +\def\@verbatim{% + \if@ruled\trivlist\item\hrule\kern5\p@\nobreak\fi + \trivlist \item\relax + \if@minipage\else\vskip\parskip\fi + \leftskip\@totalleftmargin\rightskip\z@skip + \parindent\z@\parfillskip\@flushglue\parskip\z@skip + \@@par + \@tempswafalse + \def\par{% + \if@tempswa + \leavevmode \null \@@par\penalty\interlinepenalty + \else + \@tempswatrue + \ifhmode\@@par\penalty\interlinepenalty\fi + \fi}% + \obeylines \verbatim@font \@noligs + \let\do\@makeother \dospecials + \everypar \expandafter{\the\everypar \unpenalty}% +}% +\def\endverbatim{\@TBendverbatim + \if@ruled\kern5\p@\hrule\endtrivlist\fi} +{\makeactive< + \gdef<#1>{{\reset@font\ensuremath{\langle}% + \textit{#1}% + \ensuremath{\rangle}}} +} +\makeatother +% ===================================================================== +\makeatletter +\DeclareRobustCommand\meta[1]{% + \ensuremath\langle + \ifmmode \expandafter \nfss@text \fi + {% + \meta@font@select + \edef\meta@hyphen@restore + {\hyphenchar\the\font\the\hyphenchar\font}% + \hyphenchar\font\m@ne + \language\l@nohyphenation + #1\/% + \meta@hyphen@restore + }\ensuremath\rangle +} +\def\meta@font@select{\normalfont\itshape} +\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}} +\DeclareRobustCommand\env[1]{\texttt{#1}} +\providecommand\marg[1]{% + {\ttfamily\char`\{}\meta{#1}{\ttfamily\char`\}}} +\providecommand\oarg[1]{% + {\ttfamily[}\meta{#1}{\ttfamily]}} +\providecommand\parg[1]{% + {\ttfamily(}\meta{#1}{\ttfamily)}} +\makeatother +% =================================================================== +\begingroup +\makeatletter +\fixme@marginfalse +\makeatother +\fixme{Index vervollständigen}% +\fixme{Hinweis auf kleine Unterschiede zwischen cm und Times}% +\endgroup +%\AtEndDocument{\listoffixmes}% +% =================================================================== +\begin{document} +% =================================================================== +\frontmatter +% =================================================================== +% Titel des Buches: +\GetFileInfo{bgteubner.cls} +\title{Erstellen von Büchern für den Teubner Verlag mit \LaTeX} +% Untertitel: +\subtitle{Autorenrichtlinien und Installationsanleitung für Version + \fileversion\ der Dokumentklasse} +% Angabe der Autoren +% Optionales Argument: Autorenname mit Titel +% 1. Hauptargument: Autorenname, nur Vor- und Nachname +% 2. Hauptargument: Institutsname dieses Autoren +\author{Harald Harders} +% Auflagennummer: +%\edition{Vorabversion vom 04.\,09.~2003} +%\edition{1} +% =================================================================== +% Titelseite erzeugen +\maketitle +% Titel nochmal eingeben, aber ohne Befehl, weil \pdfinfo damit nicht +% klarkommt. +\title{Erstellen von Büchern für den Teubner Verlag mit LaTeX}% +% =================================================================== +\include{vorwort} +\tableofcontents +\mainmatter +% =================================================================== + +\include{einleitung} + +\addpart{Typographie\label{part:allgemeines}}% +\include{globales} +\include{bilder} +\include{textelemente} +\include{verzeichnisse} + +\addpart{Durchführung mit \LaTeX\label{part:latex}} +\include{tex_globales} +\include{tex_bilder} +\include{tex_textelemente} +\include{tex_verzeichnisse} +\include{tex_typographie} + +% =================================================================== +% Anhang: +\appendix +% =================================================================== + +\include{installation} +\include{tex_aufruf} +\include{checkliste} +\include{optionen-advanced} + +\input{befehlsreferenz} +\input{index} +\printglossarycmd[4.5em] +\include{literatur} + +%\listoffigures +%\listoftables +%\listofexamples +%\listoftheorems{beispiel}{Verzeichnis der Beispiele} +%\listofexercises +% =================================================================== +\cleardoublepage +\label{sec:echter-index}% +\end{document} +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "richtlinien" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/bgteubner.pdf b/Master/texmf-dist/doc/latex/bgteubner/bgteubner.pdf Binary files differnew file mode 100644 index 00000000000..9a0ba21eb40 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bgteubner.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/bgteubner.tex b/Master/texmf-dist/doc/latex/bgteubner/bgteubner.tex new file mode 100644 index 00000000000..c9eedbf9f9e --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bgteubner.tex @@ -0,0 +1,338 @@ +% +% bgteubner class bundle +% +% bgteubner.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +%\newif\iffuerentwickler +%\fuerentwicklertrue +% =================================================================== +%\PassOptionsToPackage{draft}{graphicx} +% =================================================================== +%\PassOptionsToClass{layoutraster}{bgteubner} +%\PassOptionsToClass{draft}{bgteubner} +%\PassOptionsToClass{headingoutside}{bgteubner} +%\PassOptionsToClass{tocleft}{bgteubner} +%\PassOptionsToClass{a5paper}{bgteubner} +%\PassOptionsToClass{boldvec}{bgteubner} +\PassOptionsToClass{titlepage}{bgteubner} +\PassOptionsToClass{ulinevec}{bgteubner} +%\PassOptionsToClass{exercisetotoc}{bgteubner} +%\PassOptionsToClass{smalltheorem}{bgteubner} +\documentclass[english,ngerman,greybox]{bgteubner} +% =================================================================== +\listfiles +\makeindex +% =================================================================== +% Einstellung des passenden Zeichensatzes +% Für Windows: +%\usepackage[ansinew]{inputenc} +% Für Unix und Linux +\usepackage[latin1]{inputenc} +% =================================================================== +% Wenn Sie im Ausdruck sehen wollen, wie das Dokument auf dem Papier +% im Zielformat aussieht, aktivieren Sie eine der beiden folgenden +% Möglichkeiten: +%\usepackage[frame]{crop} +%\usepackage[cam,a4,center]{crop} +% =================================================================== +%\usepackage[activate]{pdfcprot} +\usepackage{verbatim} +\usepackage{url} +\usepackage{printlen}[2001/12/09] +\usepackage[gen]{eurosym} +\usepackage[nice]{nicefrac} +\usepackage{float} +% =================================================================== +\usepackage[draft,margin]{hhfixme} +% =================================================================== +\input{hyphenation} +% =================================================================== +\newcommand*\feinschliff[4]{% + \ifafive{\iftimes{#3}{#4}}{\iftimes{#1}{#2}}% +} +% =================================================================== +\let\np=\numprint +\def\ch#1{\ensuremath{\mathrm{#1}}} +\newcommand\TeXLive{\TeX Live} +\begingroup +\shorthandon{"} +\gdef\pdfLaTeX{\textsc{pdf}"-\LaTeX} +\endgroup +\DeclareRobustCommand\BibTeX{\textsc{Bib}\TeX} +% =================================================================== +\feinschliff{% + \addtocontents{toc}{\protect\enlargethispage{-2\protect\baselineskip}}% +}{% + \addtocontents{toc}{\protect\enlargethispage{-2\protect\baselineskip}}% +}{}{} +% =================================================================== +\uselengthunit{mm} +% =================================================================== +\makeatletter +\newcommand\cmoldstylenums[1]{% + \ifhhcls@times + \begingroup + \spaceskip\fontdimen\tw@\font + \usefont{OML}{\rmdefault}{\f@series}{it}% + \mathgroup\symletters #1% + \endgroup + \else + \oldstylenums{#1}% + \fi +} +\newcommand\cmnewstylenums[1]{% + \ifhhcls@times + \begingroup + \spaceskip\fontdimen\tw@\font + \renewcommand\rmdefault{cmr}% + \usefont{T1}{\rmdefault}{\f@series}{n}% + \mathgroup\symletters #1% + \endgroup + \else + \newstylenums{#1}% + \fi +} +\makeatother +% =================================================================== +\makeatletter +\newcommand*\bsptheindex{% + \renewenvironment{theindex} + {\if@twocolumn + \@restonecolfalse + \else + \@restonecoltrue + \fi + \columnseprule \z@ + \columnsep 20\p@ + \parindent\z@ + \setlength{\parskip}{\z@ \@plus .3\p@}% + \setlength{\parfillskip}{\z@ \@plus 1fil}% + \let\item\@idxitem + \setlength\RaggedRightRightskip{\z@\@plus 4em}% + \RaggedRight\listsfont} + {}% + \noindent +} +\makeatother +% =================================================================== +\newcommand\texindex[1]{\index{#1|emph}} +\newcommand\macroindex[1]{\index{#1@\texttt{\textbackslash #1}|emph}} +\newcommand\envindex[1]{\index{#1@\texttt{#1}"=Umgebung|emph}} +\newcommand\srcindex[1]{\index{#1@\texttt{#1}|emph}} +\newcommand\styindex[1]{\index{#1@\texttt{#1}"=Paket|emph}} +\newcommand\clsindex[1]{\index{#1@\texttt{#1}"=Klasse|emph}} +\newcommand\optindex[1]{\index{#1@\texttt{#1}"=Klassenoption|emph}} +% =================================================================== +\setindexpreamble{% + \begingroup + \setlength{\parindent}{\baselineskip}% + \noindent\small + Normalerweise sind Seitenzahlen aufrecht gedruckt. + Wichtige Verweise, z.\,B.\ auf den Ort, an dem ein Begriff definiert + wird, werden fett gedruckt, falls mehrere Seitenzahlen für diesen + Begriff existieren. + Seitenzahlen, die sich auf die Durchführung mit \LaTeX\ beziehen, + sind kursiv gedruckt. + + Da der finanzielle Rahmen für die Erstellung der Dokumentklasse + sowie der Dokumentation begrenzt waren, habe ich mehr Wert darauf + gelegt, dass die Klasse und die Dokumentation selbst vernünftig + getestet wurden, als dass das Stichwortverzeichnis vollständig ist. + Das Stichwortverzeichnis ist somit leider nur unvollständig. + Nehmen Sie das bitte nicht als Vorbild für Ihr Stichwortverzeichnis. + \par + \endgroup + \bigskip +} +% =================================================================== +%\version{1.10} +% =================================================================== +\makeglossary[cmd] +\newcommand*\glossarycmdname{} +\addto\captionsgerman{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsngerman{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsaustrian{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsnaustrian{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsenglish{\renewcommand*\glossarycmdname{Command reference}} +\renewcommand\glossarycmdpreamble{% + \addchap{\glossarycmdname}% + \label{sec:befehlsreferenz}% + In dieser Befehlsreferenz sind hauptsächlich die Befehle und + Umgebungen aufgeführt, die von der + \texttt{bgteubner}-Klasse zusätzlich zum Standard bzw.\ der Klasse + \texttt{scrbook} aus dem \acro{KOMA}-Script-Paket definiert + werden. + + In Klammern wird jeweils der Abschnitt angegeben, in dem nähere + Erklärungen gefunden werden können. +} +% =================================================================== +\floatstyle{komabelow} +\newfloat{graphics}{tp}{gra}[chapter] +\floatname{graphics}{Grafik} +% =================================================================== +\makeatletter +\def\makeactive#1{\catcode`#1=13 } +\def\makeescape#1{\catcode`#1=\z@} +\def\makebgroup#1{\catcode`#1=\@ne} +\def\makeegroup#1{\catcode`#1=\tw@} +\let\@TBverbatim\verbatim +\let\@TBendverbatim\endverbatim +\def\verbatim{\obeylines + \futurelet\reserved@a\@switch@sqbverbatim} +\def\@switch@sqbverbatim{\ifx\reserved@a[%] + \expandafter\@sqbverbatim\else + \def\reserved@b{\@sqbverbatim[]}\expandafter\reserved@b\fi} +\def\@sqbverbatim[#1]{% + \par + \def\ruled{\let\if@ruled\iftrue}% + #1\@TBverbatim} +\let\if@ruled\iffalse +\def\@verbatim{% + \if@ruled\trivlist\item\hrule\kern5\p@\nobreak\fi + \trivlist \item\relax + \if@minipage\else\vskip\parskip\fi + \leftskip\@totalleftmargin\rightskip\z@skip + \parindent\z@\parfillskip\@flushglue\parskip\z@skip + \@@par + \@tempswafalse + \def\par{% + \if@tempswa + \leavevmode \null \@@par\penalty\interlinepenalty + \else + \@tempswatrue + \ifhmode\@@par\penalty\interlinepenalty\fi + \fi}% + \obeylines \verbatim@font \@noligs + \let\do\@makeother \dospecials + \everypar \expandafter{\the\everypar \unpenalty}% +}% +\def\endverbatim{\@TBendverbatim + \if@ruled\kern5\p@\hrule\endtrivlist\fi} +{\makeactive< + \gdef<#1>{{\reset@font\ensuremath{\langle}% + \textit{#1}% + \ensuremath{\rangle}}} +} +\makeatother +% ===================================================================== +\makeatletter +\DeclareRobustCommand\meta[1]{% + \ensuremath\langle + \ifmmode \expandafter \nfss@text \fi + {% + \meta@font@select + \edef\meta@hyphen@restore + {\hyphenchar\the\font\the\hyphenchar\font}% + \hyphenchar\font\m@ne + \language\l@nohyphenation + #1\/% + \meta@hyphen@restore + }\ensuremath\rangle +} +\def\meta@font@select{\normalfont\itshape} +\DeclareRobustCommand\cs[1]{\texttt{\char`\\#1}} +\DeclareRobustCommand\env[1]{\texttt{#1}} +\providecommand\marg[1]{% + {\ttfamily\char`\{}\meta{#1}{\ttfamily\char`\}}} +\providecommand\oarg[1]{% + {\ttfamily[}\meta{#1}{\ttfamily]}} +\providecommand\parg[1]{% + {\ttfamily(}\meta{#1}{\ttfamily)}} +\makeatother +% =================================================================== +\begingroup +\makeatletter +\fixme@marginfalse +\makeatother +\fixme{Index vervollständigen}% +\fixme{Hinweis auf kleine Unterschiede zwischen cm und Times}% +\endgroup +%\AtEndDocument{\listoffixmes}% +% =================================================================== +\begin{document} +% =================================================================== +\frontmatter +% =================================================================== +% Titel des Buches: +\GetFileInfo{bgteubner.cls} +\title{Erstellen von Büchern für den Springer Vieweg Verlag mit \LaTeX} +% Untertitel: +\subtitle{Autorenrichtlinien und Installationsanleitung für Version + \fileversion\ der Dokumentklasse} +% Angabe der Autoren +% Optionales Argument: Autorenname mit Titel +% 1. Hauptargument: Autorenname, nur Vor- und Nachname +% 2. Hauptargument: Institutsname dieses Autoren +\author{Harald Harders} +% Auflagennummer: +%\edition{Vorabversion vom 04.\,09.~2003} +%\edition{1} +% =================================================================== +% Titelseite erzeugen +\maketitle +% Titel nochmal eingeben, aber ohne Befehl, weil \pdfinfo damit nicht +% klarkommt. +\title{Erstellen von Büchern für den Springer Vieweg Verlag mit LaTeX}% +% =================================================================== +\include{vorwort} +\tableofcontents +\mainmatter +% =================================================================== + +\include{einleitung} + +\addpart{Typographie\label{part:allgemeines}}% +\include{globales} +\include{bilder} +\include{textelemente} +\include{verzeichnisse} + +\addpart{Durchführung mit \LaTeX\label{part:latex}} +\include{tex_globales} +\include{tex_bilder} +\include{tex_textelemente} +\include{tex_verzeichnisse} +\include{tex_typographie} + +% =================================================================== +% Anhang: +\appendix +% =================================================================== + +\include{installation} +\include{tex_aufruf} +\include{checkliste} +\include{optionen-advanced} + +\input{befehlsreferenz} +\input{index} +\printglossarycmd[4.5em] +\include{literatur} + +%\listoffigures +%\listoftables +%\listofexamples +%\listoftheorems{beispiel}{Verzeichnis der Beispiele} +%\listofexercises +% =================================================================== +\cleardoublepage +\label{sec:echter-index}% +\end{document} +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "richtlinien" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/bgteucls.pdf b/Master/texmf-dist/doc/latex/bgteubner/bgteucls.pdf Binary files differnew file mode 100644 index 00000000000..234f4277906 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bgteucls.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/bgteuversion.tex b/Master/texmf-dist/doc/latex/bgteubner/bgteuversion.tex new file mode 100644 index 00000000000..2db58b9bac2 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bgteuversion.tex @@ -0,0 +1,29 @@ +%% +%% This is file `bgteuversion.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `version') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% harald.harders@gmx.de +%% +\ProvidesFile{bgteuversion.tex} + [2012/04/07 v2.02 Springer Vieweg Verlag] +\endinput +%% +%% End of file `bgteuversion.tex'. diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild4c.png b/Master/texmf-dist/doc/latex/bgteubner/bild4c.png Binary files differnew file mode 100644 index 00000000000..83f25ce640e --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild4c.png diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_ganz.eps b/Master/texmf-dist/doc/latex/bgteubner/bild_ganz.eps new file mode 100644 index 00000000000..8e0cd5d682b --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_ganz.eps @@ -0,0 +1,108 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: bild_ganz.eps +%%Creator: fig2dev Version 3.2.3 Patchlevel +%%CreationDate: Tue Oct 9 22:59:14 2001 +%%For: harders@dose (Harald Harders) +%%BoundingBox: 0 0 62 87 +%%Magnification: 1.0000 +%%EndComments +/$F2psDict 200 dict def +$F2psDict begin +$F2psDict /mtrx matrix put +/col-1 {0 setgray} bind def +/col0 {0.000 0.000 0.000 srgb} bind def +/col1 {0.000 0.000 1.000 srgb} bind def +/col2 {0.000 1.000 0.000 srgb} bind def +/col3 {0.000 1.000 1.000 srgb} bind def +/col4 {1.000 0.000 0.000 srgb} bind def +/col5 {1.000 0.000 1.000 srgb} bind def +/col6 {1.000 1.000 0.000 srgb} bind def +/col7 {1.000 1.000 1.000 srgb} bind def +/col8 {0.000 0.000 0.560 srgb} bind def +/col9 {0.000 0.000 0.690 srgb} bind def +/col10 {0.000 0.000 0.820 srgb} bind def +/col11 {0.530 0.810 1.000 srgb} bind def +/col12 {0.000 0.560 0.000 srgb} bind def +/col13 {0.000 0.690 0.000 srgb} bind def +/col14 {0.000 0.820 0.000 srgb} bind def +/col15 {0.000 0.560 0.560 srgb} bind def +/col16 {0.000 0.690 0.690 srgb} bind def +/col17 {0.000 0.820 0.820 srgb} bind def +/col18 {0.560 0.000 0.000 srgb} bind def +/col19 {0.690 0.000 0.000 srgb} bind def +/col20 {0.820 0.000 0.000 srgb} bind def +/col21 {0.560 0.000 0.560 srgb} bind def +/col22 {0.690 0.000 0.690 srgb} bind def +/col23 {0.820 0.000 0.820 srgb} bind def +/col24 {0.500 0.190 0.000 srgb} bind def +/col25 {0.630 0.250 0.000 srgb} bind def +/col26 {0.750 0.380 0.000 srgb} bind def +/col27 {1.000 0.500 0.500 srgb} bind def +/col28 {1.000 0.630 0.630 srgb} bind def +/col29 {1.000 0.750 0.750 srgb} bind def +/col30 {1.000 0.880 0.880 srgb} bind def +/col31 {1.000 0.840 0.000 srgb} bind def + +end +save +newpath 0 87 moveto 0 0 lineto 62 0 lineto 62 87 lineto closepath clip newpath +-84.0 171.0 translate +1 -1 scale + +/cp {closepath} bind def +/ef {eofill} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth} bind def +/tr {translate} bind def +/tnt {dup dup currentrgbcolor + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} + bind def +/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul + 4 -2 roll mul srgb} bind def +/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def +/$F2psEnd {$F2psEnteredState restore end} def + +$F2psBegin +%%Page: 1 1 +10 setmiterlimit + 0.06299 0.06299 sc +% Polyline +7.500 slw +n 1350 1350 m 2295 1350 l 2295 2700 l 1350 2700 l + cp gs col0 s gr +% Polyline +n 1440 1485 m 2160 1485 l 2160 2520 l 1440 2520 l + cp gs col0 s gr +% Polyline +15.000 slw +n 1575 1485 m 2025 1485 l 2025 1755 l 1575 1755 l + cp gs 0.50 setgray ef gr gs col0 s gr +% Polyline +n 1440 1845 m 2160 1845 l 2160 2115 l 1440 2115 l + cp gs 0.50 setgray ef gr gs col0 s gr +% Polyline +n 1530 2205 m 2070 2205 l 2070 2520 l 1530 2520 l + cp gs 0.50 setgray ef gr gs col0 s gr +$F2psEnd +rs diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_ganz.fig b/Master/texmf-dist/doc/latex/bgteubner/bild_ganz.fig new file mode 100644 index 00000000000..35971531bef --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_ganz.fig @@ -0,0 +1,19 @@ +#FIG 3.2 +Landscape +Center +Metric +A4 +100.00 +Single +-2 +1200 2 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1350 1350 2295 1350 2295 2700 1350 2700 1350 1350 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1440 1485 2160 1485 2160 2520 1440 2520 1440 1485 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 1575 1485 2025 1485 2025 1755 1575 1755 1575 1485 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 1440 1845 2160 1845 2160 2115 1440 2115 1440 1845 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 1530 2205 2070 2205 2070 2520 1530 2520 1530 2205 diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_ganz.pdf b/Master/texmf-dist/doc/latex/bgteubner/bild_ganz.pdf new file mode 100644 index 00000000000..c4178bcc479 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_ganz.pdf @@ -0,0 +1,56 @@ +%PDF-1.3 +%Çì¢ +6 0 obj +<</Length 7 0 R/Filter /FlateDecode>> +stream +xœ=A…{NAmñ†™cèÁ¨±°P¯ï®ëO¬ÜP//O ,Ó¼öîLZo7r¤¹ßIùD*(5¸ÃRÄ8zÀ"¸Å|¿îi šˆÎj†Æak(ºç ¼7>’†Azá*>B•ø˜¨),|XQ‡{{:üÇ¿%Yõ#𛹀H Gç÷/ÅÇŽ¼²ö×öŠZ@
´¡IGƒendstream +endobj +7 0 obj +168 +endobj +5 0 obj +<</Type/Page/MediaBox [0 0 62 87] +/Rotate 0/Parent 3 0 R +/Resources<</ProcSet[/PDF] +/ExtGState 8 0 R +>> +/Contents 6 0 R +>> +endobj +3 0 obj +<< /Type /Pages /Kids [ +5 0 R +] /Count 1 +>> +endobj +1 0 obj +<</Type /Catalog /Pages 3 0 R +>> +endobj +4 0 obj +<</Type/ExtGState/Name/R4/TR/Identity/OPM 1/SM 0.02>> +endobj +8 0 obj +<</R4 +4 0 R>> +endobj +2 0 obj +<</Producer (AFPL Ghostscript 7.0) +>>endobj +xref +0 9 +0000000000 65535 f +0000000469 00000 n +0000000615 00000 n +0000000410 00000 n +0000000517 00000 n +0000000272 00000 n +0000000015 00000 n +0000000253 00000 n +0000000586 00000 n +trailer +<< /Size 9 /Root 1 0 R /Info 2 0 R +>> +startxref +667 +%%EOF diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_mitte.eps b/Master/texmf-dist/doc/latex/bgteubner/bild_mitte.eps new file mode 100644 index 00000000000..4c5a559007b --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_mitte.eps @@ -0,0 +1,153 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: bild_mitte.eps +%%Creator: fig2dev Version 3.2.3 Patchlevel +%%CreationDate: Tue Oct 9 23:13:04 2001 +%%For: harders@dose (Harald Harders) +%%BoundingBox: 0 0 62 87 +%%Magnification: 1.0000 +%%EndComments +/$F2psDict 200 dict def +$F2psDict begin +$F2psDict /mtrx matrix put +/col-1 {0 setgray} bind def +/col0 {0.000 0.000 0.000 srgb} bind def +/col1 {0.000 0.000 1.000 srgb} bind def +/col2 {0.000 1.000 0.000 srgb} bind def +/col3 {0.000 1.000 1.000 srgb} bind def +/col4 {1.000 0.000 0.000 srgb} bind def +/col5 {1.000 0.000 1.000 srgb} bind def +/col6 {1.000 1.000 0.000 srgb} bind def +/col7 {1.000 1.000 1.000 srgb} bind def +/col8 {0.000 0.000 0.560 srgb} bind def +/col9 {0.000 0.000 0.690 srgb} bind def +/col10 {0.000 0.000 0.820 srgb} bind def +/col11 {0.530 0.810 1.000 srgb} bind def +/col12 {0.000 0.560 0.000 srgb} bind def +/col13 {0.000 0.690 0.000 srgb} bind def +/col14 {0.000 0.820 0.000 srgb} bind def +/col15 {0.000 0.560 0.560 srgb} bind def +/col16 {0.000 0.690 0.690 srgb} bind def +/col17 {0.000 0.820 0.820 srgb} bind def +/col18 {0.560 0.000 0.000 srgb} bind def +/col19 {0.690 0.000 0.000 srgb} bind def +/col20 {0.820 0.000 0.000 srgb} bind def +/col21 {0.560 0.000 0.560 srgb} bind def +/col22 {0.690 0.000 0.690 srgb} bind def +/col23 {0.820 0.000 0.820 srgb} bind def +/col24 {0.500 0.190 0.000 srgb} bind def +/col25 {0.630 0.250 0.000 srgb} bind def +/col26 {0.750 0.380 0.000 srgb} bind def +/col27 {1.000 0.500 0.500 srgb} bind def +/col28 {1.000 0.630 0.630 srgb} bind def +/col29 {1.000 0.750 0.750 srgb} bind def +/col30 {1.000 0.880 0.880 srgb} bind def +/col31 {1.000 0.840 0.000 srgb} bind def + +end +save +newpath 0 87 moveto 0 0 lineto 62 0 lineto 62 87 lineto closepath clip newpath +-84.0 171.0 translate +1 -1 scale + +/cp {closepath} bind def +/ef {eofill} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth} bind def +/tr {translate} bind def +/tnt {dup dup currentrgbcolor + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} + bind def +/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul + 4 -2 roll mul srgb} bind def +/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def +/$F2psEnd {$F2psEnteredState restore end} def + +$F2psBegin +%%Page: 1 1 +10 setmiterlimit + 0.06299 0.06299 sc +% Polyline +15.000 slw +n 1440 1485 m + 2160 1485 l gs col0 s gr +% Polyline +n 1440 1530 m + 2160 1530 l gs col0 s gr +% Polyline +n 1440 1575 m + 2160 1575 l gs col0 s gr +% Polyline +n 1440 1620 m + 2160 1620 l gs col0 s gr +% Polyline +n 1440 1665 m + 2160 1665 l gs col0 s gr +% Polyline +n 1440 1710 m + 1845 1710 l gs col0 s gr +% Polyline +7.500 slw +n 1350 1350 m 2295 1350 l 2295 2700 l 1350 2700 l + cp gs col0 s gr +% Polyline +n 1440 1485 m 2160 1485 l 2160 2520 l 1440 2520 l + cp gs col0 s gr +% Polyline +15.000 slw +n 1485 2205 m + 2160 2205 l gs col0 s gr +% Polyline +n 1440 2250 m + 2160 2250 l gs col0 s gr +% Polyline +n 1440 2340 m + 2025 2340 l gs col0 s gr +% Polyline +n 1485 2385 m + 2160 2385 l gs col0 s gr +% Polyline +n 1440 2430 m + 2160 2430 l gs col0 s gr +% Polyline +n 1440 2475 m + 2160 2475 l gs col0 s gr +% Polyline +n 1440 2520 m + 2160 2520 l gs col0 s gr +% Polyline +n 1440 2295 m + 2160 2295 l gs col0 s gr +% Polyline +n 1530 1800 m 2070 1800 l 2070 2115 l 1530 2115 l + cp gs 0.50 setgray ef gr gs col0 s gr +% Arc +n -867.9 3696.4 3259.3 -44.9 -19.5 arc +gs col0 s gr + +% Arc +n 3293.7 3120.6 1978.3 -163.7 -121.8 arc +gs col0 s gr + +$F2psEnd +rs diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_mitte.fig b/Master/texmf-dist/doc/latex/bgteubner/bild_mitte.fig new file mode 100644 index 00000000000..8faa364d361 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_mitte.fig @@ -0,0 +1,47 @@ +#FIG 3.2 +Landscape +Center +Metric +A4 +100.00 +Single +-2 +1200 2 +5 1 0 2 0 7 49 0 -1 0.000 0 0 0 0 -867.857 3696.428 1440 1395 1845 1890 2205 2610 +5 1 0 2 0 7 49 0 -1 0.000 0 0 0 0 3293.654 3120.577 1395 2565 1710 1935 2250 1440 +6 1395 1440 2205 1755 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1485 2160 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1530 2160 1530 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1575 2160 1575 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1620 2160 1620 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1665 2160 1665 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1710 1845 1710 +-6 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1350 1350 2295 1350 2295 2700 1350 2700 1350 1350 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1440 1485 2160 1485 2160 2520 1440 2520 1440 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1485 2205 2160 2205 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2250 2160 2250 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2340 2025 2340 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1485 2385 2160 2385 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2430 2160 2430 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2475 2160 2475 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2520 2160 2520 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2295 2160 2295 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 1530 1800 2070 1800 2070 2115 1530 2115 1530 1800 diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_mitte.pdf b/Master/texmf-dist/doc/latex/bgteubner/bild_mitte.pdf Binary files differnew file mode 100644 index 00000000000..eae0fb903ef --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_mitte.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_oben.eps b/Master/texmf-dist/doc/latex/bgteubner/bild_oben.eps new file mode 100644 index 00000000000..260204a14be --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_oben.eps @@ -0,0 +1,145 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: bild_oben.eps +%%Creator: fig2dev Version 3.2.3 Patchlevel +%%CreationDate: Tue Oct 9 22:59:30 2001 +%%For: harders@dose (Harald Harders) +%%BoundingBox: 0 0 62 87 +%%Magnification: 1.0000 +%%EndComments +/$F2psDict 200 dict def +$F2psDict begin +$F2psDict /mtrx matrix put +/col-1 {0 setgray} bind def +/col0 {0.000 0.000 0.000 srgb} bind def +/col1 {0.000 0.000 1.000 srgb} bind def +/col2 {0.000 1.000 0.000 srgb} bind def +/col3 {0.000 1.000 1.000 srgb} bind def +/col4 {1.000 0.000 0.000 srgb} bind def +/col5 {1.000 0.000 1.000 srgb} bind def +/col6 {1.000 1.000 0.000 srgb} bind def +/col7 {1.000 1.000 1.000 srgb} bind def +/col8 {0.000 0.000 0.560 srgb} bind def +/col9 {0.000 0.000 0.690 srgb} bind def +/col10 {0.000 0.000 0.820 srgb} bind def +/col11 {0.530 0.810 1.000 srgb} bind def +/col12 {0.000 0.560 0.000 srgb} bind def +/col13 {0.000 0.690 0.000 srgb} bind def +/col14 {0.000 0.820 0.000 srgb} bind def +/col15 {0.000 0.560 0.560 srgb} bind def +/col16 {0.000 0.690 0.690 srgb} bind def +/col17 {0.000 0.820 0.820 srgb} bind def +/col18 {0.560 0.000 0.000 srgb} bind def +/col19 {0.690 0.000 0.000 srgb} bind def +/col20 {0.820 0.000 0.000 srgb} bind def +/col21 {0.560 0.000 0.560 srgb} bind def +/col22 {0.690 0.000 0.690 srgb} bind def +/col23 {0.820 0.000 0.820 srgb} bind def +/col24 {0.500 0.190 0.000 srgb} bind def +/col25 {0.630 0.250 0.000 srgb} bind def +/col26 {0.750 0.380 0.000 srgb} bind def +/col27 {1.000 0.500 0.500 srgb} bind def +/col28 {1.000 0.630 0.630 srgb} bind def +/col29 {1.000 0.750 0.750 srgb} bind def +/col30 {1.000 0.880 0.880 srgb} bind def +/col31 {1.000 0.840 0.000 srgb} bind def + +end +save +newpath 0 87 moveto 0 0 lineto 62 0 lineto 62 87 lineto closepath clip newpath +-84.0 171.0 translate +1 -1 scale + +/cp {closepath} bind def +/ef {eofill} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth} bind def +/tr {translate} bind def +/tnt {dup dup currentrgbcolor + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} + bind def +/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul + 4 -2 roll mul srgb} bind def +/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def +/$F2psEnd {$F2psEnteredState restore end} def + +$F2psBegin +%%Page: 1 1 +10 setmiterlimit + 0.06299 0.06299 sc +% Polyline +15.000 slw +n 1440 1935 m + 2160 1935 l gs col0 s gr +% Polyline +n 1440 1980 m + 2160 1980 l gs col0 s gr +% Polyline +n 1440 2025 m + 2160 2025 l gs col0 s gr +% Polyline +n 1440 2070 m + 2160 2070 l gs col0 s gr +% Polyline +n 1440 2115 m + 2160 2115 l gs col0 s gr +% Polyline +n 1440 2160 m + 1845 2160 l gs col0 s gr +% Polyline +n 1485 2205 m + 2160 2205 l gs col0 s gr +% Polyline +n 1440 2250 m + 2160 2250 l gs col0 s gr +% Polyline +n 1440 2340 m + 2025 2340 l gs col0 s gr +% Polyline +n 1485 2385 m + 2160 2385 l gs col0 s gr +% Polyline +n 1440 2430 m + 2160 2430 l gs col0 s gr +% Polyline +n 1440 2475 m + 2160 2475 l gs col0 s gr +% Polyline +n 1440 2520 m + 2160 2520 l gs col0 s gr +% Polyline +n 1440 2295 m + 2160 2295 l gs col0 s gr +% Polyline +7.500 slw +n 1350 1350 m 2295 1350 l 2295 2700 l 1350 2700 l + cp gs col0 s gr +% Polyline +n 1440 1485 m 2160 1485 l 2160 2520 l 1440 2520 l + cp gs col0 s gr +% Polyline +15.000 slw +n 1530 1485 m 2070 1485 l 2070 1800 l 1530 1800 l + cp gs 0.50 setgray ef gr gs col0 s gr +$F2psEnd +rs diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_oben.fig b/Master/texmf-dist/doc/latex/bgteubner/bild_oben.fig new file mode 100644 index 00000000000..3cd8f2c4170 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_oben.fig @@ -0,0 +1,45 @@ +#FIG 3.2 +Landscape +Center +Metric +A4 +100.00 +Single +-2 +1200 2 +6 1395 1890 2205 2565 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1935 2160 1935 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1980 2160 1980 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2025 2160 2025 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2070 2160 2070 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2115 2160 2115 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2160 1845 2160 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1485 2205 2160 2205 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2250 2160 2250 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2340 2025 2340 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1485 2385 2160 2385 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2430 2160 2430 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2475 2160 2475 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2520 2160 2520 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2295 2160 2295 +-6 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1350 1350 2295 1350 2295 2700 1350 2700 1350 1350 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1440 1485 2160 1485 2160 2520 1440 2520 1440 1485 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 1530 1485 2070 1485 2070 1800 1530 1800 1530 1485 diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_oben.pdf b/Master/texmf-dist/doc/latex/bgteubner/bild_oben.pdf Binary files differnew file mode 100644 index 00000000000..d5671b630bf --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_oben.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_oben_unten.eps b/Master/texmf-dist/doc/latex/bgteubner/bild_oben_unten.eps new file mode 100644 index 00000000000..74d60efc58e --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_oben_unten.eps @@ -0,0 +1,129 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: bild_oben_unten.eps +%%Creator: fig2dev Version 3.2.3 Patchlevel +%%CreationDate: Tue Oct 9 23:00:01 2001 +%%For: harders@dose (Harald Harders) +%%BoundingBox: 0 0 62 87 +%%Magnification: 1.0000 +%%EndComments +/$F2psDict 200 dict def +$F2psDict begin +$F2psDict /mtrx matrix put +/col-1 {0 setgray} bind def +/col0 {0.000 0.000 0.000 srgb} bind def +/col1 {0.000 0.000 1.000 srgb} bind def +/col2 {0.000 1.000 0.000 srgb} bind def +/col3 {0.000 1.000 1.000 srgb} bind def +/col4 {1.000 0.000 0.000 srgb} bind def +/col5 {1.000 0.000 1.000 srgb} bind def +/col6 {1.000 1.000 0.000 srgb} bind def +/col7 {1.000 1.000 1.000 srgb} bind def +/col8 {0.000 0.000 0.560 srgb} bind def +/col9 {0.000 0.000 0.690 srgb} bind def +/col10 {0.000 0.000 0.820 srgb} bind def +/col11 {0.530 0.810 1.000 srgb} bind def +/col12 {0.000 0.560 0.000 srgb} bind def +/col13 {0.000 0.690 0.000 srgb} bind def +/col14 {0.000 0.820 0.000 srgb} bind def +/col15 {0.000 0.560 0.560 srgb} bind def +/col16 {0.000 0.690 0.690 srgb} bind def +/col17 {0.000 0.820 0.820 srgb} bind def +/col18 {0.560 0.000 0.000 srgb} bind def +/col19 {0.690 0.000 0.000 srgb} bind def +/col20 {0.820 0.000 0.000 srgb} bind def +/col21 {0.560 0.000 0.560 srgb} bind def +/col22 {0.690 0.000 0.690 srgb} bind def +/col23 {0.820 0.000 0.820 srgb} bind def +/col24 {0.500 0.190 0.000 srgb} bind def +/col25 {0.630 0.250 0.000 srgb} bind def +/col26 {0.750 0.380 0.000 srgb} bind def +/col27 {1.000 0.500 0.500 srgb} bind def +/col28 {1.000 0.630 0.630 srgb} bind def +/col29 {1.000 0.750 0.750 srgb} bind def +/col30 {1.000 0.880 0.880 srgb} bind def +/col31 {1.000 0.840 0.000 srgb} bind def + +end +save +newpath 0 87 moveto 0 0 lineto 62 0 lineto 62 87 lineto closepath clip newpath +-84.0 171.0 translate +1 -1 scale + +/cp {closepath} bind def +/ef {eofill} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth} bind def +/tr {translate} bind def +/tnt {dup dup currentrgbcolor + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} + bind def +/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul + 4 -2 roll mul srgb} bind def +/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def +/$F2psEnd {$F2psEnteredState restore end} def + +$F2psBegin +%%Page: 1 1 +10 setmiterlimit + 0.06299 0.06299 sc +% Polyline +7.500 slw +n 1350 1350 m 2295 1350 l 2295 2700 l 1350 2700 l + cp gs col0 s gr +% Polyline +n 1440 1485 m 2160 1485 l 2160 2520 l 1440 2520 l + cp gs col0 s gr +% Polyline +15.000 slw +n 1440 1935 m + 2160 1935 l gs col0 s gr +% Polyline +n 1440 1980 m + 2160 1980 l gs col0 s gr +% Polyline +n 1440 2025 m + 2160 2025 l gs col0 s gr +% Polyline +n 1440 2070 m + 2160 2070 l gs col0 s gr +% Polyline +n 1440 2115 m + 2160 2115 l gs col0 s gr +% Polyline +n 1440 2160 m + 1845 2160 l gs col0 s gr +% Polyline +n 1485 2205 m + 2160 2205 l gs col0 s gr +% Polyline +n 1440 2250 m + 2160 2250 l gs col0 s gr +% Polyline +n 1530 1485 m 2070 1485 l 2070 1800 l 1530 1800 l + cp gs 0.50 setgray ef gr gs col0 s gr +% Polyline +n 1620 2520 m 1980 2520 l 1980 2340 l 1620 2340 l + cp gs 0.50 setgray ef gr gs col0 s gr +$F2psEnd +rs diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_oben_unten.fig b/Master/texmf-dist/doc/latex/bgteubner/bild_oben_unten.fig new file mode 100644 index 00000000000..34dbf486170 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_oben_unten.fig @@ -0,0 +1,33 @@ +#FIG 3.2 +Landscape +Center +Metric +A4 +100.00 +Single +-2 +1200 2 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1350 1350 2295 1350 2295 2700 1350 2700 1350 1350 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1440 1485 2160 1485 2160 2520 1440 2520 1440 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1935 2160 1935 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1980 2160 1980 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2025 2160 2025 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2070 2160 2070 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2115 2160 2115 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2160 1845 2160 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1485 2205 2160 2205 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2250 2160 2250 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 1530 1485 2070 1485 2070 1800 1530 1800 1530 1485 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 1620 2520 1980 2520 1980 2340 1620 2340 1620 2520 diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_oben_unten.pdf b/Master/texmf-dist/doc/latex/bgteubner/bild_oben_unten.pdf Binary files differnew file mode 100644 index 00000000000..ca6937499ae --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_oben_unten.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_umflossen.eps b/Master/texmf-dist/doc/latex/bgteubner/bild_umflossen.eps new file mode 100644 index 00000000000..7a03a32e335 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_umflossen.eps @@ -0,0 +1,183 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: bild_umflossen.eps +%%Creator: fig2dev Version 3.2.3 Patchlevel +%%CreationDate: Tue Oct 9 23:14:22 2001 +%%For: harders@dose (Harald Harders) +%%BoundingBox: 0 0 62 87 +%%Magnification: 1.0000 +%%EndComments +/$F2psDict 200 dict def +$F2psDict begin +$F2psDict /mtrx matrix put +/col-1 {0 setgray} bind def +/col0 {0.000 0.000 0.000 srgb} bind def +/col1 {0.000 0.000 1.000 srgb} bind def +/col2 {0.000 1.000 0.000 srgb} bind def +/col3 {0.000 1.000 1.000 srgb} bind def +/col4 {1.000 0.000 0.000 srgb} bind def +/col5 {1.000 0.000 1.000 srgb} bind def +/col6 {1.000 1.000 0.000 srgb} bind def +/col7 {1.000 1.000 1.000 srgb} bind def +/col8 {0.000 0.000 0.560 srgb} bind def +/col9 {0.000 0.000 0.690 srgb} bind def +/col10 {0.000 0.000 0.820 srgb} bind def +/col11 {0.530 0.810 1.000 srgb} bind def +/col12 {0.000 0.560 0.000 srgb} bind def +/col13 {0.000 0.690 0.000 srgb} bind def +/col14 {0.000 0.820 0.000 srgb} bind def +/col15 {0.000 0.560 0.560 srgb} bind def +/col16 {0.000 0.690 0.690 srgb} bind def +/col17 {0.000 0.820 0.820 srgb} bind def +/col18 {0.560 0.000 0.000 srgb} bind def +/col19 {0.690 0.000 0.000 srgb} bind def +/col20 {0.820 0.000 0.000 srgb} bind def +/col21 {0.560 0.000 0.560 srgb} bind def +/col22 {0.690 0.000 0.690 srgb} bind def +/col23 {0.820 0.000 0.820 srgb} bind def +/col24 {0.500 0.190 0.000 srgb} bind def +/col25 {0.630 0.250 0.000 srgb} bind def +/col26 {0.750 0.380 0.000 srgb} bind def +/col27 {1.000 0.500 0.500 srgb} bind def +/col28 {1.000 0.630 0.630 srgb} bind def +/col29 {1.000 0.750 0.750 srgb} bind def +/col30 {1.000 0.880 0.880 srgb} bind def +/col31 {1.000 0.840 0.000 srgb} bind def + +end +save +newpath 0 87 moveto 0 0 lineto 62 0 lineto 62 87 lineto closepath clip newpath +-84.0 171.0 translate +1 -1 scale + +/cp {closepath} bind def +/ef {eofill} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth} bind def +/tr {translate} bind def +/tnt {dup dup currentrgbcolor + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} + bind def +/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul + 4 -2 roll mul srgb} bind def +/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def +/$F2psEnd {$F2psEnteredState restore end} def + +$F2psBegin +%%Page: 1 1 +10 setmiterlimit + 0.06299 0.06299 sc +% Polyline +15.000 slw +n 1440 1485 m + 2160 1485 l gs col0 s gr +% Polyline +n 1440 1530 m + 2160 1530 l gs col0 s gr +% Polyline +n 1440 1575 m + 2160 1575 l gs col0 s gr +% Polyline +n 1440 1620 m + 2160 1620 l gs col0 s gr +% Polyline +n 1440 1665 m + 2160 1665 l gs col0 s gr +% Polyline +n 1440 1710 m + 1845 1710 l gs col0 s gr +% Polyline +7.500 slw +n 1350 1350 m 2295 1350 l 2295 2700 l 1350 2700 l + cp gs col0 s gr +% Polyline +n 1440 1485 m 2160 1485 l 2160 2520 l 1440 2520 l + cp gs col0 s gr +% Polyline +15.000 slw +n 1485 2205 m + 2160 2205 l gs col0 s gr +% Polyline +n 1440 2250 m + 2160 2250 l gs col0 s gr +% Polyline +n 1440 2340 m + 2025 2340 l gs col0 s gr +% Polyline +n 1485 2385 m + 2160 2385 l gs col0 s gr +% Polyline +n 1440 2430 m + 2160 2430 l gs col0 s gr +% Polyline +n 1440 2475 m + 2160 2475 l gs col0 s gr +% Polyline +n 1440 2520 m + 2160 2520 l gs col0 s gr +% Polyline +n 1440 2295 m + 2160 2295 l gs col0 s gr +% Polyline +n 1890 1755 m 2160 1755 l 2160 1980 l 1890 1980 l + cp gs 0.50 setgray ef gr gs col0 s gr +% Polyline +n 1485 1755 m + 1845 1755 l gs col0 s gr +% Polyline +n 1440 1800 m + 1845 1800 l gs col0 s gr +% Polyline +n 1440 1845 m + 1845 1845 l gs col0 s gr +% Polyline +n 1440 1890 m + 1845 1890 l gs col0 s gr +% Polyline +n 1440 1935 m + 1845 1935 l gs col0 s gr +% Polyline +n 1440 1980 m + 1845 1980 l gs col0 s gr +% Polyline +n 1440 2025 m + 1845 2025 l gs col0 s gr +% Polyline +n 1440 2070 m + 2160 2070 l gs col0 s gr +% Polyline +n 1440 2115 m + 2160 2115 l gs col0 s gr +% Polyline +n 1440 2160 m + 1980 2160 l gs col0 s gr +% Arc +n -867.9 3696.4 3259.3 -44.9 -19.5 arc +gs col0 s gr + +% Arc +n 3293.7 3120.6 1978.3 -163.7 -121.8 arc +gs col0 s gr + +$F2psEnd +rs diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_umflossen.fig b/Master/texmf-dist/doc/latex/bgteubner/bild_umflossen.fig new file mode 100644 index 00000000000..51a6e73b3d9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_umflossen.fig @@ -0,0 +1,67 @@ +#FIG 3.2 +Landscape +Center +Metric +A4 +100.00 +Single +-2 +1200 2 +5 1 0 2 0 7 49 0 -1 0.000 0 0 0 0 -867.857 3696.428 1440 1395 1845 1890 2205 2610 +5 1 0 2 0 7 49 0 -1 0.000 0 0 0 0 3293.654 3120.577 1395 2565 1710 1935 2250 1440 +6 1395 1440 2205 1755 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1485 2160 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1530 2160 1530 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1575 2160 1575 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1620 2160 1620 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1665 2160 1665 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1710 1845 1710 +-6 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1350 1350 2295 1350 2295 2700 1350 2700 1350 1350 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1440 1485 2160 1485 2160 2520 1440 2520 1440 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1485 2205 2160 2205 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2250 2160 2250 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2340 2025 2340 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1485 2385 2160 2385 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2430 2160 2430 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2475 2160 2475 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2520 2160 2520 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2295 2160 2295 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 1890 1755 2160 1755 2160 1980 1890 1980 1890 1755 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1485 1755 1845 1755 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1800 1845 1800 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1845 1845 1845 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1890 1845 1890 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1935 1845 1935 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1980 1845 1980 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2025 1845 2025 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2070 2160 2070 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2115 2160 2115 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2160 1980 2160 diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_umflossen.pdf b/Master/texmf-dist/doc/latex/bgteubner/bild_umflossen.pdf Binary files differnew file mode 100644 index 00000000000..eacdf7d6b8f --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_umflossen.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_unten.eps b/Master/texmf-dist/doc/latex/bgteubner/bild_unten.eps new file mode 100644 index 00000000000..e607917c945 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_unten.eps @@ -0,0 +1,161 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: bild_unten.eps +%%Creator: fig2dev Version 3.2 Patchlevel 3d +%%CreationDate: Fri Aug 8 15:57:50 2003 +%%For: harders@pc22 (Harald Harders) +%%BoundingBox: 0 0 62 87 +%%Magnification: 1.0000 +%%EndComments +/$F2psDict 200 dict def +$F2psDict begin +$F2psDict /mtrx matrix put +/col-1 {0 setgray} bind def +/col0 {0.000 0.000 0.000 srgb} bind def +/col1 {0.000 0.000 1.000 srgb} bind def +/col2 {0.000 1.000 0.000 srgb} bind def +/col3 {0.000 1.000 1.000 srgb} bind def +/col4 {1.000 0.000 0.000 srgb} bind def +/col5 {1.000 0.000 1.000 srgb} bind def +/col6 {1.000 1.000 0.000 srgb} bind def +/col7 {1.000 1.000 1.000 srgb} bind def +/col8 {0.000 0.000 0.560 srgb} bind def +/col9 {0.000 0.000 0.690 srgb} bind def +/col10 {0.000 0.000 0.820 srgb} bind def +/col11 {0.530 0.810 1.000 srgb} bind def +/col12 {0.000 0.560 0.000 srgb} bind def +/col13 {0.000 0.690 0.000 srgb} bind def +/col14 {0.000 0.820 0.000 srgb} bind def +/col15 {0.000 0.560 0.560 srgb} bind def +/col16 {0.000 0.690 0.690 srgb} bind def +/col17 {0.000 0.820 0.820 srgb} bind def +/col18 {0.560 0.000 0.000 srgb} bind def +/col19 {0.690 0.000 0.000 srgb} bind def +/col20 {0.820 0.000 0.000 srgb} bind def +/col21 {0.560 0.000 0.560 srgb} bind def +/col22 {0.690 0.000 0.690 srgb} bind def +/col23 {0.820 0.000 0.820 srgb} bind def +/col24 {0.500 0.190 0.000 srgb} bind def +/col25 {0.630 0.250 0.000 srgb} bind def +/col26 {0.750 0.380 0.000 srgb} bind def +/col27 {1.000 0.500 0.500 srgb} bind def +/col28 {1.000 0.630 0.630 srgb} bind def +/col29 {1.000 0.750 0.750 srgb} bind def +/col30 {1.000 0.880 0.880 srgb} bind def +/col31 {1.000 0.840 0.000 srgb} bind def + +end +save +newpath 0 87 moveto 0 0 lineto 62 0 lineto 62 87 lineto closepath clip newpath +-84.3 170.8 translate +1 -1 scale + +/cp {closepath} bind def +/ef {eofill} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth} bind def +/tr {translate} bind def +/tnt {dup dup currentrgbcolor + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} + bind def +/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul + 4 -2 roll mul srgb} bind def +/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def +/$F2psEnd {$F2psEnteredState restore end} def + +$F2psBegin +10 setmiterlimit + 0.06299 0.06299 sc +% +% Fig objects follow +% +% Polyline +15.000 slw +n 1440 1485 m + 2160 1485 l gs col0 s gr +% Polyline +n 1440 1530 m + 2160 1530 l gs col0 s gr +% Polyline +n 1440 1575 m + 2160 1575 l gs col0 s gr +% Polyline +n 1440 1620 m + 2160 1620 l gs col0 s gr +% Polyline +n 1440 1665 m + 2160 1665 l gs col0 s gr +% Polyline +n 1440 1710 m + 1845 1710 l gs col0 s gr +% Polyline +7.500 slw +n 1350 1350 m 2295 1350 l 2295 2700 l 1350 2700 l + cp gs col0 s gr +% Polyline +n 1440 1485 m 2160 1485 l 2160 2520 l 1440 2520 l + cp gs col0 s gr +% Polyline +15.000 slw +n 1485 1755 m + 2160 1755 l gs col0 s gr +% Polyline +n 1440 1800 m + 2160 1800 l gs col0 s gr +% Polyline +n 1440 1845 m + 2160 1845 l gs col0 s gr +% Polyline +n 1440 1890 m + 2025 1890 l gs col0 s gr +% Polyline +n 1485 1935 m + 2160 1935 l gs col0 s gr +% Polyline +n 1440 1980 m + 2160 1980 l gs col0 s gr +% Polyline +n 1440 2025 m + 2160 2025 l gs col0 s gr +% Polyline +n 1440 2070 m + 2160 2070 l gs col0 s gr +% Polyline +n 1530 2205 m 2070 2205 l 2070 2520 l 1530 2520 l + cp gs 0.50 setgray ef gr gs col0 s gr +% Polyline +n 1440 2115 m + 2160 2115 l gs col0 s gr +% Polyline +n 1440 2160 m + 2160 2160 l gs col0 s gr +% Arc +n 3293.7 3120.6 1978.3 -163.7 -121.8 arc +gs col0 s gr + +% Arc +n -867.9 3696.4 3259.3 -44.9 -19.5 arc +gs col0 s gr + +$F2psEnd +rs diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_unten.fig b/Master/texmf-dist/doc/latex/bgteubner/bild_unten.fig new file mode 100644 index 00000000000..73f4e83d582 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_unten.fig @@ -0,0 +1,51 @@ +#FIG 3.2 +Landscape +Center +Metric +A4 +100.00 +Single +-2 +1200 2 +5 1 0 2 0 7 49 0 -1 0.000 0 0 0 0 3293.654 3120.577 1395 2565 1710 1935 2250 1440 +5 1 0 2 0 7 49 0 -1 0.000 0 0 0 0 -867.857 3696.428 1440 1395 1845 1890 2205 2610 +6 1395 1440 2205 1755 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1485 2160 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1530 2160 1530 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1575 2160 1575 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1620 2160 1620 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1665 2160 1665 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1710 1845 1710 +-6 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1350 1350 2295 1350 2295 2700 1350 2700 1350 1350 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 1440 1485 2160 1485 2160 2520 1440 2520 1440 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1485 1755 2160 1755 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1800 2160 1800 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1845 2160 1845 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1890 2025 1890 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1485 1935 2160 1935 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 1980 2160 1980 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2025 2160 2025 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2070 2160 2070 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 1530 2205 2070 2205 2070 2520 1530 2520 1530 2205 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2115 2160 2115 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1440 2160 2160 2160 diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_unten.pdf b/Master/texmf-dist/doc/latex/bgteubner/bild_unten.pdf new file mode 100644 index 00000000000..6763e4455e3 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_unten.pdf @@ -0,0 +1,55 @@ +%PDF-1.3 +%Çì¢ +6 0 obj +<</Length 7 0 R/Filter /FlateDecode>> +stream +xœ’1n1Eû9…j)’y;G0â…l±I‘ëçkw´–:cŠÁ|½!¿>y+LRx<çûýzÜŽoV.$³ðòïòy4#vÏÒ{%Ï,×Ã¥“‡=•ßÇÏ/ÊŒªëJÊF‰Sr_©SY©8ku¡¦²QžTe5•R¦èJ%IZ{*ƒ2êÕê¸q'm†;uª¹O‡{/áŒ/~-E¥25¯Å\Ék ±PZ@ϳ’±À#®ÚV£§²õn$±@§°1æj+t*…3‹10Sô¯©jºÂ7‰µ¦²Ö²ÆÔsµ5•BÛ†?•b\hþTÅd¨z9F¶žgÆjØTkE2È2þxùõÕX»So²4žÊjO
!É:¦©J} !>lÌ{E£Qb T”²uìW’k`~NlY‚U¬¼?z9æZ¢…ŒÀjÏÇJàoÆ Í”A¨WD÷ßÏÒMïU^ñü ¾¨endstream +endobj +7 0 obj +372 +endobj +5 0 obj +<</Type/Page/MediaBox [0 0 62 87] +/Rotate 0/Parent 3 0 R +/Resources<</ProcSet[/PDF] +/ExtGState 8 0 R +>> +/Contents 6 0 R +>> +endobj +3 0 obj +<< /Type /Pages /Kids [ +5 0 R +] /Count 1 +>> +endobj +1 0 obj +<</Type /Catalog /Pages 3 0 R +>> +endobj +4 0 obj +<</Type/ExtGState/Name/R4/TR/Identity/OPM 1/SM 0.02>> +endobj +8 0 obj +<</R4 +4 0 R>> +endobj +2 0 obj +<</Producer(ESP Ghostscript 7.05)>>endobj +xref +0 9 +0000000000 65535 f +0000000673 00000 n +0000000819 00000 n +0000000614 00000 n +0000000721 00000 n +0000000476 00000 n +0000000015 00000 n +0000000457 00000 n +0000000790 00000 n +trailer +<< /Size 9 /Root 1 0 R /Info 2 0 R +>> +startxref +869 +%%EOF diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang.eps b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang.eps new file mode 100644 index 00000000000..53bfc8b8aec --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang.eps @@ -0,0 +1,204 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: bild_zu_lang.eps +%%Creator: fig2dev Version 3.2.3 Patchlevel +%%CreationDate: Sun Nov 18 16:18:35 2001 +%%For: harders@dose (Harald Harders) +%%BoundingBox: 0 0 122 87 +%%Magnification: 1.0000 +%%EndComments +/$F2psDict 200 dict def +$F2psDict begin +$F2psDict /mtrx matrix put +/col-1 {0 setgray} bind def +/col0 {0.000 0.000 0.000 srgb} bind def +/col1 {0.000 0.000 1.000 srgb} bind def +/col2 {0.000 1.000 0.000 srgb} bind def +/col3 {0.000 1.000 1.000 srgb} bind def +/col4 {1.000 0.000 0.000 srgb} bind def +/col5 {1.000 0.000 1.000 srgb} bind def +/col6 {1.000 1.000 0.000 srgb} bind def +/col7 {1.000 1.000 1.000 srgb} bind def +/col8 {0.000 0.000 0.560 srgb} bind def +/col9 {0.000 0.000 0.690 srgb} bind def +/col10 {0.000 0.000 0.820 srgb} bind def +/col11 {0.530 0.810 1.000 srgb} bind def +/col12 {0.000 0.560 0.000 srgb} bind def +/col13 {0.000 0.690 0.000 srgb} bind def +/col14 {0.000 0.820 0.000 srgb} bind def +/col15 {0.000 0.560 0.560 srgb} bind def +/col16 {0.000 0.690 0.690 srgb} bind def +/col17 {0.000 0.820 0.820 srgb} bind def +/col18 {0.560 0.000 0.000 srgb} bind def +/col19 {0.690 0.000 0.000 srgb} bind def +/col20 {0.820 0.000 0.000 srgb} bind def +/col21 {0.560 0.000 0.560 srgb} bind def +/col22 {0.690 0.000 0.690 srgb} bind def +/col23 {0.820 0.000 0.820 srgb} bind def +/col24 {0.500 0.190 0.000 srgb} bind def +/col25 {0.630 0.250 0.000 srgb} bind def +/col26 {0.750 0.380 0.000 srgb} bind def +/col27 {1.000 0.500 0.500 srgb} bind def +/col28 {1.000 0.630 0.630 srgb} bind def +/col29 {1.000 0.750 0.750 srgb} bind def +/col30 {1.000 0.880 0.880 srgb} bind def +/col31 {1.000 0.840 0.000 srgb} bind def + +end +save +newpath 0 87 moveto 0 0 lineto 122 0 lineto 122 87 lineto closepath clip newpath +-92.0 171.0 translate +1 -1 scale + +/cp {closepath} bind def +/ef {eofill} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth} bind def +/tr {translate} bind def +/tnt {dup dup currentrgbcolor + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} + bind def +/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul + 4 -2 roll mul srgb} bind def +/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def +/$F2psEnd {$F2psEnteredState restore end} def + +$F2psBegin +%%Page: 1 1 +10 setmiterlimit + 0.06299 0.06299 sc +% Polyline +15.000 slw +n 1620 1485 m + 2340 1485 l gs col0 s gr +% Polyline +n 1620 1530 m + 2340 1530 l gs col0 s gr +% Polyline +n 1620 1575 m + 2340 1575 l gs col0 s gr +% Polyline +n 1620 1620 m + 2340 1620 l gs col0 s gr +% Polyline +n 1620 1665 m + 2340 1665 l gs col0 s gr +% Polyline +n 1620 1710 m + 2025 1710 l gs col0 s gr +% Polyline +n 1665 1755 m + 2340 1755 l gs col0 s gr +% Polyline +n 1620 1800 m + 2340 1800 l gs col0 s gr +% Polyline +n 1620 1890 m + 2205 1890 l gs col0 s gr +% Polyline +n 1665 1935 m + 2340 1935 l gs col0 s gr +% Polyline +n 1620 1980 m + 2340 1980 l gs col0 s gr +% Polyline +n 1620 2025 m + 2340 2025 l gs col0 s gr +% Polyline +n 1620 2070 m + 2340 2070 l gs col0 s gr +% Polyline +n 1620 1845 m + 2340 1845 l gs col0 s gr +% Polyline +7.500 slw +n 2430 1350 m 1485 1350 l 1485 2700 l 2430 2700 l + cp gs col0 s gr +% Polyline +n 2340 1485 m 1620 1485 l 1620 2520 l 2340 2520 l + cp gs col0 s gr +% Polyline +n 2430 1350 m 3375 1350 l 3375 2700 l 2430 2700 l + cp gs col0 s gr +% Polyline +n 2520 1485 m 3240 1485 l 3240 2520 l 2520 2520 l + cp gs col0 s gr +% Polyline +15.000 slw +n 2520 2025 m + 3240 2025 l gs col0 s gr +% Polyline +n 2520 2070 m + 3240 2070 l gs col0 s gr +% Polyline +n 2520 2115 m + 3240 2115 l gs col0 s gr +% Polyline +n 2520 2160 m + 2925 2160 l gs col0 s gr +% Polyline +n 2565 2205 m + 3240 2205 l gs col0 s gr +% Polyline +n 2520 2250 m + 3240 2250 l gs col0 s gr +% Polyline +n 2520 2340 m + 3105 2340 l gs col0 s gr +% Polyline +n 2565 2385 m + 3240 2385 l gs col0 s gr +% Polyline +n 2520 2430 m + 3240 2430 l gs col0 s gr +% Polyline +n 2520 2475 m + 3240 2475 l gs col0 s gr +% Polyline +n 2520 2520 m + 3240 2520 l gs col0 s gr +% Polyline +n 2520 2295 m + 3240 2295 l gs col0 s gr +% Polyline +7.500 slw + [30] 0 sd +n 2250 2160 m 1710 2160 l 1710 2610 l 2250 2610 l + cp gs col0 s gr [] 0 sd +% Polyline +15.000 slw +n 3150 1485 m 2610 1485 l 2610 1935 l 3150 1935 l + cp gs 0.50 setgray ef gr gs col0 s gr +% Arc +gs clippath +2902 1734 m 2886 1677 l 2740 1718 l 2864 1714 l 2756 1775 l cp +eoclip +n 3203.7 3079.0 1406.8 -150.4 -103.3 arc +gs col0 s gr + gr + +% arrowhead +7.500 slw +n 2756 1775 m 2864 1714 l 2740 1718 l 2756 1775 l cp gs 0.00 setgray ef gr col0 s +$F2psEnd +rs diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang.fig b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang.fig new file mode 100644 index 00000000000..602015783c8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang.fig @@ -0,0 +1,77 @@ +#FIG 3.2 +Landscape +Center +Metric +A4 +100.00 +Single +-2 +1200 2 +5 1 0 2 0 7 49 0 -1 0.000 0 0 1 0 3203.654 3079.039 1980 2385 2385 1935 2880 1710 + 1 1 1.00 60.00 120.00 +6 1575 1440 2385 2115 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1485 2340 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1530 2340 1530 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1575 2340 1575 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1620 2340 1620 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1665 2340 1665 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1710 2025 1710 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1665 1755 2340 1755 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1800 2340 1800 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1890 2205 1890 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1665 1935 2340 1935 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1980 2340 1980 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 2025 2340 2025 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 2070 2340 2070 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1845 2340 1845 +-6 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 2430 1350 1485 1350 1485 2700 2430 2700 2430 1350 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 2340 1485 1620 1485 1620 2520 2340 2520 2340 1485 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 2430 1350 3375 1350 3375 2700 2430 2700 2430 1350 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 2520 1485 3240 1485 3240 2520 2520 2520 2520 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2025 3240 2025 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2070 3240 2070 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2115 3240 2115 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2160 2925 2160 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2565 2205 3240 2205 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2250 3240 2250 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2340 3105 2340 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2565 2385 3240 2385 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2430 3240 2430 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2475 3240 2475 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2520 3240 2520 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2295 3240 2295 +2 2 1 1 0 7 50 0 -1 2.000 0 0 -1 0 0 5 + 2250 2160 1710 2160 1710 2610 2250 2610 2250 2160 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 3150 1485 2610 1485 2610 1935 3150 1935 3150 1485 diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang.pdf b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang.pdf Binary files differnew file mode 100644 index 00000000000..1665abddb68 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang2.eps b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang2.eps new file mode 100644 index 00000000000..b0a4bd5e2eb --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang2.eps @@ -0,0 +1,187 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: bild_zu_lang2.eps +%%Creator: fig2dev Version 3.2.3 Patchlevel +%%CreationDate: Sun Nov 18 16:19:27 2001 +%%For: harders@dose (Harald Harders) +%%BoundingBox: 0 0 122 87 +%%Magnification: 1.0000 +%%EndComments +/$F2psDict 200 dict def +$F2psDict begin +$F2psDict /mtrx matrix put +/col-1 {0 setgray} bind def +/col0 {0.000 0.000 0.000 srgb} bind def +/col1 {0.000 0.000 1.000 srgb} bind def +/col2 {0.000 1.000 0.000 srgb} bind def +/col3 {0.000 1.000 1.000 srgb} bind def +/col4 {1.000 0.000 0.000 srgb} bind def +/col5 {1.000 0.000 1.000 srgb} bind def +/col6 {1.000 1.000 0.000 srgb} bind def +/col7 {1.000 1.000 1.000 srgb} bind def +/col8 {0.000 0.000 0.560 srgb} bind def +/col9 {0.000 0.000 0.690 srgb} bind def +/col10 {0.000 0.000 0.820 srgb} bind def +/col11 {0.530 0.810 1.000 srgb} bind def +/col12 {0.000 0.560 0.000 srgb} bind def +/col13 {0.000 0.690 0.000 srgb} bind def +/col14 {0.000 0.820 0.000 srgb} bind def +/col15 {0.000 0.560 0.560 srgb} bind def +/col16 {0.000 0.690 0.690 srgb} bind def +/col17 {0.000 0.820 0.820 srgb} bind def +/col18 {0.560 0.000 0.000 srgb} bind def +/col19 {0.690 0.000 0.000 srgb} bind def +/col20 {0.820 0.000 0.000 srgb} bind def +/col21 {0.560 0.000 0.560 srgb} bind def +/col22 {0.690 0.000 0.690 srgb} bind def +/col23 {0.820 0.000 0.820 srgb} bind def +/col24 {0.500 0.190 0.000 srgb} bind def +/col25 {0.630 0.250 0.000 srgb} bind def +/col26 {0.750 0.380 0.000 srgb} bind def +/col27 {1.000 0.500 0.500 srgb} bind def +/col28 {1.000 0.630 0.630 srgb} bind def +/col29 {1.000 0.750 0.750 srgb} bind def +/col30 {1.000 0.880 0.880 srgb} bind def +/col31 {1.000 0.840 0.000 srgb} bind def + +end +save +newpath 0 87 moveto 0 0 lineto 122 0 lineto 122 87 lineto closepath clip newpath +-92.0 171.0 translate +1 -1 scale + +/cp {closepath} bind def +/ef {eofill} bind def +/gr {grestore} bind def +/gs {gsave} bind def +/sa {save} bind def +/rs {restore} bind def +/l {lineto} bind def +/m {moveto} bind def +/rm {rmoveto} bind def +/n {newpath} bind def +/s {stroke} bind def +/sh {show} bind def +/slc {setlinecap} bind def +/slj {setlinejoin} bind def +/slw {setlinewidth} bind def +/srgb {setrgbcolor} bind def +/rot {rotate} bind def +/sc {scale} bind def +/sd {setdash} bind def +/ff {findfont} bind def +/sf {setfont} bind def +/scf {scalefont} bind def +/sw {stringwidth} bind def +/tr {translate} bind def +/tnt {dup dup currentrgbcolor + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add + 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} + bind def +/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul + 4 -2 roll mul srgb} bind def +/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def +/$F2psEnd {$F2psEnteredState restore end} def + +$F2psBegin +%%Page: 1 1 +10 setmiterlimit + 0.06299 0.06299 sc +% Polyline +15.000 slw +n 1620 1485 m + 2340 1485 l gs col0 s gr +% Polyline +n 1620 1530 m + 2340 1530 l gs col0 s gr +% Polyline +n 1620 1575 m + 2340 1575 l gs col0 s gr +% Polyline +n 1620 1620 m + 2340 1620 l gs col0 s gr +% Polyline +n 1620 1665 m + 2340 1665 l gs col0 s gr +% Polyline +n 1620 1710 m + 2025 1710 l gs col0 s gr +% Polyline +n 1665 2385 m + 2340 2385 l gs col0 s gr +% Polyline +n 1620 2430 m + 2340 2430 l gs col0 s gr +% Polyline +n 1620 2475 m + 2340 2475 l gs col0 s gr +% Polyline +n 1620 2520 m + 2340 2520 l gs col0 s gr +% Polyline +n 1665 1980 m + 2340 1980 l gs col0 s gr +% Polyline +n 1620 2025 m + 2340 2025 l gs col0 s gr +% Polyline +n 1620 2115 m + 2205 2115 l gs col0 s gr +% Polyline +n 1620 2070 m + 2340 2070 l gs col0 s gr +% Polyline +7.500 slw +n 2430 1350 m 1485 1350 l 1485 2700 l 2430 2700 l + cp gs col0 s gr +% Polyline +n 2340 1485 m 1620 1485 l 1620 2520 l 2340 2520 l + cp gs col0 s gr +% Polyline +n 2430 1350 m 3375 1350 l 3375 2700 l 2430 2700 l + cp gs col0 s gr +% Polyline +n 2520 1485 m 3240 1485 l 3240 2520 l 2520 2520 l + cp gs col0 s gr +% Polyline +15.000 slw +n 2520 2025 m + 3240 2025 l gs col0 s gr +% Polyline +n 2520 2070 m + 3240 2070 l gs col0 s gr +% Polyline +n 2520 2115 m + 3240 2115 l gs col0 s gr +% Polyline +n 2520 2160 m + 2925 2160 l gs col0 s gr +% Polyline +n 2565 2205 m + 3240 2205 l gs col0 s gr +% Polyline +n 2520 2250 m + 3240 2250 l gs col0 s gr +% Polyline +n 2520 2340 m + 3105 2340 l gs col0 s gr +% Polyline +n 2565 2385 m + 3240 2385 l gs col0 s gr +% Polyline +n 2520 2430 m + 3240 2430 l gs col0 s gr +% Polyline +n 2520 2475 m + 3240 2475 l gs col0 s gr +% Polyline +n 2520 2520 m + 3240 2520 l gs col0 s gr +% Polyline +n 2520 2295 m + 3240 2295 l gs col0 s gr +% Polyline +n 3150 1485 m 2610 1485 l 2610 1935 l 3150 1935 l + cp gs 0.50 setgray ef gr gs col0 s gr +$F2psEnd +rs diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang2.fig b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang2.fig new file mode 100644 index 00000000000..ddf90b3fda8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang2.fig @@ -0,0 +1,77 @@ +#FIG 3.2 +Landscape +Center +Metric +A4 +100.00 +Single +-2 +1200 2 +6 1575 1440 2385 1755 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1485 2340 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1530 2340 1530 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1575 2340 1575 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1620 2340 1620 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1665 2340 1665 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 1710 2025 1710 +-6 +6 1575 2340 2385 2565 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1665 2385 2340 2385 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 2430 2340 2430 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 2475 2340 2475 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 2520 2340 2520 +-6 +6 1575 1935 2385 2160 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1665 1980 2340 1980 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 2025 2340 2025 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 2115 2205 2115 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 1620 2070 2340 2070 +-6 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 2430 1350 1485 1350 1485 2700 2430 2700 2430 1350 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 2340 1485 1620 1485 1620 2520 2340 2520 2340 1485 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 2430 1350 3375 1350 3375 2700 2430 2700 2430 1350 +2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5 + 2520 1485 3240 1485 3240 2520 2520 2520 2520 1485 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2025 3240 2025 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2070 3240 2070 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2115 3240 2115 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2160 2925 2160 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2565 2205 3240 2205 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2250 3240 2250 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2340 3105 2340 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2565 2385 3240 2385 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2430 3240 2430 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2475 3240 2475 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2520 3240 2520 +2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2 + 2520 2295 3240 2295 +2 2 0 2 0 0 50 0 10 0.000 0 0 -1 0 0 5 + 3150 1485 2610 1485 2610 1935 3150 1935 3150 1485 diff --git a/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang2.pdf b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang2.pdf new file mode 100644 index 00000000000..83f83231974 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bild_zu_lang2.pdf @@ -0,0 +1,56 @@ +%PDF-1.3 +%Çì¢ +6 0 obj +<</Length 7 0 R/Filter /FlateDecode>> +stream +xœ”Kn1D÷:…ÖY0"ÅxŒdŽØF€xa{áë‡Ý©© °ƒYPóPC«»Öv|îß?žËKùúëÓ[q`RßÖŸ[1ˆ{}."\u)¿Êí¢X¤gê®lx³LÝ•Lép¥DMe£0{Me£:Á0ª‹€°-å¤h€^©èÉk*ÙÍ¡sÞq*%
ܳ×T6ŠTòŽSÉs±Øæ5•ìŷ짒©n¦G¬œ|)›WSÀíBS9(#¦³!Ü«YkTÅ%®uÄ®]¥¾>ücÙ „â(‚àqŠRlñ£}ì¤jô'N«¾“¾‚A¤clÁ,j¼¨´ò¤®ø&•ã[ǨAyLÊr)'«©÷Ú ¡ÙæuW²yœ:¾¨©lTWhªuÁKÉÿx|y¥‚¯tWÁ'•¾¨UðE¥‚ÿ}©D¥‚¯é•¡ocý&ºžO%*ûxeG@æH4Þ]èè‘ðYÇ/ÿCÝÊ·òn(ûendstream +endobj +7 0 obj +395 +endobj +5 0 obj +<</Type/Page/MediaBox [0 0 122 87] +/Rotate 0/Parent 3 0 R +/Resources<</ProcSet[/PDF] +/ExtGState 8 0 R +>> +/Contents 6 0 R +>> +endobj +3 0 obj +<< /Type /Pages /Kids [ +5 0 R +] /Count 1 +>> +endobj +1 0 obj +<</Type /Catalog /Pages 3 0 R +>> +endobj +4 0 obj +<</Type/ExtGState/Name/R4/TR/Identity/OPM 1/SM 0.02>> +endobj +8 0 obj +<</R4 +4 0 R>> +endobj +2 0 obj +<</Producer (AFPL Ghostscript 7.0) +>>endobj +xref +0 9 +0000000000 65535 f +0000000697 00000 n +0000000843 00000 n +0000000638 00000 n +0000000745 00000 n +0000000499 00000 n +0000000015 00000 n +0000000480 00000 n +0000000814 00000 n +trailer +<< /Size 9 /Root 1 0 R /Info 2 0 R +>> +startxref +895 +%%EOF diff --git a/Master/texmf-dist/doc/latex/bgteubner/bilder.tex b/Master/texmf-dist/doc/latex/bgteubner/bilder.tex new file mode 100644 index 00000000000..8cb98e38bc8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/bilder.tex @@ -0,0 +1,279 @@ +% +% bgteubner class bundle +% +% bilder.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\chapter{Bilder und Tabellen} + +% =================================================================== +\section{Bilder}% +\index{Bild}% + +Fotografien, Zeichnungen und Diagramme werden im Weiteren als +"`Bild"' bezeichnet. +Bilder werden horizontal zentriert gesetzt, am oberen Rand des +Satzspiegels oder auf Seiten platziert, die nur Bilder oder Tabellen +enthalten. +Bild~\ref{fig:bildpositionen} zeigt die möglichen Positionen. +% +\makeatletter +\ifhhcls@dinafuenf + \begin{figure}% + \hfil + \subfigure[oben]{% + \includegraphics{bilder/bild_oben}% + \label{fig:bildpositionen1}% + }% + \hfil + \subfigure[Bildseite]{% + \includegraphics{bilder/bild_ganz}% + \label{fig:bildpositionen2}% + }% + \hfil + \caption{Mögliche Bildanordnungen}% + \label{fig:bildpositionen} + \end{figure}% + \begin{figure}% + \hfil + \subfigure[mittig]{% + \includegraphics{bilder/bild_mitte}% + \label{fig:nicht_bildpositionen_mitte}}% + \hfil + \subfigure[umflossen]{% + \includegraphics{bilder/bild_umflossen}% + \label{fig:nicht_bildpositionen_umflossen}}% + \hfil + \subfigure[unten]{% + \includegraphics{bilder/bild_unten}% + \label{fig:nicht_bildpositionen_unten}}% + \hfil + \caption{Verbotene Bildanordnungen}% + \label{fig:nicht_bildpositionen}% + \end{figure}% +\else + \begin{figure}% + \begin{minipage}{0.38\linewidth} + \hfil + \subfigure[oben]{% + \includegraphics{bilder/bild_oben}% + \label{fig:bildpositionen1}% + }% + \hfil + \subfigure[Bildseite]{% + \includegraphics{bilder/bild_ganz}% + \label{fig:bildpositionen2}% + }% + \hfil + \caption{Mögliche Bildanordnungen}% + \label{fig:bildpositionen} + \end{minipage}% + \hfill + \begin{minipage}{0.57\linewidth} + \hfil + \subfigure[mittig]{% + \includegraphics{bilder/bild_mitte}% + \label{fig:nicht_bildpositionen_mitte}}% + \hfil + \subfigure[umflossen]{% + \includegraphics{bilder/bild_umflossen}% + \label{fig:nicht_bildpositionen_umflossen}}% + \hfil + \subfigure[unten]{% + \includegraphics{bilder/bild_unten}% + \label{fig:nicht_bildpositionen_unten}}% + \hfil + \caption{Verbotene Bildanordnungen}% + \label{fig:nicht_bildpositionen}% + \end{minipage}% + \end{figure}% +\fi +\makeatother + +Bilder werden aus folgendem Grund niemals genau an der Stelle gesetzt, +an der auf sie verwiesen wird +(Bild~\ref{fig:nicht_bildpositionen_mitte}): +Wird ein Bild im Fließtext an einer Stelle definiert, an der nicht +genügend Platz verfügbar ist, so muss das Bild auf die nächste Seite +verschoben werden, wodurch eine große Lücke in den Satz gerissen wird, +wie es Bild~\ref{fig:bild_zu_lang} zeigt. +% +\begin{figure}% + \hfil + \includegraphics{bilder/bild_zu_lang}% + \hfil + {\Large \raisebox{38pt}{$\Longrightarrow$}}% + \hfil + \includegraphics{bilder/bild_zu_lang2}% + \hfil + \caption[Entstehung großer Lücken im Text durch das Verschieben + eines Bildes]{Beim Versuch, ein Bild an einer bestimmten Stelle in den + Text zu setzen, tritt das Problem auf, dass es nicht mehr auf die + Seite passt. + Das Bild muss auf die nächste Seite verschoben werden, was große + Lücken in den Text reißt.}% + \label{fig:bild_zu_lang} +\end{figure}% +% +Aus dem gleichen Grund dürfen auch keine von Text umflossenen +Bilder\index{Bild!umflossen} +(Bild~\ref{fig:nicht_bildpositionen_umflossen}) erstellt werden. +Unten gesetzte Bilder (Bild~\ref{fig:nicht_bildpositionen_unten}) +bereiten Probleme mit der Platzierung von Fußnoten und sollen unter +Anderem deshalb nicht verwendet werden. + +Da das Bild nicht unbedingt dort erscheint, wo es im Text beschrieben +wird, soll auf jedes Bild verwiesen werden. +Das geschieht durch Formulierungen wie "`siehe Bild~\dots"', "`vgl.\ +Bild~\dots"', "`wie in Bild~\dots\ skizziert"' oder einfach +durch die Bildnummer in Klammern "`(Bild~\dots)"'. +Damit der Verweis möglich ist, erhält jedes Bild eine Bildunterschrift +mit laufender Nummer. +Die \emph{Bildunterschrift}\index{Bildunterschrift} wird, sofern sie +einzeilig ist, zentriert und ansonsten linksbündig mit hängendem +Einzug und Flattersatz gesetzt. +Als Beispiele für Bildunterschriften können einfach die in diesem +Dokument verwendeten Bilder dienen. + +Da gerade beim Nachschlagen häufig zuerst ein Bild betrachtet wird, +bevor der Text gelesen wird, sollte die Bildunterschrift nicht zu +knapp ausfallen, sondern wenigstens eine kurze Beschreibung des +Gezeigten enthalten. +Enhält die Bildunterschrift einen oder mehrere ganze Sätze, so wird +sie mit einem Punkt abgeschlossen. +Enthält sie nur eine kurze Beschreibung ohne Prädikat, so wird kein +abschließender Punkt gesetzt. + +Bei der Erstellung der Bilder ist unbedingt darauf zu achten, dass +diese einheitlich gestaltet werden. +Das bezieht beispielsweise Liniendicken, Schrifarten und "=größen ein. +Eine Schriftgröße von $\np[pt]{9}$ in den Zeichnungen entspricht der +der Bildunterschriften und ist daher eine geeignete Wahl. + +Häufig ist es notwendig, innerhalb eines Bildes +Teilbilder\index{Bild!Teilbild} zu +verwenden, die unter Umständen mit eigenen Bildunterschriften versehen +werden (beispielsweise in Bild~\ref{fig:bildpositionen}). +Die Unter"=Bildunterschriften werden alphanumerisch nummeriert und im +Schriftgrad 9~Punkt gesetzt. +Die Anordnung der Teilbilder kann je nach Größe und Bedarf neben"= +oder untereinander erfolgen. + + +% =================================================================== +\section{Tabellen}% +\label{sec:tabellen}% +\index{Tabelle}% + +Für Tabellen gelten viele der für Bilder gesagten Dinge ebenso. +Auch sie werden nur am oberen Rand bzw.\ auf einer +eigenen Seite platziert, sowie horizontal zentriert gesetzt. +Im Gegensatz zu Bildern haben Tabellen aber eine +Überschrift\index{Tabellenüberschrift}, die~-- wie der Name schon +sagt~-- über der eigentlichen Tabelle steht. + +Wie im professionellen Buchsatz üblich, werden zur Unterteilung +ausschließlich horizontale Linien\index{Tabelle!Linie} +unterschiedlicher Dicke verwendet. +Spalten\index{Tabelle!Spalte} werden durch Zwischenräume voneinander +getrennt. +Tabelle~\ref{tab:tabelle_beispiel} zeigt ein Beispiel. +% +\begin{table}% + \def\wn{\hphantom{\ensuremath{0}}}% + \centering + \caption{Als Beispiel einer Tabelle: Elastische Konstanten für + verschiedene Einkristalle}% + \label{tab:tabelle_beispiel}% + \small + \begin{tabular}{l*{7}{>{$}c<{$}}} + \toprule + \multicolumn{8}{c}{\bfseries Materialien mit kubischer + Gitterstruktur}\\ + \midrule + Material& E_{\mathrm{isotr.}}& E_{\langle + 100\rangle}& E_{\langle 111\rangle}& A& C_{11}& C_{12}& C_{44}\\ + Einheit&\mathrm{GPa}& \mathrm{GPa}& \mathrm{GPa}& & + \mathrm{GPa}& \mathrm{GPa}& \mathrm{GPa}\\ + \midrule + \multicolumn{8}{c}{Metalle und Halbmetalle}\\ + \midrule + Al& \wn70& \wn\wn64& \wn\wn76& + 1,23& \wn108& \wn61& \wn29\\ + Au& \wn78& \wn\wn43& \wn117& 1,89& \wn186& + 157& \wn42\\ + Cu& 121& \wn\wn67& \wn192& 3,22& \wn168& + 121& \wn75\\ + $\alpha$"=Fe& 209& \wn129& \wn276& 2,13& + \wn233& 124& 117\\ + Ni& 207& \wn137& 305& 2,50& \wn247& 147& 125\\ + Si& -& \wn130& 188& 1,57& \wn166& \wn64& \wn80\\ + W& 411& \wn411& \wn411& 1,00& \wn501& 198& + 151\\ + \midrule + \multicolumn{8}{c}{Keramiken}\\ + \midrule + Diamant&-& 1050& 1200& 1,20& 1076& 125& 576\\ + MgO& 310& \wn247& \wn343& 1,54& + \wn291& \wn90& 155\\ + NaCl& \wn37& \wn\wn44& + \wn\wn32& 0,72& \wn\wn49& \wn13& \wn13\\ + TiC& -& \wn476& \wn429& 0,88& \wn512& + 110& 117\\ + \midrule[\heavyrulewidth] + \multicolumn{8}{c}{\bfseries Materialien mit + hexagonaler Gitterstruktur}\\ + \midrule + Material& E_{\mathrm{isotr.}}& \!\!\!\!\!C_{11}=C_{22}\!\!\!\!\!& + C_{33}& C_{44}& \!\!\!\!\!C_{55}=C_{66}\!\!\!\!\!& C_{12}& + \!\!\!\!\!C_{13}=C_{23}\!\!\!\!\!\\ + Einheit&\mathrm{GPa}& \mathrm{GPa}& \mathrm{GPa}& + \mathrm{GPa}& \mathrm{GPa}& \mathrm{GPa}& + \mathrm{GPa}\\ + \midrule + Zn& \wn86& 143& \wn50& \wn40& \wn63& \wn17& \wn33\\ + \bottomrule + \end{tabular} +\end{table}% + +Verwenden Sie auch die horizontalen Linien sparsam. +Es ist zum Erstellen einer übersichtlichen Tabelle nicht notwendig, +alle Zeilen durch Linien zu trennen. +Fügen Sie nur dann horizontale Linien ein, wenn ein inhaltlicher +Unterschied zwischen aufeinander folgenden Zeilen besteht. + +Wenn möglich, werden Einheiten nur einmal im Tabellenkopf angegeben +und anschließend nur die entsprechenden Zahlenwerte geschrieben. +Achten Sie auch in Tabellen darauf, ob eine Zahl als Formel oder als +Text angesehen werden soll, da sich, wie in +Abschnitt~\ref{sec:schrift} beschrieben, ihr Aussehen entsprechend +verändern kann. + +Unter Umständen können Tabellen sehr lang werden, so dass sie nicht +auf eine Seite passen. +In diesem Fall können Tabellen über mehr als eine Seite gesetzt +werden. +In jedem Fall muss dann der Tabellenkopf auf jeder Seite wiederholt +werden. +Auf jeder Seite soll die Tabelle mit einer horizontalen Linie +abgeschlossen werden. +Zusätzlich kann ein Hinweis darauf gegeben werden, dass die Tabelle +auf der nächsten Seite fortgesetzt wird. + + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "richtlinien" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/cdcover.tex b/Master/texmf-dist/doc/latex/bgteubner/cdcover.tex new file mode 100644 index 00000000000..0953dffeeab --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/cdcover.tex @@ -0,0 +1,140 @@ +%% +%% This is file `cdcover.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `cdcover') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% harald.harders@gmx.de +%% +\ProvidesFile{cdcover.tex} + [2012/04/07 v2.02 Springer Vieweg Verlag] +\documentclass[ngerman,a4paper,fleqn,10pt,landscape]{article} +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} +\usepackage{babel} +\usepackage[scaled=0.92]{helvet} +\usepackage{courier} +\usepackage{graphicx} +\usepackage{amsmath} +\usepackage{amsfonts} +\usepackage{cd-cover} +\usepackage{relsize} +\usepackage{array} +\usepackage{url} +\usepackage{mdwlist} +\usepackage[textwidth=250mm,textheight=140mm]{geometry} +\usepackage{ragged2e} +\usepackage[num]{isodate} + +\makeatletter +\def\GetFileInfo#1{% + \def\filename{#1}% + \def\@tempb##1 ##2 ##3\relax##4\relax{% + \def\filedate{##1}% + \def\fileversion{##2}% + \def\fileinfo{##3}}% + \edef\@tempa{\csname ver@#1\endcsname}% + \expandafter\@tempb\@tempa\relax? ? \relax\relax} +\makeatother + +\GetFileInfo{cdcover.tex} + +\setlength{\parindent}{0mm} +\setlength{\parskip}{6pt plus 2pt minus 1pt} + +\renewcommand*\familydefault{\sfdefault} + +\begin{document} +\bookletsheet{% + \RaggedRight + {\bfseries\Large Zusammenfassung des \textsmaller{CD}"=Inhalts} + \vspace{5mm} + + \begin{tabular}{@{}>{\ttfamily}l>{\RaggedRight}p{0.7\linewidth}} + alt/ & Archiv alter Versionen der Dokumentklasse \\ + doc/ & Autorenrichtlinien inklusive Installationsanleitung + \url{bgteubner-17x24-times.pdf} (Times), + \url{bgteubner-17x24-cm.pdf} (European Computer Modern) und + Beschreibung der Implementation \url{bgreucls.pdf} \\ + pakete/ & \textsmaller{ZIP}"=Archive der Installationsdateien \\ + source/ & Quelltext der \texttt{bgteubner}"=Dokumentklasse + \end{tabular} + \vspace{5mm} + + Lesen Sie vor der Installation und vor dem Schreiben des Buchs bitte + aufmerksam die Autorenrichtlinien \url{bgteubner-17x24-times.pdf} oder + \url{bgteubner-17x24-cm.pdf} durch. + }{% + \begin{center} + \sffamily\Large + {\bfseries\Large + Harald Harders + \par}% + \vskip 2.0em + \par + {\bfseries\LARGE + Erstellen von Büchern für den Vieweg+Teubner Verlag mit \LaTeX + \par} + \vskip 2.0em + {\bfseries\Large + Dokumentklasse, Autorenrichtlinien und Installationsanleitung, + zusätzliche Pakete + \par} + \vskip 5.0em + Version \fileversion, \printdateTeX{\filedate} + \par + \vskip 2.0em + Vieweg+Teubner\quad Stuttgart $\cdot$ Leipzig $\cdot$ Wiesbaden + \end{center} +} + +\backsheet{Erstellen von Büchern für den Vieweg+Teubner Verlag mit \LaTeX + \qquad\qquad\qquad\quad\small v\fileversion}{% + \RaggedRight + {\bfseries + Harald Harders + \par} + \vskip 1em + {\Large\bfseries Erstellen von Büchern für den Vieweg+Teubner Verlag mit + \LaTeX + \par} + \vskip 3em + + Diese \textsmaller{CD} enthält die Dokumentklasse + \url{bgteubner.cls} sowie die Autorenrichtlinien inklusive + Installationsanleitung in zwei Versionen: + \begin{itemize*} + \item \url{bgteubner-17x24-times.pdf}: Brotschrift Times, + \item \url{bgteubner-17x24-cm.pdf}: Brotschrift European + Computer Modern. + \end{itemize*} + Außerdem sind Zusatzpakete enthalten, die in \TeX Live\,8 entweder + nicht oder nur veraltet enthalten sind. + + Diese \textsmaller{CD} sollte zusammen mit einer + \TeX Live"=8"=Installation verwendet werden (dafür ist eine + Anleitung enthalten). + Sie läuft auch mit anderen Distributionen, wobei dann aber keine + Anleitung enthalten ist. + } + +\end{document} +\endinput +%% +%% End of file `cdcover.tex'. diff --git a/Master/texmf-dist/doc/latex/bgteubner/checkliste.tex b/Master/texmf-dist/doc/latex/bgteubner/checkliste.tex new file mode 100644 index 00000000000..c746586025e --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/checkliste.tex @@ -0,0 +1,99 @@ +% +% bgteubner class bundle +% +% checkliste.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\chapter{Checkliste}% +\index{Checkliste|textbf}% +\label{sec:checkliste}% + +An dieser Stelle wird eine Checkliste angeboten, die man durcharbeiten +sollte, bevor man dem Verlag eine endgültige Version seines +Buches zukommen lässt. +% +\begin{enumerate} +\item Sind so wenig zusätzliche Pakete geladen wie möglich? + (Es müssen weniger Pakete geladen werden als bei den meisten anderen + Dokumentklassen. + Beispielsweise müssen weder \texttt{babel} noch \texttt{fontenc} + zusätzlich geladen werden.) +\item Läuft der Übersetzungslauf fehlerfrei durch?\footnote{Gerade + unter Windows findet man manchmal Installationen, die auch an + Fehlern die Übersetzung nicht unterbrechen. + Schauen Sie auf jeden Fall in die Log"=Datei, ob keine Fehler + aufgetreten sind.} +\item Wurde im gesamten Werk, inklusive aller Vorworte, einheitlich + entweder die neue oder die alte Rechtschreibung verwendet und auch + in der \verb|\documentclass|"=Zeile die entsprechende Sprache als + letztes angegeben? + Die neue Rechtschreibung ist vorzuziehen. +\item Entsprechen die Absätze vor und nach abgesetzten Formeln der + inhaltlichen Gliederung? Keine unnötigen Absätze! +\item Sind durch Fließumgebungen keine unnötigen Absätze oder + Leerzeichen entstanden? +\item Sind alle Angaben zum Buch (Autoren, Titel etc.) korrekt? +\item Entsprechen alle Datumsangaben (z.\,B.\ im Vorwort) dem + Erscheinungsjahr und "~monat? +\item Wurde in allen Fällen zwischen Zahlen im Text"= und Mathemodus + unterschieden? +\item Wurden alle Formelzeichen auch wirklich im mathematischen Modus + gesetzt? +\item Haben alle Zahlen Kommata statt Punkte? +\item Tabellen haben Überschriften, keine Unterschriften! +\item Ist das Stichwortverzeichnis erstellt und nicht zu knapp + gehalten? +\item Läuft die Erzeugung des Literaturverzeichnisses mit \BibTeX\ + fehlerfrei und ohne Warnung ab (siehe Log"=Datei mit der Endung + \verb|.blg|)? +\item Sind alle fehlenden Referenzen und doppelten Labels behoben? +\item Wurde bei den letzten Übersetzungsläufen ohne die Option + \verb|draft| gearbeitet? +\item\label{enum:uebersetzen} + Wurde oft genug übersetzt, so dass alle Referenzen und + Seitenzahlen in den entsprechenden Verzeichnissen stimmen? +\item Wurde der Index spät genug neu erzeugt, so dass auch dort alle + Seitenzahlen stimmen? +\item\label{enum:overfull} + Sind alle "`Overfull \textbackslash hbox"' (schwarze Balken, + falls mit der Option \verb|draft| übersetzt) behoben? +\item Wenn Sie lange Tabellen mit der \env{longtable}"=Umgebung + verwenden: Sind alle doppelten Linien an Seitenumbrüchen beseitigt + worden (vgl.\ Abschnitt~\ref{sec:tex:tabellen}), und ist die + Reihenfolge der Tabellen korrekt? +\item\label{enum:feinschliff} + Wurde der Feinschliff entsprechend + Abschnitt~\ref{sec:tex_feinschliff} zur Vermeidung unschöner + Umbrüche durchgeführt (u.\,A.\ Beheben von "`Underfull + \textbackslash vbox"')? +\item\label{enum:indexwiderspruch} + Wurde darauf geachtet, dass sich keine widersprüchlichen + Indexangaben entsprechend Abschnitt~\ref{sec:tex_index_doppelt} + ergeben haben? +\item Wurde die endgültige \acro{PDF}"=Datei ausgedruckt und + sorgfältig auf Fehler hin kontrolliert? + Wenn noch Fehler gefunden werden, müssen wahrscheinlich die + Punkte~\ref{enum:uebersetzen} bis \ref{enum:indexwiderspruch} + wiederholt werden. +\end{enumerate} + +Einige dieser Fragen lassen sich am einfachsten dadurch beantworten, +dass man sich die Log"=Datei von \pdfLaTeX\ ansieht. +Beispielsweise werden fehlende und doppelte Verweise, sowie "`Overfull +\textbackslash hbox"' und "`Underfull \textbackslash vbox"' dort genannt. + +% =================================================================== +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/einleitung.tex b/Master/texmf-dist/doc/latex/bgteubner/einleitung.tex new file mode 100644 index 00000000000..396ad7c29ef --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/einleitung.tex @@ -0,0 +1,137 @@ +% +% bgteubner class bundle +% +% einleitung.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== + +\chapter{Einführung}% + +Die mit diesen Autorenrichtlinien beschriebene \LaTeX"=Dokumentklasse +soll ermöglichen, dass die mit \LaTeX\ gesetzten Bücher des Teubner +Verlags ein einheitliches Aussehen erhalten. +Nehmen Sie sich bitte die Zeit, die Richtlinien vollständig zu lesen, +um mögliche Probleme zu vermeiden.\footnote{Ganz eilige können den + Teil "`Typographie"' überspringen und sofort den Teil "`Durchführung + mit \LaTeX"' ab Seite~\pageref{part:latex} lesen.} +Viele Dinge, die in den verbreiteten \LaTeX"=Dokumentklassen +zusätzlich programmiert werden müssen, werden von der Dokumentklasse +\verb|bgteubner| bereits zur Verfügung gestellt. +Wenn Sie diese Befehle und Umgebungen verwenden, ersparen Sie sich +zusätzliche Arbeit und sorgen außerdem dafür, das vorgegebene Layout +zu erfüllen. +\feinschliff{\enlargethispage{1\baselineskip}}{}{}{}% + +Diese Autorenrichtlinien setzen allerdings \LaTeXe"=Kenntnisse voraus +und ersetzen keinesfalls ein \LaTeX"=Handbuch. +Für Dokumente, die die Verwendung von \LaTeX\ selbst beschreiben, sei +auf die einschlägige Literatur, wie z.\,B.\ +\emph{Das \LaTeX\ Handbuch}~\cite{lamport1995a}, +den \emph{\LaTeX\ Begleiter}~\cite{goossens1995a} oder die frei +verfügbaren Dokumente \emph{The Not So Short Introduction to + \LaTeXe}~\cite{oetiker2003a} bzw.\ +\emph{\LaTeXe"=Kurzbeschreibung}~\cite{schmidt2003a} verwiesen. + +Im Teil "`Typographie"' ab Seite~\pageref{part:allgemeines} werden die +wichtigsten Merkmale der gewählten Typographie beschrieben, ohne auf +ihre Erstellung in \LaTeX\ einzugehen. +Machen Sie sich bitte keine allzu großen Gedanken, wie Sie das +geforderte Aussehen erreichen können: Das meiste geschieht +automatisch, wenn Sie sich an die im Teil "`Durchführung mit \LaTeX"' ab +Seite~\pageref{part:latex} beschriebenen Regeln halten. + +Gerade die Autoren, die es gewohnt sind, mit Microsoft Word oder +ähnlichen Programmen Dokumente zu erstellen, werden sicherlich zu +Beginn eine Neigung zu verspüren, von Hand in das Aussehen +einzugreifen. +Ich bitte jedoch, davon Abstand zu nehmen, um das einheitliche +Aussehen nicht zu gefährden. +Außerdem stellen sich Gestaltungsmerkmale, die beim ersten Hinsehen +ungewohnt erscheinen, später häufig als vernünftig heraus. + +Dies gilt auch für versierte \LaTeX"=Anwender: \emph{Verändern Sie +nicht das Layout, indem Sie Pakete laden, die verändertes Layout nach +sich ziehen! Verzichten Sie also auf Pakete wie \texttt{caption2}, +\texttt{fancyhdr} usw. Die Hauptdatei Ihres Dokuments wird sehr viel +weniger Pakete laden müssen, als Sie gewohnt sind. Lesen Sie sich dazu +auf jeden Fall Abschnitt~\ref{sec:tex:aufbau} aufmerksam durch und +verzichten Sie wirklich auf Umdefinitionen, auch wenn es Ihnen +teilweise nicht gefallen sollte.} + +Wenn Sie sich weitergehend mit Typographie beschäftigen möchten, +möchte ich Ihnen zwei sehr gute Bücher empfehlen, die beide im Verlag +Hermann Schmidt erschienen sind: Hans Peter Willberg, Friedrich +Forssman: \emph{Lesetypographie}~\cite{willberg1997a} sowie Friedrich +Forssman, Ralf de Jong: +\emph{Detailtypografie}~\cite{forssman2002a}. + +Im Anhang wird unter Anderem beschrieben, wie Sie die Dokumentklasse +unter Verwendung der \TeXLive"=Distribution installieren und die +Dokumente mit \pdfLaTeX\ übersetzen. +In Anhang~\ref{sec:checkliste} ist eine Checkliste enthalten, die vor +dem Erstellen einer endgültigen Version abgearbeitet werden sollte. + +Die für die \verb|bgteubner|"=Klasse verfügbare +Installations"~\acro{CD} ist für die Zusammenarbeit mit der +\TeXLive"~8"=Installation vorgesehen und enthält neben den +Autorenrichtlinien die notwendigen Pakete, die auf der +\TeXLive"~\acro{CD} nicht enthalten sind. Mit anderen +\TeX"=Installationen funktioniert die Klasse natürlich auch +zusammen. +Allerdings kann es dann notwendig werden, sich fehlende Pakete von +\url{ftp://ftp.dante.de} herunterzuladen und selbst zu installieren. + +Da der Verlag die Dokumente im \acro{PDF}"=Format entgegennimmt +und die Entwicklung von \pdfLaTeX\ noch relativ schnell fortschreitet, +sollte eine aktuelle \TeX"=Distribution verwendet werden. +Es kann sinnvoll sein, eine entsprechende \LaTeX"=Version neu zu +installieren. + +Meine eigenen Erfahrungen mit unterschiedlich erzeugten +\acro{PDF}"=Dateien haben gezeigt, dass \pdfLaTeX\ ein saubereres +\acro{PDF}"=Format erzeugt, als es über den Weg +\verb|tex|$\rightarrow$\acro{DVI}""$\rightarrow$% +PostScript""$\rightarrow$\acro{PDF} unter +Verwendung von \LaTeX, dvips und Ghostscript\footnote{Wie die + \acro{PDF}"=Qualität ist, wenn man Adobe Acrobat statt Ghostscript + verwendet, weiß ich leider nicht.} möglich ist. +Daher sollten Sie --~wenn möglich~-- \pdfLaTeX zur direkten Erzeugung +des Dokuments im \acro{PDF}"=Format verwenden. +In manchen Fällen wird dies allerdings nicht möglich sein, wenn Sie +zum Beispiel Pakete wie \verb|psfrag| oder \verb|pstricks| verwenden. +Aber auch dann müssen Sie das Programm \verb|pdflatex| verwenden und +eine Ausgabe im \acro{DVI}"=Format erzwingen, indem Sie als erste +Zeile Ihrer Hauptdatei +\begin{verbatim}[\small] +\pdfoutput=0 +\end{verbatim} +einfügen. +Normales \LaTeX\ kann nicht verwendet werden, da Funktionen verwendet +werden, die nur in \pdfLaTeX\ enthalten sind. + +\bigskip +\emph{Wenn Sie bereits mit einer Version der Dokumentklasse vor 1.08 + gearbeitet haben, ändern sich einige Umbrüche mit dieser Version.} + +\emph{Leider ändern sich innerhalb der Umgebungen + \texttt{important}(\texttt{*}) sowie + \texttt{longimportant}(\texttt{*}) aufgrund notwendiger + Fehlerkorrekturen einige Umbrüche beim Update von Version~1.14 auf + 1.20.} + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/formelzeichen.tex b/Master/texmf-dist/doc/latex/bgteubner/formelzeichen.tex new file mode 100644 index 00000000000..90b31680aac --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/formelzeichen.tex @@ -0,0 +1,82 @@ +% +% bgteubner class bundle +% +% formelzeichen.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\addchap{Verwendete Formelzeichen} + +% ------------------------------------------------------------------- +\begin{theglossary}[\addsec{Skalare}]% +% +\alpha_k& Kerbformzahl\\ +% +\varepsilon& technische Dehnung\\ +% +\varphi& wahre Dehnung\\ +% +\sigma& Spannung\\ +% +a& Gitterkonstante\\ +a& Risslänge bei Oberflächenrissen und halbe Risslänge bei inneren Rissen\\ +% +c& Gitterkonstante\\ +% +K& Spannungsintensitätsfaktor\\ +% +R_{eH}& obere Streckgrenze für Materialien mit ausgeprägter Streckgrenze\\ +R_{eL}& untere Streckgrenze für Materialien mit ausgeprägter Streckgrenze\\ +R_m& Zugfestigkeit\\ +R_{p0.2}& Dehngrenze für Materialien ohne ausgeprägte Streckgrenze\\ +% +\end{theglossary}% + +% ------------------------------------------------------------------- +\begin{theglossary}[\addsec{Vektoren}]% +% +(\varepsilon_{\alpha})=\vec{\varepsilon}& Dehnungsvektor (Voigtsche +Schreibweise)\\ +% +(\sigma_{\alpha})=\vec{\sigma}& Spannungsvektor (Voigtsche +Schreibweise)\\ +% +\end{theglossary}% + +% ------------------------------------------------------------------- +\begin{theglossary}[\addsec{Matrizen und Tensoren}]% +% +\delta_{ij}& Kroneckersymbol\\ +% +(\varepsilon_{ij})=\matr{\varepsilon}& Dehnungstensor\\ +% +(\sigma_{ij})=\matr{\sigma}& Spannungstensor\\ +% +\end{theglossary}% + +% ------------------------------------------------------------------- +\begin{theglossary}[\addsec{Indizes}]% +% +\alpha, \beta& In der Tensorrechnung: Laufindizes in der Voigtschen +Schreibweise, mögliche Werte: $1$ bis $6$\\ +% +1, 2, 3& Unsortierte Hauptwerte für Spannungstensoren\\ +% +\mathrm{I}, \mathrm{II}, \mathrm{III}& Sortierte Hauptwerte für +Spannungstensoren\\ +i, j, k, l& In der Tensorrechnung: Laufindizes für die +Tensorkomponenten, mögliche Werte: $1$ bis $3$\\ +% +\end{theglossary}% + +% ------------------------------------------------------------------- +% EOF
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/bgteubner/getversion.tex b/Master/texmf-dist/doc/latex/bgteubner/getversion.tex new file mode 100644 index 00000000000..822708891fa --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/getversion.tex @@ -0,0 +1,7 @@ +\documentclass{ltxdoc} +\nofiles +\input{bgteuversion} +\GetFileInfo{bgteuversion.tex} +\typeout{VERSION \fileversion} +\begin{document} +\end{document} diff --git a/Master/texmf-dist/doc/latex/bgteubner/globales.tex b/Master/texmf-dist/doc/latex/bgteubner/globales.tex new file mode 100644 index 00000000000..b6b55e82b38 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/globales.tex @@ -0,0 +1,596 @@ +% +% bgteubner class bundle +% +% globales.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\chapter{Globales}% +\index{Globales}% + +% =================================================================== +\section{Gesamtaufbau}% +\label{sec:gesamtaufbau}% +\index{Gesamtaufbau}% +\index{Aufbau}% + +Das Innere eines Buchs aus dem Teubner Verlag beginnt mit dem +\index{Schmutztitel}\new{Schmutztitel,} auf dem nur die Autoren und +der Buchtitel abgedruckt sind. +Auf dieser Seite beginnt die, im \index{Titelei}Vorspann römische, +\index{Seitenzählung}Seitenzählung mit~\iftimes{I}{\textsc{i}}. +Auf der nächsten rechten Seite wird der +\index{Innentitel}\new{Innentitel,} auf dem alle wichtigen +Informationen (\index{Autor}Autoren, \index{Titel}Titel, +\index{Untertitel}Untertitel, \index{Auflage@Auf\/lage}Auf"|lage, +\index{Erscheinungsjahr}Erscheinungsjahr, \dots) enthalten sind, gesetzt. +Das \index{Impressum}\new{Impressum} befindet sich auf +Seite~\iftimes{IV}{\textsc{iv}}. +Um diese ersten Seiten des Buches brauchen Sie sich nicht zu kümmern, +da diese vom Teubner Verlag separat erstellt werden. + +Es folgt auf Seite~\iftimes{V}{\textsc{v}} das +\index{Vorwort}\new{Vorwort,} das normalerweise die Überschrift +"`Vorwort"' erhält. +Daran angeschlossen wird das +\index{Inhaltsverzeichnis}\new{Inhaltsverzeichnis.} +Eventuelle \index{Formelverzeichnis}Formel"~, +\index{Abkürzungsverzeichnis}Abkürzungs"~, +\index{Abbildungsverzeichnis}Abbildungs"= und +\index{Tabellenverzeichnis}Tabellenverzeichnisse werden im Anhang +eingefügt. +Sie werden \emph{nicht} vor den eigentlichen Inhalt des Buches +gesetzt. + +Nun wird die \index{Seitenzählung}Seitenzählung bei~1 in arabischen +Zahlen neu begonnen. +Diese Seitennummerierung wird für das restliche Buch beibehalten. +Auf Seite~1 beginnt das erste Kapitel des Buchs. +Der inhaltliche Anteil des Buches kann (muss aber nicht) in mehrere +\index{Teil}\new{Teile} eingeteilt werden, die jeweils durch eine +ungerade Seite, auf der nur der Name des Buchteils +geschrieben steht, begonnen werden. +Zum Beispiel stellt Seite~\pageref{part:allgemeines} dieser +Richtlinien eine solche Teilüberschrift dar. +Die einzelnen Teile können unnummeriert oder römisch durchnummeriert +sein. + +Die Kapitel und Abschnitte werden arabisch nach dem Muster +\index{Kapitel!nummerierung@"~nummerierung}1, 1.1, 1.1.1 nummeriert. + +Es folgt ein \index{Anhang}\new{Anhang,} der immer ein unnummerierter +Teil, entsprechend dem eben beschriebenen, ist. +Dort wird die \index{Kapitel!nummerierung@"~nummerierung}Nummerierung +auf \iftimes{A}{\textsc{a}}, \iftimes{A.1}{\textsc{a}.1}, +\iftimes{A.1.1}{\textsc{a}.1.1} umgestellt. +Der Anhang beginnt mit Kapiteln, die inhaltlichen Charakter haben, +beispielsweise weitergehenden Herleitungen, die aus dem eigentlichen +Inhalt des Buches herausfallen. + +Die letzten Kapitel des Anhanges werden duch die Verzeichnisse +(\index{Literaturverzeichnis}Literaturverzeichnis, +\index{Formelzeichenverzeichnis}Formelzeichenverzeichnis, +\index{Stichwortverzeichnis}Stichwortverzeichnis, \ldots) gebildet. +Dabei dürfen einzelne Verzeichnisse fortgelassen werden, sofern sie +dem Autoren unnötig erscheinen. +Allerdings sind das Literatur"= und das Stichwortverzeichnis +obligatorisch. + + +% =================================================================== +\section{Seitenformat und "~aufteilung}% +\label{sec:seitenformat}% +\index{Seitenformat}% +\index{Seitenaufteilung}% +\index{Satzspiegel}% + +Für Bücher des Teubner Verlags stehen zwei +\index{Format}\index{Papierformat}Formate zur Auswahl: +\acro{DIN"~A\,5} ($\np[mm]{148}\times\np[mm]{210}$) und +$\np[mm]{170}\times\np[mm]{240}$. +Die Satzspiegel wurden mit +$\np[mm]{115}\times\np[mm]{174}$ bzw.\ +$\np[mm]{135}\times\np[mm]{200}$ inklusive Kolumnentitel vom Verlag +vorgegeben. + +Der äußere \index{Rand}Rand auf jeder Seite soll optisch genauso breit +sein wie beide Ränder in der Buchmitte zusammen \cite{kohm2003a}. +Damit dies erreicht wird, ist mittlere Rand auf einem vollständig +sichtbarem Blatt (z.\,B.\ einem Probeausdruck) etwas breiter als der +halbe äußere Rand, da in der Mitte etwas Fläche durch die Bindung +verloren geht. + + +% =================================================================== +\section{Schriften}% +\label{sec:schrift}% +\index{Schrift}% + +Auch für die \index{Brotschrift}\new{Brotschrift} sind zwei Varianten +möglich. +Normalerweise wird die \index{Times Roman}% +\iftimes{"`Times Roman"'}{{\usefont{T1}{ptm}{m}{n}"`Times Roman"'}} +verwendet, die der Windows"=Standardschrift Times""New""Roman sehr +ähnlich ist und daher ein einheitliches Aussehen von Büchern +ermöglicht, die mit \LaTeX\ oder mit Microsoft Word erstellt +wurden.\iftimes{\footnote{Das ist bei diesem Dokument der Fall.}}{} +Mit ihr wird gegebenenfalls als serifenlose die \index{Helvetica}% +\iftimes{\textsf{"`Helvetica"'}}{{\usefont{T1}{phv}{m}{n}"`Helvetica"'}} +und als Schreibmaschinenschrift die \index{Courier}% +\iftimes{\texttt{"`Courier"'}}{{\usefont{T1}{pcr}{m}{n}"`Courier"'}} +kombiniert. + +Nach Absprache mit dem zuständigen Lektor kann aber auch die +Schrift \index{European Computer Modern}% +\iftimes{{\usefont{T1}{cmr}{m}{n}"`European Computer + Modern"'}}{"`European Computer Modern"'} Antiqua, die bei \LaTeX\ +weit verbreitet ist, verwendet +werden.\iftimes{}{\footnote{Das ist bei diesem Dokument der Fall.}} +Sie bricht zwar die Einheitlichkeit im Aussehen der Bücher etwas auf, +bietet dafür aber, gerade im mathematischen Satz, einige +Vorteile.\footnote{Sofern die kommerziellen Schriftpakete MathTime und + MathTimePlus von der Firma Y\,\&\,Y verfügbar sein sollten, kann + durch sie der mathematische Schriftsatz auch mit der Times vernüftig + gestaltet werden (siehe dazu Tabelle~\ref{tab:klassenoptionen} auf + Seite~\pageref{tab:klassenoptionen}.} +Sie wird mit ihrer +\iftimes{{\usefont{T1}{cmss}{m}{n}serifenlosen}}{\textsf{serifenlosen}} +und +\iftimes{{\usefont{T1}{cmtt}{m}{n}Schreibmaschinen}}% +{\texttt{Schreibmaschinen}}"=Variante kombiniert. + +Für beide Schriftfamilien gilt, dass für den Fließtext der +\index{Schriftgrad}% +\index{Punkt (Maßeinheit)}Schriftgrad 10~Punkt (abgekürzt +$\np[pt]{10}$)\footnote{Die Einheit "`Punkt"' ist nicht eindeutig + definiert. + In \LaTeX\ hat $\np[pt]{1}$ die Länge $\nicefrac{1}{72,27}$~inch. + Ein Postscript"=Punkt hat die Länge $\nicefrac{1}{72}$~inch und wird + in \LaTeX\ mit $\np[bp]{1}$ bezeichnet (für \engl{big point}). + Da der Unterschied so gering ist, dass er für Schriftgrößen + unerheblich ist, gehe ich nicht weiter auf den Unterschied ein.} +verwendet wird. +Weitere verwendete \index{Schriftgrad}Schriftgößen sind für +Kapitelüberschriften 14,4 Punkt, für Abschnittsüberschriften 12~Punkt. +Einige Bereiche, wie z.\,B.\ Bildunterschriften, werden in einer +9"=Punkt"=Schrift gesetzt, Fußnoten in 8~Punkt. + +Bei Verwendung der European"=Computer"=Modern"=Schriftfamilie werden +Zahlen im Text als +\index{Mediävalziffer}\new{Mediävalziffern} +(\cmoldstylenums{1234567890})% +\iftimes{\footnote{Die Zahlenbeispiele werden in der European Computer + Modern gesetzt, da Mediävalziffern für die Times nicht zur + Verfügung stehen.}}{} +geschrieben, da diese weniger als die meist verwendeten +\index{Versalziffer}\new{Versalziffern} +(\cmnewstylenums{1234567890}) aus dem Fließtext herausstechen. +Beispielsweise sieht die Zahl \cmoldstylenums{1980} eher nach einem +normalen Wort mit Kleinbuchstaben aus als \cmnewstylenums{1980}, das +aussieht, als wäre es mit Versalien gedruckt. +Noch auf"|fälliger ist es bei Telefonnummern. +Zum Beispiel fällt (\cmoldstylenums{05\,31}) +\cmoldstylenums{3\,91}"=\cmoldstylenums{30\,62} im Text weniger auf +und ist besser zu lesen als \cmnewstylenums{(05\,31) 3\,91"=30\,62}. +Wird die Times verwendet, müssen Versalziffern verwendet +werden, da für sie keine kostenlosen Mediävalziffern zur Verfügung +stehen. + +In mathematischem Formelsatz werden im Gegensatz zum Text immer +\index{Versalziffer}Versalziffern verwendet, um +Verwechslungen mit tiefgestellten Zeichen wie Indizes zu vermeiden. +Wegen dieser Unterscheidung ist es --~zumindest bei Verwendung der +European Computer Modern~-- sehr wichtig, beim Erstellen des +Dokumentes darauf zu achten, ob eine Zahl als Bestandteil des Textes +(z.\,B. Jahresangaben, Telefonnummern, Postleitzahlen) oder als +mathematische Formel gesehen werden soll. +Achten Sie bitte auch dann auf die Unterscheidung, wenn Sie die Times +verwenden. +Vielleicht soll ja später doch auf European Computer Modern umgestellt +werden. + +\new{Hervorhebungen}\index{Hervorhebung} im Text werden durch +\emph{eine \index{kursiv}kursive Schrift} erzielt. +Verwenden Sie bitte keinen \index{fett}\textbf{Fettdruck,} da er beim bloßen +Anschauen der Seite sofort ins Auge springt. +Normalerweise ist das aber nicht gewünscht. Stattdessen soll der Leser +lediglich beim normalen Lesen des Textes erkennen, dass dieses Wort +wichtig ist. +Völlig verboten sind mehrfache Auszeichnungen wie z.\,B.\ +\emph{\bfseries fett und kursiv gleichzeitig.} +Es bietet sich an, neu eingeführte Begriffe beim ersten Auftreten +einmal kursiv zu drucken, wie es auch in den Autorenrichtlinien getan +wird. +Führen Sie bitte neue Begriffe nicht mit +\index{Anführungszeichen}Anführungszeichen ein. +Diese sollten nur dann verwendet werden, wenn wirklich auf einen +zitierten Titel verwiesen wird oder das Wort ähnlich wörtlicher Rede +(z.\,B.\ sprichwörtlich) verwendet wird. +\begin{example} + Die Begriffe \new{Elastizitätsmodul}, \new{Streckgrenze} und + \new{Bruchdehnung} haben etwas mit Werkstoffkunde zu tun. + + Eine hydraulische Prüfmaschine kann als wahre "`Kaputtmachmaschine"' + angesehen werden. +\end{example} +Als \index{Anführungszeichen|textbf}\new{Anführungszeichen} werden +ausschließlich die nach innen zeigenden +\index{Guillemet}\new{Guillemets} (französische Anführungszeichen, +auch "`Möwchen"') "` und "' verwendet. +Sowohl nach außen zeigende Guillemets \flqq\dots\frqq, die deutschen +\quotedblbase\dots\textquotedblleft\ als auch englische +Anführungsstriche (``\dots'') sind verboten. +Für einfache Anführungszeichen gilt das Gleiche: Es dürfen nur \glq\ +und \grq\ verwendet werden. +Dies ist folgendermaßen zu begründen (aus Friedrich Forssman, Ralf de +Jong: \emph{Detailtypografie}, S.~179~\cite{forssman2002a}): +\par +\begin{quote} + Die \quotedblbase deutschen Anführungen\textquotedblleft\ sind + \emph{nicht so gut lesbar} [...] wie die "`Möwchen"', + \begin{compactitem} + \item denn sie gleichen den \emph{Apostrophen} und \emph{Kommas,} + \item sie stören die \emph{Zeilenbildung} durch ihr aus der + Zeilenmitte gerücktes Bild. + \end{compactitem} + \feinschliff{\sloppypar}{}{}{}% + Die \emph{französischen Anführungen} hingegen ähneln anderen + Interpunktionszeichen nicht und unterstützen die + Zeilenbildung. +\end{quote} +\par\noindent +Wenn Ihnen diese Anführungszeichen ungewohnt erscheinen, schlagen Sie +einmal einige beliebige Romane auf. +Fast immer werden Guillemets verwendet. + + +% =================================================================== +\section{Absätze}% +\label{sec:allg_absaetze}% +\index{Absatz}% + +Im Fließtext wird \index{Blocksatz}\new{Blocksatz} verwendet. +Die erste Zeile eines jeden Absatzes wird um den Betrag des +Zeilenabstandes +\index{Absatz!Einrückung}\index{Einrückung}eingerückt. +Eine Ausnahme bildet der jeweils erste Absatz nach einer Kapitel"= +oder Abschnittsüberschrift, nach einem Abschnittswechsel ohne +Überschrift oder nach bestimmten, abgesetzt formatieren Bereichen, die +später beschrieben werden. +Für die richtige Einrückung wird automatisch gesorgt. +Ein zusätzlicher \index{Durchschuss}\new{Durchschuss} (größerer +Abstand) an Absätzen wird nicht vorgenommen.\footnote{Unter Umständen + werden Absätze doch ein wenig auseinander gezogen, wenn dadurch + verhindert werden kann, dass am unteren Rand des Satzspiegels Lücken + entstehen. + Dies ist unerwünscht, vgl. Abschnitt~\ref{sec:tex_feinschliff}.} + +Nach abgesetzten \index{mathematische Formel}mathematischen Formeln +\index{Mathematik}hängt es vom Kontext ab, ob +die folgende Zeile eingerückt wird oder nicht. +Formeln gelten als ganz normale Satzteile. +Geht nach ihnen der Satz oder der Gedankengang weiter, darf die +nächste Zeile nicht eingerückt werden. +Fängt ein neuer inhaltlicher Punkt an, so muss die nächste Zeile +eingerückt werden. +Das lässt sich an zwei einfachen Beispielen verdeutlichen. +\begin{example} + \label{ex:absatz_bsp1}% + Irgendwann vor unserer Zeit wurde der mathematische Satz des + Pythagoras, + \begin{align*} + a^2+b^2 &= c^2\,, + \end{align*}% + entdeckt. + Er besagt, dass die Längen eines rechtwinkligen Dreiecks + zueinander in Beziehung stehen. +\end{example} +Hier wird der Satz nach der Formel fortgeführt. +Es erfolgt keine Einrückung. +Im nächsten Beispiel beginnt nach der Formel ein neuer Gedanke, der +durch einen neuen Absatz kenntlich gemacht wird. +\begin{example} + \label{ex:absatz_bsp2}% + Aus den Längenbeziehungen der Kanten eines rechtwinkligen + Dreiecks folgt der Satz des Pythagoras + \begin{align*} + a^2+b^2 &= c^2\,. + \end{align*}% + + Anders sieht es bei schiefwinkligen Dreiecken aus. + Dort gilt eine entsprechende Gleichung nicht. +\end{example} + +In Überschriften, Fußnoten, Bildunter"= und Tabellenüberschriften +sowie im Literaturverzeichnis wird linksbündiger Flattersatz +verwendet. +Das geschieht aus unterschiedlichen Gründen: +In Fußnoten, Bildunter"= und Tabellenüberschriften dient das +unter anderem dazu, sie besser vom Fließtext abzuheben. +In Überschriften und im Literaturverzeichnis würde Blocksatz zu +unschönen Trennungen und zu auseinander gerissenen Wörtern, also zu +lückenhaftem Satz führen. +Das kann durch Flattersatz verhindert werden. +In Kapitel"= und Abschnittsüberschriften werden außerdem +Silbentrennungen verhindert. + +% =================================================================== +\section{Kapitel und Abschnitte}% +\index{Kapitelüberschrift}% +\index{Abschnittsüberschrift}% + +Kapitel"= und Abschnittsüberschriften werden etwas größer und fett +gesetzt.\footnote{Kapitelüberschriften in 14,4~Punkt, + Abschnittsüberschriften mit 12~Punkt und + Unterabschnittsüberschriften mit 10~Punkt.} +Sie erhalten einen hängenden Einzug\index{Einzug!hängend}, d.\,h., bei +mehrzeiligen Überschriften wird linksbündig auf den Beginn der ersten +Zeile ausgerichtet, die auf die Abschnittsnummer folgt. +Wie oben gesagt, werden Überschriften im Flattersatz gesetzt, und +Silbentrennungen werden in ihnen unterdrückt. +Der Einzug der Kapitel"= und Abschnittsüberschriften ist für alle +Ebenen gleich, um einen Treppeneffekt bei direkt aufeinander folgenden +Überschriften einer unterschiedlichen Ebene zu vermeiden. + +Bei Verwendung der European Computer Modern werden in Kapitel"= und +Abschnittsüberschriften mathematische Symbole ebenfalls fett gedruckt, +sofern nicht eine fette Auszeichnung für Vektoren und Tensoren +verwendet wird. +Mit der Times bleiben mathematische Symbole in Überschriften normal +gesetzt. + +Kapitel beginnen immer auf einer neuen, ungeraden Seite. +Es werden die obersten drei Kapitel"= bzw.\ Abschnittsebenen +nummeriert und in das Inhaltsverzeichnis aufgenommen. +Die weiteren Ebenen bleiben unnummeriert. + +Oberhalb des Textes wird ein so genannter \new{lebender + Kolumnentitel}\index{Kolumnentitel!lebend}% +\index{lebender Kolumnentitel} gesetzt. +Ganz außen wird jeweils die Seitenzahl gesetzt. +Mit einem festen Abstand vom äußeren Rand wird auf geraden, also +linken Seiten, die Überschrift des aktuellen Kapitels in einer +9"=Punkt"=Schrift gesetzt, auf ungeraden Seiten die des laufenden +Abschnittes. +Seiten, auf denen ein neues Kapitel beginnt, erhalten keinen +Kolumnentitel. + +\bigskip +Eine Gliederungsstufe, die über einen Absatz hinaus geht, aber für eine +neue Überschrift noch zu gering ist, wird durch einen vertikalen +Zwischenraum gekennzeichnet. +Der folgende Absatz wird nicht eingerückt, wie es bei diesem Absatz +getan wurde. + +% =================================================================== + +\section{Mathematik}% +\index{Mathematik|textbf}% +\index{mathematische Formel|textbf}% +\label{sec:mathematik}% + +Wie schon weiter oben erwähnt, werden im mathematischen Satz +Versalziffern verwendet. +Dies geschieht automatisch, wenn man die mathematischen Umgebungen des +Satzsystems verwendet. +Im deutschen Sprachraum ist es üblich, die Vor"= und Nachkommastellen +durch ein Komma\index{Komma}\index{Dezimaltrennzeichen} zu trennen. +Auch wenn viele Autoren durch den angelsächsischen Einfluss gerne zum +Punkt greifen, soll in deutschsprachigen Büchern das korrekte Komma +verwendet werden. +Lange Zahlen sollten durch kleine Zwischenräume an jeder +dritten Stelle besser lesbar gemacht werden, beispielsweise +$\numprint{7543031,236304}$. + +Mathematische Symbole (Variablen\index{Variable}, Größen) werden immer +kursiv gedruckt, auch wenn sie einzeln im Text vorkommen. +Das wird durch folgendes Beispiel illustriert. +\begin{example} + Die Länge der Hypotenuse $c$ ergibt sich aus den Katheten $a$ und + $b$ mit Hilfe des Satzes von Pythagoras zu + \begin{align*} + c^2 &= a^2 + b^2\,. + \end{align*} +\end{example} + +Indizes\index{Index} werden je nach Bedeutung unterschiedlich gesetzt. +Stellt der Index eine Laufvariable\index{Index!Laufvariable} oder ein +Formelzeichen\index{Index!Formelzeichen} dar, so wird er kursiv +dargestellt. +\begin{example} + Die Komponenten $\sigma_{ij}$ des Spannungstensors werden nach + dem hookeschen Gesetz berechnet: + \begin{align*} + \sigma_{ij} &= \sum_{k=1}^3 \sum_{l=1}^3 + C_{ijkl}\,\varepsilon_{kl} \quad\text{für $i=1\dots 3$, $j=1\dots + 3$}\,. + \end{align*} + Die Standardabweichung der Größe $x$ lautet $\mu_x$ und nicht + $\mu_{\mathrm{x}}$. +\end{example} +Bildet der Index hingegen einen Namen\index{Index!Name} oder eine +Abkürzung\index{Index!Abkürzung}, so wird er aufrecht geschrieben. +\begin{example} + Die Mittelspannung $\sigma_{\mathrm{m}}$ ist der Mittelwert der + Oberspannung $\sigma_{\mathrm{o}}$ und der Unterspannung + $\sigma_{\mathrm{u}}$: + \begin{align*} + \sigma_{\mathrm{m}} &= \frac{\sigma_{\mathrm{o}} + + \sigma_{\mathrm{u}}}{2}\,. + \end{align*} +\end{example} + +Operatoren\index{Operator} und Funktionsnamen\index{Funktionsname} +werden aufrecht gesetzt. +Das gilt auch für die Differential"=\index{Differentialoperator} und +Differenzenoperatoren\index{Differenzenoperator} $\d$ und +$\D$. +\begin{example} + Folgende Gleichungen sind auf jeden Fall richtig: + \begin{align*} + \sin^2\alpha + \cos^2\alpha &= 1\,,\\ + \frac{\d(x^2)}{\d x} &= 2x\,,\\ + x_2 - x_1 &= \D x\,. + \end{align*} +\end{example} + +Wie in Abschnitt~\ref{sec:allg_absaetze} schon erwähnt, handelt es +sich bei Formeln um Satzteile, die ganz normal mit entsprechenden +Satzzeichen abgeschlossen werden. +Das gilt auch, wenn vor der Formel ein ganzer Satz steht, der mit +einem Doppelpunkt abgeschlossen ist. +Auch mehrere Formeln, die direkt aufeinander folgen, gelten jeweils +als Teilsätze, die durch Kommata getrennt werden. +Die vorangegangenen und folgenden Beispiele zeigen dies. +\begin{example} + Es gilt folgende Gleichung: + \begin{align*} + f(x) &= 3x^2+5x+3\,. + \end{align*} + Es gelten folgende Gleichungen:\footnote{Hier liest es sich: "`$f$ + von $x$ ist gleich $3x^2+5x+3$, $g$ von $x$ ist gleich $7x^2-10x-11$."'} + \begin{align*} + f(x) &= 3x^2+5x+3\,,\\ + g(x) &= 7x^2-10x-11\,. + \end{align*} + Aber es gilt\footnote{Hier liest sich die Formel: "`$f$ von $x$ ist + gleich $3x^2+5x+3+4x^2$ ist gleich $7x^2+5x+3$."'} + \begin{align*} + f(x) &= 3x^2+5x+3+4x^2\\ + &= 7x^2+5x+3\,. + \end{align*} + Die Beziehung + \begin{align*} + a&= b+c + \end{align*} + führt auf dieses und jenes Ergebnis. Nach einer unglaublich langen + und unübersichtlichen Rechnung mit vielen Kniffen und Tricks, die + etwa drei Jahre gebraucht hat, also nach \emph{einfacher Umformung}, + ergibt sich + \begin{align*} + E &= mc^2\,. + \end{align*} +\end{example} +Anders als im Fließtext, in dem Satzzeichen immer direkt auf das +vorangehende Zeichen folgen, können sie im Formelsatz etwas von dem +letzten Zeichen abgesetzt werden, wie es auch in den Beispielen +getan wurde. + +Abgesetzte Formeln\index{Formel!abgesetzt} werden linksbündig mit +einem festen Einzug gesetzt, wie es auch die Beispiele zeigen. +Dieser Einzug muss dabei nicht für alle Zeilen eines Gleichungssystems +gelten, wenn die einzelnen Zeilen auf ein bestimmtes Zeichen (z.\,B.\ +ein Gleichheitszeichen) ausgerichtet werden. +Nur in Einzelfällen darf der Einzug reduziert werden, wenn dadurch +verhindert werden kann, dass eine lange Formel über den rechten Rand +hinaussteht. +\feinschliff{}{\enlargethispage{\baselineskip}}{}{}% + +Abgesetzte Formeln können mit Formelnummern\index{Formelnummer} +versehen werden. +Diese werden innerhalb eines Kapitels fortlaufend nummeriert. +Entscheiden Sie bitte inhaltlich, welche Formeln eine Nummer erhalten +sollen. +Nummeriert werden müssen natürlich alle Formeln, auf die innerhalb des +Buches verwiesen wird. +Dagegen sollten beispielsweise Einzelschritte einer Herleitung, auf +die nicht explizit verwiesen wird, keine Formelnummer erhalten. +Wichtige Formeln, auf die im Buch zwar nicht verwiesen wird, auf die +sich aber vielleicht der Leser irgenwann beziehen könnte, sollten +jedoch wieder eine Formelnummer erhalten. +Halten Sie sich bitte an die Regel, nicht jeder Formel eine Nummer zu +verpassen! + +Manchmal gehören mehrere Formelzeilen zusammen und sollten daher eine +gemeinsame Nummer\index{Formelnummer!gemeinsam} erhalten. +Wenn nicht auf eine einzelne der Zeilen referenziert werden soll, +sollte eine gemeinsame Nummer vertikal zentriert gesetzt werden. +Muss auf eine einzelne Zeile Bezug genommen werden, sollte eine +Unternummerierung vorgenommen werden, wie das folgende Beispiel +zeigt. +\begin{example} + Es gilt folgendes Gleichungssystem: + \begin{subequations} + \begin{align} + 3a+4b &= 7\,, \label{eq:zeile1}\\ + 6a-9b &= -20\,. + \end{align} + \end{subequations} + Durch Multiplizieren der Gleichung~\eqref{eq:zeile1} mit $2$ ergibt + sich das System + \begin{align*} + 6a+8b &= 14\,,\\ + 6a-9b &= -20\,, + \end{align*} + aus dem sich durch Subtrahieren der Gleichungen folgende Ergebnisse + berechnen lassen: + \begin{align} + \begin{split} + a &= -\frac{1}{3}\,,\\ + b &= 2\,. + \end{split} + \end{align} +\end{example} + +Die Schreibweisen von Vektoren\index{Vektor}, Matrizen\index{Matrix} +und Tensoren\index{Tensor} sind durch den Teubner Verlag nicht +einheitlich festgelegt, da die Anforderungen in den einzelnen Werken +weit auseinander gehen. +Wichtig ist allerdings, dass die Notation innerhalb eines Buches +strikt eingehalten und an geeigneter Stelle erklärt wird. + +\begingroup + \iftimes{\ifmathtime{}{\renewcommand\boldsymbol{\pmb}}}{}% +Möglich sind beispielsweise für Vektoren diejenige mit einem Pfeil +über dem Symbol ($\origvec{a}$, $\origvec{k}$, $\origvec{y}$), das +Unterstreichen ($\vec{a}$, $\vec{k}$, $\vec{y}$), +der Fettdruck ($\boldsymbol{a}$, $\boldsymbol{k}$, +$\boldsymbol{y}$)\footnote{Bei Verwendung der + fetten Auszeichnung bei der Times ist die Qualität der fetten + mathematischen Symbole eingeschränkt, da keine fette Schrift für die + Mathematik zur Verfügung steht. Bei der European Computer Modern + sowie der Times unter Verwendung der kommerziellen + Y\,\&\,Y"=Schriften MathTime und MathTimePlus ist + die Qualität gut.} oder Fraktur ($\mathfrak{a}$, +$\mathfrak{k}$, $\mathfrak{y}$), wovon ich allerdings abrate, da viele +Leser diese Zeichen wohl gar nicht mehr erkennen\footnote{Das "`k"' + und das "`y"' hätte auch ich nicht erkannt.}. + +Matrizen können beispielsweise durch doppelte Pfeile +($\origvec{\origvec{A}}$, $\origvec{\origvec{K}}$, +$\origvec{\origvec{Y}}$), eine doppelte Unterstreichung +($\matr{A}$, $\matr{K}$, $\matr{Y}$) oder durch +Fettdruck ($\boldsymbol{A}$, $\boldsymbol{K}$, $\boldsymbol{Y}$) +gekennzeichnet werden. +\endgroup + +\new{Einheiten}\index{Einheit} werden aufrecht geschrieben, um sie +von Variablen zu unterscheiden. +Zwischen der Zahl und der Einheit erfolgt ein kleiner +Zwischenraum. +\begin{example} + $E=\np[MPa]{210000}$, $l=\np[m]{10}$. +\end{example} +Die einzige Ausnahme ist das Gradzeichen, das direkt auf die Zahl +folgt. +In der Form $\tccelsius$ ist aber wieder ein Zwischenraum vorhanden. +\begin{example} + $\alpha=\np{30}\tcdegree$, $t=\np[\tccelsius]{300}$. +\end{example} + + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "richtlinien" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/hyphenation.tex b/Master/texmf-dist/doc/latex/bgteubner/hyphenation.tex new file mode 100644 index 00000000000..53c145e0c3d --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/hyphenation.tex @@ -0,0 +1,16 @@ +% +% bgteubner class bundle +% +% hyphenation.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +\hyphenation{Unix Micro-soft Da-tei-endung} diff --git a/Master/texmf-dist/doc/latex/bgteubner/index.tex b/Master/texmf-dist/doc/latex/bgteubner/index.tex new file mode 100644 index 00000000000..a4b4c82928c --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/index.tex @@ -0,0 +1,48 @@ +% +% bgteubner class bundle +% +% index.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\index{Buchteil|see{Teil}}% +\index{Verzeichnis!Literatur-|see{Literaturverzeichnis}}% +\index{Verzeichnis!Formel-|see{Formelverzeichnis}}% +\index{Verzeichnis!Abkürzungs-|see{Abkürzungsverzeichnis}}% +\index{Verzeichnis!Abbildungs-|see{Abbildungsverzeichnis}}% +\index{Verzeichnis!Tabellen-|see{Tabellenverzeichnis}}% +\index{Verzeichnis!Beispiele|see{Verzeichnis der Beispiele}}% +\index{Verzeichnis!Aufgaben-|see{Aufgabenverzeichnis}}% +\index{Verzeichnis!Stichwort-|see{Stichwortverzeichnis}}% +\index{Schriftgröße|see{Schriftgrad}}% +\index{Fotografie|see{Bild}}% +\index{Zeichnung|see{Bild}}% +\index{Diagramm|see{Bild}}% +\index{Teilbild|see{Bild\subind Teilbild}}% +\index{Tabellenunterschrift|see{Tabellenüberschrift}}% +\index{Textelement!Beispiel|see{Beispiel}}% +\index{Textelement!Aufgabe|see{Aufgabe}}% +\index{Textelement!Lösung|see{Lösung}}% +\index{Textelement!Anmerkung|see{Anmerkung}}% +\index{Textelement!Aufzählung|see{Aufzählung}}% +\index{Teilaufgabe|see{Aufgabe\subind Teil-}}% +\index{Index|seealso{Stichwortverzeichnis}}% +\index{Minuskelziffer|see{Mediävalziffer}}% +\index{Majuskelziffer|see{Versalziffer}}% +\index{Kapitel|seealso{Abschnitt}}% +\index{Abschnitt|seealso{Kapitel}}% +\index{Schriftgröße|see{Schriftgrad}}% +\index{Ziffer!Mediäval-|see{Mediävalziffer}}% +\index{Ziffer!Versal-|see{Versalziffer}}% +\index{Auszeichnung|see{Hervorhebung}}% + +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/installation.tex b/Master/texmf-dist/doc/latex/bgteubner/installation.tex new file mode 100644 index 00000000000..6c7442126e2 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/installation.tex @@ -0,0 +1,494 @@ +% +% bgteubner class bundle +% +% installation.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\chapter{Installation von \LaTeX\ und der Pakete}% +\label{chap:installation}% + + +\section{Installation von \LaTeX}% + +Der Teubner Verlag nimmt Ihr Manuskript im \acro{PDF}"=Format +entgegen. +Da \pdfLaTeX\ die Methode darstellt, mit der aus +\LaTeX\ die saubersten \acro{PDF}"=Dateien erzeugt werden können, +muss dieses Programm verwendet werden. +Gerade \pdfLaTeX\ ist in der letzten Zeit stark weiterentwickelt +worden, so dass eine möglichst moderne Version verwendet werden soll. +Außerdem benötigt die \verb|bgteubner|"=Klasse einige Zusatzpakete in +relativ neuen Versionen. +Daher ist es häufig zweckmäßig, eine aktuelle \TeX"=Distribution zu +verwenden. + +Mit \TeXLive\,8 steht eine Distribution zur Verfügung, die sowohl für +Windows, Linux, viele Unix"=Derivate als auch Macintosh\footnote{Da es + sich bei Mac\,\acro{OS\,X} um einen Unix"=Dialekt + handelt, wird es im Weiteren nicht gesondert betrachtet. + Auf Unterschiede zu anderen Unixvarianten wird in der Anleitung zur + \TeXLive"~\acro{CD} hingewiesen, die dort im Verzeichnis + \url{texmf/doc/tldoc/} enthalten ist.} verfügbar ist. +Daher wird an dieser Stelle nur beschrieben, wie sie installiert +werden kann und wie die nicht enthaltenen Pakete nachinstalliert +werden können. +Sollten Sie eine andere \TeX"=Installation verwenden, wird die +Installation anders verlaufen. +In diesem Fall müssen Sie leider ohne meine Hilfe auskommen. + +Die \TeXLive"=8"=Installations"=\acro{CD} kann als so genannte +Imagedatei von der Adresse \url{ftp://www.tug.org/texlive/Images/} +heruntergeladen und auf \acro{CD} gebrannt werden. +Zur Zeit ist sie in dem angegebenen Verzeichnis unter dem Dateinamen +\url{rc-texlive-inst.iso} abgelegt. +Wahrscheinlich wird sie nach Abschluss der Testphase umbenannt werden +und dann etwa \url{texlive8-}\meta{Datum}\url{-cd1.iso.bz2} heißen. +Die Dateiendung \url{.bz2} zeigt an, dass die Imagedatei gepackt ist. +Unter Unix kann sie mit \verb|bunzip2| oder \verb|bzip2 -d| entpackt +werden. +Unter Windows sollten Programme wie \verb|WinZIP| das Entpacken +übernehmen können. +Außerdem kann sie im Handel bei der Buchhandlung Lehmanns +(\url{http://www.lehmanns.de}) erworben werden.\footnote{Zum Zeitpunkt + der Fertigstellung dieses Dokuments war die Version~8 der + \TeXLive"=Distribution noch nicht erschienen. + Nach Auskunft der Entwickler steht die Fertigstellung kurz bevor. + \emph{Weichen Sie bitte nicht auf die Version~7 aus, da diese mittlerweile + stark verhaltet ist.}} + +Lesen Sie zur Installation bitte auch die Dokumentation zu \TeXLive, +die auf der \TeXLive"=Installations"=\acro{CD} im Verzeichnis +\url{texmf/doc/tldoc/deutsch/}\footnote{Unter Windows wird als Trenner + statt des \url{/} ein \texttt{\textbackslash} verwendet. + Bei Pfadangaben, die für beide Betriebssysteme gelten, verwende ich + einheitlich \url{/}.} enthalten ist. + + +\subsection{Installation unter Unix} + +Im folgenden nehme ich an, dass das +\acro{CD}"=\acro{ROM}"=Laufwerk unter \url{/media/cdrom} +gemountet wird. +Wechseln Sie zunächst in das Basisverzeichnis der \acro{CD} und +rufen dort das Programm \verb|install-tl.sh| auf:\footnote{Die Zeichen + vor dem \texttt{\#} sind der Prompt, die Sie natürlich nicht + eintippen müssen.} +\begin{verbatim}[\small] +pc22:~ # cd /media/cdrom +pc22:/media/cdrom # ./install-tl.sh +\end{verbatim} +Es erscheint der in Bild~\ref{fig:installation:install-tl.sh-1} +gezeigte Startbildschirm. +% +\begin{figure}% + \centering + \includegraphics{bilder/01b}% + \caption{Startbildschirm des Installationsprogramms + \texttt{install-tl.sh}}% + \label{fig:installation:install-tl.sh-1}% +\end{figure}% +% +Wählen Sie den Punkt \emph{customizing installation scheme: <C> + standard collections,} indem Sie die Taste "`c"' drücken. +Es erscheint das in Bild~\ref{fig:installation:install-tl.sh-2} +gezeigte Menü. +% +\begin{figure}% + \centering + \includegraphics{bilder/02b}% + \caption{Auswahl der zusätzlich zu installierenden Pakete}% + \label{fig:installation:install-tl.sh-2}% +\end{figure}% +% +Fügen Sie die \emph{LaTeX supplementary packages} hinzu, indem Sie +"`t"' drücken. +Kehren Sie mit "`r"' zum Hauptmenü (\emph{platform menu}) zurück. +Starten Sie nun die Installation durch Betätigen der Taste "`i"'. +Nach einiger Zeit kehrt das Programm automatisch zum Prompt zurück. + +Nun müssen die \LaTeX"=Binärdateien in den Suchpfad aufgenommen +werden. +Soll dies systemweit geschehen, sollte der Pfad in der Datei +\url{/etc/profile} gesetzt werden. +Bei der SuSE"=8.2"=Distribution kann beispielsweise der kursiv +gedruckte Code in diese Datei eingefügt werden: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +# +# Make path more comfortable +# +if test -z "$PROFILEREAD" ; then + PATH=/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin + for dir in $HOME/bin/$CPU $HOME/bin ; do + test -d $dir && PATH=$dir:$PATH + done + test "$UID" = 0 && PATH=/sbin:/usr/sbin:/usr/local/sbin:$PATH + for dir in /var/lib/dosemu \ + /usr/games \ + /opt/bin \ + /opt/gnome2/bin \ + /opt/gnome/bin \ + /opt/kde3/bin \ + /opt/kde2/bin \ + /opt/kde/bin \ + /usr/openwin/bin \ + /opt/cross/bin + do + test -d $dir && PATH=$PATH:$dir + done +|itshape for dir in /usr/TeX/bin/i386-linux + do + test -d $dir && PATH=$dir:$PATH + done +|upshape unset dir + export PATH +fi +\end{verbatim} +% $ +Die \LaTeX"=Binärdateien sollten möglichst weit vorne im Pfad stehen, +damit sie vor vielleicht vorhandenen älteren Dateiversionen gefunden +werden. + +Sorgen Sie dafür, dass die Programme wirklich im Suchpfad sind, bevor +Sie fortfahren. +Dies kann beispielsweise durch die Eingabe von \verb|which latex| +überprüft werden. +Wenn eine Ausgabe wie +\begin{verbatim}[\small] +/usr/TeX/bin/i386-linux/latex +\end{verbatim} +erscheint, ist dies der Fall. +Bleibt die Ausgabe leer oder wird ein Pfad gezeigt, der nicht +\url{/usr/TeX} enthält, muss der Pfad noch gesetzt werden. + +Installieren Sie nun das Paket \texttt{cm-super} nach,\footnote{Dies + ist auch nötig, wenn Sie die Times als Schriftart verwenden.} indem +Sie folgende Befehlszeilen eintippen, die jeweils einige, hier nicht +gezeigte, Ausgaben erzeugen: +\begin{verbatim}[\small] +pc22:/media/cdrom # ./install-pkg.sh --package=cm-super +pc22:/media/cdrom # texhash +pc22:/media/cdrom # updmap --enable Map cm-super-t1.map +pc22:/media/cdrom # updmap --enable Map cm-super-t2a.map +pc22:/media/cdrom # updmap --enable Map cm-super-t2b.map +pc22:/media/cdrom # updmap --enable Map cm-super-t2c.map +pc22:/media/cdrom # updmap --enable Map cm-super-ts1.map +pc22:/media/cdrom # updmap --enable Map cm-super-x2.map +pc22:/media/cdrom # texhash +\end{verbatim} + +Wechseln Sie nun in das lokale \emph{TEXMF}"=Verzeichnis der +\TeXLive"=Distribution: +\begin{verbatim}[\small] +pc22:/media/cdrom # cd /usr/TeX/texmf-local +pc22:/usr/TeX/texmf-local # +\end{verbatim} + +Einige Pakete sind in der \TeXLive"=Distribution nicht oder nur +veraltet enthalten. +Diese müssen noch nachinstalliert werden. +Tauschen Sie dazu die \TeXLive"=\acro{CD} gegen die +Installations"=\acro{CD} der \verb|bgteubner|"=Klasse. +Entpacken Sie anschließend alle Dateien im Verzeichnis \url{pakete/} +der \acro{CD}: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +pc22:/usr/TeX/texmf-local # unzip /media/cdrom/pakete/|meta[Dateiname] +\end{verbatim} +\feinschliff{\sloppypar\noindent}{}{}{}% +Zum Zeitpunkt der Fertigstellung dieser Installationsbeschreibung +waren folgende Dateien in dem Verzeichnis vorhanden: +\url{bgteubner-1_08.zip}, +\url{framed-0_8a.zip}, +\url{ginpenc-1_0.zip}, +\url{hfoldsty-1_00.zip}, +\url{hhsubfigure-2_1_4a.zip}, +\url{hhtensor-0_6.zip}, +\url{layoutgrid-0_10.zip}, +\url{numprint-1_10.zip}, +\url{onlyamsmath-0_04.zip}, +\url{psnfss.zip}, +\url{slantsc-2_00.zip}, +\url{subfloat-2_14.zip} und +\url{was.zip}. + +Zum Schluss muss noch die Dateidatenbank aktualisiert werden, indem +Sie das Programm \verb|texhash| aufrufen. +Testen Sie Ihre Installation, indem Sie wie im +Abschnitt~\ref{sec:installation:test} verfahren. + + + +\subsection{Installation unter Windows} + +Starten Sie auf der \TeXLive"=Installations"=\acro{CD} das +Installationsprogramm \verb|autostart.exe|, falls dies nicht +automatisch beim Einlegen der \acro{CD} geschieht. +Es erscheint der Startbildschirm, wie in +Bild~\ref{fig:customizescheme} gezeigt. +% +\begin{figure}% + \centering + \includegraphics{bilder/bild4c}% + \caption{Startbildschirm der Installation, Markierung des Schalters + zum Modifizieren des Installationsschemas}% + \label{fig:customizescheme}% +\end{figure}% +% +Wählten Sie als Installationsschema das \emph{"`Generic recommend + TeXLive scheme"'}. +Markieren Sie zusätzlich die Schaltfläche \emph{I want to customize + the selected scheme,} wie in Bild~\ref{fig:customizescheme} +gezeigt. +Es folgt die Abfrage, welche Pakete bzw.\ Paketgruppe installiert +werden soll. +Wählen Sie hier zusätzlich zu den schon angekreuzten Paketen +\url{texlive}--\url{tex_fontsextra}--\url{cm-super}, +\url{texlive}--\url{tex_latexextra} sowie, falls auf Ihrem Rechner +Perl noch nicht installiert ist, +\url{texlive}--\url{tex_xemtex}--\url{perl} aus. + +Führen Sie dann die Installation normal zu Ende + +Bei der Installation werden einige benötigte Pakete nicht installiert, +oder sind nur in alten Versionen installiert, die von der +Installations"=\acro{CD} der Teubner"=Dokumentklasse +nachinstalliert werden müssen. +Die zu installierenden Pakete sind in gepackter Form im Verzeichnis +\url{pakete/} der \acro{CD} enthalten. +Um sie zu installieren, wechseln Sie in das lokale +\url{texmf}"=Verzeichnis der \TeXLive"=Installation +(\url{C:\Programme\TeXLive\texmf-local}). +Entpacken Sie dort die gepackten Dateien von der \acro{CD}. +Die notwendige Verzeichnisstruktur wird dabei automatisch erzeugt. +Zum Zeitpunkt der Fertigstellung dieser Installationsbeschreibung +waren folgende Dateien in dem Verzeichnis vorhanden: +\url{bgteubner-1_08.zip}, +\url{framed-0_8a.zip}, +\url{ginpenc-1_0.zip}, +\url{hfoldsty-1_00.zip}, +\url{hhsubfigure-2_1_4a.zip}, +\url{hhtensor-0_6.zip}, +\url{layoutgrid-0_10.zip}, +\url{numprint-1_10.zip}, +\url{onlyamsmath-0_04.zip}, +\url{psnfss.zip}, +\url{slantsc-2_00.zip}, +\url{subfloat-2_14.zip} und +\url{was.zip}. + +Falls Sie für Windows keinen entsprechenden Entpacker (wie z.\,B.\ +WinZIP) besitzen, können Sie das entsprechende Programm +\url{unzip.exe} von der \TeXLive"=\acro{CD} (Verzeichnis +\url{support/}) verwenden. +Das Entpacken geht dann unter Windows in der Eingabeauf"|forderung +folgendermaßen unter der Annahme, dass das \acro{CD}"=Laufwerk +den Buchstaben \url{D:} besitzt: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +C:\> cd C:\Proramme\TeXLive\texmf-local +C:\Programme\TeXLive\texmf-local> unzip D:\pakete\|meta[Dateiname] +\end{verbatim} + +Anschließend muss die Dateidatenbank aktualisiert werden, damit die +neuen Pakete gefunden werden. +Dies geschieht durch den Aufruf +\emph{Programme -- TeXLive -- Maintenance -- Rebuild ls-R filenames + databases}. + + +\subsection{Test der Installation}% +\label{sec:installation:test}% + +Testen Sie zunächst, ob die Standard"=Postscript"=Type"~1"=Schriften +automatisch eingebunden werden. +Übersetzen Sie dazu das in Bild~\ref{fig:bspprogramm} +gezeigte Programm mit \pdfLaTeX\ und öffnen Sie es mit dem Acrobat +Reader. +% +\begin{figure}% + \centering + \newlength{\bildbreite}% + \settowidth{\bildbreite}{% + \small\ttfamily Hallo -textsf-Hallo- -texttt-Hallo-}% + \begin{minipage}{\bildbreite} +\begin{verbatim}[\small] +\documentclass{article} +\usepackage{mathptmx} +\usepackage[scaled=0.92]{helvet} +\usepackage{courier} +\begin{document} +Hallo \textsf{Hallo} \texttt{Hallo} +\end{document} +\end{verbatim} + \end{minipage} + \caption{Beispielprogramm zum Testen, ob die Schriften eingebunden + werden}% + \label{fig:bspprogramm}% +\end{figure}% +% +Öffnen Sie nun den Menüpunkt \emph{File -- Document Properties -- + Fonts}. +Wenn die Liste der verwendeten Schriften Bild~\ref{fig:times-ja} +entspricht, sind die Schriften eingebunden. +% +\begin{figure}% + \hfil + \subfigure[Schriften eingebunden]{% + \includegraphics{bilder/times-ja2}% + \label{fig:times-ja}% + }% + \hfil\hfil + \subfigure[Schriften nicht eingebunden]{% + \includegraphics{bilder/times-nein2}% + \label{fig:times-nein}% + }% + \hfil + \caption{Überprüfung anhand des Acrobat Readers, ob die Schriften + eingebunden sind.}% +\end{figure}% +% +Gleicht die Ausgabe hingegen eher Bild~\ref{fig:times-nein}, sind die +Schriften nicht eingebunden. +Falls dies der Fall ist, müssen Sie \pdfLaTeX\ dazu bringen, die +Schriften doch einzubinden. +Dies geht mit dem Programm \verb|updmap|, indem Sie folgende +Befehlszeile eingeben: +\begin{verbatim}[\small] +updmap --setoption pdftexDownloadBase14 true +\end{verbatim} + +Wenn die Autorenrichtlinien selbst fehlerfrei übersetzt werden können, +sollte die \LaTeX"=Installation vernünftig installiert sein. +Kopieren Sie, um dies zu testen, die Dateien im Verzeichnis +\url{doc/src} inklusive der Unterverzeichnisse in ein Verzeichnis auf +Ihrer Festplatte und übersetzen Sie die Datei mit folgender +Befehlsfolge: +\begingroup +\feinschliff{\def\Name{\meta{N}}}{\def\Name{\meta{Name}}}% + {\def\Name{\meta{N}}}{\def\Name{\meta{N}}}% +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +pdflatex |Name +pdflatex |Name +makeindex -c -g -s bgteuglo.ist -o |Name.glscmd -t |Name.glgcmd |Name.glocmd +bibtex |Name +pdflatex |Name +makeindex -c -g -s |Name.ist |Name +pdflatex |Name +\end{verbatim} +Dabei ist \Name\ der Dateiname der Version, die Sie testen +wollen: +\begin{description*} +\item [\texttt{bgteubner-17x24-times}:] Format $\np[mm]{170} \times + \np[mm]{240}$ mit der Brotschriftart Times, +\item [\texttt{bgteubner-17x24-mathtime}:] Format $\np[mm]{170} \times + \np[mm]{240}$ mit der Brotschriftart Times und MathTime"=Erweiterungen, +\item [\texttt{bgteubner-17x24-cm}:] Format $\np[mm]{170} \times + \np[mm]{240}$ mit der Brotschriftart European Computer Modern, +\item [\texttt{bgteubner-a5-times}:] Format + \acro{DIN"~A\,5} mit + der Brotschriftart Times,\footnote{Die + \acro{DIN"~A"~5}"=Versionen wurden nicht auf + Umbrüche und zu große Bilder hin optimiert.} +\item [\texttt{bgteubner-a5-cm}:] Format + \acro{DIN"~A\,5} mit der Brotschriftart European + Computer Modern. +\end{description*} +\endgroup + +Übersetzen Sie möglichst mindestens eine Variante mit der Schrift +Times und eine Variante mit der European Computer Modern. +Achten Sie bei den Übersetzungsläufen auf Fehler folgender +Art: +\begin{verbatim}[\small] +! LaTeX Error: You have requested, on input line 206, version + `2003/05/19' of package numprint, + but only version + `2003/02/27 v0.22 Print numbers' + is available. +\end{verbatim} +Diese bedeuten, dass Sie nur eine veraltete Version des angegebenen +Pakets installiert haben. +Installieren Sie dann bitte eine Version des Pakets, die die +angegebene Anforderung erfüllt. +Fast alle verfügbaren Pakete sind auf den Servern des +\acro{CTAN}"=Netzwerkes abgelegt. +Einer dieser Server ist \url{http://www.dante.de} bzw.\ +\url{ftp://ftp.dante.de}. +Von ihme sollten Sie eine aktuelle Version des Pakets herunterladen +und installieren. + + +\subsection{Test von MathTime}% +\label{sec:installation:mathtimetest}% + +Falls Sie die MathTime"= und MathTimePlus"=Schriften haben, kann ein +Problem auftreten, dass darin begründet ist, dass bei \TeXLive\ +defekte Dateien vorhanden sind. +Es kann passieren, dass die fetten Mathematikschriften nicht verfügbar +sind, obwohl sie installiert sind. +Herausfinden können Sie es mit folgender Datei: +\begin{verbatim}[\small] +\documentclass{article} +\usepackage[mtbold]{mathtime} +\begin{document} +$\alpha$\boldmath$\alpha$ +\end{document} +\end{verbatim} +Falls Sie zwei gleiche $\alpha$ erhalten, ist Ihr mathtime nicht +korrekt installiert. +Sie können dann die aktuellen mathtime"=Dateien von CTAN +herunterladen, (vermutlich +\url{ftp:/ftp.dante.de/tex-archive/macros/latex/psnfssx/mathtime}) und +installieren. +Danach sollte ein normales und ein fettes alpha erscheinen. + + + +\section{Installation von Hilfsprogrammen}% +\label{sec:installation-hilfe}% + +Wie schon beschrieben, kann \pdfLaTeX\ folgende Dateiformate +einbinden: +\acro{JPG}, \acro{PNG} und \acro{PDF}. +Dabei handelt es sich bei den ersten beiden Formaten um reine +Pixel"=Formate, wobei \acro{JPG} nur für Fotos geeignet ist, +\acro{PNG} für alle Arten, also auch Strichzeichnungen und +Graphiken. +Für Bilder, die ursprünglich als Vektordaten vorliegen, sind beide +ungeeignet. + +Das \acro{PDF}"=Format ist universell und kann sowohl Vektor- als +auch Pixeldaten enthalten. +Das unter \LaTeX"=Anwendern sehr verbreitete \acro{EPS}"=Format +kann von \pdfLaTeX\ leider nicht verarbeitet werden. +Allerdings besteht die Möglichkeit, \acro{EPS}"=Dateien mit dem +Programm \verb|epstopdf| in \acro{PDF} umzuwandeln. +Dieses Programm verwendet den Postscript"=Interpreter Ghostscript. +Beide Programme sind auf der \TeXLive"=\acro{CD} enthalten. +Unter Linux ist \verb|epstopdf| standardmäßig +installiert. +Ghostscript kann von der \acro{CD} nachinstalliert +werden. +Allerdings ist aus lizenzrechtlichen Gründen auf der \acro{CD} +nur eine ältere Version enthalten. +Besser ist es, eine aktuelle Version aus dem Internet von +\url{http://www.sourceforge.net} herunterzuladen. +Allerdings müssen aktuelle Versionen (ab Version 8.0) selbst übersetzt +werden. + + + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/kapitel2.tex b/Master/texmf-dist/doc/latex/bgteubner/kapitel2.tex new file mode 100644 index 00000000000..b8afe52c5b9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/kapitel2.tex @@ -0,0 +1,8 @@ +% ========================================================= +\chapter{Kapitel 2} + +\section{Ein Abschnitt} + +Hier kommt Text. + +% ========================================================= diff --git a/Master/texmf-dist/doc/latex/bgteubner/literatur.bib b/Master/texmf-dist/doc/latex/bgteubner/literatur.bib new file mode 100644 index 00000000000..0f45aeb3273 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/literatur.bib @@ -0,0 +1,177 @@ +% +% bgteubner class bundle +% +% literatur.bib +% Copyright 2003--2005 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. + +@Manual{amsmath1999a, + title = {User's Guide for the amsmath Package}, + organization = {American Mathematical Society}, + month = dec, + year = 1999, + language = {english}, + note = {\foreignlanguage{ngerman}{In jeder \TeX"=Distribution + im Verzeichnis + \meta{TEXMF}\url{/doc/latex/amslatex/amsldoc.dvi} + vorhanden}} +} + +@Manual{carlisle2000a, + title = {The longtable package}, + author = {Carlisle, David}, + month = oct, + year = 2000, + language = {english}, + url = {ftp://ftp.dante.de/tex-archive/macros/latex/contrib/longtable} +} + +@Manual{cochran1995a, + title = {The subfigure package}, + author = {Steven Douglas Cochran}, + address = {Pittsburgh, USA}, + month = mar, + year = 1995, + language = {english}, + url = {ftp://ftp.dante.de/tex-archive/macros/latex/contrib/subfigure} +} + +@Book{forssman2002a, + author = {Forssman, Friedrich and de Jong, Ralf}, + title = {Detailtypografie}, + publisher = {Verlag Hermann Schmidt}, + year = 2002, + address = {Mainz}, + language = {ngerman}, + isbn = {3-87439-568-5} +} + +@Book{goossens1995a, + author = {Goossens, Michael and Mittelbach, Frank and Samarin, + Alexander}, + title = {Der \LaTeX-Begleiter}, + publisher = {Addison-Wesley}, + year = 1995, + language = {ngerman}, + isbn = {3-8273-7044-2} +} + +@Manual{harders2001a, + title = {The numprint package}, + author = {Harald Harders}, + month = may, + year = 2003, + language = {english}, + url = {ftp://ftp.dante.de/tex-archive/macros/latex/contrib/numprint} +} + +@Manual{harders2003a, + title = {Multilingual bibliographies: The babelbib package}, + author = {Harders, Harald}, + year = 2003, + language = {english}, + url = {ftp://ftp.dante.de/tex-archive/biblio/bibtex/babelbib} +} + +@Book{kohm2003a, + author = {Kohm, Markus and Morawski, Jens-Uwe}, + title = {KOMA"=Script}, + publisher = {Lehmanns Fachbuchhandlung}, + year = 2003, + language = {ngerman}, + isbn = {3-936427-45-3} +} + +@Book{lamport1995a, + author = {Lamport, Leslie}, + title = {Das \LaTeX\ Handbuch}, + publisher = {Addison-Wesley}, + year = 1995, + address = {Bonn}, + language = {ngerman}, + isbn = {3-89319-326-1} +} + +@Manual{oetiker2003a, + title = {The Not So Short Introduction to \LaTeXe}, + author = {Oetiker, T. and Partl, H. and Hyna, I. and Schlegl, E.}, + month = apr, + year = 2003, + url = {ftp://ftp.dante.de/tex-archive/info/lshort/english/lshort.pdf}, + language = {english} +} + +@Manual{patashnik1988a, + author = {Patashnik, Oren}, + title = {Bib\TeX ing}, + year = 1988, + url = {ftp://ftp.dante.de/tex-archive/biblio/bibtex/distribs/doc/ btxdoc.tex}, + language = {english} +} + +@Book{roesler2003a, + author = {R"osler, Joachim and Harders, Harald and B"aker, Martin}, + title = {Mechanisches Verhalten der Werkstoffe}, + publisher = {B.~G. Teubner}, + year = 2003, + address = {Stuttgart}, + edition = {1.}, + language = {ngerman}, + isbn = {3-519-00438-0} +} + +@Manual{schmidt2003a, + title = {\LaTeXe-Kurzbeschreibung}, + author = {Schmidt, W. and Knappen, J. and Partl, H. and Hyna, I.}, + month = apr, + year = 2003, + url = {ftp://ftp.dante.de/tex-archive/info/lshort/german/l2kurz.pdf}, + language = {ngerman} +} + +@Manual{slantsc2003a, + title = {The slantsc package}, + author = {Harders, Harald}, + month = sep, + year = 2003, + language = {english}, + url = {ftp://ftp.dante.de/tex-archive/macros/latex/contrib/slantsc} +} + +@Book{willberg1997a, + author = {Willberg, Hans Peter and Forssman, Friedrich}, + title = {Lesetypographie}, + publisher = {Verlag Hermann Schmidt}, + year = 1997, + address = {Mainz}, + language = {ngerman}, + isbn = {3-87439-375-5} +} + +@Manual{subfloat2003a, + title = {The subfloat package}, + author = {Harald Harders}, + month = aug, + year = 2003, + language = {english}, + url = {ftp://ftp.dante.de/tex-archive/macros/latex/contrib/subfloat} +} + +@Manual{fear2003a, + title = {Publication quality tables in \LaTeX}, + author = {Simon Fear}, + month = mar, + year = 2003, + language = {english}, + url = {ftp://ftp.dante.de/tex-archive/macros/latex/contrib/booktabs} +} + diff --git a/Master/texmf-dist/doc/latex/bgteubner/literatur.tex b/Master/texmf-dist/doc/latex/bgteubner/literatur.tex new file mode 100644 index 00000000000..9ef11fcb3a5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/literatur.tex @@ -0,0 +1,24 @@ +% +% bgteubner class bundle +% +% literatur.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +% +\bibliographystyle{bgteupln} +%\bibliographystyle{bgteupln2} +%\bibliographystyle{bgteuabbr} +%\bibliographystyle{bgteuabbr2} +\bibliography{literatur} + +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/ltxdoc.cfg b/Master/texmf-dist/doc/latex/bgteubner/ltxdoc.cfg new file mode 100644 index 00000000000..be1c37d053e --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/ltxdoc.cfg @@ -0,0 +1,53 @@ +%% +%% This is file `ltxdoc.cfg', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% hhsubfigure.dtx (with options: `ltxdoc') +%% +%% IMPORTANT NOTICE: +%% +%% For the copyright see the source file. +%% +%% Any modified versions of this file must be renamed +%% with new filenames distinct from ltxdoc.cfg. +%% +%% For distribution of the original source see the terms +%% for copying and modification in the file hhsubfigure.dtx. +%% +%% This generated file may be distributed as long as the +%% original source files, as listed above, are part of the +%% same distribution. (The sources need not necessarily be +%% in the same archive or directory.) +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% @LaTeX-style-file{ +%% author = "Steven Douglas Cochran (modified by Harald Harders)", +%% version = "2.1.4", +%% date = "2003/09/14", +%% time = "09:34:13", +%% filename = "hhsubfigure.sty", +%% email = "h.harders@tu-bs.de", +%% codetable = "ISO/ASCII", +%% keywords = "LaTeX, float, figure, table, captcont", +%% supported = "yes", +%% abstract = "LaTeX package for providing support for the +%% inclusion of small, `sub', figures and tables. It +%% simplifies the positioning, captioning and +%% labeling of them within a single figure or table +%% environment. In addition, this package allows +%% such subcaptions to be written to the List of +%% Figures or List of tables if desired." +%% } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\AtBeginDocument{ + \EnableCrossrefs + \RecordChanges + \CodelineIndex} +\AtEndDocument{ + \PrintChanges + \PrintIndex} +\endinput +%% +%% End of file `ltxdoc.cfg'. diff --git a/Master/texmf-dist/doc/latex/bgteubner/manifest.txt b/Master/texmf-dist/doc/latex/bgteubner/manifest.txt new file mode 100644 index 00000000000..efd27bc142e --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/manifest.txt @@ -0,0 +1,93 @@ +This file contains the list of files that have to be distributed +together with the bgteubner class bundle. + +If you have got a CD by the Teubner Verlag, you will get some +additional files. + +LIESMICH +README +manifest.txt +usefiles.txt +doc/bgteubner-17x24-times.pdf +doc/src/Makefile +doc/src/anhang.tex +doc/src/befehlsreferenz.tex +doc/src/beispiel1.tex +doc/src/bgteubner-17x24-cm.tex +doc/src/bgteubner-17x24-mathtime.tex +doc/src/bgteubner-17x24-times.tex +doc/src/bgteubner-a5-cm.tex +doc/src/bgteubner-a5-times.tex +doc/src/bgteubner.tex +doc/src/bilder.tex +doc/src/bilder/01b.png +doc/src/bilder/02b.png +doc/src/bilder/bild4c.png +doc/src/bilder/bild_ganz.eps +doc/src/bilder/bild_ganz.fig +doc/src/bilder/bild_ganz.pdf +doc/src/bilder/bild_mitte.eps +doc/src/bilder/bild_mitte.fig +doc/src/bilder/bild_mitte.pdf +doc/src/bilder/bild_oben.eps +doc/src/bilder/bild_oben.fig +doc/src/bilder/bild_oben.pdf +doc/src/bilder/bild_oben_unten.eps +doc/src/bilder/bild_oben_unten.fig +doc/src/bilder/bild_oben_unten.pdf +doc/src/bilder/bild_umflossen.eps +doc/src/bilder/bild_umflossen.fig +doc/src/bilder/bild_umflossen.pdf +doc/src/bilder/bild_unten.eps +doc/src/bilder/bild_unten.fig +doc/src/bilder/bild_unten.pdf +doc/src/bilder/bild_zu_lang.eps +doc/src/bilder/bild_zu_lang.fig +doc/src/bilder/bild_zu_lang.pdf +doc/src/bilder/bild_zu_lang2.eps +doc/src/bilder/bild_zu_lang2.fig +doc/src/bilder/bild_zu_lang2.pdf +doc/src/bilder/seiten/umbruch1.pdf +doc/src/bilder/seiten/umbruch1.tex +doc/src/bilder/seiten/umbruch1a.pdf +doc/src/bilder/seiten/umbruch1a.tex +doc/src/bilder/seiten/umbruch2.pdf +doc/src/bilder/seiten/umbruch2.tex +doc/src/bilder/seiten/umbruch2a.pdf +doc/src/bilder/seiten/umbruch2a.tex +doc/src/bilder/seiten/umbruch3.pdf +doc/src/bilder/seiten/umbruch3.tex +doc/src/bilder/seiten/umbruch3a.pdf +doc/src/bilder/seiten/umbruch3a.tex +doc/src/bilder/times-ja2.png +doc/src/bilder/times-nein2.png +doc/src/checkliste.tex +doc/src/einleitung.tex +doc/src/formelzeichen.tex +doc/src/globales.tex +doc/src/hyphenation.tex +doc/src/index.tex +doc/src/installation.tex +doc/src/kapitel2.tex +doc/src/literatur.bib +doc/src/literatur.tex +doc/src/optionen-advanced.tex +doc/src/testtimes.tex +doc/src/tex_aufruf.tex +doc/src/tex_bilder.tex +doc/src/tex_globales.tex +doc/src/tex_textelemente.tex +doc/src/tex_typographie.tex +doc/src/tex_verzeichnisse.tex +doc/src/textelemente.tex +doc/src/verzeichnisse.tex +doc/src/vorwort.tex +hhsubfigure/Makefile +hhsubfigure/README +hhsubfigure/hhsubfigure.dtx +hhsubfigure/hhsubfigure.ins +source/ChangeLog +source/Makefile +source/bgteucls.dtx +source/bgteucls.ins +source/ptmxcomp.sty diff --git a/Master/texmf-dist/doc/latex/bgteubner/math-cm.info b/Master/texmf-dist/doc/latex/bgteubner/math-cm.info new file mode 100644 index 00000000000..5bfa335ceb7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/math-cm.info @@ -0,0 +1,2 @@ +1. Auflage +Bild: 0; Tabelle: 0; Aufgabe: 0; Beispiel: 0; Definition: 0; Beweis: 0 diff --git a/Master/texmf-dist/doc/latex/bgteubner/math-cm.pdf b/Master/texmf-dist/doc/latex/bgteubner/math-cm.pdf Binary files differnew file mode 100644 index 00000000000..1287b5ccb1b --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/math-cm.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/math-cm.tex b/Master/texmf-dist/doc/latex/bgteubner/math-cm.tex new file mode 100644 index 00000000000..707717024dd --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/math-cm.tex @@ -0,0 +1,18 @@ +% +% bgteubner class bundle +% +% math-cm.tex +% Copyright 2003--2005 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +\PassOptionsToClass{cm}{bgteubner} +\newcommand\hhsubtitle{European Computer Modern} +\input{math} diff --git a/Master/texmf-dist/doc/latex/bgteubner/math-mathtime.info b/Master/texmf-dist/doc/latex/bgteubner/math-mathtime.info new file mode 100644 index 00000000000..5bfa335ceb7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/math-mathtime.info @@ -0,0 +1,2 @@ +1. Auflage +Bild: 0; Tabelle: 0; Aufgabe: 0; Beispiel: 0; Definition: 0; Beweis: 0 diff --git a/Master/texmf-dist/doc/latex/bgteubner/math-mathtime.pdf b/Master/texmf-dist/doc/latex/bgteubner/math-mathtime.pdf Binary files differnew file mode 100644 index 00000000000..a9155d5bad4 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/math-mathtime.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/math-mathtime.tex b/Master/texmf-dist/doc/latex/bgteubner/math-mathtime.tex new file mode 100644 index 00000000000..eca8f28ef22 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/math-mathtime.tex @@ -0,0 +1,18 @@ +% +% bgteubner class bundle +% +% math-mathtime.tex +% Copyright 2003--2005 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +\PassOptionsToClass{mathtime}{bgteubner} +\newcommand\hhsubtitle{MathTime und MathTimePlus} +\input{math} diff --git a/Master/texmf-dist/doc/latex/bgteubner/math.info b/Master/texmf-dist/doc/latex/bgteubner/math.info new file mode 100644 index 00000000000..5bfa335ceb7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/math.info @@ -0,0 +1,2 @@ +1. Auflage +Bild: 0; Tabelle: 0; Aufgabe: 0; Beispiel: 0; Definition: 0; Beweis: 0 diff --git a/Master/texmf-dist/doc/latex/bgteubner/math.pdf b/Master/texmf-dist/doc/latex/bgteubner/math.pdf Binary files differnew file mode 100644 index 00000000000..17f4b43e7e9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/math.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/math.tex b/Master/texmf-dist/doc/latex/bgteubner/math.tex new file mode 100644 index 00000000000..0990daea963 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/math.tex @@ -0,0 +1,37 @@ +% +% bgteubner class bundle +% +% math.tex +% Copyright 2003--2005 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +\listfiles +%\PassOptionsToClass{bgteubner}{titlepage} +\documentclass[17x24,ngerman,ulinevec]{bgteubner} +\usepackage[latin1]{inputenc} +%\title{asdf} +%\subtitle{\hhsubtitle} +%\author{Harry} +%\edition{2} +\date{heute} +\begin{document} +%\maketitle +\begin{align} + \sin^2\alpha + \cos^2\alpha &= 1 +\end{align} +moin + +$\mathcal{ABCDEFGHabcdefgh}$ + +$\alpha\beta\gamma\delta\epsilon\varepsilon$ + +{\boldmath$\alpha\beta\gamma\delta\epsilon\varepsilon$} +\end{document} diff --git a/Master/texmf-dist/doc/latex/bgteubner/optionen-advanced.tex b/Master/texmf-dist/doc/latex/bgteubner/optionen-advanced.tex new file mode 100644 index 00000000000..3a898df61f8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/optionen-advanced.tex @@ -0,0 +1,128 @@ +% +% bgteubner class bundle +% +% optionen-advanced.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\chapter{Anmerkungen für versierte Nutzer}% +\label{chap:optionen-advanced}% + +Da der normale Anwender die in diesem Anhang beschriebenen Dinge +normalerweise nicht benötigt, sind sie kleiner gedruckt. + +\section{Erweiterte Klassenoptionen} +\begin{advanced} + \setkomafont{caption}{\rmfamily\footnotesize\RaggedRight}% + \setkomafont{float}{\normalfont\normalcolor\footnotesize}% + \renewcommand{\subcapsize}{\footnotesize}% + % + Gegenüber den in Abschnitt~\ref{sec:tex:aufbau} beschriebenen + Klassenoptionen unterstützt \verb|bgteubner| einige weitere + Optionen, die normalerweise nicht verwendet werden sollen. + In den meisten Fällen führen sie zu einem Layout, das inkonsistent + mit den Vorgaben des Verlags ist. + In Tabelle~\ref{tab:klassenoptionen-advanced} sind diese Optionen + ohne ausführliche Erklärungen zusammengefasst. + % + \begin{table}% + \centering + \def\default{{\rmfamily*}}% + \caption{Selten benötigte Klassenoptionen der Klasse \texttt{bgteubner}. + Defaultmäßig aktivierte Optionen sind mit einem \default\ + gekennzeichnet.}% + \label{tab:klassenoptionen-advanced}% + \begin{tabular}{>{\ttfamily}ll} + \toprule + \rmfamily Option& Erklärung \\ + \midrule + headingoutside\default & Lebender Kolumnentitel außen \\ + headinginside& Lebender Kolumnentitel innen \\ + \midrule + tocindent\default & Inhaltsverzeichnis mit Einrückung setzen \\ + tocleft& Inhaltsverzeichnis linksbündig \\ + \midrule + springervieweg\default & Verlagsname Springer Vieweg auf der + Titelseite \\ + viewegteubner & Verlagsname Vieweg+Teubner auf der Titelseite \\ + bgteubner & Verlagsname B.\,G.\ Teubner auf der Titelseite \\ +% \midrule +% epsfigures& Setzt Bilder auch bei normalem \LaTeX\ (dvi"=Ausgabe) \\ + \bottomrule + \end{tabular} + \end{table}% +\end{advanced} + + +\section{\acro{PDF}"=Informationen für den Verlag}% +\label{sec:pdf-informationen}% +\begin{advanced} + \setkomafont{caption}{\rmfamily\footnotesize\RaggedRight}% + \setkomafont{float}{\normalfont\normalcolor\small}% + \renewcommand{\subcapsize}{\footnotesize}% + % + Bei der Erstellung des Dokuments sollen die Autoren einige Felder + bezüglich des Titels und der Autoren ausfüllen (Befehle \cs{title}, + \cs{subtitle}, \cs{author}, \cs{edition}). + Diese werden in die Info"=Felder der \acro{PDF}"=Datei + geschrieben, die im \emph{Acrobat Reader} abgerufen werden können + (\emph{File -- Document Properties -- Summary}). + Im Feld \emph{Title} erscheint der Titel. + Das \emph{Subject}"=Feld wird für den Untertitel und die Auf"|lage + zweckentfremdet. + Die Autoren erscheinen im Feld \emph{Author}. + Das Feld \emph{Keywords} wird zweckentfremdet für die Angabe der + Anzahl der Abbildungen, Tabellen, Aufgaben, Beispiele usw. + Hier kann der Lektor des Teubner Verlags immer die aktuelle Anzahl + der entsprechenden Umgebungen ablesen, da diese für das Titelblatt + notwendig ist. + Es kann so nicht passieren, dass eine inkorrekte Zahl angegeben + wird. + + Unter \emph{Creator} wird die Version der Dokumentklasse angegeben. + Dies ist in seltenen Fällen von Nutzen, um zu kontrollieren, ob eine + eventuelle alte Version verwendet wurde. + + Das Erstellungsdatum im Feld \emph{Created} kann helfen, die neueste + Version des Manuskriptes zu finden. +\end{advanced} + + +\section{Befehle für Fortgeschrittene}% +\label{sec:fortgeschrittene}% + +\begin{advanced} + Manchmal kann es nützlich sein zu prüfen, ob eine bestimmte Version + der Dokumentklasse verwendet wird. + Dazu können Sie in der Dokumentpräambel den Befehl +\begin{verbatim}[\footnotesize\makeescape\|\makebgroup\[\makeegroup\]] +\version|marg[Versionsnummer] +\end{verbatim} + verwenden. + + Möchten Sie zum Beispiel prüfen, ob Version 1.03 der Dokumentklasse + verwendet wird, schreiben Sie +\begin{verbatim}[\footnotesize] +\version{1.03} +\end{verbatim} + in die Präambel. + Stimmen die angegebene und die tatsächliche Versionsnummer nicht + überein, wird eine Warnung in die Log"=Datei geschrieben. +\end{advanced} + + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/testquick.exercise b/Master/texmf-dist/doc/latex/bgteubner/testquick.exercise new file mode 100644 index 00000000000..c8a5f535174 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/testquick.exercise @@ -0,0 +1,6 @@ +\addvspace {10\p@ } +\contentsline {exercise}{\hbox to\@tempdima {1.1\hfil }Hallo Moin Hallo Tach Ciao}{1} +\contentsline {exercise}{Hallo Moin Hallo Tach Ciao}{1} +\contentsline {exercise}{\hbox to\@tempdima {1.2\hfil }Hallo Moin Hallo Tach Ciao}{1} +\contentsline {exercise}{\hbox to\@tempdima {1.3\hfil }asdf}{2} +\contentsline {exercise}{\hbox to\@tempdima {1.1\hfil }Hallo Moin Hallo Tach Ciao}{2} diff --git a/Master/texmf-dist/doc/latex/bgteubner/testquick.info b/Master/texmf-dist/doc/latex/bgteubner/testquick.info new file mode 100644 index 00000000000..0364a69150f --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/testquick.info @@ -0,0 +1,4 @@ +Titel: Testdatei +1. Auflage +Autor(en): Harald Harders +Bild: 1; Tabelle: 0; Aufgabe: 5; Beispiel: 0; Definition: 0; Beweis: 4 diff --git a/Master/texmf-dist/doc/latex/bgteubner/testquick.tex b/Master/texmf-dist/doc/latex/bgteubner/testquick.tex new file mode 100644 index 00000000000..a2a57f66b15 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/testquick.tex @@ -0,0 +1,240 @@ +%\pdfoutput=0 +% =================================================================== +\PassOptionsToClass{titlepage}{bgteubner} +% =================================================================== +\PassOptionsToClass{mathtime}{bgteubner} +%\PassOptionsToClass{cm}{bgteubner} +% =================================================================== +%\PassOptionsToClass{boldvec}{bgteubner} +\PassOptionsToClass{ulinevec}{bgteubner} +% =================================================================== +\documentclass[english,ngerman,greybox,exercisetotoc]{bgteubner} +% =================================================================== +\listfiles +% =================================================================== +\usepackage[latin1]{inputenc} +\usepackage{ptmxcomp} +% =================================================================== +% Lösung 1 +\makeatletter +% Umbenennen der Überschrift von Aufgaben von "Aufgabe" in "Beispiel": +\renewcommand*\exercisename{Beispiel} +% Zählweise "Kapitel.Beispiel" statt "Beispiel": +\renewcommand\the@exercise{\thechapter.\arabic{@exercise}} +% Zähler muss beim Kapitelwechsel auf Null gesetzt werden: +\@addtoreset{@exercise}{chapter} +% Abstände um die Überschrift denjenigen der Antworten anpassen: +\renewcommand\@exercise{\@startsection{@exercise}{1}{\z@}% + {-3.25ex \@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@subsection\nobreak}} +% Schriftart in den Aufgaben wie in den Antworten: +\renewcommand\exercisefont{% + \answerfont + \setstretch{\answerspacing}% +} +\renewcommand\example[1][]{\exercise{#1}} +\renewcommand\endexample{\endexercise} +\makeatother +%\fi +% =================================================================== +%\renewcommand\subexercisefont{\subanswerfont} +\renewcommand\subexercisefont{\normalsize} +\setmargin{subexercise}{0mm} +\setmargin{subanswer}{0mm} +% =================================================================== +\begin{document} +% =================================================================== +\frontmatter +% =================================================================== +% Titel des Buches: +\title{Testdatei} +\author{Harald Harders} +% =================================================================== +% Titelseite erzeugen +\maketitle +% =================================================================== +\tableofcontents +\mainmatter +% =================================================================== + +\chapter{Kramzeug 1} + +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. + +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +\begin{figure} + Moin + \caption{Moin} +\end{figure} + +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. + +\vspace{6pt} +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben soll. + +\begin{exercise}{Hallo Moin Hallo Tach Ciao} + \label{ex:hallo1} + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{exercise} +\begin{exercise*}{Hallo Moin Hallo Tach Ciao} + \label{ex:hallo} + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{exercise*} +\begin{exercise}{Hallo Moin Hallo Tach Ciao} + \label{ex:hallo3} + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{exercise} +\bigskip +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. + +\begin{answer}[asdf]{ex:hallo} + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{answer} +\begin{answer}{ex:hallo} + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{answer} +\bigskip +\unskip +\begin{answer}{ex:hallo} + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{answer} +\bigskip + +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. + +\begin{example}[asdf] +asdf +\end{example} + +asdf + +\begin{subexercise}{Hallo Moin Hallo Tach Ciao} + \label{ex:hallo4} + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{subexercise} +\bigskip +Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben +soll. + +\begin{subanswer}[asdf]{ex:hallo4} + \label{ex:hallo5} + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{subanswer} + +\begin{proof}[asf] + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{proof} +\renewcommand\theoremfont{\small} +\begin{proof}[asf] + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{proof} +\renewcommand\theoremfont{\footnotesize} +\begin{proof}[asf] + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{proof} +\renewcommand\theoremfont{\tiny} +\begin{proof}[asf] + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. + Das ist mal wieder Blindtext, und ich weiß nicht, was ich schreiben + soll. +\end{proof} + +\listofexercises +% =================================================================== +\end{document} +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "richtlinien" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/testtimes.tex b/Master/texmf-dist/doc/latex/bgteubner/testtimes.tex new file mode 100644 index 00000000000..4df9f16ed4f --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/testtimes.tex @@ -0,0 +1,22 @@ +% +% bgteubner class bundle +% +% testtimes.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +\documentclass{article} +\usepackage{mathptmx} +\usepackage[scaled=0.92]{helvet} +\usepackage{courier} +\begin{document} +Hallo \textsf{Hallo} \texttt{Hallo} +\end{document} diff --git a/Master/texmf-dist/doc/latex/bgteubner/tex_aufruf.tex b/Master/texmf-dist/doc/latex/bgteubner/tex_aufruf.tex new file mode 100644 index 00000000000..b2b78a0d1a9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/tex_aufruf.tex @@ -0,0 +1,96 @@ +% +% bgteubner class bundle +% +% tex_aufruf.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +%\documentclass[ngerman]{...} +% =================================================================== +\chapter{Aufruf der Programme}% +\index{Programmaufruf}% + +Da der Teubner Verlag \acro{PDF}"=Dateien entgegennimmt und die +besten Resultate durch die Verwendung von \pdfLaTeX\ erzielt werden +konnten, wird vorgeschrieben, \pdfLaTeX\ zu verwenden. + +Nehmen wir an, dass die Hauptdatei des Dokuments \verb|buch.tex| heißt. +Das Programm \pdfLaTeX\ wird mit +\begin{verbatim}[\small] +pdflatex buch +\end{verbatim} +\index{Programmaufruf!pdfLaTeX@\pdfLaTeX}% +\index{pdfLaTeX@\pdfLaTeX!Programmaufruf}% +aufgerufen. +Um im Stichwortverzeichnis das richtige Layout zu erhalten, muss +Makeindex folgendermaßen aufgerufen werden: +\begin{verbatim}[\small] +makeindex -c -g -s bgteubner.ist buch +\end{verbatim} +\index{Programmaufruf!makeindex@\texttt{makeindex}}% +\index{makeindex@\texttt{makeindex}!Programmaufruf}% +Außerdem muss das Literaturverzeichnis, das mit \BibTeX\ +erstellt werden soll, mit +\begin{verbatim}[\small] +bibtex buch +\end{verbatim} +\index{Programmaufruf!bibtex@\texttt{bibtex}}% +\index{bibtex@\texttt{bibtex}!Programmaufruf}% +erzeugt werden. + +\begingroup +\feinschliff{\def\Typ{\meta{T}}}{\def\Typ{\meta{Typ}}}% + {\def\Typ{\meta{T}}}{\def\Typ{\meta{T}}}% +Glossarähnliche Umgebungen werden ebenfalls mit dem Programm +\verb|makeindex| erzeugt. +Für einen Glossartypen \Typ\ lautet der Aufruf: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +makeindex -c -g -s bgteuglo.ist -t buch.glg|Typ -o buch.gls|Typ buch.glo|Typ +\end{verbatim} +\endgroup +Statt \verb|bgteuglo.ist| kann auch \verb|bgteuglochar.ist| verwendet +werden, wenn der Glossar Überschriften für die Buchstaben erhalten +soll. +Beispielsweise für einen mit dem Befehl \cs{makeglossary\marg{cmd}} +eingerichteten Glossar: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +makeindex -c -g -s bgteuglo.ist -t buch.glgcmd -o buch.glscmd buch.glocmd +\end{verbatim} + +Um auf jeden Fall ein richtig formatiertes Buch mit korrekten +Querverweisen zu erhalten, muss \pdfLaTeX\ mehrmals aufgerufen werden. +Folgende Aufruf"|folge ist denkbar: +\begin{verbatim}[\small] +pdflatex buch +pdflatex buch +makeindex -c -g -s bgteuglo.ist -t buch.glgcmd -o buch.glscmd buch.glocmd +bibtex buch +pdflatex buch +pdflatex buch +makeindex -c -g -s bgteubner.ist buch +pdflatex buch +\end{verbatim} +In seltenen Fällen kann sogar noch häufigeres Übersetzen notwendig +sein. + +Auch wenn in den meisten Fällen diese Prozedur übertrieben ist, +sollte man sie zur Erstellung der endgültigen Datei, die an die +Druckerei weitergegeben wird, einmal vollständig durchführen. +Während der Erstellung des Buches ist das natürlich nicht notwendig. + + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/tex_bilder.tex b/Master/texmf-dist/doc/latex/bgteubner/tex_bilder.tex new file mode 100644 index 00000000000..d8adf7936ed --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/tex_bilder.tex @@ -0,0 +1,428 @@ +% +% bgteubner class bundle +% +% tex_bilder.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\chapter{Bilder und Tabellen}% +\label{chap:tex:bilder}% + +Bilder und Tabellen sind so genannte +\emph{Fließobjekte}\texindex{Fließobjekt}, die von der Stelle, an der +sie im Quelltext stehen, an die Position im Dokument "`fließen"'. +Da für beide größtenteils die gleichen Dinge gelten, werden sie hier +gemeinsam am Beispiel von Bildern behandelt. + +% =================================================================== +\section{Bilder}% +\texindex{Bild}% + +Der Aufbau eines Bildes im Quelltext ist etwa folgendermaßen: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\begin{figure}% + \centering + \includegraphics|marg[Dateiname]% + \caption|marg[Bildunterschrift]% + \label|marg[Label]% +\end{figure}% +\end{verbatim} +\envindex{figure}\macroindex{caption}\macroindex{label}% +Der \verb|\centering|"=Befehl\macroindex{centering} sorgt dafür, dass +das Bild horizontal zentriert gesetzt wird. +Die von vielen \LaTeX"=Benutzern verwendete Umgebung +\cs{begin\{center\}} \ldots\ \cs{end\{center\}} +fügt vertikalen Platz ein und \emph{darf deshalb nicht verwendet + werden!} +Anstelle des hier gezeigten \macroindex{includegraphics}% +\feinschliff{Befehls + \cs{includegraphics}}{\cs{includegraphics}"=Befehls}% + {\cs{includegraphics}"=Befehls}{\cs{includegraphics}"=Befehls} +können alle Dinge stehen, die zur Darstellung des Bildes notwendig sind, +beispielsweise Unterbilder, erzeugt mit dem +\verb|\subfigure|"=Befehl\macroindex{subfigure} \cite{cochran1995a}, +der zur Verfügung steht, weil automatisch das Paket \verb|hhsubfigure| +geladen wird, das eine leicht veränderte Version des +\verb|subfigure|"=Pakets ist. + +Die Angabe des Dateinamens im \verb|\includegraphics|"=Befehl sollte +ohne die Dateiendung\texindex{Dateiendung} auskommen, da \pdfLaTeX\ +dann automatisch die entsprechende Endung auswählen kann. +Da für den Teubner Verlag zur Erzeugung von \acro{PDF}"=Dateien das +Programm \pdfLaTeX\texindex{pdflatex@\pdfLaTeX} verwendet werden muss, +müssen alle Bilder in einem der folgenden Dateiformate vorliegen: +\acro{JPG}\texindex{JPG"=Datei@\acro{JPG}"=Datei}, +\acro{PNG}\texindex{PNG"=Datei@\acro{PNG}"=Datei} oder +\acro{PDF}\texindex{PDF"=Datei@\acro{PDF}"=Datei}. +\acro{EPS}"=Dateien\texindex{EPS"=Datei@\acro{EPS}"=Datei} können +nicht verarbeitet werden. +Sie können jedoch unter Verwendung des Programms +\verb|epstopdf|\srcindex{epstopdf} und Ghostscript\footnote{Sowohl + \texttt{epstopdf} als auch Ghostscript sind auf der + \TeXLive"=\acro{CD} enthalten. Siehe dazu auch + Anhang~\ref{sec:installation-hilfe}.} bzw.\ mit Adobe Acrobat ins +\acro{PDF}"=Format umgewandelt werden. + +Die Bildunterschrift\texindex{Bildunterschrift} sollte so ausführlich +sein, dass man den Bildinhalt versteht, auch ohne den Fließtext zu lesen. +Wenn ein Bilderverzeichnis erstellt wird, sollte dann für das +Bilderverzeichnis eine Kurzform der Bildunterschrift verwendet werden. +Das wird erreicht, indem in eckigen Klammern die Kurzform angegeben +wird: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] + \caption|oarg[Kurzform]|marg[Langform der Bildunterschrift]% +\end{verbatim} +\macroindex{caption}% +Das Label muss \emph{in} den oder \emph{nach} dem +\verb|\caption|"=Befehl eingefügt werden, da ansonsten die Bildnummer +nicht zuverlässig richtig zugeordnet wird. + +Die Kommentarzeichen, die am Ende der Zeilen +\verb|\begin{figure}|\envindex{figure} und \verb|\end{figure}| +angehängt sind, sind in den meisten Fällen ohne Wirkung. +Sie werden dann wichtig, wenn innerhalb eines Absatzes zwei +Fließumgebungen aufeinander folgen, wie im folgenden Beispiel +illustriert: +\begin{verbatim}[\small] +... Fließtext Fließtext. +% +\begin{figure}% + ... +\end{figure}% +% +\begin{figure}% + ... +\end{figure}% +% +Fließtext Fließtext ... +\end{verbatim} +Ohne die \verb|%|"=Zeichen +würde in den Fließtext ein zusätzliches, unerwünschtes Leerzeichen +eingefügt werden. +Aus diesem Grund sollten Sie immer die Kommentarzeichen an die +entsprechenden Zeilen anhängen. +Wie im vorigen Beispiel gezeigt, ist es hier, wie auch bei den +Formeln, sinnvoll, eine Gliederung des Quelltextes durch Zeilen, die +nur ein Kommentarzeichen enthalten, zu erstellen. + +Die in \LaTeX\ mögliche Einschränkung der Fließumgebungsplatzierung +(Stichwort \verb|htbp|) soll bei Büchern des Teubner Verlags nicht +verwendet werden. +In Ausnahmefällen sind die Parameter \verb|t| und \verb|p| +erlaubt, \verb|h|, \verb|b| und \verb|!| jedoch nicht. + +Um die Fließumgebungen in der Nähe des zugehörigen Textes zu halten, +ist es eine vernünftige Strategie, ein Bild oder eine Tabelle im +Quelltext immer direkt nach dem entsprechenden Verweis einzufügen. +Wenn man dabei überflüssige Leerzeilen vermeidet, werden auch keine +unerwünschten Absätze erzeugt. +Folgendes Beispiel illustriert das: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +Bild~\ref{fig:bild1} zeigt dies und jenes Verhalten. +% +\begin{figure}% + \centering + |meta[Bilddefinitionen] + \label{fig:bild1}% +\end{figure}% +% +Auf der linken Seite ist |ldots zu sehen |ldots +\end{verbatim} + +Sollen einzeln nummerierte Teilbilder wie in +Bild~\ref{fig:bildpositionen} erzeugt werden, kann dies mit dem Befehl +\cs{subfigure\oarg{Bildunterschrift}\marg{Bilddefinitionen}} erreicht +werden. +Anders als bei den Defaulteinstellungen des zugrunde liegenden +\verb|subfigure|"=Pakets werden um die Teilbilder keine automatischen +Abstände eingefügt. +Dies muss vom Autoren selbst vorgenommen werden. +Dadurch können die gewünschten Abstände exakt erzeugt werden. + +Sollen beispielsweise zwei Teilbilder nebeneinander gesetzt werden, +kann dies durch folgenden Code erreicht werden: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\begin{figure}% + \hfil + \subfigure|oarg[Bildunterschrift 1]{% + \includegraphics|marg[Dateiname 1]% + \label|meta[Label 1]% + }% + \hfil + \subfigure|oarg[Bildunterschrift 2]{% + \includegraphics|marg[Dateiname 2]% + \label|meta[Label 2]% + }% + \hfil + \caption|marg[Bildunterschrift 3]% + \label|marg[Label 3]% +\end{figure}% +\end{verbatim} +Die \cs{hfil}"=Befehle sorgen dafür, dass links, in der Mitte und +rechts die gleichen Abstände gesetzt werden. +Sollen die beiden Teilbilder dagegen links und rechts außen gesetzt +werden, kann zwischen die beiden \cs{subfigure}"=Befehle ein +\cs{hfill} geschrieben und die \cs{hfil} fortgelassen werden. + +Wird mit dem \cs{label}"=Befehl auf ein Teilbild verwiesen, so wird +die Hauptbildnummer sowie die Teilbildnummer geschrieben, z.\,B.\ +"`Bild~\ref{fig:bildpositionen1}"'. +Soll nur auf ein Teilbild verwiesen werden, zum Beispiel "`Siehe +Teilbild~\subref{fig:bildpositionen1} aus +Bild~\ref{fig:bildpositionen}"', so kann dies mit dem +\cs{subref}"=Befehl getan werden, der ansonsten wie der +\cs{label}"=Befehl verwendet wird. + +\bigskip +Manchmal kommt es vor, dass in einem Bild so viele Informationen +untergebracht werden sollen, dass diese nicht auf eine Seite passen. +Es ist dann zweckmäßig, wenn die Bilder auf unterschiedlichen Seiten +eine gemeinsame Bildnummer erhalten. +Dies kann mit der \env{subfigures}"=Umgebung aus dem +\verb|subfloat|"=Paket~\cite{subfloat2003a} erreicht werden. +Diese wird \emph{außerhalb} der \env{figure}"=Umgebungen, die eine +gemeinsame Nummer erhalten sollen, gesetzt, z.\,B.\ so: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\begin{subfigures}% +\begin{figure}% + \centering + \includegraphics|marg[Dateiname 1]% + \caption|marg[Bildunterschrift 1]% + \label|marg[Label 1]% +\end{figure}% +|dots +\begin{figure}% + \centering + \includegraphics|marg[Dateiname 2]% + \caption|marg[Bildunterschrift 2]% + \label|marg[Label 2]% +\end{figure}% +\end{subfigures}% +\end{verbatim} +Die Nummerierung der +\feinschliff{einzelnen }{}{}{}% + Bilder erhält zusätzlich zur +gemeinsamen Nummer eine Nummerierung des Teilbildes in der Form +"`Bild~\meta{Hauptnummer}\,(\meta{Teilnummer}/\meta{Anzahl})"', z.\,B.\ +"`Bild~3.1\,(1/3)"'. + + +% =================================================================== +\section{Tabellen}% +\label{sec:tex:tabellen}% +\texindex{Tabelle}% + +Eine Tabelle\texindex{Tabelle} wird folgendermaßen erzeugt: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\begin{table}% + \centering + \caption|marg[Tabellenüberschriftstext]% + \label|marg[Label]% + \begin{tabular}|marg[Spaltendefinition] + \toprule + |meta[Tabellenkopf] \\ + \midrule + |meta[Tabelleninhalt] \\ + \midrule + |meta[Tabellenfuß] \\ + \bottomrule + \end{tabular} +\end{table}% +\end{verbatim} +\envindex{table}\envindex{tabular}% +Der wichtigste Unterschied zu einem Bild ist, dass die +Tabellenüberschrift\texindex{Tabellenüberschrift} \emph{vor} der +eigentlichen Tabelle definiert wird, damit sie auch wirklich als +Überschrift gesetzt wird. +Der \meta{Tabellenfuß} (inklusive dem vorangehenden \cs{midrule}) ist +häufig nicht nötig und kann weggelassen werden, wie es auch in +Tabelle~\ref{tab:tabelle_beispiel} getan wurde. + +In der Tabelle selbst werden +\feinschliff{--~wie im Sourcecode oben zu sehen~-- }{}{}{}% +zur Unterteilung die Befehle +\verb|\toprule|\macroindex{toprule}, +\verb|\midrule|\macroindex{midrule} und +\verb|\bottomrule|\macroindex{bottomrule} verwendet, die horizontale +Linien unterschiedlicher Dicke erzeugen. +Ein weiterer Unterschied zu dem normalen Befehl +\verb|\hline|\macroindex{hline}, der nicht +verwendet werden darf, besteht in den Abständen, die bei den drei +Befehlen besser gestaltet werden. +Als Ersatz für den \verb|\cline|"=Befehl\macroindex{cline} dient der +Befehl \verb|\cmidrule|\macroindex{cmidrule}. +Die Verwendung dieses Befehls ist in der Beschreibung zum +\verb|booktabs|"=Paket~\cite{fear2003a} erläutert. + +In der Spaltendefinition der +\verb|tabular|"=Umgebung\envindex{tabular} darf das Symbol für +vertikale Linien (\verb/|/) nicht verwendet werden, da, wie in +Abschnitt~\ref{sec:tabellen} beschrieben, nur horizontale Linien +verwendet werden dürfen. + +Mehrseitige Tabellen werden mit der \env{longtable}"=Umgebung gesetzt. +Konsultieren Sie bitte für eine ausführliche Beschreibung die +Dokumentation zum \verb|longtable|"=Paket~\cite{carlisle2000a}. +An dieser Stelle wird nur eine kurze Einführung gegeben. + +Eine lange Tabelle wird folgendermaßen definiert: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\begin{longtable}|marg[Spaltendefinition] + \caption|marg[Tabellenüberschriftstext]\label|marg[Label]\\ + % + \toprule + |meta[Tabellenkopf] \\ + \midrule + \endhead + |meta[Tabellenfuß] \\ + \bottomrule + \endfoot + |meta[Tabelleninhalt] \\ +\end{longtable} +\end{verbatim} +% +Wichtige Unterschiede zu normalen Tabellen sind diese: +\begin{itemize*} +\item Die \env{longtable}"=Umgebung wird nicht wie die + \env{tabular}"=Umgebung von einer \env{table}"=Umgebung umschlossen, + sondern steht für sich alleine. +\item Für die Zentrierung muss nicht explizit gesorgt werden. +\item Der \cs{caption}"=Befehl wird innerhalb der + \env{longtable}"=Umgebung angegeben. + Das Label sollte im Argument des \cs{caption}"=Befehls oder direkt + \emph{danach} definiert werden. + Es folgt --~anders als in der \env{table}"=Umgebung~-- ein + expliziter Zeilenumbruch mit Hilfe des + \cs{\textbackslash}"=Befehls. +\item Die Tabelle wird nicht durchgängig in der Reihenfolge definiert, + in der sie gesetzt wird. + Zunächst werden die Tabellenzeilen und Linien definiert, die auf + jeder Seite den Tabellenkopf bilden (Im Beispiel + \meta{Tabellenkopf}). + Ihre Definition wird mit \cs{endhead} abgeschlossen.\footnote{Soll + sich der Tabellenkopf auf der ersten Tabellenseite von den anderen + unterscheiden, kann zusätzlich ein mit \cs{endfirsthead} + abgeschlossener Abschnitt eingefügt werden.} + Es folgt die Definition des \meta{Tabellenfuß}es, die mit + \cs{endfoot} abgeschlossen werden.\footnote{Hier kann für die letzte + Seite ein Bereich mit \cs{endlastfoot} eingefügt werden.} + Auch wenn kein Tabellenfuß vorgesehen ist, sollte hier zumindest ein + \cs{bottomrule} enthalten sein, damit die Tabelle auf jeder Seite am + Fuß eine Linie erhält. + Als letztes wird der eigentliche Inhalt der Tabelle definiert. +\item Da \env{longtable}"=Umgebungen im Gegensatz zu + \env{table}"=Umgebungen nicht fließen, kann es vorkommen, dass die + Reihenfolge der Tabellen an einer langen Tabelle durcheinander + gerät. + Achten Sie bitte selbst darauf, dass die Reihenfolge korrekt + bleibt. + Verschieben Sie zum Beheben des Problems beispielsweise die + Definition der fließenden Tabellen etwas im Sourcecode. +\end{itemize*} +Es kann vorkommen, dass eine Linie in der Mitte der Tabelle auf +den Fuß der Seite fällt, so dass zwei Linien direkt aufeinander +folgen. +Dies ist nicht erwünscht. +Leider bietet \LaTeX\ keine Möglichkeit, dies zu verhindern. +Daher muss der Autor selbst dafür sorgen, dass die überflüssige Linie +entfernt wird. +Dies wird normalerweise dadurch erreicht, dass der +\cs{midrule}"=Befehl in der Definition des Tabelleninhalts +auskommentiert wird. +Dies sollte allerdings als eine der letzten Arbeiten am Dokument getan +werden, da jede noch so geringfügige Änderung am Umbruch dafür sorgt, +dass die Linien --~wie gewünscht~-- nicht mehr aufeinandertreffen. +Hat der Autor die Linie voreilig gelöscht, so fehlt sie dann in +der Tabelle. + +% =================================================================== +\section{Eigene Fließumgebungen}% +\label{sec:tex:fliessumgebung}% +\texindex{Fließumgebung}% + +Außer Bildern und Tabellen kann es auch notwendig werden, weitere +Fließumgebungen einzurichten. +Beispielsweise kann der Autor zwischen Grafiken und Fotografien +unterscheiden wollen. + +Neue Fließumgebungen können mit Hilfe des \LaTeX"=Pakets +\texttt{float} erzeugt werden. +Es wird mittels +\begin{verbatim}[\small] +\usepackage{float} +\end{verbatim} +eingebunden. + +Eine neue Fließumgebungsart wird schließlich mit folgender +Befehlsfolge eingerichtet: +\begin{verbatim}[\small\makeescape\|\makebgroup\(\makeegroup\)] +\floatstyle|marg(Position) +\newfloat|marg(Typ){tp}|marg(Dateiendung)[chapter] +\floatname|marg(Typ)|marg(Überschrift) +\end{verbatim} +Dabei wird für \meta{Position} entweder \texttt{komaabove} oder +\texttt{komabelow} eingesetzt, je nachdem, ob die Legende als +Überschrift (wie bei Tabellen) oder als Unterschrift (wie bei Bildern) +gesetzt wird. +Die anderen vom \texttt{float}"=Paket angebotenen Stile dürfen nicht +verwendet werden. + +\meta{Typ} ist der Name der neu eingerichteten Umgebung. +\texttt{\{tp\}} sorgt für die korrekte Platzierung der neuen +Fließumgebung. +Die Optionen \texttt{h} und \texttt{b} dürfen nicht verwendet werden. +Die \meta{Dateiendung} gibt die Endung der Datei für das Verzeichnis +der neuen Fließumgebung an. +Bilder verwenden z.\,B.\ \texttt{lof} für "`List of figures"'. +Es ist darauf zu achten, dass eine Endung verwendet wird, die noch +unbenutzt ist. +Der Eintrag \texttt{[chapter]} sorgt dafür, dass die neue Fließumgebung +kapitelweise nummeriert wird, wie es auch bei den Bildern und Tabellen +getan wird. + +Mit \cs{floatname} wird für den Fließumgebungs"=\meta{Typ} festgelegt, +welche \meta{Überschrift} sie trägt. + +Beispielsweise erzeugt +\begin{verbatim}[\small] +\floatstyle{komabelow} +\newfloat{graphics}{tp}{gra}[chapter] +\floatname{graphics}{Grafik} +\end{verbatim} +die \texttt{graphics}"=Umgebung, die wie eine +\texttt{figure}"=Umgebung die Legende unter dem Umgebungsinhalt hat, +die wiederum die Überschrift "`Grafik"' trägt, wie in +der Beispielgrafik~\ref{gra:beispiel1} gezeigt.% +% +\begin{graphics}% + \centering + Hier wäre eine Grafik \ldots + \caption{Dies ist die Legende zur Grafik.}% + \label{gra:beispiel1}% +\end{graphics}% + +Ein Verzeichnis der neuen Fließumgebung wird mit dem Befehl +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\listof|marg[Typ]|marg[Überschrift] +\end{verbatim} +erzeugt, beispielsweise mit folgendem Befehl: +\begin{verbatim}[\small] +\listof{graphics}{Verzeichnis der Grafiken} +\end{verbatim} + + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/tex_globales.tex b/Master/texmf-dist/doc/latex/bgteubner/tex_globales.tex new file mode 100644 index 00000000000..77c752af0bd --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/tex_globales.tex @@ -0,0 +1,974 @@ +% +% bgteubner class bundle +% +% tex_globales.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\chapter{Globales}% +\texindex{Globales}% + +Zur Erstellung der Bücher für den Teubner Verlag werden die +Dokumentklasse \verb|bgteubner| sowie einige weitere Dateien, wie +zusätzliche notwendige Pakete, zur Verfügung gestellt. +Wie sie installiert werden können, ist in einer Installationsanleitung +ab Seite~\pageref{chap:installation} erläutert. +In diesem Teil der Anleitung wird dargestellt, wie das im vorigen Teil +vorgestellte Layout mit \LaTeX\ verwirklicht wird. + +% =================================================================== +\section{Aufbau des Dokumentes}% +\label{sec:tex:aufbau}% +\texindex{Aufbau}% + +Zur Erstellung eines Buches wird die Dokumentklasse +\verb|bgteubner.cls|\clsindex{bgteubner.cls} verwendet, die am Beginn +des Dokuments mit folgender Zeile aufgerufen wird: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\documentclass|oarg[Sprachen,Optionen]{bgteubner} +\end{verbatim} +\macroindex{documentclass}% +Als Sprachen müssen alle im Dokument verwendeten Sprachen angegeben +werden. +Dazu gehören auch alle im Literaturverzeichnis vorkommenden Sprachen. +Die "`Hauptsprache"' des Buchs wird als \emph{letzter} Eintrag +angegeben. +Beispielsweise führt der Eintrag +\begin{verbatim}[\small] +\documentclass[frenchb,english,ngerman]{bgteubner} +\end{verbatim} +\optindex{frenchb}\optindex{english}\optindex{ngerman}% +zu einem deutschen Buch nach neuen Rechtschreibregeln, in dem +englische und französische Sprachabschnitte erlaubt sind. +Sollte das Buch noch nach alten Regeln geschrieben werden, so kann +statt \verb|ngerman| \verb|german|\optindex{german} verwendet werden. +Es ist nicht notwendig und nicht zulässig, eine Sprache explizit mit +einem der Pakete \verb|babel|\styindex{babel} oder \verb|(n)german| zu +wählen, da die Klasse \verb|bgteubner| schon alles notwendige +einstellt.\footnote{Intern wird \texttt{babel} verwendet.} +Sollten französische Abschnitte oder Literaturverweise vorkommen, so +verwenden Sie bitte die Sprachoption \verb|frenchb| statt +\verb|french|, da das \verb|babel|"=Paket dort einen Bug enthält, der +bei \verb|frenchb| nicht auftritt. + +Als \meta{Optionen} können unterschiedliche Dinge dienen. +Tabelle~\ref{tab:klassenoptionen} gibt einen Überblick. +% +\begin{table}% + \begin{minipage}{\linewidth} + \centering + \def\default{{\rmfamily*}}% + \caption{Klassenoptionen der Klasse \texttt{bgteubner}. + Defaultmäßig aktivierte Optionen sind mit einem \default\ + gekennzeichnet.}% + \index{MathTime}% + \index{MathTimePlus|see{MathTime}}% + \index{Y\,\&\,Y!MathTime|see{MathTime}}% + \label{tab:klassenoptionen}% + \begin{tabular}{>{\ttfamily}ll} + \toprule + \rmfamily Option& Erklärung \\ + \midrule + a5paper& Papiergröße \acro{DIN"~A\,5}, vgl.\ + Abschnitt~\ref{sec:seitenformat} \\ + 17x24paper\default& Papiergröße $\np[mm]{170}\times\np[mm]{240}$, + vgl.\ Abschnitt~\ref{sec:seitenformat} \\ + \midrule + times\default & Verwendung der Times als Brotschrift, vgl.\ + Abschnitt~\ref{sec:schrift} \\ + mathtime & Verwendung der Times als Brotschrift mit MathTime- und + MathTimePlus"=\\ + & Schriften von Y\,\&\,Y\footnote{Die MathTime"= und + MathTimePlus"=Schriftfamilien verbessern den mathematischen + Schriftsatz erheblich. Sie sind bei Y\,\&\,Y + (\url{http://www.yandy.com}) kommerziell erhältlich. Es wird nur die + vollständige Kombination aus MathTime und MathTimePlus + unterstützt.}, vgl.\ Abschnitt~\ref{sec:schrift} \\ + cm& European Computer Modern als Brotschrift, vgl.\ + Abschnitt~\ref{sec:schrift} \\ + \midrule + arrowvec\default & Vektoren mit Pfeil, Matrizen doppelter Pfeil, + vgl.\ Abschn.~\ref{sec:mathematik} \\ + boldvec& Vektoren und Matrizen fett, + vgl.\ Abschn.~\ref{sec:mathematik} \\ + ulinevec& Vektoren einmal, Matrizen doppelt unterstrichen, + vgl.\ Abschn.~\ref{sec:mathematik} \\ + \midrule + greybox& Graue Kästen wie Beispiel~\ref{bsp:important} zulassen \\ + exercisetotoc& Aufgaben ins Inhaltsverzeichnis \\ + answertotoc& Lösungen (und Aufgaben) ins Inhaltsverzeichnis \\ + draft& Entwurfsstadium \\ + titlepage& Setzt die Titelseite auch ohne die Option + \texttt{draft} \\ + \midrule + normaltheorem\default & Setzt theoremartige Umgebungen in normaler + Schriftgröße \\ + smalltheorem & Setzt theoremartige Umgebungen in \cs{small} \\ + \bottomrule + \end{tabular} +\end{minipage} +\end{table}% +% +Die meisten Optionen sollten ohne weitere Erklärung verständlich sein. + +Die Option \texttt{draft} verändert einige Kleinigkeiten. +Ist sie gesetzt, kann ein Titelblatt erzeugt werden, auf dem die +Autoren, der Titel, die Auf"|lage sowie das Übersetzungsdatum gesetzt +werden. +Weiterhin wird auf fast allen Seiten am unteren Papierrand gesetzt, +wann das Dokument übersetzt wurde. +Schließlich werden Zeilen mit einem schwarzen Balken markiert, in +denen der Umbruchalgorithmus von \LaTeX\ kein zufriedenstellendes +Ergebnis erzielen konnte.\footnote{Dazu mehr in + Abschnitt~\ref{sec:tex_silbentrennung}.} +Die Option \texttt{draft} wird \emph{nicht} an das +\texttt{graphics}"=Paket weitergereicht, so dass trotz gesetzer +\texttt{draft}"=Option die mit \cs{includegraphics} eingebundenen +Bilder wirklich eingebunden werden. +Möchten Sie, um Zeit zu sparen, nur Platzhalter angezeigt bekommen, +können Sie dies erreichen, indem Sie \emph{vor der} +\cs{documentclass}"=Zeile folgende Zeile einfügen: +\begin{verbatim}[\small] +\PassOptionsToPackage{draft}{graphicx} +\end{verbatim} +Mit der Option \texttt{titlepage} wird das Titelblatt ohne die +anderen Auswirkungen von \texttt{draft} gesetzt. + +Zur Übergabe an den Verlag darf weder die Option \texttt{draft} noch +die Option \texttt{titlepage} gesetzt sein, da der Verlag die Titelei +(Schmutztitel, Titelblatt und Impressum) unabhängig von der +übergebenen Datei erzeugt. + +Falls Sie nicht wie empfohlen direkt eine \acro{PDF}"=Datei erzeugen +wollen, sondern den Umweg über +\index{dvi-Datei@\acro{DVI}"=Datei}\acro{DVI} und PostScript gehen +wollen, müssen Sie zur Übersetzung dennoch \pdfLaTeX\ verwenden und +noch vor dem \cs{documentclass}"=Befehl (also normalerweise als +allererste Zeile) folgende Zeile einfügen: +\begin{verbatim}[\small] +\pdfoutput=0 +\end{verbatim} +Allerdings sollte möglichst direkt \acro{PDF} erzeugt werden, da das +so generierte Dateiformat sauberer als über den Umweg ist. + +%\pagebreak[1]% +Nach dem Laden der Dokumentklasse sollte mit\nopagebreak +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\usepackage|oarg[Zeichenkodierung]{inputenc} +\end{verbatim} +\macroindex{inputenc}% +der vom verwendeten Betriebssystem benutzte +Zeichensatz\texindex{Zeichensatz} eingestellt werden. +Dadurch ist es möglich, im Quelltext Umlaute und andere Sonderzeichen +wie æ oder ø direkt einzugeben. +Für Unix\texindex{Unix!Zeichensatz}\texindex{Zeichensatz!Unix} ist statt +\meta{Zeichenkodierung} normalerweise \verb|latin1|\srcindex{latin1}% +\texindex{inputenc@\texttt{\textbackslash inputenc}!latin1@\texttt{latin1}}, +für Windows\texindex{Windows!Zeichensatz}\texindex{Zeichensatz!Windows} +\verb|ansinew|\srcindex{ansinew}% +\texindex{inputenc@\texttt{\textbackslash inputenc}!latin1@\texttt{ansinew}} +einzusetzen. +Pakete wie \texttt{dosuml} oder \texttt{umlaut} dürfen \emph{nicht} +verwendet werden. + +Nun können, falls nötig, mit dem +\cs{usepackage}"=Befehl\macroindex{usepackage} weitere Pakete +geladen werden. +Dabei sollte aber sehr sparsam vorgegangen werden, um das Aussehen des +Buchs nicht zu sehr zu verändern. +In Tabelle~\ref{tab:pakete_tabu} ist eine Tabuliste enthalten, die +Pakete aufzeigt, die entweder sowieso schon geladen werden oder das +Aussehen in einer unzulässigen Weise verändern würden. +% +\begin{table}% + \centering + \caption[Eine Auswahl an Paketen, die auf keinen Fall zusätzlich + geladen werden dürfen]{Eine Auswahl an Paketen, die auf keinen + Fall zusätzlich geladen werden dürfen, da sie das Layout zu sehr + verändern oder schon verwendet werden. + Hier besteht natürlich kein Anspruch auf + Vollständigkeit.}% + \texindex{Tabuliste}% + \label{tab:pakete_tabu}% + \begin{tabular}{*{5}{>{\ttfamily}l}} + \toprule + \multicolumn{5}{c}{automatisch geladene Pakete}\\ + \midrule + amsbsy\styindex{amsbsy}& + amsfonts\styindex{amsfonts}& + amsgen\styindex{amsgen} & + amsmath\styindex{amsmath}& + amsopn\styindex{amsopn}\\ + amssymb\styindex{amssymb}& + amstext\styindex{amstext}& + array\styindex{array}& + babel\styindex{babel}& + babelbib\styindex{babelbib} \\ + booktabs\styindex{booktabs}& + calc\styindex{calc}& + color\styindex{courier}& + courier\styindex{courier}& + everysel\styindex{everysel} \\ + exscale\styindex{exscale}& + fixltx2e\styindex{fixltx2e}& + fixmath\styindex{fixmath}& + fnbreak\styindex{fnbreak}& + fontenc\styindex{fontenc} \\ + graphics\styindex{graphics}& + graphicx\styindex{graphicx}& + helvet\styindex{helvet}& + hfoldsty\styindex{hfoldsty}& + hhsubfigure\styindex{hhsubfigure} \\ + hhinputenc\styindex{hhinputenc}& + hhtensor\styindex{hhtensor}& + ifpdf\styindex{ifpdf}& + ifthen\styindex{ifthen}& + keyval\styindex{keyval} \\ + longtable\styindex{longtable}& + makeidx\styindex{makeidx}& + mathcomp\styindex{mathcomp}& + mathptmx\styindex{mathptmx}& + mdwlist\styindex{mdwlist} \\ + multicol\styindex{multicol}& + numprint\styindex{numprint}& + onlyamsmath\styindex{onlyamsmath}& + paralist\styindex{paralist}& + ragged2e\styindex{ragged2e} \\ + relsize\styindex{relsize}& + scrlfile\styindex{scrlfile}& + scrpage2\styindex{scrpage2}& + setspace\styindex{setspace}& + slantsc\styindex{slantsc} \\ + subfloat\styindex{subfloat}& + textcomp\styindex{textcomp}& + trig\styindex{trig}& + typearea\styindex{typearea}& + warning\styindex{warning} \\ + wasysym\styindex{wasysym} \\ + \midrule + \multicolumn{5}{c}{Pakete, die eine andere Schrift wählen}\\ + \midrule + ae\styindex{ae}& + avant\styindex{avant}& + avantgar\styindex{avantgar}& + bookman\styindex{bookman}& + chancery\styindex{chancery} \\ + charter\styindex{charter}& + cmbright\styindex{cmbright}& + concmath\styindex{concmath}& + eco\styindex{eco}& + helvetic\styindex{helvetica} \\ + lmodern\styindex{lmodern} & + lucidabr\styindex{lucidabr}& + lucidaso\styindex{lucidaso}& + mathpazo\styindex{mathpazo}& + mathptm\styindex{mathptm} \\ + mathsans\styindex{mathsans}& + mathtime\styindex{mathtime}& + ncntrsbk\styindex{ncntrsbk}& + newcent\styindex{newcent}& + palatcm\styindex{palatcm} \\ + palatino\styindex{palatino}& + times\styindex{times}& + utopia\styindex{utopia}& + zapfchan\styindex{zapfchan}& + zefonts\styindex{zefonts} \\ + \midrule + \multicolumn{5}{c}{Pakete, die das Layout verändern}\\ + \midrule + caption\styindex{caption}& + caption2\styindex{caption2}& + doublespace\styindex{doublespace}& + endfloat\styindex{endfloat}& + fancyhdr\styindex{fancyhdr} \\ + fncychap\styindex{fncychap}& + fnpara\styindex{fnpara}& + ftcap\styindex{ftcap}& + fullpage\styindex{fullpage}& + geometry\styindex{geometry} \\ + germbib\styindex{germbib}& + hangcaption\styindex{hangcaption}& + hangftn\styindex{hangftn}& + here\styindex{here}& + hyperref\styindex{hyperref} \\ + indentfirst\styindex{indentfirst}& + landscape\styindex{landscape}& + sectsty\styindex{sectsty}& + subfigure\styindex{subfigure}& + titlesec\styindex{titlesec} \\ + \midrule + \multicolumn{5}{c}{Sprach"= und sonstige Pakete}\\ + \midrule + french\styindex{french}& + frenchle\styindex{frenchle}& + german\styindex{german}& + ngerman\styindex{ngerman} \\ + \bottomrule + \end{tabular} +\end{table}% +% +Tabelle~\ref{tab:pakete_gut} enthält Pakete, die sinnvoll eingesetzt +werden können. +% +\begin{table}% + \caption{Eine Auswahl an Paketen, die sinnvoll eingesetzt werden + können}% + \label{tab:pakete_gut}% + \begin{minipage}{\linewidth} + \centering + \begin{tabular}{>{\ttfamily}l>{\RaggedRight}p{0.8\linewidth}} + \toprule + Paket& Beschreibung\\ + \midrule + contour\styindex{contour}& Umrandete Schrift, um Beschriftungen + über Bilder zu legen\\ + dcolumn\styindex{dcolumn}& Ausrichtung von Zahlen in Tabellen\\ + eurosym\styindex{eurosym}& Bietet mit der Option \env{gen} das + Eurosymbol \euro\ mit dem Befehl \cs{euro}\footnote{Der vom + Paket \texttt{textcomp} zur Verfügung gestellte Befehl + \cs{texteuro} erzeugt mit der Times einen schwarzen Kasten, + mit der European Computer Modern ein hässliches Symbol und + sollte daher nicht verwendet werden.}\\ + fixme\styindex{fixme}& Anmerkungen im Rand für ausstehende + Änderungen\\ + float\styindex{float}& Richtet weitere Fließumgebungen ein + (vgl.\ dazu Abschnitt~\ref{sec:tex:fliessumgebung})\\ + miller\styindex{miller}& Millersche Indizes (Werkstoffkunde)\\ + nicefrac\styindex{nicefrac}& Textbrüche mit schrägem Bruchstrich\\ + overpic\styindex{overpic}& Text o.\,ä.\ über Bilder setzen\\ + url\styindex{url}& \acro{WWW}"=Adressen etc.\ setzen. Sollte + geladen werden, wenn im Literaturverzeichnis das Feld + \texttt{url} verwendet wird.\\ + verbatim\styindex{verbatim}& Listings etc.\ setzen\\ + \bottomrule + \end{tabular} + \end{minipage}% +\end{table}% + +Nach dem Laden zusätzlicher Pakete können noch eigene Befehle +definiert werden und beispielsweise globale Trennhilfen mit dem +\cs{hyphenation}"=Befehl gegeben werden. +Werden Umlaute im \cs{hyphenation}"=Befehl direkt eingegeben, können +auch diese verarbeitet werden. + +Um das Stichwortverzeichnis erzeugen zu können, muss in die Präambel +der +\feinschliff{\cs{makeindex}"=Befehl}{Befehl \cs{makeindex}}% + {Befehl \cs{makeindex}}{Befehl \cs{makeindex}} +aufgenommen werden. + +Danach wird der Textteil des Dokuments mit +\cs{begin\{document\}}\macroindex{begin\{document\}} begonnen. +Um die römische Seitennummerierung einzuschalten, die auf den ersten +Seiten des Dokuments gelten soll, muss der Befehl \cs{frontmatter} +folgen. + +Darauf folgen die Definitionen einiger Dinge wie Titel, Autorennamen +usw. +\emph{Sie sollten auch dann angegeben werden, wenn kein Titelblatt erzeugt +werden soll, da sie als Informationen in der \acro{PDF}"=Datei +gespeichert werden.\footnote{Vgl.\ dazu + Anhang~\ref{sec:pdf-informationen}.}} +Im Einzelnen werden folgende Befehle verwendet: +\begin{itemize*} +\item \cs{title\marg{Titel}}\macroindex{titel}\texindex{Titel} + definiert den Titel des Buches. +\item Der Befehl + \cs{subtitle\marg{Untertitel}}\macroindex{untertitel}% + \texindex{Untertitel} ist optional und erzeugt einen Untertitel, der + kleiner unterhalb des Titels gesetzt wird. +\item \sloppypar + Die Autoren werden mit dem Befehl\texindex{Autor} + \cs{author\marg{Autor}}\macroindex{autor} angegeben. +\item \cs{edition\marg{Auf"|lagennummer}}\macroindex{edition}% + \texindex{Auflagennummer@Auf\/lagennummer} definiert die Auf"|lage + des Buchs, sie wird als einfache, arabische Zahl angegeben. +\item Mit dem Befehl \cs{dedication\marg{Widmung}} kann eine Widmung + definiert werden. + Sie wird nach der Titelseite gesetzt, sofern der + \cs{maketitle}"=Befehl verwendet wird. +\end{itemize*} +Diese Befehle sollen alle \emph{nach} dem \cs{begin\{document\}} +stehen, da es ansonsten Schwierigkeiten mit Umlauten geben +kann.\footnote{Das \texttt{babel}"=Paket schaltet die Sonderbehandlung + des doppelten Anführungsstrichs, z.\,B.\ für Umlaute, im Quelltext + erst dort an.} + +Die Titelseiten\texindex{Titelseiten} werden schließlich durch die +Verwendung des Befehls \cs{maketitle}\macroindex{maketitle} erzeugt. +Er sollte auch dann verwendet werden, wenn aufgrund der +Klassenoptionen keine Titelseite erzeugt wird (unter Anderem deshalb, +weil eine eventuelle Widmung dennoch durch den +\feinschliff{Befehl \cs{maketitle}}{\cs{maketitle}"=Befehl}% + {\cs{maketitle}"=Befehl}{\cs{maketitle}"=Befehl} +gesetzt wird). + +Nach dem \texindex{Vorwort}Vorwort, das im +Abschnitt~\ref{sec:vorwort} beschrieben wird, folgt das +Inhaltsverzeichnis\texindex{Inhaltsverzeichnis}, erzeugt mit folgendem +Befehl: +\begin{verbatim}[\small] +\tableofcontents +\end{verbatim} +\macroindex{tableofcontents}% + +Nun folgt der eigentliche Inhalt des Buches. +Dies wird durch den Befehl \cs{mainmatter} gekennzeichnet. + +Die einzelnen Kapitel\texindex{Kapitel} sollten, um das Projekt +übersichtlich zu halten, in einzelnen Dateien untergebracht werden, +die jeweils mit Hilfe des \cs{include}"=Befehls eingebunden +werden. + +Der Anhang\texindex{Anhang} wird mit dem Befehl +\begin{verbatim}[\small] +\appendix +\end{verbatim} +\macroindex{appendix}% +begonnen. +Für die einzelnen Anhänge gilt das gleiche wie für die Kapitel des +Buches. + +Das Dokument wird mit dem Befehl \cs{end\{document\}} abgeschlossen. +Es ist nicht notwendig, das Stichwortverzeichnis aufzurufen, da dies +automatisch geschieht. + +\subsection*{Beispiel}% +\texindex{Beispiel!\LaTeX"=Datei}% + +Im Folgenden wird eine mögliche Hauptdatei für ein Buch des +Teubner Verlags gezeigt: + +{\small\verbatiminput{beispiel1}} + +Eine Datei, die ein Kapitel enthält, kann dann etwa so aussehen (am +Beispiel der Datei \url{kapitel2.tex}): + +{\small\verbatiminput{kapitel2}} + + +% =================================================================== +\section{Vorwort}% +\label{sec:vorwort}% +\texindex{Vorwort}% + +Das Vorwort wird mit folgender Befehlszeile eingeleitet: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\preface|marg[Überschrift]% +\end{verbatim} +\macroindex{preface}% +\meta{Überschrift} kennzeichnet den Text, der als Überschrift gesetzt +wird. +Normalerweise wird dies "`Vorwort"' sein. +Bei späteren Auf"|lagen können aber mehrere Vorworte +aufeinanderfolgen, wobei dann auch "`Vorwort zur ersten Auf"|lage"' +o.\,ä.\ verwendet werden kann. +Es folgt ganz normaler Text. + +Abgeschlossen wird das Vorwort mit einer Zeile ähnlich der folgenden: +\begin{verbatim}[\small] +\signature{Braunschweig}{im Januar 2004}{Harald Harders} +\end{verbatim} +\macroindex{signature}% +Hier müssen natürlich das Datum und die Namen der Autoren ausgetauscht +werden. + +% =================================================================== +\section{Schriften und Auszeichnungen}% +\label{sec:tex:auszeichnungen}% +\texindex{Schrift}% + +Ob Times oder European Computer Modern als Brotschrift verwendet wird, +wird, wie im Abschnitt~\ref{sec:tex:aufbau} beschrieben, durch die +Klassenoptionen \verb|times| und \verb|cm| bestimmt. +Auf Schriftgrößenveränderungen durch die Verwendung der Befehle +\cs{small}\macroindex{small}, \cs{large}\macroindex{large}, +\cs{Large}\macroindex{Large} usw.\ soll im Normalfall verzichtet +werden. + +Eine Auszeichnung im Text, z.\,B.\ zur Betonung oder bei der Definition +neuer Begriffe, erfolgt durch \emph{Kursivstellen}\texindex{kursiv} +mit dem Befehl \cs{emph\{\meta{Text}\}}.\macroindex{emph} +Der Befehl \cs{em}\macroindex{em} war Bestandteil von \LaTeX\ 2.09 +und ist nicht mehr aktuell. +Um ein logisches Markup zu ermöglichen, stellt die +Klasse \verb|bgteubner| die Befehle \cs{new\marg{neuer Begriff}}, +\cs{person\marg{Name}} und \cs{engl\marg{englischer Begriff}} +zur Verfügung, die jeweils den in ihrem Argument auftretenden Text +kursiv stellen. +Manche Autoren wollen Namen in Kapitälchen schreiben. +Sie können den Befehl \cs{person} folgendermaßen umdefinieren: +\begin{verbatim}[\small] +\let\person=\textsc +\end{verbatim} +Wenn die European Computer Modern als Brotschrift verwendet wird, wird +das Paket \verb|slantsc| \cite{slantsc2003a} von der Dokumentklasse +\verb|bgteubner| geladen. +Dann können auch Kapitälchen kursiv gesetzt werden. +Da für die Times keine kursiven Kapitälchen verfügbar sind, ist dies +dort leider nicht möglich. +Tritt zum Beispiel der neue \cs{person}"=Befehl in einem mit \cs{emph} +hervorgehobenen bereich auf,\footnote{Dieses Beispiel funktioniert + entsprechend auch nur, wenn die European Computer Modern verwendet + wird. + Wenn Sie die Times benutzen, werden die Kapitälchen auch in kursiven + Umgebungen aufrecht gedruckt.} +\begin{verbatim}[\small] +Das \emph{ist \textsc{Donald Knuth}, der Erfinder} von \LaTeX, +\end{verbatim} +sieht dass dann so +\iftimes{}{% +\begin{quote} +Das \emph{ist \textsc{Donald Knuth}, der Erfinder} von \LaTeX, +\end{quote} +statt so} +\begin{quote} +Das \emph{ist }\textsc{Donald Knuth}\emph{, der Erfinder} von \LaTeX, +\end{quote} +aus.\iftimes{\footnote{Leider kann der Effekt bei Verwendung der Times + nicht gezeigt werden, und es muss mit der Einschränkung gelebt + werden, dass Kapitälchen aufrecht sind.}}{} + +\begin{advanced} + Durch die Verwendung des \verb|slantsc|"=Pakets ändert sich eine + Kleinigkeit bei der Wahl der Schriftschnitte, die normalerweise selten + auftritt. + Wenn Sie mit \cs{scshape} auf Kapitälchen schalten, schalten die + Befehle \cs{upshape}, \cs{itshape} und \cs{slshape} Kapitälchen + nicht aus. + Stattdessen müssen Sie entweder den Befehl \cs{noscshape}"=Befehl + verwenden oder den Kapitälchenbereich einklammern, z.\,B.\ durch +\begin{verbatim}[\footnotesize\makeescape\|\makebgroup\[\makeegroup\]] +|meta[normaler Text] {\scshape |meta[Text in Kapitälchen]} |meta[normaler Text] +\end{verbatim} + oder +\begin{verbatim}[\footnotesize\makeescape\|\makebgroup\[\makeegroup\]] +|meta[normaler Text] \textsc{|meta[Text in Kapitälchen]} |meta[normaler Text]. +\end{verbatim} + Dabei ist das Einklammern normalerweise vorzuziehen. +\end{advanced} + +Doppelte Anführungsstriche\texindex{Anführungszeichen} werden mit +\verb|"`|\texindex{"`} und \verb|"'|\texindex{"'}, mit +\verb|">|\texindex{">} und \verb|"<|\texindex{"<}, bzw.\ mit +\cs{glqq}\macroindex{glqq} und \cs{grqq}\macroindex{grqq} +erzeugt.\footnote{Diese Befehle wurden so umdefiniert, dass sie + korrektes Kerning erlauben.} +Einfache Anführungsstriche werden mit \cs{glq}\macroindex{glq} und +\cs{grq}\macroindex{grq} geschrieben. + +Wenn als Brotschrift European Computer Modern gewählt wurde, werden +Zahlen im Text automatisch als +\texindex{Mediävalziffer}\texindex{Ziffer!Mediäval-}% +Mediävalziffern\footnote{Vgl.\ Abschnitt~\ref{sec:schrift}.} +geschrieben. +Sollten an einer bestimmten Stelle außerhalb mathematischer Ausdrücke +dennnoch einmal +Versalziffern\texindex{Versalziffer}\texindex{Ziffer!Versal-} +verwendet werden, so kann dies durch Verwendung des Befehls +\cs{newstylenums\{\meta{Zahl}\}}\macroindex{newstylenums} getan +werden.\footnote{Bei der Verwendung von Times wird \cs{newstylenums} + ignoriert.} +Mathematische Ausdrücke müssen \emph{immer} wirklich im mathematischen +Modus (eingeklammert durch \verb|$|\ldots\verb|$|\srcindex{\$} bzw.\ +\cs{(}\ldots\cs{)})\macroindex{(}\macroindex{)} geschrieben +werden. +Dadurch werden dort die Zahlen automatisch als Versalziffern +gesetzt. + +% =================================================================== +\section{Absätze}% +\texindex{Absatz}% + +Wie in \LaTeX\ üblich, werden Absätze im Quelltext durch eine +Leerzeile gekennzeichnet.\footnote{Es kann auch \cs{par} verwendet + werden. + Allerdings gliedert eine Leerzeile den Quelltext besser lesbar.} +\emph{Befehle wie \cs{\textbackslash}, \cs{newline} oder + \cs{linebreak} erzeugen keinen neuen Absatz und dürfen nicht zu + diesem Zweck verwendet werden.} +Wenn Ihnen zu oft ein Absatzeinzug auftritt, liegt das wahrscheinlich +daran, dass Sie zur Gliederung des Quelltextes Leerzeilen eingebaut +haben. +Wie das Problem behoben wird, wird im Laufe dieses Abschnitts +beschrieben. + +Der Einsatz von Leerzeilen im Quelltext bei abgesetzten Formeln ist am +einfachsten anhand der Beispiele aus Abschnitt~\ref{sec:allg_absaetze} +zu erkennen. +Soll nach der Formel kein Absatz erfolgen, ist auch keine Leerzeile zu +setzen. +Beispiel~\ref{ex:absatz_bsp1} auf Seite~\pageref{ex:absatz_bsp1} +wurde folgendermaßen erzeugt: +\begin{verbatim}[\small] +Irgendwann vor unserer Zeit wurde der mathematische Satz des +Pythagoras, +\begin{align*} + a^2+b^2 &= c^2\,, +\end{align*} +entdeckt. +Er besagt, dass die Längen eines rechtwinkligen Dreiecks +zueinander in Beziehung stehen. +\end{verbatim} +Soll ein Absatz erzeugt werden, muss eine Leerzeile gesetzt werden +(Beispiel~\ref{ex:absatz_bsp2}): +\begin{verbatim}[\small] +Aus den Längenbeziehungen der Kanten eines rechtwinkligen +Dreiecks folgt der Satz des Pythagoras +\begin{align*} + a^2+b^2 &= c^2\,. +\end{align*} + +Anders sieht es bei schiefwinkligen Dreiecken aus. +Dort gilt eine entsprechende Gleichung nicht. +\end{verbatim} +% +\emph{Es ist also nicht möglich, den Quelltext durch Einfügen von +Leerzeilen zu gliedern, da dadurch unerwünschte Absätze eingefügt +werden!} +Um dennoch eine ähnliche Gliederung zu erreichen, ist es möglich, +Zeilen einzufügen, die nur ein Kommentarzeichen (\verb|%|) enthalten. +Obiges Beispiel sieht dann so aus: +\begin{verbatim}[\small] +Irgendwann vor unserer Zeit wurde der mathematische Satz des +Pythagoras, +% +\begin{align*} + a^2+b^2 &= c^2\,, +\end{align*} +% +entdeckt. +Er besagt, dass die Längen eines rechtwinkligen Dreiecks +zueinander in Beziehung stehen. +\end{verbatim} + +% =================================================================== +\section{Teile, Kapitel und Abschnitte}% +\label{sec:tex:teile}% +\texindex{Teil}% +\texindex{Kapitel}% +\texindex{Abschnitt}% + +Teilüberschriften gliedern das Buch sehr stark und sollten sparsam +verwendet werden. +Nummerierte Teile werden mit dem Befehl +\macroindex{part}\cs{part\{\meta{Überschrift}\}} erzeugt, +unnummerierte mit +\feinschliff{dem Befehl }{}{}{}% +\macroindex{addpart}\cs{addpart\{\meta{Überschrift}\}}. +In diesen Autorenrichtlinien wurden die Teile mit \cs{addpart} +erzeugt. + +\feinschliff{ +Wie in \LaTeX\ üblich, werden Kapitel und Abschnitte mit den +}{% +Kapitel und Abschnitte werden --~wie in \LaTeX\ üblich~-- mit den +}{% +Kapitel und Abschnitte werden --~wie in \LaTeX\ üblich~-- mit den +}{% +Kapitel und Abschnitte werden --~wie in \LaTeX\ üblich~-- mit den +}% +Befehlen \macroindex{chapter}\cs{chapter}, +\macroindex{section}\cs{section}, +\macroindex{subsection}\cs{subsection}, +\cs{subsubsection}\macroindex{subsubsection}, +\macroindex{minisec}\cs{minisec}\footnote{Der \cs{minisec}"=Befehl ist + eine Erweiterung von \acro{KOMA}"=Script, das der + \texttt{bgteubner}"=Klasse zugrunde liegt.} und +\cs{paragraph}\macroindex{paragraph} gesetzt. +Für Kapitel"= und Abschnittsüberschriften existieren für unnummerierte +Überschriften die Befehle \cs{addchap}\macroindex{addchap} und +\cs{addsec}\macroindex{addsec}, die dennoch die korrekten +Kolumnentitel und einen Eintrag im Inhaltsverzeichnis erzeugen. +\cs{chapter*} und \cs{section*} sollten im Normalfall nicht verwendet +werden, da sie die Kolumnentitel nicht automatisch anpassen. +Falls ein Autor dies unbedingt dennoch tun möchte, muss er mit +\cs{markboth} bzw.\ \cs{markright} die Kolumnentitel von Hand setzen. + +Die Befehle \cs{part}, \cs{addpart}, \cs{chapter} und \cs{addchap} +beginnen den nächsten Teil bzw.\ das nächste Kapitel automatisch auf +einer ungeraden Seite und sorgen dafür, dass eine eventuelle leere +Seite keinen Kolumnentitel enthält. +\emph{Fügen Sie also keinesfalls manuelle Seitenumbrüche mit + \cs{newpage}, \cs{clearpage} usw. ein!} + +Soll ein Abschnitt ohne eigene Überschrift erzeugt werden, der durch +einen zusätzlichen Zwischenraum gekennzeichnet ist, so kann dies durch +Verwendung des Befehls \cs{bigskip}\macroindex{bigskip} vor oder +nach einer Leerzeile erzielt werden. +Der nächste Absatz wird dann automatisch nicht eingerückt. +Die Befehle \cs{medskip} und \cs{smallskip} verhalten sich wie +\cs{bigskip}, nur mit kleineren Abständen. +Sie sollen im Text nicht verwendet werden, können aber zu +Positionierung von Teilbildern usw.\ nützlich sein. + +% =================================================================== +\section{Mathematik}% +\label{sec:tex:mathematik}% +\texindex{Mathematik}% + + +\subsection{Mathematische Umgebungen}% +\texindex{Mathematik!Umgebung}% + +Bei mathematischen Ausdrücken muss zwischen im Text eingebetteten +Formeln und abgesetzten Formeln unterschieden werden. +Die eingebetteten werden entweder durch die Verwendung von +\verb|$|\dots\verb|$|\srcindex{\$} oder durch +\cs{(}\dots\cs{)}\macroindex{(}\macroindex{)} erzeugt. +Für abgesetzte Formeln dürfen nur die von +\verb|amsmath|\styindex{amsmath} \cite{amsmath1999a} bereitgestellten +Umgebungen (\verb|equation|\envindex{equation}, +\verb|equation*|\envindex{equation*}, \verb|align|\envindex{align}, +\verb|align*|\envindex{align*}, \verb|gather|\envindex{gather}, +\verb|gather*|\envindex{gather*}, \verb|flalign|\envindex{flalign}, +\verb|flalign*|\envindex{flalign*}, +\verb|multiline|\envindex{multiline}, +\verb|multiline*|\envindex{multiline*}, +\verb|alignat|\envindex{alignat}, \verb|alignat*|\envindex{alignat*}, +\verb|split|\envindex{split} sowie +\cs{[}\dots\cs{]})\macroindex{[}\macroindex{]} verwendet +werden. +Die Standard"=\TeX- bzw.\ "~\LaTeX"=Umgebungen +\verb|$$|\dots\verb|$$|\envindex{\$\$}, +\verb|eqnarray|\envindex{eqnarray} und +\verb|eqnarray*|\envindex{eqnarray*} dürfen nicht verwendet werden, da +sie das gewünschte Layout verletzen. + +Es besteht ein wichtiger Unterschied zwischen der +\verb|eqnarray|"=Umgebung und ihrem Ersatz, der +\verb|align|"=Umgebung: +Bei der \verb|align|"=Umgebung\envindex{align} wird die Ausrichtung +der Formeln nur durch \emph{ein einzelnes} \verb|&|"=Zeichen im +Gegensatz zu zwei Zeichen bei der \verb|eqnarray|"=Umgebung erreicht. +Das Beispiel +\begin{verbatim}[\small] +\begin{align*} + \sin^2\alpha + \cos^2\alpha &= 1 \,, \\ + x_2 - x_1 &= \D x \,. +\end{align*} +\end{verbatim} +ergibt folgendes Ergebnis: +\begin{align*} + \sin^2\alpha + \cos^2\alpha &= 1\,,\\ + x_2 - x_1 &= \D x\,. +\end{align*} + +Manchmal kann es vorkommen, dass eine abgesetzte Gleichung so lang +ist, dass sie über den rechten Rand heraussteht oder eine eventuelle +Gleichungsnummer in die nächste Zeile zwingt. +Wenn dieses Übermaß nur gering ist, kann es unter Umständen helfen, +den linken Einzug der Gleichung zu reduzieren. +Dies kann mit der Umgebung \env{nomathindent} mit dem optionalen +Argument \meta{Maß} erreicht werden. +\meta{Maß} ist dabei das relative Maß, um das der Einzug reduziert +wird. +So tut \cs{begin\{nomathindent\}[0.0]} nichts, +\feinschliff{}{der Aufruf}{der Aufruf}{der Aufruf} +\cs{begin\{nomathindent\}[0.5]} reduziert den Einzug auf +die Hälfte, wogegen der Aufruf +\cs{begin\{nomathindent\}[1.0]} den +Einzug vollständig löscht. +Wird das Maß nicht angegeben, wird der Einzug vollständig gelöscht. +Beispiel: +\begin{verbatim}[\small] +\begin{nomathindent}[0.8] +\begin{align*} + \sin^2\alpha + \cos^2\alpha &= 1 \,. +\end{align*} +\end{nomathindent} +\end{verbatim} +ergibt folgendes Ergebnis: +\begin{nomathindent}[0.8] +\begin{align*} + \sin^2\alpha + \cos^2\alpha &= 1 \,. +\end{align*} +\end{nomathindent} + + +\subsection{Zahlendarstellung}% +\texindex{Zahl}% + +Die in Abschnitt~\ref{sec:mathematik} angesprochene Gliederung von +Zahlen durch kleine Zwischenräume nach jeweils drei Ziffern lässt sich +durch die Verwendung des Befehls \cs{numprint}\macroindex{numprint} +erreichen \cite{harders2001a}. +So führt beispielsweise +\feinschliff{der Aufruf }{}{}{}% +\verb|$\numprint{1234567,1234567}$| zu folgendem Ergebnis: +"`$\numprint{1234567,1234567}$"'. +Der Befehl kann außerdem Zahlen in +Exponentialschreibweise\texindex{Zahl!Exponentialschreibweise} mit +einer kurzen Eingabe darstellen: \verb|$\numprint{1234e-15}$| ergibt +$\numprint{1234e-15}$. +Desweiteren ist auch eine reine Exponentialdarstellung möglich: +\verb|$\numprint{e12}$| ergibt $\numprint{e12}$. +Da der Befehl \cs{numprint} auch im Textmodus funktioniert, kann er +auch dort für Zahlen verwendet werden: +\cs{numprint\{1234567,1234567\}} ergibt +\numprint{1234567,1234567}.\iftimes{\footnote{Wird European Computer Modern + verwendet, werden dann Mediävalziffern verwendet.}}{} +Der Befehl sorgt außerdem dafür, dass (sofern die deutsche Sprache +aktiv ist) immer ein Komma als Dezimalzeichen verwendet wird, selbst +wenn im Quelltext ein Punkt steht (\verb|$\numprint{3.4}$| +$\Rightarrow$ $\numprint{3.4}$). + +Wenn eine Zahl einheitenbehaftet\texindex{Einheit} ist, kann diese als +optionales Argument angegeben werden, zum Beispiel ergibt +\verb|$E=\numprint[MPa]{210000}$| "`$E=\numprint[MPa]{210000}$"'. +Eine Ausnahme ist die Angabe von Grad. +Da das Gradzeichen so klein ist, wird vor ihm kein kleiner +Zwischenraum gelassen, so dass die Eingabe etwas anders ist: +\begin{verbatim}[\small] +$\numprint{90}\tcdegree$ +\end{verbatim} +ergibt $\numprint{90}\tcdegree$,\footnote{Wenn Sie eine neue Version + des \texttt{numprint}"=Pakets ab Version~1.00 verwenden, erkennt + dieses den \cs{tcdegree}"=Befehl und setzt das Gradzeichen + automatisch ohne Abstand.} aber Temperaturangaben werden mit +Zwischenraum gesetzt. +So ergibt +\begin{verbatim}[\small] +$\numprint[\tccelsius]{90}$ +\end{verbatim} +die Ausgabe $\numprint[\tccelsius]{90}$. + +Der Einheitenprefix $\tcmu$ wird aufrecht geschrieben. +Dies wird durch Verwendung des Befehls \cs{tcmu} statt \cs{mu} +erreicht. +Ebenso wird Ohm als $\tcohm$ durch Verwendung von \cs{tcohm} statt +\cs{Omega} geschrieben. + +Da der Befehl \cs{numprint} für eine einheitliche Zahlendarstellung +sorgt, sollte er \emph{immer} verwendet werden, wenn eine Zahl gesetzt +wird, selbst wenn diese weniger als drei Stellen hat. + +Falls die Verwendung des Befehls \cs{numprint} aus irgendwelchen +Gründen einmal nicht möglich sein sollte, können die +Dreiergruppen mit dem Befehl \cs{,} voneinander getrennt werden. +Es muss dann ein Komma (\verb|,|) als Dezimaltrenner verwendet +werden: +\begin{verbatim}[\small] +$E = 210\,000,0\,\mathrm{MPa}$ +\end{verbatim} +ergibt $E = 210\,000,0\,\mathrm{MPa}$. +Wie im Beispiel zu erkennen, wird die Einheit mit dem Abstand \cs{,} +gesetzt. +\feinschliff{}{\enlargethispage{1\baselineskip}}{}{}% + + +\subsection{Indizes und Operatoren}% + +In Abschnitt~\ref{sec:mathematik} wurde beschrieben, wann Indizes +kursiv und wann aufrecht gedruckt werden. +\LaTeX\ setzt Indizes\texindex{Index} automatisch kursiv, so dass +kursive Indizes einfach mit dem \verb|_|"=Befehl gesetzt werden +können: \verb|$C_{ijkl}$| $\Rightarrow$ $C_{ijkl}$. +Um einen Index aufrecht zu setzen, muss der Befehl \cs{mathrm} im +Index verwendet werden: \verb|$\sigma_{\mathrm{max}}$| $\Rightarrow$ +$\sigma_{\mathrm{max}}$. + +Mathematische Funktionen\texindex{Funktion} werden aufrecht gedruckt. +Für die meisten existieren entsprechende Befehle (\cs{sin}, +\cs{exp}, usw.). +Auch Operatoren\texindex{Operator} werden, sofern vorhanden, aufrecht +gedruckt. +Für Bücher des Teubner Verlags sind die beiden Operatoren +\cs{d}\macroindex{d} für +"`Differentiell"'\texindex{Differentialoperator}\footnote{Im Textmodus + besitzt der Befehl \texttt{\textbackslash d} die normale Funktion, + im mathematischen Modus erzeugt er ein aufrechtes $\d$.} und +\cs{D}\macroindex{D} für +"`Differenz"'\texindex{Differenzenoperator} definiert. +Es darf nicht \cs{Delta}\macroindex{Delta} statt \cs{D} +verwendet werden, da das ein kursives Delta ergeben +würde.\iftimes{}{\footnote{Durch die Verwendung des Paketes + \texttt{fixmath}\styindex{fixmath} werden die großen griechischen + Buchstaben kursiv gedruckt, wie es für mathematische Symbole korrekt + ist.}} +Das Beispiel +\begin{verbatim}[\small] +\begin{align*} + \frac{\d(x^2)}{\d x} &= 2x \,, \\ + x_2 - x_1 &= \D x \,. +\end{align*} +\end{verbatim} +ergibt folgendes Ergebnis: +\begin{align*} + \frac{\d(x^2)}{\d x} &= 2x\,,\\ + x_2 - x_1 &= \D x\,. +\end{align*} + +Das aufrechte "`e"' für eulersche Zahl kann mit dem Befehl \cs{e} +geschrieben werden. +Die \env{cases*}"=Umgebung entspricht der \verb|cases|"=Umgebung aus +den \acro{AMS}"=Paketen, jedoch mit einer schließenden +geschweiften Klammer. +Der \cs{equivalent}"=Befehl erzeugt $\equivalent$. +\feinschliff{}{\enlargethispage{1\baselineskip}}{}{}% + +\subsection{Vektoren, Matrizen etc.}% +\texindex{Vektor}% +\texindex{Matrix}% +\texindex{Tensor}% + +Führen Sie für Vektoren, Matrizen usw. bitte logisches Markup% +\texindex{logisches Markup} durch. +Das bedeutet, dass sie auf keinen Fall die Formatierung bei jedem +Vorkommen, beispielsweise durch +\cs{underline}\macroindex{underline}, festlegen. +Verwenden Sie stattdessen entsprechende Befehle, die mit der Bedeutung +des Zeichens, nicht mit dem Aussehen verknüpft sind. +Für Vektoren ist dies der Befehl \cs{vec}\macroindex{vec}, für +Matrizen \cs{matr}\macroindex{matr}. +Dadurch ist es möglich, eine eventuelle Umformatierung eines +Variablentyps einfach durchzuführen. + +Ob Vektoren und Matrizen durch Fettdruck, Unterstreichen oder Pfeile +gekennzeichnet werden, wird durch die Klassenoptionen \verb|boldvec|, +\verb|ulinevec| bzw.\ \verb|arrowvec| bestimmt (vgl.\ +Tabelle~\ref{tab:klassenoptionen}). + +Definieren Sie für Variablenarten, die in \LaTeX\ nicht definiert +sind, in der Präambel eigene Befehle, die die Formatierung vornehmen. +Beispiel: +\begin{verbatim}[\small] +\newcommand{\komplex}[1]{\ensuremath{\mathfrak{#1}}}% +$\komplex{a} = 3+4i$ +\end{verbatim} +\macroindex{komplex}% +führt auf \newcommand{\komplex}[1]{\ensuremath{\mathfrak{#1}}}% +$\komplex{a} = 3+4i$. + +Für Tensoren höherer Stufe stellt die Dokumentklasse den Befehl +\cs{tens}\macroindex{tens} zur Verfügung, der die +Symbolschreibweise eines Tensors erzeugt +(z.\,B.\ \verb|$\tens{C}{4}$| $\Rightarrow$ +$\tens{C}{4}$).\footnote{Dies hängt von der Version des Pakets + \texttt{hhtensor} ab. + Bei Versionen vor 0.5 hieß der Befehl noch \cs{tensor}.} +Der Befehl \cs{trans} erzeugt ein hochgestelltes, aufrechtes +Transponiert"=Zeichen +(\feinschliff{z.\,B.}{beispielsweise}{z.\,B.}{z.\,B.} +\verb|$\matr{A}\trans$| $\Rightarrow$ $\matr{A}\trans$). + +Für die Spur eines Tensors (englisch \engl{trace}) wird der Befehl +\cs{tr} zur Verfügung gestellt, der $\tr$ schreibt. +Ebenso erzeugt \cs{grad} die Ausgabe $\grad$ für Gradienten. + + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bsSzM" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/tex_textelemente.tex b/Master/texmf-dist/doc/latex/bgteubner/tex_textelemente.tex new file mode 100644 index 00000000000..e740ed4669c --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/tex_textelemente.tex @@ -0,0 +1,544 @@ +% +% bgteubner class bundle +% +% tex_textelemente.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== + +\chapter{Weitere Textelemente}% +\texindex{Textelement}% + +% ------------------------------------------------------------------- +\section{Aufzählungen}% +\texindex{Aufzählung}% + +Für Aufzählungen stehen folgende Umgebungen zur Verfügung: +\begin{itemize*} +\item Nummerierte Aufzählungen: + \begin{itemize*} + \item Eine Aufzählung mit zusätzlichem Zwischenraum vor, zwischen + und nach den Einträgen wird mit der + \verb|enumerate|"=Umgebung\envindex{enumerate} erzeugt. + \item Sollen nur Zwischenräume vor und nach der Aufzählung, nicht + jedoch in ihr eingefügt werden, so wird die + \verb|enumerate*|"=Umgebung\envindex{enumerate*} verwendet. + \item Vollständig ohne Zwischenräume wird eine Aufzählung mit der + \verb|compactenum|"=Umgebung\envindex{compactenum} gesetzt. + \end{itemize*} +\item Unnummerierte Aufzählungen: + \begin{itemize*} + \item Eine Aufzählung mit Zwischenraum vor, zwischen und nach den + Einträgen wird mit der \verb|itemize|"=Umgebung\envindex{itemize} + erzeugt. + \item Sollen nur Zwischenräume vor und nach der Aufzählung, nicht + jedoch in ihr erzeugt werden, so wird die + \verb|itemize*|"=Umgebung\envindex{itemize*} verwendet. + \item Vollständig ohne Zwischenräume wird eine Aufzählung mit der + \verb|compactitem|"=Umgebung\envindex{compactitem} gesetzt. + \end{itemize*} +\end{itemize*} + +Wie auch beispielsweise bei Formeln wird nach der Aufzählung ein +Absatz eingefügt, sofern eine Leerzeile im Quelltext auf die Umgebung +folgt. +Ist dies nicht der Fall, wird kein Absatzeinzug gesetzt. + + +% ------------------------------------------------------------------- +\section{Anmerkungen, Beispiele, Definitionen usw.}% +\label{sec:tex:saetze}% + +\subsection{Anmerkungen}% +\texindex{Anmerkung}% + +Für weiterführende Anmerkungen und Erläuterungen steht die Umgebung +\verb|advanced| zur Verfügung: +\begin{verbatim}[\small] +\begin{advanced} + Durch diese Auszeichnung + wird dem Leser suggeriert, dass dieser Text unter Umständen nicht + ganz so wichtig ist. + Deshalb sollte diese Variante auch nur dann verwendet werden, wenn + der in der Anmerkung enthaltene Text nicht unbedingt für das + Verständnis des Buches notwendig ist. + + Wenn man diese Formatierungsart verwendet, ist es zwingend + notwendig, dass der Leser im Vorwort oder in der Einleitung darauf + hingewiesen wird, dass die so gesetzten Bereiche Ergänzungen bzw.\ + Anmerkungen sind, die für das Verständnis des Buches nicht unbedingt + notwendig sind. +\end{advanced} +\end{verbatim} + + +\subsection{Beispiele, Definitionen und Beweise} + +Die in diesem Abschnitt beschriebenen Umgebungen sind intern als +"`theoremartige Umgebungen"' implementiert, die im folgenden Abschnitt +erläutert werden. +Einige Einstellungen, die sich auf Beispiele, Definitionen und Beweise +beziehen, werden entsprechend dort erläutert. + +Für Beispiele können Sie die \env{example}"=Umgebung verwenden. +Sie besitzt ein optionales Argument, in dem Sie einen Titel vergeben +können. +Beispiel~\ref{bsp:beispiel1} wurde folgendermaßen erzeugt: +\begin{verbatim}[\small] +\begin{example}[Ein Beispielbeispiel] + \label{bsp:beispiel1}% + Ein Beispiel wird links und rechts eingerückt mit der Schriftgröße + 9~Punkt gesetzt. + Wegen der kleinen Schrift wird der (relative) Zeilenabstand etwas + erhöht, um die Lesbarkeit zu gewährleisten. +\end{example} +\end{verbatim} +Wie im Beispiel gezeigt, kann ein Label gesetzt werden, um auf das +Beispiel zu verweisen. + +Ein unnummeriertes Beispiel wird mit der \env{example*}"=Umgebung +gesetzt, z.\,B. +\begin{verbatim}[\small] +\begin{example*}[Noch ein Beispielbeispiel] + Auf ein nicht nummeriertes Beispiel kann natürlich, außer über die + Seitenzahl, nicht im Text verwiesen werden. +\end{example*} +\end{verbatim} +Hier ist ein Label nur sinnvoll, um auf die Seite zu verweisen, da ja +keine Beispielnummer vorhanden ist. + +Soll ein Verzeichnis der Beispiele gedruckt werden, kann durch +Verwendung des Befehls \cs{listofexamples} erreicht werden. + +\bigskip +Definitionen werden in der gleichen Weise gesetzt wie Beispiele. +Für sie werden die Umgebungen \env{definition} und \env{definition*} +angeboten. +Das entsprechende Verzeichnis wird mit dem Befehl +\cs{listofdefinitions} erzeugt. + +Ebenso verhält es sich mit Beweisen, für die die Umgebungen +\env{proof} und \env{proof*} sowie der Befehl \cs{listofproofs} +definiert sind. +Zusätzlich ist der Befehl \cs{qed} definiert, der ein schwarzes +Quadrat rechtsbündig setzt: +\begin{verbatim}[\small] +\begin{proof*}[Ein Beispielbeweis] + Da mir im Moment kein sinnvoller Beweis einfällt, schreibe ich + einfach nur etwas sinnlosen Text und anschließend folgenden Satz: + Diese Aussage ist wahr.\qed +\end{proof*} +\end{verbatim} +Dies führt zu folgendem Ergebnis: +\begin{proof*}[Ein Beispielbeweis] + Da mir im Moment kein sinnvoller Beweis einfällt, schreibe ich + einfach nur etwas sinnlosen Text und anschließend folgenden Satz: + Diese Aussage ist wahr.\qed +\end{proof*} +Sollte in der letzten Zeile nicht genügend Platz vorhanden sein, so +wird das Quadrat rechtsbündig in die nächste Zeile gesetzt. + +Wenn Ihnen das Quadrat nicht gefällt, können Sie es auch ersetzen, +indem Sie den Befehl \cs{qedname} umdefinieren, z.\,B. +\begin{verbatim}[\small] +\renewcommand*\qedname{\textit{q.\,e.\,d.}} +\end{verbatim} + + + +\subsection{Theoremartige Umgebungen}% +\label{sec:tex:theorem}% + +Weitere Umgebungen, die wie Beispiele und Definitionen gesetzt werden, +können vom Autoren selbst definiert werden, indem der Befehl +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\newtheorem|marg[Umgebung|feinschliff[][sname][][]]|marg[Überschrift] +\end{verbatim} +verwendet wird. +Dabei wird die Umgebung \meta{Umgebung\feinschliff{}{sname}{}{}} eingerichtet. +Bei ihrer Verwendung wird ein eingerückter Abschnitt mit der +Überschrift \meta{Überschrift} erzeugt. +Für sie kann auch ein Befehl verwendet werden, der sprachabhängig +geändert wird. +Es werden zwei Umgebungen eingerichtet, eine mit dem Namen +\meta{Umgebung\feinschliff{}{sname}{}{}} und eine mit dem Namen +\env{\meta{Umgebung\feinschliff{}{sname}{}{}}*}. +Beide besitzen ein optionales Argument, dem ein Titel übergeben werden +kann (entsprechend den Umgebungen \env{example} und \env{example*}). + +Das Verzeichnnis für diese Umgebung wird mit dem Befehl +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\listoftheorems|marg[Umgebung|feinschliff[][sname][][]]|marg[Überschrift] +\end{verbatim} +erzeugt, wobei hier die \meta{Überschrift} als Überschrift des +Verzeichnisses gesetzt wird. + +Beispielsweise kann eine Umgebung für Anmerkungen folgendermaßen +eingerichtet werden: +\begin{verbatim}[\small] +\newtheorem{anmerkung}{Anmerkung} +\end{verbatim} +Es werden die Umgebungen \env{anmerkung} und \env{anmerkung*} +eingerichtet. +Das zugehörige Verzeichnis wird mit +\begin{verbatim}[\small] +\listoftheorems{anmerkung}{Verzeichnis der Anmerkungen} +\end{verbatim} +erzeugt. +Diese Art der Definition sorgt dafür, dass Anmerkungen nur in +deutschen Teilen des Buchs verwendet werden können. +Normalerweise sollte dies ausreichen. +Falls Sie jedoch ein mehrsprachiges Buch schreiben, sollten Sie die +Umgebung "`internationalisieren"', wie im Folgenden gezeigt. + +Die Überschriften für Anmerkungen und deren Verzeichnis werden nun +nicht fest kodiert, sondern durch Befehle ersetzt. +Außerdem wird für das Verzeichnis der Anmerkungen der Befehl +\cs{listofanmerkungen} definiert, der die Überschrift sprachabhängig +wählt. +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\newtheorem{anmerkung}{\anmerkungname} +\newcommand*\listofanmerkungen{% + \listoftheorems{anmerkung}{\listanmerkungname}} +\end{verbatim} +Die Überschriftenbefehle \cs{anmerkungname} und \cs{listanmerkungname} +werden mit Hilfe des \cs{addto}"=Befehls aus dem \verb|babel|"=Paket +sprachabhängig geändert. +Die leeren Definitionen sind notwendig, um eine Fehlermeldung bei der +ersten Sprachumschaltung zu vermeiden. +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\newcommand*\anmerkungname{} +\newcommand*\listanmerkungname{} +\addto\captionsngerman{% + \renewcommand*\anmerkungname{Anmerkung}% + \renewcommand*\listanmerkungname{Verzeichnis der Anmerkungen}% +} +\addto\captionsenglish{% + \renewcommand*\anmerkungname{Annotation}% + \renewcommand*\listanmerkungname{List of Annotations}% +} +\end{verbatim} +Sollen weitere Sprachen unterstützt werden, geschieht dies analog zu +den gezeigten. + +\bigskip +Normalerweise wird nach der Nummer einer theoremartigen Umgebung ein +Doppelpunkt gesetzt. +Lokal kann dies durch Verwendung der Umgebung +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\begin{theoremdelimiter}|marg[Umgebung|feinschliff[][sname][][]]|marg[Zeichenfolge] +\end{verbatim} +verändert werden. +Das erste Argument ist der Name der Umgebung, für die die Änderung +gelten soll. +Das beinhaltet auch die vordefinierten Umgebungen \env{example}, +\env{definition} und \env{proof}. +Das zweite Argument wird für den lokal geltenden Anhang verwendet. +So führt beispielsweise +\begin{verbatim}[\small] +\begin{theoremdelimiter}{example}{*:} +\begin{example} + Ein Beispiel mit einer veränderten Überschrift. +\end{example} +\end{theoremdelimiter} +\end{verbatim} +auf folgendes Ergebnis: +\begin{theoremdelimiter}{example}{*:} +\begin{example} + Ein Beispiel mit einer veränderten Überschrift. +\end{example} +\end{theoremdelimiter} + +Wenn Sie den Doppelpunkt dauerhaft durch ein anderes Zeichen ersetzen +möchten, können Sie auch die \env{theoremdelimiter}"=Umgebung +"`vergewaltigen"', indem Sie den Umgebungsanfang als Befehl verwenden, +z.\,B.: +\begin{verbatim}[\small] +\theoremdelimiter{example}{*:} +\end{verbatim} +Das funktioniert, ist allerdings kein besonders guter Programmierstil. + +Die Einrückung theoremartiger Umgebungen kann verändert werden, indem +der Befehl +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\settheoremmargin|marg[Umgebung]|oarg[links]|marg[rechts] +\end{verbatim} +verwendet wird. +Sie stellt die linke Einrückung der \meta{Umgebung} auf die im +optionalen Argument \meta{links} angegebene Länge und die rechte auf +die mit \meta{rechts} angegebene Länge. +Wird das optionale Argument weggelassen, so werden beide Einrückungen +gleich vorgenommen. +Beispiel: +\begin{verbatim}[\small] +\settheoremmargin{example}{0pt}% +\end{verbatim} +setzt Beispiele ohne Einrückung links oder rechts. + + +\subsection{Graue Kästen}% +\label{sec:tex:important}% + +Die grauen Kisten aus Beispiel~\ref{bsp:important} werden mit den +Umgebungen \env{important}, \env{important*}, \env{longimportant} +bzw.\ \env{longimportant*} erzeugt, sofern die Klassenoption +\verb|greybox| gesetzt wurde. +Wurde dies nicht getan, wird der Inhalt der Umgebungen ohne jede +Auszeichnung in einen eigenen Absatz geschrieben. +Das Beispiel wurde mit folgendem Code erzeugt: +\begin{verbatim}[\small] +Wenn man sich ständig Textbeispiele ausdenken muss, gehen einem +irgendwann die Ideen aus. +% +\begin{important} + Das ist nicht besonders angenehm. + \begin{align*} + \sin^2\alpha + \cos^2\alpha &= 1\,. + \quad\text{(eine beliebige Formel)} + \end{align*}% +\end{important} +% +Da dieser Satz inhaltlich dazu gehört, ist er ohne Absatzeinzug +gesetzt. +% +\begin{important*} + \begin{align*} + \sin^2\alpha + \cos^2\alpha &= 1\,. + \quad\text{(eine beliebige Formel)} + \end{align*} + Es muss inhaltlich entschieden werden, ob ein Absatz folgt oder + nicht.% +\end{important*} + +Da dieser Satz nichts mit dem Rest zu tun hat, beginnt mit ihm ein +neuer Absatz. Das ist am Absatzeinzug zu erkennen. +\end{verbatim} +% +Wie im Beispiel zu sehen, muss die \env{important}"=Umgebung verwendet +werden, wenn der Inhalt mit "`normalem"' Text beginnt. +Beginnt er mit einer abgesetzten Formel, theoremartigen Umgebungen +(wie z.\,B.\ \env{example}), einer Aufgabe oder einer Lösung, muss die +\env{important*}"=Umgebung verwendet werden. +Innerhalb der Umgebungen können keine \env{figure}- oder +\env{table}"=Umgebungen definiert werden. +Dies ist auch kein Problem, da sie beispielsweise direkt nach der +Umgebung geschrieben werden können. +Ebenso sind Randnotizen mit \cs{marginpar} nicht möglich. +\feinschliff{}{\enlargethispage{-1\baselineskip}}{}{}% + +Innerhalb der \env{important}"= und der \env{important*}"=Umgebung ist +kein Seitenumbruch möglich. +Da normalerweise auch nur kurze, prägnante Sätze bzw.\ Gleichungen +grau hinterlegt werden, kann diese Einschränkung auch als Vorteil +gesehen werden, da dadurch die zusammen gehörenden Informationen nicht +auseinander gerissen werden können. +Dadurch, dass dennoch relativ lange Textbereiche nicht umbrochen +werden können, kann es zu unschön auseinander gezogenen Seiten kommen. +Wie sie dies wieder "`reparieren"' können, kann in +Abschnitt~\ref{sec:tex_feinschliff} nachgelesen werden. + +Sollte einmal grau hinterlegter Text so lang sein, dass ein +Seitenumbruch unvermeidlich ist, können die Umgebungen +\env{longimportant} und \env{longimportant*} verwendet werden. +Außerdem verbieten sie zusätzlich zu der \env{figure}- und der +\env{table}"=Umgebung sowie dem \cs{marginpar}"=Befehl die Verwendung +des \cs{footnote}"=Befehls.\footnote{Dies ist keine Schikane, sondern + darin begründet, dass das zugrunde liegende Paket \texttt{framed} + dies (noch) nicht unterstützt.} + +% ------------------------------------------------------------------- +\section{Aufgaben und Lösungen}% +\label{sec:tex:aufgaben}% +\texindex{Aufgabe}% +\texindex{Lösung}% + +% ------------------------------------------------------------------- +\subsection{Globale Aufgabensammlung}% +\label{sec:tex_aufgabensammlung_global}% +\texindex{Aufgabensammlung!global}% + +Eine Aufgabe, die entsprechend für eine globale Aufgabensammlung +formatiert wird, wird mit Hilfe der +\env{exercise}"=Umgebung\envindex{exercise} gesetzt: +\begin{verbatim}[\small] +\begin{exercise}{Buch erstellen} + \label{auf:beispiel1}% + Erstellen Sie ein Buch zur Veröffentlichung im Teubner Verlag! + Dabei sind die Autorenrichtlinien, die sie gerade lesen, zu + beachten. +\end{exercise} +\end{verbatim} +Für sie ist ein Titel obligatorisch\footnote{Er kann, sollte jedoch + nicht, leer definiert werden.}. +Innerhalb der Umgebung kann mit \verb|\label| ein Label definiert +werden, der die Nummer der Aufgabe enthält. + +Für unnummerierte Aufgaben steht die +\env{exercise*}"=Umgebung\envindex{exercise*} zur Verfügung: +\begin{verbatim}[\small] +\begin{exercise*}{Stichwortverzeichnis} + Erstellen Sie für Ihr Buch ein Stichwortverzeichnis! + Achten Sie darauf, dass es sinnvoll und nicht zu kurz wird! +\end{exercise*} +\end{verbatim} +Hier ist es natürlich nicht sinnvoll, ein Label zu setzen. +\feinschliff{}{\enlargethispage{-1\baselineskip}}{}{}% + +Nummerierte Lösungen werden mit der +\verb|answer|"=Umgebung\envindex{answer} erzeugt. +Diese hat als obligatorisches Argument den Namen eines in der +zugehörigen Aufgabe definierten Labels. +Vor dem obligatorischen Argument kann (muss jedoch nicht) ein Titel +für die Lösung in eckigen Klammern angegeben werden: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\begin{answer}|oarg[Optionaler Titel]{auf:beispiel1} + Die Lösung zu dieser Aufgabe ist, wie Sie sicherlich schon gemerkt + haben, mit großem Aufwand verbunden. + Bei der Erstellung dieser Autorenrichtlinien merke auch ich dies + aufs Neue. +\end{answer} +\end{verbatim} + +Eine unnummerierte Lösung wird mit der +\verb|answer*|"=Umgebung\envindex{answer*} erzeugt. +Ihr kann optional ein Titel angefügt werden: +\begin{verbatim}[\small] +\begin{answer*}[Stichwortverzeichnis] + Die Lösung der Aufgabe kann ich Ihnen leider nicht abnehmen. +\end{answer*} +\end{verbatim} + +Soll statt des Doppelpunktes etwas anderes nach der Aufgaben- bzw.\ +Lösungsnummer stehen, kann dies durch die Umgebung +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\begin{exercisedelimiter}|marg[Zeichenfolge] +\end{verbatim} +verändert werden. +So führt beispielsweise +\begin{verbatim}[\small] +\begin{exercisedelimiter}{*:} +\begin{exercise}{Mal was anderes} + Eine Aufgabe mit einer veränderten Überschrift. +\end{exercise} +\end{exercisedelimiter} +\end{verbatim} +auf folgendes Ergebnis: +\begin{exercisedelimiter}{*:} +\begin{exercise}{Mal was anderes} + Eine Aufgabe mit einer veränderten Überschrift. +\end{exercise} +\end{exercisedelimiter} +\bigskip + +Wenn Sie den Doppelpunkt dauerhaft durch ein anderes Zeichen ersetzen +möchten, können Sie auch die \env{exercisedelimiter}"=Umgebung +"`vergewaltigen"', indem Sie den Umgebungsanfang als Befehl verwenden, +z.\,B.: +\begin{verbatim}[\small] +\exercisedelimiter{example}{*:} +\end{verbatim} +Das funktioniert, ist allerdings kein besonders guter Programmierstil. + +\bigskip +Es ist möglich, die Aufgaben der globalen Aufgabensammlung in das +Inhaltsverzeichnis des Buches aufzunehmen. +Dazu wird \verb|exercisetotoc|\optindex{exercisetotoc} in die Liste +der optionalen Argumente des \verb|\documentclass|"=Befehls +aufgenommen: +\begin{verbatim}[\small] +\documentclass[english,ngerman,entwurf,exercisetotoc]{bgteubner} +\end{verbatim} +Wenn dies getan wird, ist das resultierende Inhaltsverzeichnis genau +zu kontrollieren, damit das Ergebnis übersichtlich bleibt. +Die Aufgaben sollten dann in einem eigenen Kapitel, das beispielsweise +die Überschrift \emph{Aufgaben} trägt, zusammengefasst werden. + + +% ------------------------------------------------------------------- +\subsection{Aufgaben am Ende jeden Kapitels}% +\texindex{Aufgabensammlung!kapitelweise}% + +Für Aufgabensammlungen am Ende jeden Kapitels gilt das gleiche wie für +globale Aufgaben. +Hier muss den Namen der Umgebungen ein \verb|sub| vorangestellt +werden, wie es die folgenden Beispiele zeigen: +\begin{verbatim}[\small] +\begin{subexercise}{Buch erstellen} + \label{auf:beispiel2}% + Erstellen Sie ein eigenes Buch für den + Teubner Verlag! +\end{subexercise} +\end{verbatim} +\envindex{subexercise}% +% +\begin{verbatim}[\small] +\begin{subexercise*}{Stichwortverzeichnis} + Erstellen Sie für Ihr Buch ein Stichwortverzeichnis! + Achten Sie darauf, dass es sinnvoll wird! +\end{subexercise*} +\end{verbatim} +\envindex{subexercise*}% +% +\begin{verbatim}[\small] +\begin{subanswer*}[Stichwortverzeichnis] + Die Lösung der Aufgabe kann ich Ihnen leider nicht abnehmen. +\end{subanswer*} +\end{verbatim} +\envindex{subanswer*}% +% +\begin{verbatim}[\small] +\begin{subanswer}{auf:beispiel2} + Auch diese Lösung kann ich nicht geben. +\end{subanswer} +\end{verbatim} +\envindex{subanswer}% + +% ------------------------------------------------------------------- +\subsection{Teilaufgaben}% +\texindex{Teilaufgabe}% + +Teilaufgaben werden mit der +\envindex{subtask}\env{subtask}"=Umgebung definiert, +die etwa einer \env{enumerate*}"=Umgebung entspricht. +Im Unterschied zu dieser wird innerhalb einer \env{aufgabe}"~, +\env{loesung}"~, \env{subexercise}"~ \dots\ "~Umgebung auch über +mehrere \env{subtask}"=Umgebungen fortlaufend weitergezählt. + +Beispielaufgabe~\ref{auf:teilaufgaben} auf +Seite~\pageref{auf:teilaufgaben} wurde folgendermaßen erstellt: +\begin{verbatim}[\small] +\begin{subexercise*}{Mal wieder Buch erstellen} + Zur Erstellung eines Buches für den Teubner Verlag sollen folgende + Dinge erledigt werden: + \begin{subtask} + \item Recherchieren Sie gründlich! + \item Schreiben Sie den Text, ohne auf Formatierungen zu achten! + \end{subtask} + Wenn der inhaltliche Teil fertig ist, geht es an die optischen + Dinge: + \begin{subtask} + \item Formatieren Sie den Text! + \item Erstellen Sie die Verzeichnisse (Formelverzeichnis, + Abkürzungsverzeichnis, Literaturverzeichnis, + Stichwortverzeichnis)! + \end{subtask} +\end{subexercise*} +\end{verbatim} + +Ein Schachteln von Teilaufgaben ist nicht möglich. + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bsSzM" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/tex_typographie.tex b/Master/texmf-dist/doc/latex/bgteubner/tex_typographie.tex new file mode 100644 index 00000000000..57f375ce4f4 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/tex_typographie.tex @@ -0,0 +1,473 @@ +% +% bgteubner class bundle +% +% tex_typographie.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\chapter{Typographische Aspekte}% +\texindex{Typographie}% + +% =================================================================== +\section{Zusammengesetzte Abkürzungen}% +\texindex{Abkürzung!zusammengesetzt}% +\texindex{zusammengesetzte Abkürzung} + +Im Deutschen werden zusammengesetzte Abkürzungen mit einem kleinen +Zwischenraum\index{Zwischenraum!klein} (\cs{,})\macroindex{,} gesetzt. +Die Schreibweisen ohne Zwischenraum oder mit ganzem Zwischenraum sind +falsch. +Beispiele: +\begin{verbatim}[\small] +z.\,B., d.\,h. +\end{verbatim} +\par\noindent +führt auf "`z.\,B., d.\,h."' +Auf alle Abkürzungen folgt jedoch ein ganz normaler Zwischenraum, +z.\,B.\ hier. +Damit \LaTeX\ erkennt, dass der Punkt nach der Abkürzung kein +Satzendezeichen ist, kann das folgende Leerzeichen durch \verb*|\ | +maskiert werden: +\begin{verbatim*} +Das kann z.\,B.\ so oder so gemacht werden usw. Der nächste Satz +beginnt. +\end{verbatim*} +Hier soll nach dem "`z.\,B."' kein neuer Satz begonnen werden, daher +folgt auf den Punkt das \verb*|\ |. +Dagegen beginnt nach "`usw."' ein neuer Satz, so dass der Punkt nicht +maskiert wird. + +Endet ein Satz auf eine Abkürzung, so ist der Punkt der Abkürzung +gleichzeitig das Satzendezeichen. +Es werden also nicht zwei Punkte nacheinander gesetzt. + + +% =================================================================== +\section{Akronyme und Abkürzungen in Großbuchstaben}% +\label{sec:tex:acro}% + +Wörter und Abkürzungen, die ganz in Großbuchstaben geschrieben sind, +fallen sehr aus dem Text heraus und wirken zu stark betont. +Um dies zu vermeiden, sollten als Kapitälchen geschrieben werden, +indem der \cs{acro}"=Befehl verwendet wird.\footnote{Bei Verwendung + der Times, Helvetica oder Courier bzw.\ bei serifenlosen Schnitten + oder kursiver Schreibmaschinenschrift der European Computer Modern + wird die Schriftgröße nur etwas gegenüber der Versalgröße + verringert, da bei diesen Schriften bzw.\ Schriftschnitten keine + echten Kapitälchen vorhanden sind.} +Beispiele: +\begin{verbatim}[\small] +\acro{ABAQUS} +\acro{DIN-A\,5} +\end{verbatim} +Dies ergibt \acro{ABAQUS} statt ABAQUS bzw.\ \acro{DIN"~A\,5} statt +DIN"~A\,\newstylenums{5}. + +Dabei wird im \cs{acro}"=Befehl nicht zwischen Groß- und +Kleinbuchstaben unterschieden. +\iftimes{% + Es sind auch \emph{kursive \acro{AKRONYME} möglich.}% +}{% + Durch die Verwendung des \texttt{slantsc}"=Pakets~\cite{slantsc2003a} + sind auch \emph{kursive \acro{AKRONYME} möglich.}% +} + + +% =================================================================== +\section{Datumsangaben}% + +Bei Datumsangaben wird zwischen dem Tag und dem Monat ein kleiner +Zwischenraum (\cs{,}) gesetzt. +Zwischen Monat und Jahr erfolgt ebenfalls ein kleiner Zwischenraum, +sofern das Jahr zweistellig geschrieben ist; ist es vierstellig, wird +ein geschütztes Leerzeichen (\verb|~|) verwenden: +\begin{verbatim}[\small] +16.\,09.\,03, 16.\,09.~2003 +\end{verbatim} +Dies ergibt "`16.\,09.\,03, 16.\,09.~2003"'. + +% =================================================================== +\section{Bindestriche und Gedankenstriche}% +\texindex{Bindestrich}% +\texindex{Gedankenstrich}% + +Bindestriche werden für Silbentrennungen und zusammengesetzte Wörter +verwendet. +Um die Silbentrennung muss sich der Autor nicht kümmern, sie werden +automatisch vom Satzsystem durchgeführt. +Bindestriche stellen kurze Striche dar ("~), sie werden ohne +Zwischenraum zwischen die zusammengesetzten Wörter gesetzt. +Da der einfache Bindestrich auf der Tastatur (\verb|-|) dazu führt, +dass nach seinem Vorkommen nicht mehr getrennt wird, sollten +stattdessen folgende Befehle verwendet werden: +\begin{itemize*} +\item \verb|"=| erzeugt einen Bindestrich, an dem getrennt werden + darf. +\item \verb|"~| erzeugt einen Bindestrich, an dem keine Silbentrennung + erlaubt ist. +\end{itemize*} + +Gedankenstriche sind länger als Bindestriche. +Sie werden mit einem Leerzeichen vor und einem Leerzeichen nach dem +Gedankenstrich~-- der im Quelltext aus zwei Bindestrichen (\verb|--|) +besteht~-- gesetzt. +Die von Kopka verwendeten englischen +Gedankenstriche\texindex{Gedankenstrich!englisch} (\verb|---| +$\Rightarrow$ ---) werden im deutschen Satz \emph{nicht} verwendet. + +% =================================================================== +\section{Ligaturen}% +\texindex{Ligatur}% + +\LaTeX\ zieht selbständig bestimmte Buchstabenkombinationen zu so +genannten \emph{Ligaturen} zusammen (ff, fi, fl, ffi, ffl). +An manchen Stellen (bei Silbenwechseln) sind diese Ligaturen jedoch +unerwünscht, so dass dort die Buchstaben einzeln geschrieben werden +müssen. +Leider besitzt \LaTeX\ keinen automatischen Mechanismus, der dort die +Ligaturen verhindern könnte. +An den entsprechenden Stellen muss die Ligatur daher von Hand +verhindert werden, indem \verb/"|/ eingefügt wird. +Beispielsweise muss es Auf"|lage (\verb/Auf"|lage/) anstatt Auflage +(\verb|Auflage|) heißen. + +Das Programm \verb|rmligs|, das über die \acro{CTAN}"=Server +heruntergeladen werden kann, kann falsche Ligaturen im Quelltext +finden und beheben. + + +% =================================================================== +\section{Silbentrennung}% +\label{sec:tex_silbentrennung}% +\texindex{Silbentrennung}% + +Manchmal passiert es, dass Text über den rechten Blocksatzrand +hinaussteht. +Das liegt daran, dass \LaTeX\ keine zu großen Wortzwischenräume +akzeptiert. +Findet es keine entsprechenden Trennstellen in den Wörtern und müsste +es den Text inakzeptabel weit auseinanderziehen, so lässt das Programm +die Zeile mit dem Problem über den Rand hinausziehen und schreibt eine +Warnung der Form +\begin{verbatim}[\small] +[37] [38] +Overfull \hbox (50.35378pt too wide) in paragraph at lines 660--674 +/ectt1000/\begin{nomathindent}[0.5] /hform1000/re-du-ziert den Ein-zug +auf die Hälf-te und /ectt1000/\begin{nomathindent}[1.0] + [] +\end{verbatim} +in die Log"=Datei. +Es wird angegeben, um welchen Betrag der entsprechende Absatz über den +rechten Satzspiegel hinaussteht. +Außerdem wird die entsprechende Zeile mit ihrem möglichen +Trennpositionen ausgegeben. + +Häufig lässt sich das Problem durch das Einfügen von +Trennhilfen\texindex{Trennhilfe} beheben. +Diese werden am besten durch die Verwendung des Befehls +\begin{verbatim}[\small] +\hyphenation +\end{verbatim} +\macroindex{hyphenation}% +in der Dokumentpräambel gesetzt, z.\,B. +\begin{verbatim}[\small] +\hyphenation{Donau-dampf-schiff-fahrts-kapi-täns-mütze} +\end{verbatim} +In diesem Beispiel wurden ganz bewusst nicht alle erlaubten Trennungen +eingetragen, da manche Trennungen sinnentstellend sein können, +beispielsweise \emph{\mbox{Urin}"=\mbox{stinkt}} statt +\emph{\mbox{Ur}"=\mbox{instinkt}}. + +Eine andere Möglichkeit besteht darin, an der betreffenden Stelle eine +Trennhilfe mit \verb|\-|\macroindex{-} oder \verb|"-| +einzufügen. +Dies hat jedoch den Nachteil, dass diese Hilfe natürlich nur dort +funktioniert, wo sie im Quelltext eingesetzt wurde. + +Helfen diese Maßnahmen nicht, sollten die Autoren den Absatz +(geringfügig) umformulieren. +Dabei kann es unter Umständen sogar helfen, wenn die Änderungen +\emph{nach} dem fraglichen Zeilenumbruch sind. + +Als letzte Möglichkeit, die auf jeden Fall vermieden werden sollte, +kann die strenge Abstandskontrolle zwischen Wörtern für den aktuellen +Absatz ausgeschaltet werden, indem die \verb|sloppypar|"=Umgebung +um den fraglichen Absatz gesetzt wird: +\begin{verbatim}[\small] +\begin{sloppypar} + Hier kommt als Beispiel ein ganz langes Wort, das keine + einzige \mbox{MöglicheTrennstelleHatUndDaher} unschön umbrochen + werden muss. +\end{sloppypar} +\end{verbatim} +Das Ergebnis sieht dann so aus: +\begin{quotation} +\begin{sloppypar} + Hier kommt als Beispiel ein ganz langes Wort, das keine + einzige \mbox{MöglicheTrennstelleHatUndDaher} unschön umbrochen + werden muss. +\end{sloppypar} +\end{quotation} +Mit den Parametern \cs{tolerance} und \cs{emergencystretch} kann das +Verhalten viel genauer eingestellt werden. +Für das normale Verhalten gilt \cs{tolerance=200} und +\cs{emergencystretch=0em}, während für \cs{sloppy} \cs{tolerance=9999} +sowie \cs{emergencystretch=3em} gilt. +Experimentieren Sie zur Not mit beiden Parametern herum. + +% =================================================================== +\section{Setzen des Buches im Entwurfsstadium}% +\texindex{Entwurfsstadium}% + +Während der Erstellung des Buches ist es sinnvoll, zusätzlich zu den +Sprachoptionen, die Option \verb|draft|\optindex{draft} im Aufruf +der Klasse \verb|bgteubner| einzusetzen: +\begin{verbatim}[\small] +\documentclass[english,ngerman,draft]{bgteubner} +\end{verbatim} +Dadurch wird zum einen in der Fußzeile (fast) aller Seiten ein Eintrag +der Form +\begin{quotation} + Übersetzt: 20. November 2001, 14:27 +\end{quotation} +gemacht, der hilft, unterschiedliche Stände der Arbeit unterscheiden +zu können. + +Zum anderen werden Stellen, an denen \LaTeX\ keinen +zufriedenstellenden Zeilenumbruch erzeugen konnte, durch einen +schwarzen Balken markiert. + + +% =================================================================== +\section{Feinschliff}% +\label{sec:tex_feinschliff}% + +Bevor die endgültige Version des Manuskripts dem Verlag als +Druckvorlage übergeben wird, sollte noch etwas Feinschliff betrieben +werden. + +Zunächst sollten alle unschönen Zeilenumbrüche ("`Overfull +hbox"'"=Meldungen) beseitigt werden. +Darauf ist schon in Abschnitt~\ref{sec:tex_silbentrennung} eingegangen +worden. +Kleine Überstände in den Rand (bis ca.~$\numprint[pt]{1}$) können +unter Umständen akzeptiert werden. + +Häufig kommt es auch vor, dass es \LaTeX\ nicht möglich ist, die Seite +zufriedenstellend zu füllen. +Dies kann zum Beispiel dadurch zustande kommen, dass eine Folge von +Abschnittsüberschriften so am Fuß einer Seite stehen müsste, dass sie +über den unteren Satzspiegelrand übersteht. +Da dies im Normalfall nicht zulässig ist, muss \LaTeX\ die +Überschriften auf die nächste Seite ziehen, wodurch die vorherige +Seite nicht vollständig gefüllt ist. +Da der untere Satzspiegelrand bewahrt bleiben soll, muss \LaTeX\ die +einzelnen Absätze auseinanderziehen, was zu einem unschönen Satzbild +wie in Bild~\ref{fig:umbruch1a} gezeigt. +% +\begin{figure} + \centering + \fboxsep0mm% + \subfigure[Unschöner Seitenumbruch durch Abschnittsüberschriften]{% + \fbox{% + \includegraphics[width=0.24\linewidth,page=1]{bilder/seiten/umbruch1}}% + \fbox{% + \includegraphics[width=0.24\linewidth,page=2]{bilder/seiten/umbruch1}}% + \label{fig:umbruch1a}% + }% + \hfill + \subfigure[Verbesserter Seitenumbruch durch temporäre Veränderung + des Satzspiegels]{% + \fbox{% + \includegraphics[width=0.24\linewidth,page=1]{bilder/seiten/umbruch1a}}% + \fbox{% + \includegraphics[width=0.24\linewidth,page=2]{bilder/seiten/umbruch1a}}% + \label{fig:umbruch1b}% + }% + \caption[Verbesserung des Layouts durch manuelle Eingriffe in den + Umbruch]{Verbesserung des Layouts durch manuelle Eingriffe in den + Umbruch. + Zur Verdeutlichung wird der normale Satzspiegel durch den + eingezeichneten Kasten markiert.}% +\end{figure} + +Wenn nun der Satzspiegel auf der Doppelseite jeweils um eine Zeile +vergrößert wird, passen die Abschnittsüberschriften noch auf die erste +Seite, so dass diese wieder vernünftig gefüllt ist. +Es ist wichtig, immer ein Doppelseitenpaar (also eine gerade Seite +gefolgt von einer ungeraden) um das gleiche Maß zu verändern, +um auf einer Doppelseite einen einheitlichen unteren Satzspiegel zu +erhalten. + +Bild~\ref{fig:umbruch2} zeigt einen anderen Fall. +% +\begin{figure} + \centering + \fboxsep0mm% + \subfigure[Unschöner Seitenumbruch durch eine Fußnote]{% + \fbox{% + \includegraphics[width=0.24\linewidth,page=1]{bilder/seiten/umbruch2}}% + \fbox{% + \includegraphics[width=0.24\linewidth,page=2]{bilder/seiten/umbruch2}}% + \label{fig:umbruch2a}% + }% + \hfill + \subfigure[Verbesserter Seitenumbruch durch temporäre Veränderung + des Satzspiegels]{% + \fbox{% + \includegraphics[width=0.24\linewidth,page=1]{bilder/seiten/umbruch2a}}% + \fbox{% + \includegraphics[width=0.24\linewidth,page=2]{bilder/seiten/umbruch2a}}% + \label{fig:umbruch2b}% + }% + \caption[Verbesserung des Layouts durch manuelle Eingriffe in den + Umbruch]{Verbesserung des Layouts durch manuelle Eingriffe in den + Umbruch. + Zur Verdeutlichung wird der normale Satzspiegel durch den + eingezeichneten Kasten markiert.}% + \label{fig:umbruch2}% +\end{figure}% +% +Die Fußnote müsste eigentlich in der letzten Zeile der ersten Seite +ihre Markierung haben. +Dann würde allerdings der Fußnotentext auch auf diese Seite +geschrieben werden, wurdurch die Zeile mit der Fußnotenmarkierung auf +die nächste Seite rutschen würde. +Dadurch rutscht aber auch die Fußnote selbst auf die nächste Seite, +wodurch auf der ersten Seite wieder Platz für die Zeile mit der +Fußnotenmarkierung wäre. +Um diese Zwickmühle zu umgehen, wird diese Zeile auf die nächste Zeile +gezogen und die erste Seite gestreckt. +Hier ist es zweckmäßig, beide Seiten etwas zu verkleinern, um das +Strecken zu verhindern (Bild~\ref{fig:umbruch2b}). + +Häufig ist es gar nicht notwendig, in den Satzspiegel einzugreifen. +Beispielsweise kann es ausreichen, einen Satz geringfügig +umzuformulieren, eine Abkürzung auszuschreiben oder einen Begriff +abzukürzen, um einen Absatz um eine Zeile zu verlängern oder zu +verkürzen und so unschöne Umbrüche zu verhindern. +Auch eine geringfügige Vergrößerung oder Verkleinerung von Abbildungen +kann unschöne Umbrüche vermeiden. + +Unschöne Umbrüche zeigen sich in der Log"=Datei durch Einträge wie dem +folgenden: +\par\noindent +\begin{verbatim}[\small] +Underfull \vbox (badness 10000) has occurred while \output is active [] + + [8] [9] +\end{verbatim} +\par\noindent +Die Zeile sagt, dass eine Seite durch Strecken der Absätze gefüllt +werden musste. +Der Wert \verb|badness| zeigt an, wie "`schlimm"' das +Auseinanderziehen sein musste. +Der hier gezeigte Wert \np{10000} stellt das Maximum ("`unendlich"') +an. +Wenn die \emph{badness} kleine Werte im Bereich bis ca.\ \np{1500} +hat, kann die Seite noch ohne Veränderung akzeptabel sein. +Auf jeden Fall sollten Seiten mit dieser Warnung immer angeschaut +und im Einzelfall entschieden werden, ob eingegriffen werden +muss. +Das Umbruchproblem ist im Normalfall auf der Seite mit der Seitenzahl +entstanden, das der Warnung folgt. +Hier also auf Seite~8. + +Es gibt auch weitere Fälle, die zwar nicht zu einem Auseinanderziehen +von Absätzen führen, aber dennoch verhindert werden sollten. +So kann es zum Beispiel passieren, dass die letzte Zeile eines +Abschnitts einsam auf der Folgeseite steht (sog.\ "`Hurenkind"'), wie +in Bild~\ref{fig:umbruch3} gezeigt. +% +\begin{figure} + \centering + \fboxsep0mm% + \subfigure[Einzelne Zeile auf der Folgeseite]{% + \fbox{% + \includegraphics[width=0.24\linewidth,page=1]{bilder/seiten/umbruch3}}% + \fbox{% + \includegraphics[width=0.24\linewidth,page=2]{bilder/seiten/umbruch3}}% + \label{fig:umbruch3a}% + }% + \hfill + \subfigure[Problem behoben durch vergrößerten Satzspiegel]{% + \fbox{% + \includegraphics[width=0.24\linewidth,page=1]{bilder/seiten/umbruch3a}}% + \fbox{% + \includegraphics[width=0.24\linewidth,page=2]{bilder/seiten/umbruch3a}}% + \label{fig:umbruch3b}% + }% + \caption[Verbesserung des Layouts durch manuelle Eingriffe in den + Umbruch]{Verbesserung des Layouts durch manuelle Eingriffe in den + Umbruch. + Zur Verdeutlichung wird der normale Satzspiegel durch den + eingezeichneten Kasten markiert.}% + \label{fig:umbruch3}% +\end{figure}% +% +Hier kann zum Beispiel wieder eine Vergrößerung des Satzspiegels +helfen. + +Auch Fußnoten selbst können Probleme bereiten. +Unter Umständen kann es dazu kommen, dass Fußnoten über zwei Seiten +umbrochen werden. +Häufig stellt dies kein Problem dar, beispielsweise wenn der erste +Teil der Fußnote auf einer geraden, der zweite Teil auf einer +ungeraden Seite ist und nicht nur wenige Worte umbrochen wurden. +Manchmal sind die Umbrüche jedoch auch sehr ungeschickt, so dass sie +vermieden werden sollten. +Da \LaTeX\ nicht entscheiden kann, wann ein Umbruch in einer Fußnote +akzeptabel ist, wird nur eine Warnung ins Logfile ausgegeben: +\par\noindent +\begin{verbatim}[\small] +Package fnbreak Warning: Footnote 1 has been split over different pages: +(fnbreak) page 8 to page 9. +\end{verbatim} +\par\noindent +Hier sollten die Seiten~8 und 9 angeschaut werden und entschieden +werden, ob die Fußnote verändert werden muss oder nicht. + +Ein Vergrößern bzw.\ Verkleinern des Satzspiegels geschieht durch +Einfügen des Befehls +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\enlargethispage{|meta[Maß]} +\end{verbatim} +auf beide Seiten, die in der Größe verändert werden sollen. +Dabei sollte meist ein Vielfaches des Zeilenabstandes verwendet +werden, also z.\,B. +\begin{verbatim}[\small] +\enlargethispage{-2\baselineskip} +\end{verbatim} +Es sollte aber darauf geachtet werden, dass die Veränderungen gering +bleiben, besonders beim Vergrößern des Satzspiegels. +Dabei stellen \verb|1\baselineskip| und \verb|-2\baselineskip| die +Grenzen dar, die nicht überschritten werden sollten. + +Dieser Feinschliff muss als allerletzte Arbeit erfolgen, nach dem +letzten Korrekturlesen, da auch kleine Änderungen am Dokument große +Änderungen bei diesen Umbruchproblemen bewirken können. +Außerdem müssen die Arbeiten von vorne nach hinten durchgeführt werden +und nach jeder Änderung neu übersetzt werden, da eine Änderung vorne +unweigerlich Änderungen weiter hinten im Dokument nach sich zieht. + +Die Arbeit ist zeitaufwändig und erfordert einiges +Fingerspitzengefühl, um gute Ergebnisse erzielen zu können. +Es kann sinnvoll sein, dass diese Arbeiten von einer Person +durchgeführt werden, die hiermit Erfahrung besitzt. +Sprechen Sie darüber mit dem zuständigen Lektor beim Teubner Verlag. + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/tex_verzeichnisse.tex b/Master/texmf-dist/doc/latex/bgteubner/tex_verzeichnisse.tex new file mode 100644 index 00000000000..783e8cfb439 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/tex_verzeichnisse.tex @@ -0,0 +1,804 @@ +% +% bgteubner class bundle +% +% tex_verzeichnisse.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\chapter{Verzeichnisse}% +\texindex{Verzeichnis}% + +% ------------------------------------------------------------------- +\section{Inhaltsverzeichnis}% +\texindex{Inhaltsverzeichnis}% + +Um das Inhaltsverzeichnis muss sich der Autor nicht kümmern. +Es wird bei Verwendung des Befehls +\verb|\tableofcontents|\macroindex{tableofcontents} automatisch +erzeugt. + +% ------------------------------------------------------------------- +\section{Abbildungsverzeichnis und Tabellenverzeichnis}% +\label{sec:tex:abbildungsverzeichnis}% +\texindex{Abbildungsverzeichnis}% +\texindex{Tabellenverzeichnis}% + +Das Abbildungsverzeichnis wird mit dem Befehl +\cs{listoffigures}\macroindex{listoffigures}, das +Tabellenverzeichnis mit \cs{listoftables}\macroindex{listoftables} +erzeugt. +Sie dürfen, müssen aber nicht, im Anschluss an den Anhang erzeugt +werden. +Wie schon mehrfach gesagt, ist darauf zu achten, dass die einzelnen +Einträge nicht zu lang sind. + +% ------------------------------------------------------------------- +\section{Verzeichnisse der Beispiele, Definitionen, Beweise und der + Aufgaben}% +\label{sec:tex:beispielverzeichnis}% +\texindex{Verzeichnis der Beispiele}% +\texindex{Aufgabenverzeichnis}% + +Die Befehle zum Erzeugen der verschiedenen Verzeichnisse lauten +\macroindex{listofexamples}\cs{listofexamples} für Beispiele, +für Definitionen \macroindex{listofdefinitions}\cs{listofdefinitions}, +für Beweise \macroindex{listofproofs}\cs{listofproofs} +und für Aufgaben \macroindex{listofexercises}\cs{listofexercises}. +Es ist unbedingt zu beachten, dass hier nur Beispiele, Definitionen, +Beweise bzw.\ Aufgaben aufgenommen werden, die einen Titel besitzen. + +Verzeichnisse weiterer theoremartiger Umgebungen werden mit dem Befehl +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\listoftheorems|marg[Typ]|marg[Überschrift] +\end{verbatim} +erzeugt, wie schon in Abschnitt~\ref{sec:tex:theorem} ausführlich +erläutert wurde. + +% ------------------------------------------------------------------- +\section{Stichwortverzeichnis}% +\label{sec:tex_index}% +\texindex{Stichwortverzeichnis}% + +Ein Indexeintrag wird dadurch erzeugt, dass \emph{direkt vor} dem +interessanten Wort der \macroindex{index}% +\feinschliff{\cs{index}"=Befehl}{Befehl \cs{index}}% + {Befehl \cs{index}}{Befehl \cs{index}} +mit dem +Begriff eingefügt wird. +Beispiel: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +Das \index{Stichwortverzeichnis}Stichwortverzeichnis +beinhaltet |ldots +\end{verbatim} +Wenn ein Begriff am Anfang eines Absatzes auftritt, ist es nicht +möglich, den \cs{index}"=Befehl davor zu setzen. +Dann sollte er \emph{direkt danach} geschrieben werden. +Beispiel: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +|ldots Ende des vorherigen Absatzes. + +Stichwortverzeichnisse\index{Stichwortverzeichnis} sind toll. +\end{verbatim} + +Es ist auch möglich, im Stichwortverzeichnis einen Oberbegriff zu +definieren, für den mehrere Unterbegriffe aufgeführt werden +Das wird mit Hilfe des Ausrufungszeichens +(\verb|!|\def\ausruf{!}\srcindex{\protect\ausruf}) gemacht. +Beispiele: +\begin{verbatim}[\small] +\index{Stichwort!beschreibung}\index{Stichwort!eintrag} +\end{verbatim} +\index{Stichwort!beschreibung}\index{Stichwort!eintrag} + +Ein Querverweis wird dadurch erzeugt, dass an den Begriff +\env{|see\marg{Verweis}} angehängt wird, zum Beispiel so: +\begin{verbatim}[\small] +\index{Winkelfunktion!Sinus|see{Sinus}}% +\end{verbatim} +Soll ein Begriff Seitenzahlen und einen Verweis erhalten, muss statt +\env{|see} der +\feinschliff{\cs{seealso}"=Befehl}{Befehl \cs{seealso}}% + {Befehl \cs{seealso}}{Befehl \cs{seealso}} +verwendet werden: +\begin{verbatim}[\small] +\index{Winkelfunktion!Tangens|seealso{Tangens}}% +\end{verbatim} +Soll ein Querverweis auf einen Unterbegriff erstellt werden (wie im +Beispiel auf Seite~\pageref{ind:bsp1}), so wird in das Argument des +\env{|see}"=Befehls zur Erzeugung des Bindestriches der Befehl +\cs{subind} \emph{ohne} führendes Leerzeichen eingefügt: +\begin{verbatim}[\small] +\index{Tangens|seealso{Trignonometrische Funktion\subind Tangens}} +\end{verbatim} + +Soll eine Seitenzahl durch Fettdruck hervorgehoben werden, so wird dem +Begriff \env{|textbf} angehängt: +\begin{verbatim}[\small] +\index{Winkelfunktion|textbf} +\end{verbatim} +Ebenso geht auch ein Kursivstellen: +\begin{verbatim}[\small] +\index{Winkelfunktion|emph} +\end{verbatim} +Grundsätzlich können zur Formatierung der Seitenzahl alle Befehle +verwendet werden, die ein obligatorisches Argument besitzen, dessen +Inhalt anders formatiert wird, +\feinschliff{zum Beispiel}{z.\,B.}{z.\,B.}{z.\,B.} +\cs{textsf}, \cs{textsl}, usw. + +Für die Angabe, dass auf die angegebene Seite eine oder mehrere Seiten +folgen (Anhängen von "`f"' bzw.\ "`ff"') stellt die +\verb|bgteubner|"=Klasse die Befehle \cs{f}, \cs{ff}, \cs{textbff} und +\cs{textbfff} zur Verfügung. +Die mit \cs{textbf} beginnenden Befehle setzen die Zahlen zusätzlich +fett. +Im Index werden sie, wie auch die anderen Formatierungsbefehle mit +\env{|} statt \env{\textbackslash} eingeleitet. + +Sollen Seitenbereiche angegeben werden, kann am Anfang des Bereichs +\env{|(} und am Ende \env{|)} an die Indexbefehle angehängt werdern: +\begin{verbatim}[\small] +\index{Mathematik|(} +... +\index{Mathematik|)} +\end{verbatim} +Eine zusätzliche Formatierung der Seitenzahlen kann beispielsweise +folgendermaßen erreicht werden: +\begin{verbatim}[\small] +\index{Mathematik|textbf(} +... +\index{Mathematik|textbf)} +\end{verbatim} + +Wenn in einem Begriff Sonderzeichen oder Befehle, wie z.\,B.\ +mathematische Symbole oder griechische Buchstaben, vorkommen, kann +\verb|makeindex| die Sortierung nicht korrekt vornehmen, da es nicht +wissen kann, welche Sortierreihenfolge die richtige ist. +Beispielweise würde der Eintrag \verb|\index{$R_{\mathrm{m}}$}| als +"`Symbol"' einsortiert werden, da er mit einem \verb|$| % $ +beginnt. +Die richtige Sortierung kann erreicht werden, indem das Zeichen +\verb|@| in den \cs{index}"=Befehl eingefügt wird. +Der Teil des Arguments vor dem At"=Zeichen wird zur Sortierung +verwendet, der danach in das Stichwortverzeichnis geschrieben. +Das Beispiel wird somit folgendermaßen korrekt unter "`R"' +einsortiert: +\begin{verbatim}[\small] +\index{Rm@$R_{\mathrm{m}}$} +\end{verbatim} + +Wie die Sortierreihenfolge griechischer Buchstaben korrigiert werden +kann, wird in Abschnitt \ref{sec:tex:glossary-automatisch} erläutert. +Die dort gemachten Ausführungen gelten unverändert auch für +Stichwortverzeichnisse. + +Oft sind mehrere Einträge für den gleichen Begriff sinnvoll. +Beispiel: +\begin{verbatim}[\small] +Der \index{Sinus}\index{Winkelfunktion!Sinus|see{Sinus}}% +\index{Trigonometrische Funktion!Sinus|see{Sinus}}Sinus lautet ... +\end{verbatim} +\index{Sinus}\index{Winkelfunktion!Sinus|see{Sinus}}% +\index{Trigonometrische Funktion!Sinus|see{Sinus}}% +Dabei muss aufgepasst werden, dass zwischen den einzelnen +\verb|\index|"=Befehlen keine Leerzeichen stehen, da diese als größere +Lücken im Text übrigbleiben würden. +Muss ein Zeilenumbruch eingefügt werden, so sollte das Zeilenende mit +einem \texttt{\%} auskommentiert werden, wie es in dem Beispiel auch +gemacht wurde. + + +\LaTeX\ kann selbst keinen Index erzeugen. +Dafür muss~-- nachdem sich beim Übersetzen keine Labels mehr ändern~-- +das Programm \verb|makeindex|\srcindex{makeindex} verwendet werden. +Der Aufruf lautet +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +makeindex -c -g -s bgteubner.ist |meta[Dateiname] +\end{verbatim} +Durch die Kommandooption \verb|-s bgteubner.ist| wird das +Stichwortverzeichnis im einheitlichen Format des Teubner Verlags +generiert. +\meta{Dateiname} ist der Dateiname der Hauptdatei ohne die Endung +\verb|.tex|. + +Die in diesem Abschnitt vorgestellten Indexbefehle ergeben einen Index +ähnlich dem Stichwortverzeichnis dieser Richtlinien, +Seite~\pageref{sec:echter-index}. + +% ------------------------------------------------------------------- +\subsection{Doppelte Einträge}% +\label{sec:tex_index_doppelt}% +\index{Stichwortverzeichnis!doppelter Eintrag|textbf}% +\index{Stichwortverzeichnis!doppelter Eintrag}% + +Bei der Erstellung des Index kann es passieren, dass beispielsweise +ein Begriff an einer Stelle eingeführt wurde und entsprechend fett im +Stichwortverzeichnis auftreten soll. +Zum Beispiele +\begin{verbatim}[\small] +\index{Stichwortverzeichnis!doppelter Eintrag|textbf}% +\end{verbatim} +Wenig später tritt dieser Begriff erneut auf, so dass ein normaler +Indexeintrag erstellt werden soll: +\begin{verbatim}[\small] +\index{Stichwortverzeichnis!doppelter Eintrag}% +\end{verbatim} +Wenn nun beide Einträge auf die gleiche Seite rutschen, ist der normal +gedruckte Eintrag im Normalfall überflüssig. +Dies führt dann zu einem Indexeintrag wie dem folgenden: +\begin{quotation} + \bsptheindex + \begin{theindex} + \item Stichwortverzeichnis, \textbf{25}, \emph{51} + \subitem doppelter Eintrag, 52, \textbf{52} + \end{theindex} +\end{quotation} +Für "`doppelter Eintrag"' wird die Seitenzahl 52 zweimal angegeben. +\feinschliff{% + Das Programm \texttt{makeindex} schreibt, da es nicht wissen kann, ob + das gewollt ist, +}{% + Da das Programm \texttt{makeindex} nicht wissen kann, ob das gewollt + ist, schreibt es +}{% + Da das Programm \texttt{makeindex} nicht wissen kann, ob das gewollt + ist, schreibt es +}{% + Da das Programm \texttt{makeindex} nicht wissen kann, ob das gewollt + ist, schreibt es +}% +nur eine Warnung in die Log"=Datei, hier +\texttt{\jobname.ilg}, mit folgendem Inhalt: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +## Warning (input = |jobname.idx, line = 405; + output = |jobname.ind, line = 383): + -- Conflicting entries: multiple encaps for the same page under same key. +\end{verbatim} +Wenn der doppelte Eintrag nicht gewollt ist, sollte einer der beiden +Einträge (im Normalfall wohl der nicht fettgedruckte) an der Stelle +des Aufrufs gelöscht werden. +Dies sollte aber ganz am Ende der Arbeiten getan werden, da der +Eintrag ja wieder notwendig werden könnte, wenn doch noch ein +Seitenumbruch zwischen die beiden Einträge rutschen sollte. + +% ------------------------------------------------------------------- +\section{Verwendete Formelzeichen, Abkürzungsverzeichnis usw.}% +\label{sec:tex:glossary}% +\texindex{Formelverzeichnis}% + +Verzeichnisse wie die der Formelzeichen, Abkürzungen usw.\ werden im +Folgenden kurz als \emph{Glossar} bezeichnet. + +Für Glossare gibt es zwei Möglichkeiten, sie zu erstellen. +Die eine entspricht der der Erstellung eines Stichwortverzeichnisses +(vgl.\ Abschnitt~\ref{sec:tex_index}). +Hierbei werden mittels bestimmter Befehle die Einträge in eine +Hilfsdatei geschrieben, mit \verb|makeindex| sortiert und dann für das +Verzeichnis eingelesen. +Doppelte Einträge werden dabei auf einen reduziert. +Das genaue Vorgehen wird in +Abschnitt~\ref{sec:tex:glossary-automatisch} erläutert. +Beim anderen Ansatz werden die Begriffe direkt in die +Glossar"=Umgebung geschrieben. +Dies wird in Abschnitt~\ref{sec:tex:glossary-manuell} erläutert. +Beide Ansätze führen zum gleichen typographischen Ergebnis. +Welchen Ansatz Sie wählen, bleibt Ihnen überlassen. + + +\subsection{Automatische Erzeugung}% +\label{sec:tex:glossary-automatisch}% + +Sie können unterschiedliche, glossarartige Verzeichnisse einrichten. +Um ein bestimmtes Verzeichnis des Typs \meta{Typ} anzulegen, können +Sie zunächst den Befehl +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\makeglossary|oarg[Typ] +\end{verbatim} +verwenden.\footnote{Am Ende dieses Abschnitts werden einige Beispiele + gezeigt, die die Verwendung vielleicht besser als die allgemeinen + Erklärungen verdeutlichen.} +Wenn Ihre Hauptdatei den Namen \meta{Hauptdatei} hat, wird eine Datei +mit dem Namen \meta{Hauptdatei}\verb|.glo|\meta{Typ} angelegt. +Es ist auch möglich, den \meta{Typ} nicht anzugeben. +Dann wird ein "`normaler"' Glossar angelegt. + +Gleichzeitig wird der Befehl +\cs{glossary\meta{Typ}\marg{Eintrag}\marg{Erklärung}} definiert, mit +dem Sie einen Eintrag in den Glossar vornehmen können. + +Wenn Sie mit \cs{makeglossary} ohne Argument einen normalen Glossar +eingerichtet haben, ist die Überschrift definiert und im Deutschen +automatisch auf "`\glossaryname"' gesetzt. +Für andere Glossartypen gibt es keine Vordefinition. +Sie müssen dann eine Überschrift mit +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\newcommand*\glossary|meta[Typ]name|marg[Überschrift] +\end{verbatim} +definieren. +Wenn Sie für unterschiedliche Sprachen Überschriften definieren +wollen, können Sie dies mit folgendem Befehl tun, der mit +\verb|babel.sty| zusammenarbeitet: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\newcommand*\glossary|meta[Typ]name{} +\addto\captions|meta[Sprache]{\renewcommand*\glossary|meta[Typ]name|marg[Überschrift]} +\end{verbatim} +Die leere Definition vor dem \cs{addto}"=Befehl ist notwendig, damit +der \cs{renewcommand*}"=Befehl beim ersten Sprachwechsel keinen Fehler +erzeugt. + +In der bisher definierten Form wird der Glossar als unnummeriertes +Kapitel mit der Überschrift \meta{Überschrift} gesetzt. +Möchten Sie ein abweichendes Verhalten, z.\,B.\ als Abschnitt oder +mit einleitendem Text, wie es in der Befehlsreferenz auf +Seite~\pageref{sec:befehlsreferenz} der Fall ist, so müssen Sie den +Befehl +\cs{glossary\meta{Typ}preamble} umdefinieren, wie es folgendes +Beispiel zeigt: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\renewcommand\glossary|meta[Typ]preamble{% + \addsec{\glossary|meta[Typ]name}% + Dieser Glossar hat einleitenden Text und wird als Abschnitt + gesetzt.% +} +\end{verbatim} + +Das setzen des Glossars erfolgt durch die Verwendung des Befehls +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\printglossary|meta[Typ]|oarg[Breite] +\end{verbatim} +wobei \meta{Breite} den Platz angibt, der für die Stichworte +reserviert wird. +Sie muss nicht angegeben werden und fällt dann auf einen Standardwert +zurück, der in den meisten Fällen zufriedenstellend sein sollte. + +\bigskip +Da diese Erläuterungen sehr abstrakt waren, folgen jetzt einige +Beispiele. + +Die in diesen Autorenrichtlinien verwendete Befehlsreferenz wurde +folgendermaßen eingerichtet und verwendet. +In der Präambel wird die Verwendung vorbereitet: +\begin{verbatim}[\small] +\makeglossary[cmd] +\newcommand*\glossarycmdname{} +\addto\captionsgerman{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsngerman{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsaustrian{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsnaustrian{\renewcommand*\glossarycmdname{Befehlsreferenz}} +\addto\captionsenglish{\renewcommand*\glossarycmdname{Command reference}} +\renewcommand\glossarycmdpreamble{% + \addchap{\glossarycmdname}% + \label{sec:befehlsreferenz}% + In dieser Befehlsreferenz sind hauptsächlich die Befehle und + Umgebungen aufgeführt, die von der + \texttt{bgteubner}-Klasse zusätzlich zum Standard bzw.\ der Klasse + \texttt{scrbook} aus dem \acro{KOMA}-Script-Paket definiert + werden. + + In Klammern wird jeweils der Abschnitt angegeben, in dem nähere + Erklärungen gefunden werden können. +} +\end{verbatim} +Im Dokument werden dann die Einträge folgendermaßen definiert (hier +nur zwei Beispiele): +\begin{verbatim}[\small] +\glossarycmd{frontmatter@\cs{frontmatter}}{Titelei des Buchs + (\ref{sec:tex:aufbau})}% +\glossarycmd{glossary@\cs{glossary\meta{Name}}}{Definiert einen + Eintrag für einen Glossar des Typs \meta{Name} + (\ref{sec:tex:glossary})}% +\end{verbatim} +Die Stichworte im ersten Argument des \cs{glossarycmd}"=Befehls werden +mit der aus der Erstellung von Stichwortverzeichnissen bekannten +Syntax geschrieben. +Um eine korrekte Sortierung zu erreichen, kann der zur Sortierung +verwendete Teil vor ein \verb|@| geschrieben werden und der gedruckte +Teil danach.\footnote{Der \cs{glossary\meta{Typ}}"=Befehl kann als + Teil des Arguments ein \texttt{@} verarbeiten. + Damit dies möglich ist, muss das At"=Zeichen die für normale Texte + übliche Bedeutung haben. + Für "`normale"' Nutzer stellt dies kein Problem dar. + Sollten Sie jedoch in Ihrem Dokument die Befehle \cs{makeatletter} + und \cs{makeatother} verwenden, kann dies dazu führen, dass der + Befehl \cs{glossary\meta{Typ}} scheitert, sofern er nach + \cs{makeatletter} aufgerufen wurde. + Dabei wird leider keine Fehlermeldung erzeugt, sondern nur ungültige + Glossar"=Einträge, die von \texttt{makeindex} abgewiesen werden. + Schauen Sie sich dazu die Log"=Datei an, die beim + \texttt{makeindex}"=Durchlauf erzeugt wird.} +Der Befehl \cs{cs} schreibt sein Argument in Schreibmaschinenschrift +mit vorangestelltem Backslash. +Im zweiten Argument stehen jeweils die Erklärungen zu den zuvor +definierten Begriffen. + +Gedruckt wird die Befehlsreferenz schließlich mit folgendem Befehl: +\begin{verbatim}[\small] +\printglossarycmd[4.5em] +\end{verbatim} + + +Ein nach Skalaren und Vektoren aufgeteiltes Formelzeichenverzeichnis +kann beispielsweise folgendermaßen angelegt werden (diesmal zur +Vereinfachung ohne mehrsprachige Überschriften): +\begin{verbatim}[\small] +\makeglossary[skalar] +\newcommand*\glossaryskalarname{Skalare} +\renewcommand\glossaryskalarpreamble{\addsec{\glossaryskalarname}} +\makeglossary[vektor] +\newcommand*\glossaryskalarname{Vektoren} +\renewcommand\glossaryvektorpreamble{\addsec{\glossaryvektorname}} +\end{verbatim} +Einträge werden dann folgendermaßen vorgenommen: +\begin{verbatim}[\small] +\glossaryskalar{E@$E$}{Elastizitätsmodul} +\glossaryvektor{u@$\vec{u}$}{Verschiebungsvektor} +\end{verbatim} +Wie in diesem Beispiel zu sehen, müssen Formelzeichen in +\verb|$|\ldots\verb|$| bzw. \cs{(}\ldots\cs{)} geklammert werden. + +Sie sollten die Sortierung mittels der \verb|@|"~Syntax korrekt +halten, da dies gerade bei mathematischen Symbolen sonst gar nicht +gewährleistet ist. +Um griechische Buchstaben von lateinischen Buchstaben getrennt zu +setzen, kann ihnen ein Sonderzeichen vorangestellt werden und diesem +Buchstaben angehängt werden, um untereinander die korrekte Reihenfolge +zu behalten. +Da die Sortierreihenfolge der lateinischen Namen für die griechischen +Buchstaben nicht der Sortierreihenfolge der griechischen Buchstaben +entspricht, muss hier etwas improvisiert werden. +So lautet die richtige Reihenfolge beispielsweise +$\alpha\beta\gamma\delta$, wogegen \verb|makeindex| die Befehle +\cs{alpha}""\cs{beta}""\cs{delta}""\cs{gamma} sortieren würde. +Abhilfe kann folgender "`Workaround"' bieten: +\begin{verbatim}[\small] +\glossaryskalar{\aalpha@$\alpha$}{Ein Alpha} +\glossaryskalar{\bbeta@$\beta$}{Ein Beta} +\glossaryskalar{\cgamma@$\gamma$}{Ein Gamma} +\glossaryskalar{\ddelta@$\delta$}{Ein Delta} +\end{verbatim} +Der vorangestellte Backslash sorgt dafür, dass die griechischen +Zeichen als Symbole einsortiert werden. +Der jeweils eingefügte Buchstabe vor dem Namen des griechischen +Buchstaben sorgt für die richtige Sortierung. +Die Sortierreihenfolge griechischer Zeichen ist in +Abschnitt~\ref{sec:formelzeichen} enthalten. + +Das gesamte Formelzeichenverzeichnis kann dann folgendermaßen gedruckt +werden: +\begin{verbatim}[\small] +\addchap{Formelzeichenverzeichnis} +\printglossaryskalar +\printglossaryvektor +\end{verbatim} + +Wie in Abschnitt~\ref{sec:formelzeichen} schon beschrieben, können +Bücher des Teubner Verlags in den Glossaren Überschriften zur +Gliederung besitzen oder durchgängig formatiert werden. +Wenn Sie den Glossar automatisch erzeugen, wird darüber nicht in der +\LaTeX"=Datei entschieden, sondern beim Aufruf von \verb|makeindex|. + +Einen nicht gegliederten Glossar erzeugt man mit der +Index"=Stil"=Datei \verb|bgteuglo.ist|. +Wenn Ihre Hauptdatei \meta{M} heißt und Sie einen Glossar des +Typs \meta{T} erstellen wollen, lautet der Aufruf dann +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +makeindex -c -g -s bgteuglo.ist -o |meta[M].gls|meta[T] -t |meta[M].glg|meta[T] |meta[M].glo|meta[T] +\end{verbatim} +Die einzelnen Parameter haben folgende Bedeutungen: +\begin{description*} +\item [\texttt{-c}] Lösche eventuelle führende Leerzeichen im + Argument. +\item [\texttt{-g}] Verwende eine deutsche Sortierreihenfolge. +\item [\texttt{-s bgteuglo.ist}] Verwende den spezifizierten Stil für + den Glossar. +\item [\texttt{-o \meta{M}.gls\meta{T}}] Schreibe die Ausgabe in + die angegebene Datei. +\item [\texttt{-t \meta{M}.glg\meta{T}}] Verwende die angegebene + Datei als Log"=Datei. +\item [\texttt{\meta{M}.glo\meta{T}}] Lies die angegebene Datei + ein. +\end{description*} + +Wollen Sie einen Glossar des Typs \verb|cmd| mit der Hauptdatei +\verb|buch| erzeugen, ist der Aufruf entsprechend +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +makeindex -c -g -s bgteuglo.ist -o buch.glscmd -t buch.glgcmd buch.glocmd +\end{verbatim} + +Soll jedem Buchstaben eine Überschrift vorangestellt werden, so +verwenden Sie als Stildatei \verb|bgteuglochar.ist| statt +\verb|bgteuglo.ist|. + + + +\subsection{Manuelle Erzeugung}% +\label{sec:tex:glossary-manuell}% + +Das, was die im vorangegangenen Abschnitt vorgestellten Befehle in +Zusammenarbeit mit +\feinschliff{dem Programm }{}{}{}% +\verb|makeindex| machen, kann der Autor auch +manuell bewerkstelligen. + +Dazu stellt die Klasse \verb|bgteubner| die +Umgebung \env{theglossary}\envindex{theglossary} zur Verfügung, die +intern als Listenumgebung umgesetzt ist. +Ein Glossar wird folgendermaßen erzeugt: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\begin{theglossary}|oarg[Präambel] +\item |oarg[Begriff 1] |meta[Erklärung 1] +\item |oarg[Begriff 2] |meta[Erklärung 2] +|ldots +\end{theglossary} +\end{verbatim} +In der \meta{Präambel} wird die Überschrift sowie einleitender Text +des Glossars definiert. +Wird keine Präambel angegeben, so wird "`Glossar"' als unnummerierte +Kapitelüberschrift verwendet. +Soll eine andere Überschrift verwendet werden, so muss auch der +Gliederungsbefehl angegeben werden, z.\,B. +\begin{verbatim}[\small\makeescape\|] +\begin{theglossary}[\addchap{Formelzeichen}] +|ldots +\end{theglossary} +\end{verbatim} + +Auch wenn die Argumente der \cs{item}"=Befehle in eckigen Klammern +angegeben sind, ist ein Eintrag obligatorisch. +Als Argument wird der zu erklärende Begriff gesetzt, die Erklärung +folgt nach dem Argument. +Sollte im Argument eine eckige Klammer auftreten, so muss der gesamte +Ausdruck mit geschweiften Klammern geklammert werden, da die erste +schließende, eckige Klammer das Argument beendet, z.\,B. +\begin{verbatim}[\small] +\item [{$[a]$}] Einheit der Größe $a$ +\end{verbatim} + +Das folgende Beispiel zeigt das Formelzeichenverzeichnis aus +Abschnitt~\ref{sec:formelzeichen}: +\begin{verbatim}[\small] +\begin{theglossary}[\subsection*{Skalare}]% + \item[$\alpha_{\mathrm{k}}$] Kerbformzahl + \item[$\varepsilon$] technische Dehnung + \item[$\varphi$] wahre Dehnung + \item[$\sigma$] Spannung + \item[$a$] Gitterkonstante + \item[$a$] Risslänge bei Oberflächenrissen und halbe Risslänge bei + inneren Rissen + \item[$c$] Gitterkonstante + \item[$K$] Spannungsintensitätsfaktor + \item[$R_{\mathrm{eH}}$] obere Streckgrenze für Materialien mit + ausgeprägter Streckgrenze + \item[$R_{\mathrm{eL}}$] untere Streckgrenze für Materialien mit + ausgeprägter Streckgrenze + \item[$R_{\mathrm{m}}$] Zugfestigkeit + \item[$R_{\mathrm{p0,2}}$] Dehngrenze für Materialien ohne + ausgeprägte Streckgrenze +\end{theglossary}% +\end{verbatim} + +Wenn Sie die Glossareinträge nach ihren Anfangsbuchstaben gruppieren +wollen, können Sie dies tun, indem Sie +\cs{glossarynewchar\marg{Überschrift}} in die Liste einfügen. +Das eben gezeigte Formelzeichenverzeichnis wird dann entsprechend +folgendermaßen erzeugt: +\begin{verbatim}[\small] +\begin{theglossary}[\subsection*{Skalare}]% + \glossarynewchar{Symbole} + \item[$\alpha_{\mathrm{k}}$] Kerbformzahl + \item[$\varepsilon$] technische Dehnung + \item[$\varphi$] wahre Dehnung + \item[$\sigma$] Spannung + \glossarynewchar{A} + \item[$a$] Gitterkonstante + \item[$a$] Risslänge bei Oberflächenrissen und halbe Risslänge bei + inneren Rissen + \glossarynewchar{C} + \item[$c$] Gitterkonstante + \glossarynewchar{K} + \item[$K$] Spannungsintensitätsfaktor + \glossarynewchar{R} + \item[$R_{\mathrm{eH}}$] obere Streckgrenze für Materialien mit + ausgeprägter Streckgrenze + \item[$R_{\mathrm{eL}}$] untere Streckgrenze für Materialien mit + ausgeprägter Streckgrenze + \item[$R_{\mathrm{m}}$] Zugfestigkeit + \item[$R_{\mathrm{p0,2}}$] Dehngrenze für Materialien ohne + ausgeprägte Streckgrenze +\end{theglossary}% +\end{verbatim} + +% ------------------------------------------------------------------- +\section{Literaturverzeichnis}% +\texindex{Literaturverzeichnis}% + +Um auch das Literaturverzeichnis einheitlich zu formatieren, sollen die +Literaturverzeichnisse mit Hilfe des Programms +\texindex{BibTeX@\BibTeX}\BibTeX\ erstellt +werden. + +Dazu schreibt man eine Datei mit der Dateinamensendung +\verb|.bib|\texindex{bib@\texttt{.bib}"=Datei}, die für alle +Literaturstellen entsprechende Einträge in der +\BibTeX"=Syntax enthält. +Beispiel: +\begin{verbatim}[\small] +@Book{roesler2003a, + author = {Rösler, Joachim and Harders, Harald and Bäker, Martin}, + title = {Mechanisches Verhalten der Werkstoffe}, + publisher = {B.~G. Teubner}, + year = 2003, + address = {Stuttgart}, + edition = {1.}, + language = {ngerman}, + isbn = {3-519-00438-0} +} +\end{verbatim} + +\noindent +Für eine genauere Beschreibung der Einträge sei auf die +weiterführende Literatur \cite{goossens1995a,patashnik1988a} +verwiesen. + +Die Einträge sind gegenüber Standard"=\BibTeX\ um vier Felder +erweitert: +\begin{itemize*} +\item Das Feld \verb|language|\srcindex{language} enthält die Sprache + des Literaturverweises. + Alle Sprachen, die im Literaturverzeichnis vorkommen, müssen auch beim + Aufruf der Dokumentklasse mit übergeben werden (vgl.\ + Abschnitt~\ref{sec:tex:aufbau}). +\item In den Feldern \verb|isbn|\srcindex{isbn} und + \verb|issn|\srcindex{issn} stehen die + \acro{ISBN}\texindex{ISBN@\acro{ISBN}} bzw.\ + \acro{ISSN}\texindex{ISSN@\acro{ISSN}} des Verweises. + Verwenden Sie bitte die vollständigen Schreibweisen mit den + gliedernden Bindestrichen, wie sie auf den Werken abgedruckt sind. +\item Mit dem Feld \verb|url|\texindex{url} können Internetadressen + angegeben werden. + Sie werden mit dem Befehl \cs{url} gesetzt, falls dieser verfügbar + ist. + Falls Sie dieses Feld benutzen, sollten Sie das Paket \verb|url.sty| + laden. +\end{itemize*} + +Die Literaturverweise selbst werden mit Hilfe des Befehls +\verb|\cite|\macroindex{cite} erzeugt. +Beispiel: +\begin{verbatim}[\small] +\cite{goossens1995a,patashnik1988a} +\end{verbatim} + +Das Verzeichnis wird durch die Befehlsfolge +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +\bibliographystyle{bgteupln} +\bibliography{|meta[bib-Datei 1],|meta[bib-Datei 2],|ldots} +\end{verbatim} +\macroindex{bibliographystyle}\macroindex{bibliography}% +erzeugt, wobei \meta{bib-Datei 1}, \meta{bib-Datei 2}, \ldots\ für +eine Liste aller verwendeten \BibTeX"=Dateien mit der Endung +\verb|bib| steht. + +Der Literaturstil \url{bgteupln} schreibt bei mehreren Autoren den +ersten in der Form "`Nachname, Vorname"' und alle weiteren "`Vorname +Nachname"'. +Sollten Sie lieber alle Autoren in der Form "`Nachname, Vorname"' +geschrieben haben, können Sie auch den Literaturstil \url{bgteupln2} +verwenden. +Da diese Form allerdings schlechter zu lesen ist, sollten Sie +\url{bgteupln} bevorzugen. + +Zusätzlich zu den beiden Literaturstilen werden die Literaturstile +\url{bgteuabbr} und \url{bgteuabbr2} angeboten, die wie \url{bgteupln} +und \url{bgteupln2} arbeiten, jedoch Vornamen sowie einige +Schlüsselworte abkürzen. + +Falls Sie darauf bestehen sollten, Namen in Kapitälchen zu setzen, +sollten Sie zum einen den Befehl \cs{person} entsprechend +Abschnitt~\ref{sec:tex:auszeichnungen} umdefinieren. +Außerdem können Sie die Schrift für Personennamen im +Literaturverzeichnis umdefinieren, indem Sie den Befehl +\begin{verbatim}[\small] +\setbibliographyfont{name}{\textsc} +\end{verbatim} +in die Präambel Ihres Dokuments schreiben. +Näheres dazu finden Sie in der Dokumentation zum Paket +\verb|babelbib|~\cite{harders2003a}. + +Bei der Sortierung des Literaturverzeichnisses besteht ein Dilemma, da +es zwei \BibTeX"=Versionen gibt, die jeweils unterschiedliche +Nachteile besitzen. +Das Programm \verb|bibtex| besitzt keine vernünftige Unterstützung für +Zeichen, die über den \acro{US}"=\acro{ASCII}"=Zeichensatz +hinausgehen. +Dadurch werden in der \verb|bib|"=Datei direkt eingegebene Umlaute +nach den "`normalen"' Buchstaben einsortiert (beispielsweise +"`Ähre"' nach "`Zentrum"'). +Abhilfe schafft es, Umlaute in den Feldern der \verb|bib|"=Datei, die +zur Sortierung verwendet werden (meist \verb|author| oder +\verb|editor|) nicht direkt einzugeben, sondern \verb|\"A| usw.\ +beziehungsweise bei deutschen Einträgen auch \verb|"A| usw.\ zu +verwenden. + +Eine andere Möglichkeit ist das Programm \verb|bibtex8|, das zwar +Eingabekodierungen versteht, aber die Suchpfade der \TeX"=Distribution +nicht automatisch verwendet (es fehlt die kpathsea"=Unterstützung). +Daher müssten alle Pfade explizit angegeben werden. + +Welchen Weg Sie gehen wollen, bleibt Ihnen überlassen. +Falls Sie \verb|bibtex8| verwenden wollen, sollten Sie die Datei +\verb|00readme.txt| im Verzeichnis \url{$TEXMF/doc/bibtex8/} +lesen, wobei \verb|$TEXMF| unter Unix häufig \url{/usr/TeX/texmf/} und +unter Windows \url{C:\Programme\TeXLive\texmf} ist. + +\iffalse +Sollten Sie in der \verb|bib|"=Datei Umlaute direkt eingeben, müssen +Sie dem Programm \BibTeX\ explizit angeben, welche Zeichenkodierung +Sie verwenden. +Dies geschieht dadurch, dass Sie beim Programmaufruf von \verb|bibtex| +die Kommandozeilenoption \verb|-c| gefolgt von dem Namen der +zugehörigen Kodierungsdatei angeben: +\begin{verbatim}[\small\makeescape\|\makebgroup\[\makeegroup\]] +bibtex -c |meta[Kodierung] |meta[Hauptdatei] +\end{verbatim} +Leider unterscheiden sich die Namen der Kodierungsdateien von den +Eingabekodierungen des \verb|inputenc|"=Pakets. +Tabelle~\ref{tab:bibtex-kodierungen} fasst die in \TeXLive\,8 +verfügbaren Kodierungen zusammen. +% +\begin{table}% + \centering + \caption{Eingabekodierungen für \BibTeX8}% + \label{tab:bibtex-kodierungen}% + \begin{tabular}{>{\ttfamily}lll} + \toprule + \multicolumn{1}{l}{Datei}& Kodierung& Sortierreihenfolge \\ + \midrule + 88591lat.csf& \acro{ISO}\,8859-1 & normal \\ + 88591sca.csf& \acro{ISO}\,8859-1 & skandinavisch \\ + 88592pl.csf & \acro{ISO}\,8859-2 & polnisch \\ + ascii.csf & \acro{US}~\acro{ASCII} & englisch \\ + cp437lat.csf& \acro{IBM} Codepage 437& normal \\ + cp850lat.csf& \acro{IBM} Codepage 850& normal \\ + cp850sca.csf& \acro{IBM} Codepage 850& skandinavisch \\ + cp852pl.csf & \acro{IBM} Codepage 852& polnisch \\ + cp866rus.csf& \acro{IBM} Codepage 866& russisch \\ + cp1250pl.csf& \acro{IBM} Codepage 1250& polnisch \\ + iso8859-7.csf& \acro{ISO}\,8859-7 & normal \\ + \bottomrule + \end{tabular} +\end{table}% +% +Unter Unix und Windows wird normalerweise die Kodierung +\verb|88591lat.csf| korrekt sein. +Wenn Sie für Umlaute \verb|"a| usw.\ beziehungsweise \verb|\"a| usw.\ +verwenden, ist die Angabe der Kodierung nicht notwendig (aber auch +nicht hinderlich). + +Sie können auch vermeiden, bei jedem \BibTeX"=Aufruf die +Kodierungsdatei anzugeben, wenn Sie die Umgebungsvariable +\verb|BIBTEX_CSFILE| so setzen, dass Sie den verwendete Dateinamen +enthält. +Wie Sie Umgebungsvariablen setzen, unterscheidet sich je nach +Betriebssystem, so dass hier nicht näher darauf eingegangen wird. +\fi + + + +% =================================================================== +% Dateiende + + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/textelemente.tex b/Master/texmf-dist/doc/latex/bgteubner/textelemente.tex new file mode 100644 index 00000000000..0f57587d050 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/textelemente.tex @@ -0,0 +1,393 @@ +% +% bgteubner class bundle +% +% textelemente.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== + +\chapter{Weitere Textelemente}% +\label{sec:textelemente}% +\index{Textelement}% + +In diesem Kapitel werden einige Textelemente, wie z.\,B. Beispiele, +Aufgaben oder Anmerkungen, besprochen. + +% ------------------------------------------------------------------- +\section{Aufzählungen}% +\label{sec:aufzaehlungen}% +\index{Aufzählung} + +Aufzählungen können sowohl nummeriert als auch unnummeriert vorliegen. +Allgemein werden sie eingerückt und können geschachtelt auftreten. +Es sollte jedoch darauf geachtet werden, die Verschachtelungstiefe +nicht zu groß werden zu lassen. + +Je nachdem, wie lang die einzelnen Punkte der Aufzählungen sind, +können die vertikalen Abstände unterschiedlich gewählt werden. +Für sehr lange Einträge bietet es sich an, sowohl am Beginn der Liste +als auch zwischen den einzelnen Punkten einen vertikalen Zwischenraum +einzufügen, wie es das folgende Beispiel zeigt: +\begin{itemize} +\item Hier wird vor dem ersten Eintrag, zwischen den Einträgen und + nach dem letzten Eintrag ein vertikaler Zwischenraum eingefügt. +\item Bei kurzen Einträgen wirkt der Text durch die Zwischenräume + löchrig. +\end{itemize} + +Sind die Einträge kürzer, so bietet es sich an, nur vor und nach der +Aufzählung einen Zwischenraum einzufügen, zwischen diesen aber nur +einen normalen Zeilenabstand: +\begin{itemize*} +\item Vor dem ersten Aufzählungspunkt ist ein Zwischenraum, +\item zwischen den Einträgen nicht, und +\item nach dem letzten Eintrag ist wieder Zwischenraum eingefügt. +\end{itemize*} + +Sind die Einträge sehr kurz und vielleicht in einen Satz eingebettet, +der über die Aufzählung hinausgeht, so sollte weder +\begin{compactitem} +\item vor noch +\item zwischen noch +\item nach +\end{compactitem} +den einzelnen Punkten ein Zwischenraum eingefügt werden. + +Wie bei abgesetzten Formeln ist bei Aufzählungen darauf zu achten, ob +für den folgenden Text ein neuer Absatz begonnen werden soll oder +nicht. +Bei den beiden ersten Aufzählungen in diesem Abschnitt ist dies der +Fall, bei der dritten nicht. + +Das folgende Beispiel zeigt die Kennzeichnung der Punkte in einer +nummerierten Aufzählung: +\begin{compactenum} +\item Die erste Ebene wird mit arabischen Zahlen nummeriert. + \begin{compactenum} + \item In der zweiten Ebene werden Kleinbuchstaben verwendet. + \begin{compactenum} + \item Die dritte Ebene wird mit kleinen römischen Zahlen gekennzeichnet. + \end{compactenum} + \end{compactenum} +\end{compactenum} + +Für eine unnummerierte Aufzählung werden folgende Zeichen verwendet: +\begin{compactitem} +\item Die erste Ebene erhält einen großen Punkt. + \begin{compactitem} + \item Für die zweite Ebene werden Spiegelstriche verwendet. + \begin{compactitem} + \item Die dritte Ebene wird mit Sternen gekennzeichnet. + \end{compactitem} + \end{compactitem} +\end{compactitem} + +% ------------------------------------------------------------------- +\section{Beispiele}% +\label{sec:beispiele}% +\index{Beispiel}% + +Es sind zwei Möglichkeiten zum Setzen von Beispielen vorgesehen: +Entweder werden Beispiele ohne typographische Kennzeichnung im +Fließtext gesetzt. +Dann muss jedoch darauf geachtet werden, dass der Anfang und das Ende +des Beispiels aus dem Text eindeutig ersichtlich sind. +Die zweite Möglichkeit, Beispiele zu kennzeichnen, besteht darin, sie +optisch vom Fließtext abzusetzen. +Dazu wird eine Überschrift gesetzt, die mit dem Wort "`Beispiel"' +beginnt. +Es können optional eine Beispielnummer und ein Titel folgen, +wie im folgenden Beispiel illustriert: +\begin{example}[Ein Beispielbeispiel] + \label{bsp:beispiel1}% + Ein Beispiel wird links und rechts eingerückt. + Im Gegensatz zu alten Versionen der Dokumentklasse werden Beispiele + per Default in normaler Schriftgröße und mit normalem Zeilenabstand + gesetzt. + Dies kann jedoch umgeschaltet werden (vgl.\ + Abschnitt~\ref{sec:tex:aufbau}). +\end{example} +Das folgende Beispiel zeigt, wie Beispiele mit kleiner Schriftgröße +aussehen. +\begingroup + \makeatletter + \def\theoremfont{\small}% + \ifhhcls@times + \def\theoremspacing{1.12}% + \else + \def\theoremspacing{1.06}% + \fi + \makeatother + \begin{example}[Kleine Schrift] + Mit der Schriftgröße 9~Punkt sieht das Beispiel so aus. + Wegen der kleinen Schrift wird der (relative) Zeilenabstand etwas + erhöht, um die Lesbarkeit zu gewährleisten. + \end{example} +\endgroup +Beide Setzarten haben Vor- und Nachteile. +Zum einen suggeriert die kleinere Schrift (unter Umständen ungewollt), +dass der Inhalt der entsprechenden Umgebung unwichtig sei. +Andererseits kann es bei normalgroßer Schrift passieren, dass der +Leser bei langen Beispielen mit Seitenumbruch nicht merkt, dass er +noch innerhalb des Beispiels ist. + +Auf nummerierte Beispiele kann dann eine Referenz gesetzt werden +(vgl.\ Beispiel~\ref{bsp:beispiel1}). + +Ein nicht nummeriertes Beispiel sieht so aus: +\begin{example*}[Noch ein Beispielbeispiel] + Auf ein nicht nummeriertes Beispiel kann natürlich, außer über die + Seitenzahl, nicht im Text verwiesen werden. +\end{example*} + +Die Nummerierung eines Beispiels besteht aus der Kapitelnummer und der +Nummer des Beispiels innerhalb des aktuellen Kapitels. +Im nächsten Kapitel wird die Zählung erneut bei 1 begonnen. + +% ------------------------------------------------------------------- +\section{Sätze, Lemmata, Definitionen usw.}% +\index{Anmerkung}% +\index{Satz}% +\index{Lemma}% + +Außer Beispielen gibt es noch einige weitere Dinge, die durch +abgesetzte Formatierung hervorgehoben werden können. +Dazu zählen Sätze, Lemmata, Definitionen usw. +Sie werden wie Beispiele gesetzt, nur natürlich mit den entsprechenden +Überschriften. +Eine eventuelle Nummerierung erfolgt getrennt nach den einzelnen +Typen. + +Häufig möchte man dem Leser weiterführende Informationen geben, die +nicht unbedingt zum Verständnis des Buches notwendig sind. +Hier kann es zweckmäßig sein, diese in einer kleineren Schrift +($\np[pt]{8}$) zu setzen und links und rechts einzurücken, um sie vom +übrigen Text abzuheben. +\begin{advanced} + Durch diese Auszeichnung + wird dem Leser suggeriert, dass dieser Text unter Umständen nicht + ganz so wichtig ist. + Deshalb sollte diese Variante auch nur dann verwendet werden, wenn + der in der Anmerkung enthaltene Text nicht unbedingt für das + Verständnis des Buches notwendig ist. + + Wenn man diese Formatierungsart verwendet, ist es zwingend + notwendig, dass der Leser im Vorwort oder in der Einleitung darauf + hingewiesen wird, dass die so gesetzten Bereiche Ergänzungen bzw.\ + Anmerkungen sind, die für das Verständnis des Buches nicht unbedingt + notwendig sind. +\end{advanced} + +Wenn man diese Art der Auszeichnung verwendet, muss dringend darauf +geachtet werden, dass sich der Text sowohl dann sinnvoll und flüssig +liest, wenn man die Anmerkung mitliest, als auch dann, wenn man sie +auslässt. + +Manche Autoren möchten besonders wichtige Gleichungen und Textpassagen +durch einen grauen Hintergrund hervorheben. +Auch dies ist möglich. +\begin{example} + \label{bsp:important}% + Wenn man sich ständig Textbeispiele ausdenken muss, gehen einem + irgendwann die Ideen aus. + % + \begin{important} + Das ist nicht besonders angenehm. + \begin{align*} + \sin^2\alpha + \cos^2\alpha &= 1\,.\quad\text{(eine beliebige Formel)} + \end{align*}% + \end{important} + % + Da dieser Satz inhaltlich dazu gehört, ist er ohne Absatzeinzug + gesetzt. + % + \begin{important*} + \begin{align*} + \sin^2\alpha + \cos^2\alpha &= 1\,.\quad\text{(eine beliebige Formel)} + \end{align*} + Es muss inhaltlich entschieden werden, ob ein Absatz folgt oder + nicht.\footnote{Warum hier zwei graue Kästen gezeigt werden, eine + mit Text am Anfang, die andere mit einer abgesetzten Gleichung + am Anfang, wird in Abschnitt~\ref{sec:tex:important} deutlich.} + \end{important*} + + Da dieser Satz nichts mit dem Rest zu tun hat, beginnt mit ihm ein + neuer Absatz. + Das ist am Absatzeinzug zu erkennen. +\end{example} + +Diese grau hinterlegten Boxen sollten kurz gehalten werden, da in +ihnen normalerweise kein Seitenumbruch auftreten soll. + +% ------------------------------------------------------------------- +\section{Aufgaben und Lösungen}% +\label{sec:aufgaben}% +\index{Aufgabe}% +\index{Lösung}% + +Für Lehrbücher ist es sinnvoll, im Buch Aufgaben zu stellen, für die +direkt danach oder an anderer Stelle Lösungen vorhanden sind. +Es ist dabei möglich, eine globale Aufgabensammlung am Ende des Buches zu +erstellen oder Aufgabensammlungen am Ende jeden Kapitels zu erstellen. +Sie sollten sich für eine der beiden Varianten entscheiden. + +% ------------------------------------------------------------------- +\subsection{Globale Aufgabensammlung}% +\label{sec:aufgabensammlung_global}% +\index{Aufgabensammlung!global}% + +Eine globale Aufgabensammlung kann zweckmäßigerweise zwischen dem +Textteil und dem Anhang des Buches gesetzt werden. +Dabei ist es denkbar, einen Teil mit dem Titel "`Übungsteil"' +einzurichten, in dem dann zwei Kapitel enthalten sind, nämlich +"`Aufgaben"' und "`Lösungen"'. +Eine andere Möglichkeit besteht darin, einfach als letztes Kapitel das +Kapitel "`Aufgaben"' zu setzen und dann am Ende des Anhangs das +Kapitel "`Lösungen"'. +Schließlich ist es auch denkbar, nur ein Kapitel "`Aufgaben"' zu +definieren, in dem die Lösungen jeweils direkt auf die entsprechenden +Aufgaben folgen. +Auf jeden Fall sollte am Beginn des Kapitels "`Aufgaben"' darauf +verwiesen werden, an welcher Stelle die Lösungen gefunden werden +können. + +Für eine globale Aufgabensammlung ist es sinnvoll, die Aufgaben +zu nummerieren, wie es in folgendem Beispiel getan wird: +\begin{exercise}{Buch erstellen} + \label{auf:beispiel1}% + Erstellen Sie ein Buch zur Veröffentlichung im Teubner Verlag! + Dabei sind die Autorenrichtlinien, die sie gerade lesen, zu + beachten. +\end{exercise} +\bigskip + +Da diese Art der Formatierung dafür gedacht ist, dass nur Aufgaben und +Lösungen aufeinander folgen und kein normaler Text eingemischt ist +(was an dieser Stelle demnach falsch gemacht wird\footnote{Daher wurde + hier nach der Aufgabe ein Abschnittsabstand manuell eingefügt.}), +ist keine Textauszeichnung durch Einrückungen o.\,ä.\ notwendig. +Die Überschrift der Aufgabe entspricht Abschnittsüberschriften, ein +Titel ist obligatorisch.\footnote{Wer partout keinen Titel haben + möchte, kann ihn auch leer definieren. + Allerdings ist es dann nicht sinnvoll, die Aufgaben ins + Inhaltsverzeichnis aufzunehmen oder ein Verzeichnis der Aufgaben zu + erstellen.} + +Wenn die entsprechende Lösung direkt auf die Aufgabe folgt, kann eine +Nummerierung der Aufgaben auch entfallen, wie im folgenden Beispiel: +\begin{exercise*}{Stichwortverzeichnis} + Erstellen Sie für Ihr Buch ein Stichwortverzeichnis! + Achten Sie darauf, dass es sinnvoll und nicht zu kurz wird! +\end{exercise*} +\bigskip + +Lösungen werden mit einem kleineren Schriftgrad gesetzt, um Platz zu +sparen. +Unnummerierte Lösungen können (wie hier gezeigt), müssen jedoch nicht, +einen Titel erhalten: +\begin{answer*}[Stichwortverzeichnis] + Die Lösung der Aufgabe kann ich Ihnen leider nicht abnehmen. + Lesen Sie aber auf jeden Fall Abschnitt~\ref{sec:tex_index} + aufmerksam durch. +\end{answer*} +\bigskip + +Eine unnummerierte Lösung muss direkt auf die entsprechende Aufgabe +folgen, da sonst eine Zuordnung nicht möglich ist. + +Für nummierierte Lösungen gilt das selbe (hier ohne Titel): +\begin{answer}{auf:beispiel1} + Die Lösung zu dieser Aufgabe ist, wie Sie sicherlich schon gemerkt + haben, mit großem Aufwand verbunden. + Bei der Erstellung dieser Autorenrichtlinien merke auch ich dies + aufs Neue. +\end{answer} +\bigskip + +Bei allen in diesem Abschnitt gezeigten Beispielen besteht das +Problem, dass der Übergang von Aufgabe bzw.\ Lösung zu normalem Text +schwierig zu finden ist. +Aus diesem Grund sind so formatierte Aufgaben auch nur in Aufgaben"= +und Lösungssammlungen zu verwenden, in denen auf eine Aufgabe nur eine +weitere Aufgabe oder eine Lösung folgen kann. + +% ------------------------------------------------------------------- +\subsection{Aufgaben am Ende jeden Kapitels}% +\index{Aufgabensammlung!kapitelweise}% + +Soll am Ende jeden Kapitels eine Aufgabensammlung erstellt werden, so +besteht die Aufgabennummer aus der Kapitelnummer und der +Aufgabennummer. +Die Aufgabensammlung kann in einem eigenen Abschnitt, +beispielsweise "`Aufgaben"', zusammengefasst werden. + +Einige Beispiele: +\begin{subexercise}{Buch erstellen} + \label{auf:beispiel2}% + Erstellen Sie ein Buch zur Veröffentlichung im Teubner Verlag! + Dabei sind die Autorenrichtlinien, die sie gerade lesen, zu + beachten. +\end{subexercise} +\begin{subanswer}{auf:beispiel2} + Die Lösung zu dieser Aufgabe ist, wie Sie sicherlich schon gemerkt + haben, mit großem Aufwand verbunden. + Bei der Erstellung dieser Autorenrichtlinien merke auch ich dies + aufs Neue. +\end{subanswer} +\begin{subexercise*}{Stichwortverzeichnis} + Erstellen Sie für Ihr Buch ein Stichwortverzeichnis! + Achten Sie darauf, dass es sinnvoll und nicht zu kurz wird! +\end{subexercise*} +\begin{subanswer*}[Stichwortverzeichnis] + Die Lösung der Aufgabe kann ich Ihnen leider nicht abnehmen. + Lesen Sie aber auf jeden Fall Abschnitt~\ref{sec:tex_index} + aufmerksam durch. +\end{subanswer*} + + +% ------------------------------------------------------------------- +\subsection{Teilaufgaben}% +\index{Aufgabe!Teil-}% + +Häufig ist es zweckmäßig, innerhalb einer Aufgabe Teilaufgaben zu +definieren. +Diese werden mit Buchstaben, gefolgt von einer Klammer, bezeichnet, +wie im folgenden Beispiel: +\begin{subexercise*}{Mal wieder Buch erstellen} + \label{auf:teilaufgaben}% + Zur Erstellung eines Buches sollen folgende Dinge erledigt werden: + \begin{subtask} + \item Recherchieren Sie gründlich! + \item Schreiben Sie den Text, ohne auf Formatierungen zu achten! + \end{subtask} + Wenn der inhaltliche Teil fertig ist, geht es an die optischen + Dinge: + \begin{subtask} + \item Formatieren Sie den Text! + \item Erstellen Sie die Verzeichnisse (Formelverzeichnis, + Abkürzungsverzeichnis, Literaturverzeichnis, + Stichwortverzeichnis)! + \end{subtask} +\end{subexercise*} + +Wie im Beispiel zu sehen, werden die Teilaufgaben innerhalb einer +Aufgabe fortlaufend nummeriert, auch wenn Text zur Erläuterung +eingefügt ist. +Bei jeder Aufgabe beginnt die Nummerierung bei a). + + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "richtlinien" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/times-ja2.png b/Master/texmf-dist/doc/latex/bgteubner/times-ja2.png Binary files differnew file mode 100644 index 00000000000..06107933610 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/times-ja2.png diff --git a/Master/texmf-dist/doc/latex/bgteubner/times-nein2.png b/Master/texmf-dist/doc/latex/bgteubner/times-nein2.png Binary files differnew file mode 100644 index 00000000000..260c54e33b5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/times-nein2.png diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch1.pdf b/Master/texmf-dist/doc/latex/bgteubner/umbruch1.pdf Binary files differnew file mode 100644 index 00000000000..e74868a7828 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch1.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch1.tex b/Master/texmf-dist/doc/latex/bgteubner/umbruch1.tex new file mode 100644 index 00000000000..667581cb8b1 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch1.tex @@ -0,0 +1,124 @@ +% =================================================================== +\PassOptionsToClass{a5paper}{bgteubner} +\PassOptionsToClass{ulinevec}{bgteubner} +\documentclass[english,ngerman]{bgteubner} +% =================================================================== +% Einstellung des passenden Zeichensatzes +% Für Windows: +%\usepackage[ansinew]{inputenc} +% Für Unix und Linux +\usepackage[latin1]{inputenc} +% =================================================================== +\usepackage{color} +\definecolor{grau}{gray}{0} +% =================================================================== +\providecommand\groesser{} +% =================================================================== +\newcommand\blindtext{% + Dies ist Blindtext. + Er erfüllt einzig den Zweck, die Seite zu füllen. + Ansonsten hat er keinen Sinn.} +% =================================================================== +\newcommand\linie{% + \begingroup + \unitlength1mm% + \thinlines + \begin{picture}(0,0) + \put(0,14.8){{\color{grau}\line(1,0){115}}}% + \put(0,176){{\color{grau}\line(1,0){115}}}% + \put(0,14.8){{\color{grau}\line(0,1){161.2}}}% + \put(115,14.8){{\color{grau}\line(0,1){161.2}}}% + \end{picture}% + \endgroup +}% +% =================================================================== +\lofoot{\linie} +\lefoot{\linie} +% =================================================================== +\begin{document} +% =================================================================== +\setcounter{page}{8}% +\setcounter{chapter}{3}% +\setcounter{section}{4}% +\markleft{\thechapter\enskip Ein Kapitel}% +% =================================================================== +\noindent +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext +\groesser + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\section{Ein neuer Abschnitt} +\subsection{Gefolgt von einem Unterabschnitt} +\subsubsection{Und noch einer Ebene} +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\groesser + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +% =================================================================== +\end{document} +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "richtlinien" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch1a.pdf b/Master/texmf-dist/doc/latex/bgteubner/umbruch1a.pdf Binary files differnew file mode 100644 index 00000000000..291e0921540 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch1a.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch1a.tex b/Master/texmf-dist/doc/latex/bgteubner/umbruch1a.tex new file mode 100644 index 00000000000..5e35ef78d2d --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch1a.tex @@ -0,0 +1,4 @@ +% =================================================================== +\providecommand\groesser{\enlargethispage{1\baselineskip}} +\input{umbruch1} +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch2.pdf b/Master/texmf-dist/doc/latex/bgteubner/umbruch2.pdf Binary files differnew file mode 100644 index 00000000000..7a374108c43 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch2.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch2.tex b/Master/texmf-dist/doc/latex/bgteubner/umbruch2.tex new file mode 100644 index 00000000000..c584f47d114 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch2.tex @@ -0,0 +1,128 @@ +% =================================================================== +\PassOptionsToClass{a5paper}{bgteubner} +\PassOptionsToClass{ulinevec}{bgteubner} +\documentclass[english,ngerman]{bgteubner} +% =================================================================== +% Einstellung des passenden Zeichensatzes +% Für Windows: +%\usepackage[ansinew]{inputenc} +% Für Unix und Linux +\usepackage[latin1]{inputenc} +% =================================================================== +\usepackage{color} +\definecolor{grau}{gray}{0} +% =================================================================== +\providecommand\groesser{} +% =================================================================== +\newcommand\blindtext{% + Dies ist Blindtext. + Er erfüllt einzig den Zweck, die Seite zu füllen. + Ansonsten hat er keinen Sinn.} +\newcommand\fnblindtext{% + Dies ist Fußnoten-Blindtext. + Er erfüllt einzig den Zweck, die Seite zu füllen. + Ansonsten hat er keinen Sinn.} +% =================================================================== +\newcommand\linie{% + \begingroup + \unitlength1mm% + \thinlines + \begin{picture}(0,0) + \put(0,14.8){{\color{grau}\line(1,0){115}}}% + \put(0,176){{\color{grau}\line(1,0){115}}}% + \put(0,14.8){{\color{grau}\line(0,1){161.2}}}% + \put(115,14.8){{\color{grau}\line(0,1){161.2}}}% + \end{picture}% + \endgroup +}% +% =================================================================== +\lofoot{\linie} +\lefoot{\linie} +% =================================================================== +\begin{document} +% =================================================================== +\setcounter{page}{8}% +\setcounter{chapter}{3}% +\setcounter{section}{4}% +\markleft{\thechapter\enskip Ein Kapitel}% +% =================================================================== +\noindent +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext +\groesser + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext +\footnote{\fnblindtext\ + \fnblindtext\ + \fnblindtext\ + \fnblindtext} +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\groesser + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +% =================================================================== +\end{document} +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "richtlinien" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch2a.pdf b/Master/texmf-dist/doc/latex/bgteubner/umbruch2a.pdf Binary files differnew file mode 100644 index 00000000000..0c84b74c264 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch2a.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch2a.tex b/Master/texmf-dist/doc/latex/bgteubner/umbruch2a.tex new file mode 100644 index 00000000000..ee619d55067 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch2a.tex @@ -0,0 +1,4 @@ +% =================================================================== +\providecommand\groesser{\enlargethispage{-1.5\baselineskip}} +\input{umbruch2} +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch3.pdf b/Master/texmf-dist/doc/latex/bgteubner/umbruch3.pdf Binary files differnew file mode 100644 index 00000000000..2bcc2877bd9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch3.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch3.tex b/Master/texmf-dist/doc/latex/bgteubner/umbruch3.tex new file mode 100644 index 00000000000..27e9a50365a --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch3.tex @@ -0,0 +1,131 @@ +% =================================================================== +\PassOptionsToClass{a5paper}{bgteubner} +\PassOptionsToClass{ulinevec}{bgteubner} +\documentclass[english,ngerman]{bgteubner} +% =================================================================== +% Einstellung des passenden Zeichensatzes +% Für Windows: +%\usepackage[ansinew]{inputenc} +% Für Unix und Linux +\usepackage[latin1]{inputenc} +% =================================================================== +\usepackage{color} +\definecolor{grau}{gray}{0} +% =================================================================== +\providecommand\groesser{} +% =================================================================== +\newcommand\blindtext{% + Dies ist Blindtext. + Er erfüllt einzig den Zweck, die Seite zu füllen. + Ansonsten hat er keinen Sinn.} +% =================================================================== +\newcommand\linie{% + \begingroup + \unitlength1mm% + \thinlines + \begin{picture}(0,0) + \put(0,14.8){{\color{grau}\line(1,0){115}}}% + \put(0,176){{\color{grau}\line(1,0){115}}}% + \put(0,14.8){{\color{grau}\line(0,1){161.2}}}% + \put(115,14.8){{\color{grau}\line(0,1){161.2}}}% + \end{picture}% + \endgroup +}% +% =================================================================== +\lofoot{\linie} +\lefoot{\linie} +% =================================================================== +\begin{document} +% =================================================================== +\setcounter{page}{8}% +\setcounter{chapter}{3}% +\setcounter{section}{4}% +\markleft{\thechapter\enskip Ein Kapitel}% +% =================================================================== +\noindent +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext +\groesser + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext + +\section{Ein neuer Abschnitt} +\subsection{Gefolgt von einem Unterabschnitt} +\subsubsection{Und noch einer Ebene} +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\groesser + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ +\blindtext\ + +% =================================================================== +\end{document} +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "richtlinien" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch3a.pdf b/Master/texmf-dist/doc/latex/bgteubner/umbruch3a.pdf Binary files differnew file mode 100644 index 00000000000..bda8251c810 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch3a.pdf diff --git a/Master/texmf-dist/doc/latex/bgteubner/umbruch3a.tex b/Master/texmf-dist/doc/latex/bgteubner/umbruch3a.tex new file mode 100644 index 00000000000..0380678d14e --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/umbruch3a.tex @@ -0,0 +1,4 @@ +% =================================================================== +\providecommand\groesser{\enlargethispage{1\baselineskip}} +\input{umbruch3} +% =================================================================== diff --git a/Master/texmf-dist/doc/latex/bgteubner/usefiles.txt b/Master/texmf-dist/doc/latex/bgteubner/usefiles.txt new file mode 100644 index 00000000000..52fd1a308cd --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/usefiles.txt @@ -0,0 +1,53 @@ +List of needed packages/bundles: + +KOMA-Script 2003/04/22 +amsfonts 2001/10/25 +amsmath 2000/07/18 +amssymb 2002/01/22 +array 1998/05/13 +babel 2001/03/01 +babelbib 2003/07/28 +booktabs 2003/03/28 +calc 1998/07/07 +color 1999/02/16 +fixltx2e 2000/09/24 +fnbreak 2003/04/03 +fontenc 2001/06/05 +framed 2003/07/19 (better 2004/03/07) +ginpenc 2003/09/29 +graphicx 1999/02/16 +hhsubfigure 2003/09/14 +hhtensor 2003/10/09 +ifpdf 2001/06/14 +ifthen 2001/05/26 +longtable 2000/10/22 +makeidx 2000/03/29 +mathcomp 2001/01/07 +psnfss 2003/03/02 +mdwlist 1996/05/02 +multicol 2000/07/10 +numprint 2003/11/09 +onlyamsmath 2001/10/04 +paralist 2002/03/18 +pdfcprot 2002/02/27 +ptmxcomp 2004/03/07 +ragged2e 2003/01/26 +relsize 1999/11/01 +setspace 2000/12/01 +subfloat 2002/12/16 +textcomp 2001/06/05 +warning 2001/08/17 +wasysym 2003/05/31 + + +When using European Computer Modern font (class option "cm"): + +exscale 1997/06/16 +fixmath 2000/04/11 +hfoldsty 2003/10/12 +slantsc 2003/09/17 + + +When using MathTime (class option "mathtime") + +mathtime 1999/03/29 diff --git a/Master/texmf-dist/doc/latex/bgteubner/verzeichnisse.tex b/Master/texmf-dist/doc/latex/bgteubner/verzeichnisse.tex new file mode 100644 index 00000000000..3d5476ba979 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/verzeichnisse.tex @@ -0,0 +1,351 @@ +% +% bgteubner class bundle +% +% verzeichnisse.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\chapter{Verzeichnisse}% +\index{Verzeichnis}% + +Verzeichnisse nehmen im Buch eine gesonderte Stellung ein. +Sie enthalten keine eigentlichen Inhalte. +Stattdessen dienen sie zur Orientierung im Buch. +Da es verschiedene Herangehensweisen beim Konsultieren eines Buches +gibt, sind auch unterschiedliche Verzeichnisse notwendig. + +Die Reihenfolge der einzelnen Verzeichnisse ist nicht exakt +festgelegt (bis auf das Stichwortverzeichnis, das als letztes +Verzeichnis gesetzt werden muss). +Eine mögliche Reihenfolge\index{Verzeichnis!Reihenfolge} ist die +folgende: +Literaturverzeichnis, Formelzeichenverzeichnis, Abkürzungsverzeichnis, +Abbildungsverzeichnis, Tabellenverzeichnis, Verzeichnis der +Beispiele, Aufgabenverzeichnis, Stichwortverzeichnis. + +In den meisten Fällen sind aber einige dieser Verzeichnisse nicht +nötig. +So werden die meisten Leser nach einem Sachverhalt nicht im +Abbildungs"~, Tabellen"~, Aufgaben"~ oder Beispielverzeichnis suchen, +sondern das Stichwortverzeichnis konsultieren, in dem der im Bild +o.\,ä.\ verwendete Begriff aufgeführt sein sollte. +Ein Formelzeichenverzeichnis beispielsweise sollte aber vorhanden +sein. + +% ------------------------------------------------------------------- +\section{Inhaltsverzeichnis}% +\index{Inhaltsverzeichnis|textbf}% + +Das Aussehen des Inhaltsverzeichnisses kann am einfachsten anhand des +Inhaltsverzeichnisses dieser Anleitung studiert werden. + +Einige Hinweise seien jedoch hier gegeben: +Teil"= und Kapitelüberschriften werden in unterschiedlichen +Schriftgraden fett gesetzt, dazu rechtsbündig fett die entsprechende +Seitenzahl. +Abschnitte sowie Unterabschnitte werden normal gesetzt. +Bei ihnen wird zusätzlich eine Punktreihe bis zur Seitenzahl gesetzt. + +Im Inhaltsverzeichnis sind auch die weiteren +Verzeichnisse wie Formel"~, Abkürzungs"~, +\feinschliff{Literatur"=,}{Literatur"~,}{Literatur"~,}{Literatur"~,} +Abbildungs"~, +Tabellen"~, sowie Stichwortverzeichnis eingetragen, sofern vorhanden. + +Da das Inhaltsverzeichnis automatisch erzeugt wird, wird auf weitere +Einzelheiten verzichtet. + +% ------------------------------------------------------------------- +\section{Literaturverzeichnis}% +\index{Literaturverzeichnis|textbf}% + +Im Literaturverzeichnis werden alle Literaturstellen, auf die im Buch +verwiesen wird, aufgeführt. +Es wird eine numerische Bezeichnung der Literaturstellen, jeweils in +eckigen Klammern, verwendet. +Titel werden kursiv gesetzt, alles andere normal aufrecht. +Kapitälchen werden normalerweise nicht verwendet. +Es wird Flattersatz eingesetzt, da ansonsten ein sehr unruhiges +Satzbild entstehen würde. +Da das Literaturverzeichnis automatisch erstellt wird, wird an dieser +Stelle auf eine genauere Beschreibung verzichtet. + + +% ------------------------------------------------------------------- +\section{Abbildungsverzeichnis und Tabellenverzeichnis}% +\index{Abbildungsverzeichnis|textbf}% +\index{Tabellenverzeichnis|textbf}% + +Das Abbildungsverzeichnis und das Tabellenverzeichnis werden als +unnummerierte Kapitel gesetzt, die im Anschluss an den Anhang +eingefügt werden können. + +Im Abbildungsverzeichnis werden alle im Buch vorhandenen Bilder +aufgelistet. +Für jedes Bild wird die Bildnummer, die Bildunterschrift und die +Seitenzahl eingetragen. +Da die Bildunterschriften mitunter recht lang werden können, sollte +dann im Verzeichnis nur eine Kurzform der Bildunterschrift verwendet +werden. +Für das Tabellenverzeichnis gilt dasselbe wie für das +Abbildungsverzeichnis. + +Ob ein Abbildungsverzeichnis und ein Tabellenverzeichnis überhaupt +erstellt werden soll, bleibt dem Autoren freigestellt. +Es müssen aber entweder beide oder keines der beiden Verzeichnisse +gedruckt werden. +Das Abbildungsverzeichnis muss direkt vor dem Tabellenverzeichnis +stehen und am Ende des Anhangs gesetzt werden. + +Um Platz zu sparen, werden diese Verzeichnisse in einer +9~Punkt~Schrift gesetzt. + +% ------------------------------------------------------------------- +\section{Verzeichnisse der Beispiele und der Aufgaben usw.}% +\index{Verzeichnis der Beispiele|textbf}% +\index{Aufgabenverzeichnis|textbf}% + +Diese Verzeichnisse werden wie das Abbildungsverzeichnis gesetzt. +Sie enthalten die in den Abschnitten~\ref{sec:beispiele} und +\ref{sec:aufgaben} eingeführten Beispiele, Aufgaben oder andere +entsprechend gesetzte Umgebungen. +Auch diese Verzeichnisse sind optional. + +Wird eine zentrale Aufgabensammlung für das Buch verwendet, können die +Aufgaben auch ins Inhaltsverzeichnis statt in ein gesondertes +Aufgabenverzeichnis aufgenommen werden. + +% ------------------------------------------------------------------- +\section{Verwendete Formelzeichen}% +\label{sec:formelzeichen}% +\index{Formelzeichenverzeichnis|textbf}% + +Im Formelzeichenverzeichnis werden tabellarisch alle wichtigen Formelzeichen +und Indizierungen des Buches aufgeführt und kurz erklärt oder benannt. +Dabei bleibt es dem Autoren freigestellt, ob er alle Formelzeichen +in eine gemeinsame Liste setzt, oder ob er einzelne, nach Themen +getrennte Listen (z.\,B.\ Skalare, Vektoren, Matrizen, \dots) +erstellt. + +Ein Formelverzeichnis kann etwa so aussehen: +\begin{theglossary}[\subsection*{Skalare}]% + % + \item[$\alpha_{\mathrm{k}}$] Kerbformzahl + % + \item[$\varepsilon$] technische Dehnung + % + \item[$\varphi$] wahre Dehnung + % + \item[$\sigma$] Spannung + % + \item[$a$] Gitterkonstante + \item[$a$] Risslänge bei Oberflächenrissen und halbe Risslänge bei inneren + Rissen + % + \item[$c$] Gitterkonstante + % + \item[$K$] Spannungsintensitätsfaktor + % + \item[$R_{\mathrm{eH}}$] obere Streckgrenze für Materialien mit ausgeprägter + Streckgrenze + \item[$R_{\mathrm{eL}}$] untere Streckgrenze für Materialien mit + ausgeprägter Streckgrenze + \item[$R_{\mathrm{m}}$] Zugfestigkeit + \item[$R_{\mathrm{p0,2}}$] Dehngrenze für Materialien ohne ausgeprägte + Streckgrenze + % +\end{theglossary}% + +Es ist auch möglich, Buchstaben zur Gliederung einzufügen: +\begin{theglossary}[\subsection*{Skalare}]% + \glossarynewchar{Symbole} + \item[$\alpha_{\mathrm{k}}$] Kerbformzahl + \item[$\varepsilon$] technische Dehnung + \item[$\varphi$] wahre Dehnung + \item[$\sigma$] Spannung + \glossarynewchar{A} + \item[$a$] Gitterkonstante + \item[$a$] Risslänge bei Oberflächenrissen und halbe Risslänge bei + inneren Rissen + \glossarynewchar{C} + \item[$c$] Gitterkonstante + \glossarynewchar{K} + \item[$K$] Spannungsintensitätsfaktor + \glossarynewchar{R} + \item[$R_{\mathrm{eH}}$] obere Streckgrenze für Materialien mit + ausgeprägter Streckgrenze + \item[$R_{\mathrm{eL}}$] untere Streckgrenze für Materialien mit + ausgeprägter Streckgrenze + \item[$R_{\mathrm{m}}$] Zugfestigkeit + \item[$R_{\mathrm{p0,2}}$] Dehngrenze für Materialien ohne + ausgeprägte Streckgrenze +\end{theglossary}% + +Im Formelverzeichnis sollen die Einträge alphabetisch sortiert +sein. +Die Symbole, die sich nicht in das lateinische Alphabet einsortieren +lassen (z.\,B. griechische Zeichen), stehen davor und sind~-- soweit +möglich~-- untereinander sortiert. + +Das griechische Alphabet wird folgendermaßen sortiert: +$A\alpha$, $B\beta$, $\Gamma\gamma$, $\Delta\delta$, +\makeatletter +$E\varepsilon\iftimes{\ifhhcls@mathtime\epsilon\fi}{\epsilon}$, +\makeatother +$Z\zeta$, $H\eta$, +$\Theta\vartheta\theta$, $I\iota$, $K\kappa$, $\Lambda\lambda$, +$M\mu$, $N\nu$, $\Xi\xi$, $Oo$, $\Pi\pi$, +\makeatletter +$P\varrho\iftimes{\ifhhcls@mathtime\rho\fi}{\rho}$, +\makeatother +$\Sigma\sigma$, $T\tau$, $Y\upsilon$, $\Phi\varphi\phi$, $X\chi$, +$\Psi\psi$, $\Omega\omega$. + +Ob nur ein Verzeichnis als unnummeriertes Kapitel erstellt wird, das +alle Formelzeichen enthält, oder ob ein unnummeriertes Kapitel +verwendet wird, in dem unterschiedliches Verzeichnisse als +unnummerierte Abschnitte eingefügt werden, die beispielsweise nach +\emph{Skalaren}, \emph{Vektoren}, \emph{Tensoren} und \emph{Indizes + und Operatoren} aufgeteilt sind, bleibt dem Autoren überlassen. +Die Formelzeichenverzeichnisse werden in einer 8"=Punkt"=Schrift +gesetzt, um Platz zu sparen. +Da hier keine längeren Passagen gelesen werden, ist eine so kleine +Schriftart ausreichend groß. + +% ------------------------------------------------------------------- +\section{Abkürzungsverzeichnis bzw.\ Glossar}% +\label{sec:abkuerzungsverzeichnis}% +\index{Abkürzungsverzeichnis|textbf}% +\index{Glossar|see{Abkürzungsverzeichnis}}% + +Abkürzungsverzeichnisse und Glossare werden wie +Formelzeichenverzeichnisse gesetzt. +Ein Beispiel: +\begin{theglossary}[\subsection*{Abkürzungsverzeichnis}] + % + \item[\acro{GEH}] Gestaltänderungsenergiehypothese + % + \item[hdp] hexagonal dichtest gepackt + % + \item[kfz] kubisch flächenzentriert + \item[krz] kubisch raumzentriert + % + \item[\acro{SH}] Schubspannungshypothese + % +\end{theglossary}% + + +% ------------------------------------------------------------------- +\section{Stichwortverzeichnis}% +\index{Stichwortverzeichnis|textbf}% + +Das Stichwortverzeichnis wird zweispaltig in einer +8"~Punkt"=Schrift gesetzt. +Die Seitenzahlen, auf denen der jeweilige Begriff auftaucht, werden +durch ein Komma getrennt direkt an den Begriff angehängt. +Das genaue Aussehen des Stichwortverzeichnisses kann am besten anhand +des Verzeichnisses am Ende dieser Anleitung studiert werden. + +Einige wichtige Dinge beim Aufbau des Verzeichnisses sollen dennoch +hier beschrieben werden: +Es sollen nicht alle Stellen, an denen ein Begriff im Buch vorkommt, +in das Stichwortverzeichnis aufgenommen werden, sondern nur +diejenigen, an denen der Begriff eingeführt oder maßgeblich verwendet +wird. +Auch wenn der Begriff selbst nur in einer Kapitel"= oder +Abschnittsüberschrift vorkommt, soll er im Stichwortverzeichnis +vorkommen, sofern er dort wichtig ist.\footnote{Mir ist einmal ein Buch + untergekommen, in dem der Begriff \emph{Schweißen} im + Stichwortverzeichnis zwar vorkam, aber nur auf eine Seite verwies, + auf der der Begriff zwar stand, aber fast nichts über Schweißen + geschrieben wurde. + Die Seitenzahl des Kapitels über Schweißen war dafür aber nicht im + Stichwortverzeichnis enthalten. + So etwas darf nicht vorkommen.} +Die Seitenzahl für einen besonders wichtigen Eintrag kann fett +gedruckt werden, z.\,B. +\begin{quotation} + \bsptheindex + \begin{theindex} + \item Stichwortverzeichnis, \textbf{27}, 34, 35 + \end{theindex} +\end{quotation} + +Existieren für einen Begriff auch andere Beschreibungen, so sollen +alle möglichen Wörter, unter denen man diesen Begriff suchen könnte, +im Stichwortverzeichnis aufgeführt werden. +Es kann dann ein Verweis auf denjenigen Begriff gesetzt werden, der im +Dokument verwendet wird, z.\,B. +\begin{quotation} + \bsptheindex + \begin{theindex} + \item Cosinus, \see{Trigonometrische Funktion}{15} + + \indexspace + \item Sinus, \see{Trigonometrische Funktion}{15} + + \indexspace + \item Tangens, \see{Trigonometrische Funktion}{15} + \item Trigonometrische Funktion, 15 + + \indexspace + \item Winkelfunktion, 23, \seealso{Trigonometrische Funktion}{15} + \end{theindex} +\end{quotation} +Seien Sie hier nicht zu sparsam. Es ist nichts ärgerlicher, als einen +Begriff im Stichwortverzeichnis nicht zu finden, nur weil man einen +etwas anderen Begriff als der Autor des Buches verwendet! +Meine eigene Erfahrung ist es, dass man in den meisten Fällen über das +Stichwortverzeichnis nach Inhalten in einem Buch sucht. +Daher ist es besonders wichtig, dass ein Buch ein gutes +Stichwortverzeichnis enthält. + +Häufig kommt es vor, dass zu einem Überbegriff einige Unterbegriffe +existieren. +Diese Tatsache sollte auch beim Setzen des Stichwortverzeichnisses +berücksichtigt werden, beispielsweise so: +\begin{quotation} + \bsptheindex + \begin{theindex} + \item Cosinus, 15 + \subitem Hyperbolicus, 15 + + \indexspace + \item Sinus, 15 + + \indexspace + \item Tangens, 16, \seealso{Trignonometrische Funktion\subind + Tangens}{16}\label{ind:bsp1} + \item Trigonometrische Funktion, 15, 16 + \subitem Cosinus, 15 + \subsubitem Hyperbolicus, 15 + \subitem Sinus, 15 + \subitem Tangens, 16 + \end{theindex} +\end{quotation} +Wie im Beispiel zu erkennen, gibt es zwei Stufen für Unterbegriffe. +Dennoch sollten die Unterbegriffe häufig zusätzlich in der Hauptebene +aufgenommen werden. + +Soll ein Verweis auf einen Unterbegriff vorgenommen werden, so wird +dieser wie im Beispiel bei "`\seealso{Trignonometrische + Funktion\subind Tangens}{16}"' mit einem Gedankenstrich vom +Hauptbegriff getrennt. + +% =================================================================== +% Dateiende + + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/doc/latex/bgteubner/vorwort.tex b/Master/texmf-dist/doc/latex/bgteubner/vorwort.tex new file mode 100644 index 00000000000..dc03104c207 --- /dev/null +++ b/Master/texmf-dist/doc/latex/bgteubner/vorwort.tex @@ -0,0 +1,93 @@ +% +% bgteubner class bundle +% +% vorwort.tex +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +% =================================================================== +\preface{Vorwort zu Version~1.21}% + +Als ich gemeinsam mit Prof.\ Joachim Rösler und Dr.\ Martin Bäker das +im Teubner Verlag erschienene Buch "`Mechanisches Verhalten der +Werkstoffe"' \cite{roesler2003a} geschrieben habe, war mir keine +Dokumentklasse für \LaTeX\ zu Erstellung von Büchern für den Teubner +Verlag bekannt. +Auch die Autorenrichtlinien kannte ich nicht. +Daher habe ich selbst ein Layout entwickelt, mit dem ich das +Manuskript Herrn Dr.\ Feuchte von Teubner Verlag zur Ansicht +übergeben habe. + +Obwohl es Autorenrichtlinien und eine Dokumentklasse für den Teubner +Verlag gab, bat Herr Dr.\ Feuchte nur um geringfügige Änderungen wie +z.\,B.\ die Anpassung an den festgelegten Satzspiegel. + +Als ich Herrn Dr.\ Feuchte das endgültige Manuskript übergab, bot ich +ihm an, eine Dokumentklasse für den Teubner Verlag basierend auf dem +Layout unseres Buches zu entwickeln. +Das Lektorat des Teubner Verlags hat daraufhin einige weitere +Veränderungen gegenüber meinem Layout beschlossen (z.\,B.\ Verwendung +der Times als Brotschrift sowie Kolumnentitel außen) und mir den +Auftrag erteilt, eine Dokumentklasse zu entwickeln. + +Die hier vorliegenden Autorenrichtlinien beschreiben zum einen das +Layout, das der Dokumentklasse zugrunde liegt, zum anderen, wie +Autoren die Dokumentklasse verwenden können. + +Dieses Dokument ist zwar sehr lang, arbeiten Sie aber wenigstens den +zweiten Teil ("`Durchführung mit \LaTeX"') ab +Seite~\pageref{part:latex} durch und beachten Sie die Checkliste ab +Seite~\pageref{sec:checkliste}. +Dadurch können Sie viele Probleme vermeiden, die dann entstehen, +wenn Sie Ihre normale Vorlage mit wenigen Änderungen übernehmen. + +Bei diesen Autorenrichtlinien ist genau das aufgetreten, was +eigentlich nie passieren darf: +Das Stichwortverzeichnis ist bei weitem nicht ausführlich genug. +Mir war an dieser Stelle wichtiger, dass alle Dinge korrekt erklärt +sind und die Dokumentklasse möglichst fehlerfrei ist, als dass der +letzte Feinschliff an diesen Autorenrichtlinien durchgeführt wurde. +Durch die laufenden Erweiterungen kann es an einigen Stellen +vorkommen, dass Übergänge etwas holprig klingen. +Wenn es dadurch schwer verständliche Dinge geben sollte, bitte ich +Sie, mir bescheid zu sagen (\url{h.harders@tu-bs.de}). + +An dieser Stelle möchte ich Herrn Dr.\ Feuchte danken, zum einen, dass +er mein Angebot angenommen hat, zum anderen für die sehr gute +Zusammenarbeit. + +\signature{Braunschweig}{im März 2004}{Harald Harders} + + +% =================================================================== +\preface{Vorwort zu Version~2.02}% + +Im Laufe der Zeit sind durch die Benutzung der Klasse durch die +Autoren immer wieder kleine Mängel zu Tage getreten, und es haben sich +Verbesserungsmöglichkeiten ergeben. + +Ich bitte zu entschuldigen, wenn sich dadurch hin und wieder Umbrüche +ändern. +Sofern Sie nicht ein Problem haben, sollten Sie in der Endphase eines +Projekts lieber bei der laufenden Version bleiben. + +Außerdem wurde die mehrmalige Umbenennung des Verlags über +Vieweg+Teubner in Springer Vieweg berücksichtigt. + +\signature{Mülheim an der Ruhr}{im April 2012}{Harald Harders} + +% =================================================================== + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: bgteubner.tex +%%% TeX-master: "bgteubner" +%%% End: diff --git a/Master/texmf-dist/makeindex/bgteubner/bgteubner.ist b/Master/texmf-dist/makeindex/bgteubner/bgteubner.ist new file mode 100644 index 00000000000..9a12ce2404c --- /dev/null +++ b/Master/texmf-dist/makeindex/bgteubner/bgteubner.ist @@ -0,0 +1,36 @@ +%% +%% This is file `bgteubner.ist', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `idxstyle') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% This Makeindex style file is intended to be used with the bgteubner +%% document class. It may or may not work together with other document +%% classes. +%% +%% harald.harders@gmx.de +%% +quote '>' +preamble "\\begin{theindex}\n\\hhclsiscorrectindextrue\n" +postamble "\n\n\\end{theindex}\n" +heading_prefix "\\textbf{" +heading_suffix "}\\nopagebreak\n" +symhead_positive "Symbole" +numhead_positive "Zahlen" +headings_flag 1 diff --git a/Master/texmf-dist/makeindex/bgteubner/bgteuglo.ist b/Master/texmf-dist/makeindex/bgteubner/bgteuglo.ist new file mode 100644 index 00000000000..31cc283ac4e --- /dev/null +++ b/Master/texmf-dist/makeindex/bgteubner/bgteuglo.ist @@ -0,0 +1,39 @@ +%% +%% This is file `bgteuglo.ist', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `glostyle1') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% This Makeindex style file is intended to be used with the bgteubner +%% document class. It may or may not work together with other document +%% classes. +%% +%% harald.harders@gmx.de +%% +quote '>' +keyword "\\glossaryentry" +preamble "\\begin{theglossary}\n\\hhclsiscorrectglossarytrue\n" +postamble "\n\n\\end{theglossary}\n" +group_skip "\n" +delim_0 "" +delim_1 "" +delim_2 "" +delim_n "\\glossarypagedelim" +delim_r "\\glossarypagerange" +item_0 "\n \\item [" diff --git a/Master/texmf-dist/makeindex/bgteubner/bgteuglochar.ist b/Master/texmf-dist/makeindex/bgteubner/bgteuglochar.ist new file mode 100644 index 00000000000..3640f0849e0 --- /dev/null +++ b/Master/texmf-dist/makeindex/bgteubner/bgteuglochar.ist @@ -0,0 +1,44 @@ +%% +%% This is file `bgteuglochar.ist', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `glostyle2') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% This Makeindex style file is intended to be used with the bgteubner +%% document class. It may or may not work together with other document +%% classes. +%% +%% harald.harders@gmx.de +%% +quote '>' +heading_prefix "\\glossarynewchar{" +heading_suffix "}\n" +symhead_positive "Symbole" +numhead_positive "Zahlen" +headings_flag 1 +keyword "\\glossaryentry" +preamble "\\begin{theglossary}\n\\hhclsiscorrectglossarytrue\n" +postamble "\n\n\\end{theglossary}\n" +group_skip "\n" +delim_0 "" +delim_1 "" +delim_2 "" +delim_n "\\glossarypagedelim" +delim_r "\\glossarypagerange" +item_0 "\n \\item [" diff --git a/Master/texmf-dist/source/latex/bgteubner/bgteucls.dtx b/Master/texmf-dist/source/latex/bgteubner/bgteucls.dtx new file mode 100644 index 00000000000..fa473b79c1c --- /dev/null +++ b/Master/texmf-dist/source/latex/bgteubner/bgteucls.dtx @@ -0,0 +1,6908 @@ +% \iffalse meta comment +% +% bgteubner class bundle +% +% bgteucls.dtx +% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% Additional conditions to the license: +% +% If you modify a renamed copy of the files `bgteubner.cls' or +% `bgteucls.dtx', you have to preserve some information in the +% PDF /Creator entry. The following data have to remain: +% - The name `bgteubner.cls', +% - a hint that this class has been developed for the `Teubner +% Verlag, Wiesbaden, Germany (now Springer Vieweg Verlag)'. +% +% This program consists of all files listed in manifest.txt. +% +% \section{Gemeinsame Daten} +% +% \begin{macrocode} +%<class>\NeedsTeXFormat{LaTeX2e} +%<class>\ProvidesClass{bgteubner} +%<version>\ProvidesFile{bgteuversion.tex} +%<cdcover>\ProvidesFile{cdcover.tex} +%<driver>\ProvidesFile{bgteucls.dtx} +%<class|version|cdcover|driver> [2012/04/07 v2.02 Springer Vieweg Verlag] +% \end{macrocode} +% +%<*driver> +\documentclass[english,ngerman,a4paper]{ltxdoc} +\usepackage{babel} +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} +\usepackage{numprint} +\usepackage[num]{isodate} +\usepackage{longtable} +\newlength{\tempdima}% +\makeatletter +\renewenvironment{table}[1][]{% + \@float{table}[#1]% + \centering% + \setlength{\tempdima}{\abovecaptionskip}% + \setlength{\abovecaptionskip}{\belowcaptionskip}% + \setlength{\belowcaptionskip}{\tempdima}% + }{% +\end@float +} +\makeatother +\EnableCrossrefs +\CodelineIndex +\DoNotIndex{\',\.,\@M,\@@input,\@Alph,\@alph,\@addtoreset,\@arabic} +\DoNotIndex{\@badmath,\@centercr,\@cite} +\DoNotIndex{\@dotsep,\@empty,\@float,\@gobble,\@gobbletwo,\@ignoretrue} +\DoNotIndex{\@input,\@ixpt,\@m,\@minus,\@mkboth} +\DoNotIndex{\@ne,\@nil,\@nomath,\@plus,\roman,\@set@topoint} +\DoNotIndex{\@tempboxa,\@tempcnta,\@tempdima,\@tempdimb} +\DoNotIndex{\@tempswafalse,\@tempswatrue,\@viipt,\@viiipt,\@vipt} +\DoNotIndex{\@vpt,\@warning,\@xiipt,\@xipt,\@xivpt,\@xpt,\@xviipt} +\DoNotIndex{\@xxpt,\@xxvpt,\\,\ ,\addpenalty,\addtolength,\addvspace} +\DoNotIndex{\advance,\ast,\begin,\begingroup,\bfseries,\bgroup,\box} +\DoNotIndex{\bullet,\MessageBreak} +\DoNotIndex{\cdot,\cite,\CodelineIndex,\cr,\day,\DeclareOption} +\DoNotIndex{\def,\DisableCrossrefs,\divide,\DocInput,\documentclass} +\DoNotIndex{\DoNotIndex,\egroup,\ifdim,\else,\fi,\em,\endtrivlist} +\DoNotIndex{\EnableCrossrefs,\end,\end@dblfloat,\end@float,\endgroup} +\DoNotIndex{\endlist,\everycr,\everypar,\ExecuteOptions,\expandafter} +\DoNotIndex{\fbox,\csname,\endcsname,\def,\edef,\empty,\ ,\@tempa} +\DoNotIndex{\filedate,\filename,\fileversion,\fontsize,\framebox,\gdef} +\DoNotIndex{\global,\halign,\hangindent,\hbox,\hfil,\hfill,\hrule} +\DoNotIndex{\hsize,\hskip,\hspace,\hss,\if@tempswa,\ifcase,\or,\fi,\fi} +\DoNotIndex{\ifhmode,\ifvmode,\ifnum,\iftrue,\ifx,\fi,\fi,\fi,\fi,\fi} +\DoNotIndex{\input,\@tempb,\n} +\DoNotIndex{\jobname,\kern,\leavevmode,\let,\leftmark} +\DoNotIndex{\list,\llap,\long,\m@ne,\m@th,\mark,\markboth,\markright} +\DoNotIndex{\month,\newcommand,\newcounter,\newenvironment} +\DoNotIndex{\NeedsTeXFormat,\newdimen} +\DoNotIndex{\newlength,\newpage,\nobreak,\noindent,\null,\number} +\DoNotIndex{\numberline,\OldMakeindex,\OnlyDescription,\p@} +\DoNotIndex{\pagestyle,\par,\paragraph,\paragraphmark,\parfillskip} +\DoNotIndex{\penalty,\PrintChanges,\PrintIndex,\ProcessOptions} +\DoNotIndex{\protect,\ProvidesClass,\raggedbottom,\raggedright} +\DoNotIndex{\refstepcounter,\relax,\renewcommand} +\DoNotIndex{\rightmargin,\rightmark,\rightskip,\rlap,\rmfamily} +\DoNotIndex{\secdef,\selectfont,\setbox,\setcounter,\setlength} +\DoNotIndex{\settowidth,\sfcode,\skip,\sloppy,\slshape,\space} +\DoNotIndex{\symbol,\the,\trivlist,\typeout,\tw@,\undefined,\uppercase} +\DoNotIndex{\usecounter,\usefont,\usepackage,\vfil,\vfill,\viiipt} +\DoNotIndex{\viipt,\vipt,\vskip,\vspace} +\DoNotIndex{\wd,\xiipt,\year,\z@} +\DoNotIndex{\string,\",\def,\newcommand,\renewcommand,\DeclareRobustCommand} +\DoNotIndex{\DeclareMathOperator,\multiput,\put,\value,\thispagestyle} +\DoNotIndex{\tiny,\footnotesize,\small,\normalfont,\large,\Large,\LARGE} +\DoNotIndex{\huge,\Huge,\RequirePackageWithOptions,\write} +\DoNotIndex{\textheight,\textwidth} +\CodelineNumbered +\RecordChanges +\CheckSum{4836} +\input{bgteuversion} +\GetFileInfo{bgteuversion.tex} +\begin{document} + \title{Die \texttt{bgteubner}"=Dokumentklasse\thanks{Diese Datei hat die + Versionsnummer \fileversion\ mit der letzten Änderung am + \filedate.}} + \author{Harald Harders\\\texttt{harald.harders@gmx.de}} + \date{Dateidatum \filedate, übersetzt am \today} + \DocInput{bgteucls.dtx} +\end{document} +%</driver> +% \fi +% +% \maketitle +% \begin{abstract} +% \noindent +% Diese Dokumentklasse bietet die notwendige Umgebung für Bücher des +% Springer Vieweg Verlags (vormals Vieweg+Teubner Verlags bzw. B.\,G.\ +% Teubner Verlag). +% Ihre Verwendung wird in einem gesonderten Dokument, das unter den +% Namen \verb|bgteubner-17x24-times.pdf| bzw.\ +% \verb|bgteubner-17x24-cm.pdf| verfügbar ist, beschrieben. +% Hier wird nur die Implementierung erläutert. +% \end{abstract} +% +% \tableofcontents +% +% \section*{Copyright (in der englischen Originalformulierung)} +% +% Copyright 2003--2012 Harald Harders. +% +% This program may be distributed and/or modified under the +% conditions of the \LaTeX\ Project Public License, either version~1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% \begin{verbatim} +%http://www.latex-project.org/lppl.txt\end{verbatim} +% and version~1.3 or later is part of all distributions of \LaTeX\ +% version 1999/12/01 or later. +% +% Additional conditions to the license: +% +% If you modify a renamed copy of the files ``|bgteubner.cls|'' or +% ``|bgteucls.dtx|'', you have to preserve some information in the +% PDF |/Creator| entry. The following data have to remain: +% \begin{itemize} +% \item The name ``|bgteubner.cls|'', +% \item a hint that this class has been developed for the ``Teubner +% Verlag, Wiesbaden, Germany''. +% \end{itemize} +% +% This program consists of all files listed in |manifest.txt|. +% +% \StopEventually{\PrintChanges \PrintIndex} +% +% \changes{2.02}{2012/04/07}{Use autolanguage feature of numprint.sty}% +% \changes{2.02}{2012/04/07}{Adapted to Springer Vieweg Verlag}% +% \changes{2.01}{2011/12/29}{Added macro \cs{emphindex} for important index +% entryies}% +% \changes{2.00}{2008/05/04}{Adapted to Vieweg+Teubner Verlag}% +% \changes{1.40}{2008/04/27}{Adapted \cs{signature} for multiline texts}% +% \changes{1.39}{2008/04/15}{Indentation after the preface title fixed}% +% \changes{1.38}{2006/04/20}{Bug in Bib\TeX\ styles +% (format.crossref.editor) fixed}% +% \changes{1.37}{2005/10/31}{Typeset abbreviated forenames with small +% space between them}% +% \changes{1.37}{2005/10/31}{Add new BiB\TeX\ style with abbreviated +% forenames and long keywords}% +% \changes{1.36}{2005/10/28}{Fix bug using crossref with books in +% biliography}% +% \changes{1.36}{2005/10/28}{Fix sorting problem in the biliography}% +% \changes{1.36}{2005/10/28}{Introduce \cs{btxlastname} for formatting +% lastnames}% +% \changes{1.35}{2005/04/16}{Allow to number \cs{paragraph} and +% \cs{subparagraph}}% +% \changes{1.33}{2004/11/19}{Avoiod to use the \texttt{calc} package +% since it causes problems with many other packages}% +% \changes{1.14}{2003/12/17}{Avoid usage of \cs{bgteubnerfileversion} +% and \cs{bgteubnerfiledate}}% +% \changes{1.10}{2003/10/30}{Einige Meldungen in englisch}% +% \changes{1.10}{2003/10/30}{Alle eingerückten Umgebungen mit +% geringerem Einzug}% +% +% \section{Bekannte Probleme} +% +% \begin{itemize} +% \item Vertikal spacings in |important|, |important*|, +% |longimportant|, and |longimportant*| environments is not +% optimal. When using environments as |align|, |example|, +% |subexercise| at the begin or end of the environment, unwanted, +% additional space is added. I don't know how to solve this +% problem. +% \end{itemize} +% +% \section{Dateikopf} +% +% \begin{macrocode} +%<*class> +\typeout{^^J^^JDokumentklasse zum Erstellen von Buechern fuer den + Springer Vieweg Verlag, Wiesbaden}% +\typeout{(vormals Vieweg+Teubner Verlag, B. G. Teubner Verlag).}% +\typeout{Erstellt im Auftrag des B. G. Teubner Verlags von}% +\typeout{Harald Harders (harald.harders@gmx.de).^^J}% +\typeout{Beachten Sie die Dokumentation in den unterschiedlichen + Versionen:}% +\typeout{\space\space bgteubner-17x24-times.pdf\space\space Times, + 17cm x 24cm,}% +\typeout{\space\space + bgteubner-17x24-cm.pdf\space\space\space\space\space European + Computer Modern, 17cm x 24cm,}% +\typeout{\space\space + bgteubner-a5-times.pdf\space\space\space\space\space Times, DIN-A 5,}% +\typeout{\space\space + bgteubner-a5-cm.pdf\space\space\space\space\space \space\space\space + European Computer Modern, DIN-A 5.}% +\typeout{^^JDocument class to produce books for the Springer Vieweg + Verlag, Wiesbaden, Germany}% +\typeout{(formerly Vieweg+Teubner Verlag, B. G. Teubner Verlag).}% +\typeout{Made by Harald Harders (harald.harders@gmx.de).}% +\typeout{Documentation is available in German only.^^J^^J}% +% \end{macrocode} +% +% \section{Fehler statt Warnung bei alten Paketen} +% +% Weil fast alle Nutzer Warnungen nicht beachten, soll bei alten +% Paketen ein Fehler statt einer Warnung ausgegeben werden. +% Diese Warnung wird im Befehl \cs{@onefilewithoptions} erzeugt. +% Bei Paketen, die der Autor selbst lädt, soll wieder nur eine Warnung +% erzeugt werden. +% +% \begin{macro}{\@onefilewithoptions} +% Den Originalbefehl sichern und am Ende der Klasse wieder +% restaurieren. +% \begin{macrocode} +\newcommand\hhcls@onefilewithoptions{} +\let\hhcls@onefilewithoptions\@onefilewithoptions +\AtEndOfClass{\let\@onefilewithoptions\hhcls@onefilewithoptions} +% \end{macrocode} +% Die Definition von \cs{@onefilewithoptions} aus |latex.ltx|, nur mit +% einem Fehler statt einer Warnung. +% \begin{macrocode} +\def\@onefilewithoptions#1[#2][#3]#4{% + \@pushfilename + \xdef\@currname{#1}% + \global\let\@currext#4% + \expandafter\let\csname\@currname.\@currext-h@@k\endcsname\@empty + \let\CurrentOption\@empty + \@reset@ptions + \makeatletter + \def\reserved@a{% + \@ifl@aded\@currext{#1}% + {\@if@ptions\@currext{#1}{#2}{}% + {\@latex@error + {Option clash for \@cls@pkg\space #1}% + {The package #1 has already been loaded + with options:\MessageBreak + \space\space[\@ptionlist{#1.\@currext}]\MessageBreak + There has now been an attempt to load it + with options\MessageBreak + \space\space[#2]\MessageBreak + Adding the global options:\MessageBreak + \space\space + \@ptionlist{#1.\@currext},#2\MessageBreak + to your \noexpand\documentclass declaration may fix this.% + \MessageBreak + Try typing \space <return> \space to proceed.}}}% + {\@pass@ptions\@currext{#2}{#1}% + \global\expandafter + \let\csname ver@\@currname.\@currext\endcsname\@empty + \InputIfFileExists + {\@currname.\@currext}% + {}% + {\@missingfileerror\@currname\@currext}% + \let\@unprocessedoptions\@@unprocessedoptions + \csname\@currname.\@currext-h@@k\endcsname + \expandafter\let\csname\@currname.\@currext-h@@k\endcsname + \@undefined + \@unprocessedoptions} + \@ifl@ter\@currext{#1}{#3}{}% + {\@latex@error + {You have requested,\on@line, + version\MessageBreak + `#3' of \@cls@pkg\space #1,\MessageBreak + but only version\MessageBreak + `\csname ver@#1.\@currext\endcsname'\MessageBreak + is available}{% + The bgteubner class is more restrictive with old packages than^^J% + standard LaTeX. Please update the specified package. New^^J% + packages may be downloaded from CTAN, e.g., ftp://ftp.dante.de.}}% + \ifx\@currext\@clsextension\let\LoadClass\@twoloadclasserror\fi + \@popfilename + \@reset@ptions}% + \reserved@a} +% \end{macrocode} +% \end{macro} +% +% \section{Global festgelegte Klassenoptionen} +% +% Weiterreichen der notwendigen Optionen an die Dokumentklasse +% |scrbook|, die als Basis für die |bgteubner|"=Klasse dient. +% +% Einstellen der Größen für Kapitel"= und Abschnittsüberschriften: +% \begin{macrocode} +\PassOptionsToClass{smallheadings}{scrbook} +% \end{macrocode} +% Literaturverzeichnis, Stichwortverzeichnis, Abbildungs"= und +% Tabellenverzeichnis erscheinen im Inhaltsverzeichnis: +% \begin{macrocode} +\PassOptionsToClass{bibtotoc,idxtotoc,liststotoc}{scrbook} +% \end{macrocode} +% Formeln linksbündig mit Einzug: +% \begin{macrocode} +\PassOptionsToClass{fleqn}{scrbook} +\PassOptionsToPackage{fleqn}{amsmath} +% \end{macrocode} +% \changes{1.10}{2003/10/30}{Integralgrenzen ober- und unterhalb des +% Symbols}% +% Grenzen an Integralen in abgesetzten Formeln ober- und unterhalb des +% Symbols. +% \begin{macrocode} +\PassOptionsToPackage{intlimits}{amsmath} +% \end{macrocode} +% Kapitel"= und Abschnittsnummern ohne Punkt am Ende: +% \begin{macrocode} +\PassOptionsToClass{pointlessnumbers}{scrbook} +% \end{macrocode} +% Leere Seiten sollen ganz leer sein, auch keine Seitenzahl: +% \begin{macrocode} +\PassOptionsToClass{cleardoubleempty}{scrbook} +% \end{macrocode} +% Keine Linie unter dem Kolumnentitel: +% \begin{macrocode} +\PassOptionsToClass{headnosepline}{scrbook} +% \end{macrocode} +% Kein Präfix vor Kapitelnummern im Anhang: +% \begin{macrocode} +\PassOptionsToClass{noappendixprefix}{scrbook} +% \end{macrocode} +% Tabellen erhalten Über"= anstatt Unterschriften: +% \begin{macrocode} +\PassOptionsToClass{tablecaptionabove}{scrbook} +% \end{macrocode} +% Optionen an Typearea weiterreichen. Kolumnentitel ist in Satzspiegel +% enthalten. +% \begin{macrocode} +\PassOptionsToPackage{pagesize,headinclude}{typearea} +% \end{macrocode} +% +% \section{Optionale Parameter beim Aufruf der \texttt{bgteubner}"=Klasse} +% +% Definition von möglichen Optionen, die vom Benutzer angegeben werden +% können. +% +% \subsection{Globale Einstellungen des Buchlayouts} +% +% Wahl der Seitengröße: +% \begin{macrocode} +\newif\ifhhcls@dinafuenf +\DeclareOption{a5paper}{\hhcls@dinafuenftrue} +\DeclareOption{a5}{\hhcls@dinafuenftrue} +\DeclareOption{17x24paper}{\hhcls@dinafuenffalse} +\DeclareOption{17x24}{\hhcls@dinafuenffalse} +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Allow Y\,\&\,Y MathTime to be used}% +% Schriftfamilie wählen: +% \begin{macrocode} +\newif\ifhhcls@times +\newif\ifhhcls@mathtime +\DeclareOption{times}{\hhcls@timestrue} +\DeclareOption{mathtime}{\hhcls@timestrue\hhcls@mathtimetrue} +\DeclareOption{cm}{\hhcls@timesfalse} +% \end{macrocode} +% Kolumnentitel außen oder innen auf den Seiten? +% \begin{macrocode} +\newif\ifhhcls@headingoutside +\DeclareOption{headingoutside}{\hhcls@headingoutsidetrue} +\DeclareOption{headinginside}{\hhcls@headingoutsidefalse} +% \end{macrocode} +% Inhaltsverzeichnis einrücken? +% \begin{macrocode} +\newif\ifhhcls@tocindent +\DeclareOption{tocindent}{\hhcls@tocindenttrue} +\DeclareOption{tocleft}{\hhcls@tocindentfalse} +% \end{macrocode} +% Vektoren normal, fett oder unterstrichen? +% \begin{macrocode} +\DeclareOption{arrowvec}{\PassOptionsToPackage{arrow}{hhtensor}} +\DeclareOption{boldvec}{\PassOptionsToPackage{bold}{hhtensor}} +\DeclareOption{ulinevec}{\PassOptionsToPackage{uline}{hhtensor}} +% \end{macrocode} +% Soll es grau hinterlegte Boxen für wichtige Formeln geben? +% \begin{macrocode} +\newif\ifhhcls@greybox +\DeclareOption{greybox}{\hhcls@greyboxtrue} +\DeclareOption{graybox}{\hhcls@greyboxtrue} +% \end{macrocode} +% \changes{1.10}{2003/10/30}{Schriftgröße in theoremartigen Umgebungen +% einstellbar}% +% Schriftgröße in theoremartigen Umgebungen: +% \begin{macrocode} +\newif\ifhhcls@theoremsmall +\DeclareOption{smalltheorem}{\hhcls@theoremsmalltrue} +\DeclareOption{normaltheorem}{\hhcls@theoremsmallfalse} +% \end{macrocode} +% +% \subsection{Entwurfsstadium} +% +% \changes{1.10}{2003/10/30}{Layoutraster entfernt}% +% Angabe des Übersetzungsdatums in der Fußzeile und Markierung von +% überfüllten Zeilen für Entwurfskontrollen: +% \begin{macrocode} +\newif\ifhhcls@entwurf +\newif\ifhhcls@titlepage +\DeclareOption{draft}{\hhcls@entwurftrue\hhcls@titlepagetrue} +\DeclareOption{titlepage}{\hhcls@titlepagetrue} +% \end{macrocode} +% \changes{1.30}{2004/04/10}{Ignore class option `epsfigures'}% +% The option |epsfigures| that enabled to include eps figures for dvi +% output is not necessary anymore. +% \begin{macrocode} +%\newif\ifhhcls@epsfigures +%\hhcls@epsfiguresfalse +%\DeclareOption{epsfigures}{\hhcls@epsfigurestrue} +\DeclareOption{epsfigures}{% + \ifpdf + \ClassWarning{bgteubner}{Class option `epsfigures' ignored + for pdf output}% + \else + \ClassWarning{bgteubner}{Class option `epsfigures' ignored for dvi + output. eps figures are now included without this option}% + \fi +} +% \end{macrocode} +% +% \subsection{Aufgaben und Lösungen} +% +% Fügt die Aufgaben, die mit der Umgebung |aufgabe| erzeugt wurden, in +% das Inhaltsverzeichnis ein: +% \begin{macrocode} +\newif\if@exercisetotoc +\DeclareOption{exercisetotoc}{\@exercisetotoctrue} +% \end{macrocode} +% Fügt die Aufgaben und Lösungen, die mit den Umgebungen |exercise|, +% bzw.\ |answer| erzeugt wurden, in das Inhaltsverzeichnis ein: +% \begin{macrocode} +\newif\if@answertotoc +\DeclareOption{answertotoc}{\@exercisetotoctrue\@answertotoctrue} +% \end{macrocode} +% Which publisher? +% \begin{macrocode} +\newcommand\hhcls@publisher{} +\DeclareOption{springervieweg}{\def\hhcls@publisher{% + Springer Vieweg Verlag\quad Wiesbaden% +}} +\DeclareOption{viewegteubner}{\def\hhcls@publisher{% + Vieweg+Teubner\quad Stuttgart $\cdot$ Leipzig $\cdot$ Wiesbaden% +}} +\DeclareOption{bgteubner}{\def\hhcls@publisher{% + B.~G.\ Teubner\quad Stuttgart $\cdot$ Leipzig $\cdot$ Wiesbaden% +}} +% \end{macrocode} +% +% \subsection{Defaulteinstellungen und Ausführen der Klassenoptionen} +% +% Defaulteinstellungen: +% \begin{macrocode} +\ExecuteOptions{times,headingoutside,17x24,tocindent,% + normaltheorem,springervieweg} +% \end{macrocode} +% Optionen ausführen: +% \begin{macrocode} +\ProcessOptions\relax +% \end{macrocode} +% Schriftgröße 10\,pt: +% \begin{macrocode} +\PassOptionsToClass{10pt}{scrbook} +% \end{macrocode} +% +% \section{Laden der Klasse und der Pakete} +% +% Die |scrbook|"=Klasse laden. +% Es muss eine Version vom angegebenen Datum oder neuer sein, da +% ältere Versionen noch nicht alle notwendigen Funktionen unterstützen. +% \begin{macrocode} +\LoadClass{scrbook}[2003/04/22] +% \end{macrocode} +% Warnung bei der Änderung der Schrift für die Kopf- und Fußzeile +% ausschalten. +% \begin{macrocode} +\let\scr@fnt@wrn@pagehead=\@undefined +\let\scr@fnt@wrn@pagefoot=\@undefined +% \end{macrocode} +% Bugs in \LaTeXe\ beheben: +% \begin{macrocode} +\RequirePackage{fixltx2e}[2000/09/24] +% \end{macrocode} +% Weitere Zeichen im Mathe"= und im Textmodus: +% \begin{macrocode} +\RequirePackage{wasysym}[2003/05/31] +% \end{macrocode} +% Die Integralzeichen von wasysym wieder löschen, damit +% \verb|amsmath.sty| sie wieder vernünftig definieren kann. +% This has to be done before the first call of the |amsmath| package since +% it will be loaded only once. +% \changes{1.34}{2005/01/07}{Remove \texttt{wasysym} integrals before +% \texttt{amsmath} is loaded}% +% \begin{macrocode} +\let\iint=\@undefined +\let\iiint=\@undefined +\let\iiiint=\@undefined +% \end{macrocode} +% Erweiterte Mathematikbefehle: +% \begin{macrocode} +\RequirePackage{amsmath}[2000/07/18] +\RequirePackage{amsfonts}[2001/10/25] +\RequirePackage{amssymb}[2002/01/22] +% \end{macrocode} +% Pakete, die gutes Tabellenlayout erlauben: +% \begin{macrocode} +\RequirePackage{booktabs}[2003/03/28] +\RequirePackage{array}[1998/05/13] +\RequirePackage{longtable}[2000/10/22] +% \end{macrocode} +% T1"=Schriftkodierung. Führt zu besserer Silbentrennung und erlaubt +% die Verwendung einiger zusätzlicher Schriftschnitte und "~größen. +% \begin{macrocode} +\RequirePackage[T1]{fontenc}[2001/06/05] +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Allow Y\,\&\,Y MathTime to be used}% +% \changes{1.30}{2004/04/10}{Use bold instead of bold extended with Times}% +% Times ist als Schrift gewählt: +% \begin{macrocode} +\ifhhcls@times + \ifhhcls@mathtime + \RequirePackage[slantedgreek,mtbold]{mathtime}[1999/03/29] + \else + \RequirePackage[slantedGreek]{mathptmx}[2003/03/02] + \fi + \RequirePackage[scaled=0.92]{helvet}[2003/03/02] + \RequirePackage{courier}[2003/03/02] + \renewcommand\bfdefault{b} +% \end{macrocode} +% Dummybefehl definieren, um Übersetzungsfehler zu vermeiden. +% \begin{macrocode} + \newcommand\newstylenums{} +% \end{macrocode} +% \cs{,} im Mathemodus restaurieren. +% \begin{macrocode} + \thinmuskip=3mu +% \end{macrocode} +% Computer Modern ist gewählt: +% \begin{macrocode} +\else +% \end{macrocode} +% \changes{1.06}{2003/10/12}{Paket \texttt{hfoldsty} statt +% \texttt{hfo} laden}% +% Minuskelziffern (\oldstylenums{0123456789}) im Textmodus. Verwendung +% des Pakets |hfoldsty.sty|, das ein besseres Kerning als |eco.sty| +% für die französischen Anführungszeichen hat. +% \begin{macrocode} + \RequirePackage[origtt]{hfoldsty}[2003/10/12] +% \end{macrocode} +% \changes{1.04}{2003/09/23}{Rücksetzen der Schreibmaschinenschrift +% auf Original nicht mehr nötig}% +% Bei Schreibmaschinenschrift (Monospaced) dennoch keine +% Minuskelziffern und keine Ligaturen (nicht mehr nötig mit der neuen +% |hfoldsty|"=Version). +% \begin{macrocode} +\fi +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Generate warning in case of using +% \cs{oldstylenums}}% +% Der Befehl \cs{oldstylenums} ist in jedem Fall Quatsch: +% \begin{macrocode} +\renewcommand*\oldstylenums{% + \ClassWarning{bgteubner}{\string\oldstylenums\space is ignored}% +} +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Rearrange \texttt{textcomp} and +% \texttt{mathcomp}}% +% \changes{1.20}{2004/03/07}{Switch \texttt{mathcomp} glyphs to the +% same font as text is}% +% Additional glyphs in math and in text mode. +% |mathcomp| has to be loaded after switching to the text fonts, i.e., +% |mathptmx| etc. +% \begin{macrocode} +\RequirePackage{textcomp}[2001/06/05] +\RequirePackage[rmdefault]{mathcomp}[2001/01/07] +\ifhhcls@times +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Substitute Text and Math Companion +% symbols by using \texttt{ptmxcomp.sty}}% +% Many Text and Math Companion symbols have to be replaced or +% corrected. +% \begin{macrocode} + \RequirePackage{ptmxcomp}[2004/03/07] +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Warning for not existing bold math}% +% \changes{1.30}{2004/04/10}{Error rather than a warning for using not +% existing bold math}% +% If using Times without MathTime, bold math is undefined. Redefine +% \cs{boldmath} to generate a warning. +% \begin{macrocode} + \ifhhcls@mathtime + \else + \renewcommand*\boldmath{% + \ClassError{bgteubner}{With the base font Times, bold math is + undefined\MessageBreak + (when not using MathTime math extensions)}{% + Avoid using bold math or buy the MathTime and MathTimePlus + fonts by Y\&Y.}% + } + \fi +\fi +% \end{macrocode} +% Teilbilder mit Nummerierung a, b, c\dots: +% \begin{macrocode} +\RequirePackage[hang,RaggedRight]{hhsubfigure}[2003/09/14] +% \end{macrocode} +% Trennungen teilweise auch im Flattersatz ermöglichen: +% \begin{macrocode} +\RequirePackage{ragged2e}[2003/01/26] +% \end{macrocode} +% Integralzeichen usw.\ in mehr Größen, ist bei der Verwendung von +% \verb|mathptmx| nicht nötig: +% \begin{macrocode} +\ifhhcls@times +\else + \RequirePackage{exscale}[1997/06/16] +\fi +% \end{macrocode} +% Befehle zum Einbinden von Grafiken: +% \begin{macrocode} +\RequirePackage{graphicx}[1999/02/16] +% \end{macrocode} +% Falls graue Kästen zugelassen sind, muss auch Farbe ins Spiel +% kommen. Aus Konsistenzgründen wird das Paket immer geladen. +% \begin{macrocode} +\RequirePackage{color}[1999/02/16] +% \end{macrocode} +% Ebenso für lange Kisten. +% \begin{macrocode} +\RequirePackage{framed}[2003/07/19] +% \end{macrocode} +% Tensorbefehle: +% \begin{macrocode} +\RequirePackage{hhtensor}[2003/10/09] +% \end{macrocode} +% Befehle zur Erzeugung eines Stichwortverzeichnisses: +% \begin{macrocode} +\RequirePackage{makeidx}[2000/03/29] +% \end{macrocode} +% Kompakte Aufzählungen: +% \begin{macrocode} +\RequirePackage{mdwlist}[1996/05/02] +\RequirePackage{paralist}[2002/03/18] +% \end{macrocode} +% \changes{1.03}{2003/09/18}{\texttt{ifthen}-Paket explizit laden}% +% Das \verb|ifthen|"=Paket explizit laden. +% \begin{macrocode} +\RequirePackage{ifthen}[2001/05/26] +% \end{macrocode} +% Herausfinden, ob PDF oder DVI erzeugt wird: +% \begin{macrocode} +\RequirePackage{ifpdf}[2001/06/14] +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Redeclare uppercase Greek letters for +% MathTime font}% +% Normalerweise schreibt \LaTeX\ große griechische Buchstaben im +% mathematischen Modus aufrecht, was aber im mathematischen Satz +% inkonsistent ist. +% Das Paket |fixmath| behebt dieses Problem. +% Dadurch wird aber auch das große Delta $\Delta$ kursiv +% gedruckt. +% Wenn es als Differenz verwendet wird, soll es aufrecht sein. +% Dies wird durch Verwendung von \cs{D} ($\Delta$) erreicht. +% +% With |mathptmx|, |fixmath| is not necessary. +% With |mathtime|, the letters have to be redefined ``by hand''. +% \begin{macrocode} +\ifhhcls@times + \ifhhcls@mathtime + \DeclareMathSymbol\Gamma {\mathalpha}{letters}{0} + \DeclareMathSymbol\Delta {\mathalpha}{letters}{1} + \DeclareMathSymbol\Theta {\mathalpha}{letters}{2} + \DeclareMathSymbol\Lambda {\mathalpha}{letters}{3} + \DeclareMathSymbol\Xi {\mathalpha}{letters}{4} + \DeclareMathSymbol\Pi {\mathalpha}{letters}{5} + \DeclareMathSymbol\Sigma {\mathalpha}{letters}{6} + \DeclareMathSymbol\Upsilon {\mathalpha}{letters}{7} + \DeclareMathSymbol\Phi {\mathalpha}{letters}{8} + \DeclareMathSymbol\Psi {\mathalpha}{letters}{9} + \DeclareMathSymbol\Omega {\mathalpha}{letters}{10} + \DeclareMathSymbol\upGamma {\mathord}{letters}{48} + \DeclareMathSymbol\upDelta {\mathord}{letters}{49} + \DeclareMathSymbol\upTheta {\mathord}{letters}{50} + \DeclareMathSymbol\upLambda {\mathord}{letters}{51} + \DeclareMathSymbol\upXi {\mathord}{letters}{52} + \DeclareMathSymbol\upPi {\mathord}{letters}{53} + \DeclareMathSymbol\upSigma {\mathord}{letters}{54} + \DeclareMathSymbol\upUpsilon{\mathord}{letters}{55} + \DeclareMathSymbol\upPhi {\mathord}{letters}{56} + \DeclareMathSymbol\upPsi {\mathord}{letters}{57} + \DeclareMathSymbol\upOmega {\mathord}{letters}{127} + \fi +\else + \RequirePackage{fixmath}[2000/04/11] +\fi +% \end{macrocode} +% Internationale Unterstützung laden. +% Es muss eine Version vom angegebenen Datum oder neuer sein, +% da ältere Versionen |\frenchspacing| noch nicht im deutschen Text +% eingeschaltet haben. +% \begin{macrocode} +\RequirePackage{babel}[2001/03/01] +% \end{macrocode} +% Zeilenabstand in der |advanced|"=Umgebung erhöhen: +% \begin{macrocode} +\RequirePackage{setspace}[2000/12/01] +% \end{macrocode} +% Paket für relative Schriftgrößenveränderungen laden. +% \begin{macrocode} +\RequirePackage{relsize}[1999/11/01] +% \end{macrocode} +% \changes{1.03}{2003/09/18}{\texttt{slantsc} bei Times nicht laden}% +% Paket für kursive Kapitälchen. +% Allerdings nur, wenn European Computer Modern verwendet wird, weil +% für Times keine kursiven Kapitälchen zur Verfügung stehen, sonst +% einen Ersatzbefehl für \cs{noscshape} definieren. +% Dieser schaltet allerdings von Kapitälchen immer auf aufrechte +% Schrift um, da es ja nur aufrechte Kapitälchen gibt. +% \begin{macrocode} +\ifhhcls@times + \DeclareRobustCommand\noscshape{% + \not@math@alphabet\noscshape\relax + \ifthenelse{\equal{\f@shape}{\scdefault}}{% + \fontshape\updefault + }{% + }% + \selectfont + } +\else + \RequirePackage{slantsc}[2003/09/17] +\fi +% \end{macrocode} +% \changes{1.06}{2003/10/12}{Paket \texttt{ginpenc} statt +% \texttt{hhinputenc} laden}% +% Einen Befehl definieren, der den Eingabezeichensatz bestimmt. +% Das wird gemacht, da Babel ansonsten die Standarddefinitionen für +% Umlaute (|\"a| usw.) verwendet. +% Das Paket setzt diese für deutsche Sprache auf |"a| usw., +% wodurch Makeindex eine korrekte Sortierung erreicht: +% \begin{macrocode} +\RequirePackage{ginpenc}[2003/09/29] +% \end{macrocode} +% Warnungen ganz am Ende der Logdatei ausgeben: +% \begin{macrocode} +\RequirePackage{warning}[2001/08/17] +% \end{macrocode} +% Verbieten, die Umgebungen |eqnarray|, |eqnarray*| und |$$| zu +% verwenden: +% \begin{macrocode} +\RequirePackage[all]{onlyamsmath}[2001/10/04] +% \end{macrocode} +% Zahlen automatisch nach jeweils drei Stellen sperren und automatisch +% Exponentialteile sowie korrekte Dezimalzeichen erzeugen: +% \begin{macrocode} +\RequirePackage[sepfour,autolanguage]{numprint}[2003/11/09] +% \end{macrocode} +% Kolumnentitel umstellen können: +% \begin{macrocode} +\RequirePackage{scrpage2}[2002/11/01] +% \end{macrocode} +% Internationale Unterstützung für Literaturverzeichnisse: +% \begin{macrocode} +\RequirePackage[fixlanguage]{babelbib}[2003/07/28] +% \end{macrocode} +% Warnung für Fußnoten, die umbrochen werden, ausgeben: +% \begin{macrocode} +\RequirePackage{fnbreak}[2003/04/03] +% \end{macrocode} +% \changes{1.05}{2003/09/25}{Ältere \texttt{subfloat}"=Version +% erlaubt, die Unterschiede sind nur marginal}% +% Mehrere Fließumgebungen mit der gleichen Nummer erlauben: +% \begin{macrocode} +\RequirePackage[countmax]{subfloat}[2002/12/16] +% \end{macrocode} +% Für die Verzeichnisse wird |multicol| benötigt. +% \begin{macrocode} +\RequirePackage{multicol}[2000/07/10] +% \end{macrocode} +% Optischen Randausgleich aktivieren. +% \begin{macrocode} +\RequirePackage[activate]{pdfcprot}[2002/02/27] +% \end{macrocode} +% +% \section{Prüfen, ob \textsc{pdf}\LaTeX\ verwendet wird} +% +% \changes{1.30}{2004/04/10}{Test if \textsc{pdf}\LaTeX\ is used}% +% Test if \textsc{pdf}\LaTeX\ is used. +% \begin{macrocode} +\ifpdftex{}{% + \ClassError{bgteubner}{Ordinary latex used to compile this + document.\MessageBreak + Please use pdflatex. If you need dvi output\MessageBreak + use pdflatex and include `\string\pdfoutput=0' as first + line\MessageBreak + of your document}{The execution of latex is stopped immediately.}% + \stop +} +% \end{macrocode} +% \changes{1.30}{2004/04/10}{Do not redefine \cs{includegraphics}}% +% Print a warning if dvi output is used. +% \begin{macrocode} +\ifpdf +\else + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{% + Output format is DVI, not PDF.\MessageBreak + If possible, use PDF output}% + }% +\fi +% \end{macrocode} +% \begin{macro}{\iftimes} +% \begin{macro}{\ifmathtime} +% \changes{1.20}{2004/03/07}{Command to test on MathTime}% +% Befehl definieren, der sagt, ob Times oder MathTime verwendet wird. +% If MathTime is used, both, \cs{iftimes} and \cs{ifmathtime} are +% true. +% \begin{macrocode} +\newcommand\iftimes[2]{\ifhhcls@times #1\else #2\fi} +\newcommand\ifmathtime[2]{% + \ifhhcls@times + \ifhhcls@mathtime + #1% + \else% + #2% + \fi + \else + #2% + \fi +} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \changes{1.12}{2003/11/13}{Problem with \texttt{float.sty} solved}% +% Da das |float|"=Paket erwartet, dass der Befehl +% \cs{float@addtolists} noch nicht definiert ist. +% Mit diesem Trick wird der Befehl vor dem Laden des Pakets gelöscht +% und danach wieder vervollständigt. +% \begin{macrocode} +\BeforePackage{float}{% + \newcommand*\hhcls@float@addtolists{}% + \let\hhcls@float@addtolists=\float@addtolists + \let\float@addtolists=\undefined} +\AfterPackage{float}{% + \let\hhclsflt@float@addtolists=\float@addtolists + \renewcommand\float@addtolists[1]{% + \hhclsflt@float@addtolists{#1}% + \hhcls@float@addtolists{#1}% + }% +% \end{macrocode} +% \begin{macro}{\listof} +% \changes{1.12}{2003/11/13}{Lists for new floats get the same layout +% as other lists, using \texttt{float.sty}}% +% Redefine the \cs{listof} command in order to get the same layout as +% other lists. +% \begin{macrocode} + \renewcommand*\listof[2]{% + \begingroup% + \@ifundefined{ext@#1}{% + \float@error{#1}% + }{% + \@namedef{l@#1}{\@dottedtocline{1}{0em}{2.9em}}% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \float@listhead{#2}% + \small + \setlength{\parskip}{\z@}% + \@starttoc{\@nameuse{ext@#1}}% + \if@restonecol\twocolumn\fi + }% + \endgroup + }% +% \end{macrocode} +% \end{macro} +% \changes{1.12}{2003/11/13}{Redeclare captions of user-defined floats +% when using \texttt{float.sty}}% +% Use the same style for the captions of user-defined floats. +% \begin{macrocode} + \floatstyle{komabelow} +} +% \end{macrocode} +% +% \section{Das Aussehen des Dokuments gestalten} +% +% \subsection{Papiergröße einstellen} +% +% \begin{macro}{\paperwidth} +% \begin{macro}{\paperheight} +% Papiergröße, Satzspiegel und Bindungskorrektur einstellen: +% \begin{macrocode} +\ifhhcls@dinafuenf + \setlength{\paperwidth}{148mm} + \setlength{\paperheight}{210mm} + \areaset[7mm]{115mm}{174mm} +\else + \setlength{\paperwidth}{170mm} + \setlength{\paperheight}{240mm} + \areaset[7mm]{135mm}{200mm} +\fi +% \end{macrocode} +% Befehl definieren, der sagt, ob DIN-A\,5 verwendet wird: +% \begin{macrocode} +\newcommand\ifafive[2]{\ifhhcls@dinafuenf #1\else #2\fi} +% \end{macrocode} +% \end{macro} +% \end{macro} +% Der \cs{areaset}"=Befehl erzeugt Texthöhen, die nicht unbedingt +% einem Vielfachen des Zeilenabstandes betragen. +% Das wird hier korrigiert. +% Die Zeilenzahl wird gerundet, wobei die Grenze zum Aufrunden bei 0,4 +% statt normalerweise 0,5 liegt. +% Es funktioniert so, dass solange \cs{baselineskip} zu +% \cs{textheight} addiert wird, bis es größer als der alte Wert minus +% 0,6\cs{baselineskip} ist. +% \begin{macrocode} +\begingroup +\newdimen\gammel +\gammel=\textheight +\advance\gammel by -0.6\baselineskip +\textheight0mm +\@whiledim\textheight<\gammel + \do{\global\advance\textheight by \baselineskip} +\endgroup +% \end{macrocode} +% Daten nochmal ausgeben (kopiert aus typearea.sty). +% \begin{macrocode} +\ClassInfo{bgteubner}{% + These are the values describing the layout:\MessageBreak + BCOR\space=\space\the\ta@bcor\MessageBreak + \string\paperwidth\space\space\space\space\space\space=% + \space\the\paperwidth\MessageBreak + \space\string\textwidth\space\space\space\space\space\space=% + \space\the\textwidth\MessageBreak + \space\string\evensidemargin\space=% + \space\the\evensidemargin\MessageBreak + \space\string\oddsidemargin\space\space=% + \space\the\oddsidemargin\MessageBreak + \string\paperheight\space\space\space\space\space=% + \space\the\paperheight\MessageBreak + \space\string\textheight\space\space\space\space\space=% + \space\the\textheight\MessageBreak + \space\string\topmargin\space\space\space\space\space\space=% + \space\the\topmargin\MessageBreak + \space\string\headheight\space\space\space\space\space=% + \space\the\headheight\MessageBreak + \space\string\headsep\space\space\space\space\space\space\space\space=% + \space\the\headsep\MessageBreak + \space\string\topskip\space\space\space\space\space\space\space\space=% + \space\the\topskip\MessageBreak + \space\string\footskip\space\space\space\space\space\space\space=% + \space\the\footskip\MessageBreak + \space\string\baselineskip\space\space\space=% + \space\the\baselineskip\MessageBreak + } +% \end{macrocode} +% +% \subsection{Umbrucheinstellungen und Abstände} +% +% Schusterjungen und Hurensöhne: +% \begin{macrocode} +\clubpenalty=100 +\widowpenalty=400 +% \end{macrocode} +% Nur eine Zeile über abgesetzten Formeln (Standard: 50) +% \begin{macrocode} +\displaywidowpenalty=50 +% \end{macrocode} +% Seitenumbruch in Trennung (Standard: 100) +% \begin{macrocode} +\brokenpenalty=400 +% \end{macrocode} +% Strafe in Textformeln nach Relation (Standard: 500) +% \begin{macrocode} +\relpenalty=700 +% \end{macrocode} +% Strafe in Textformeln nach binären Operatoren (+,-,...) (Standard: 700) +% \begin{macrocode} +\binoppenalty=2000 +% \end{macrocode} +% \begin{macro}{\parindent} +% Absatzeinzug auf den Zeilenabstand setzen: +% \begin{macrocode} +\setlength{\parindent}{\baselineskip} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\frenchspacing} +% \changes{1.02}{2003/09/17}{In allen englischen Dialekten +% \cs{frenchspacing} verwenden}% +% Auch in englischen Texten kein zusätzlicher Abstand nach +% Satzendezeichen. +% \begin{macrocode} +\addto\extrasamerican{\frenchspacing}% +\addto\noextrasamerican{\nonfrenchspacing}% +\addto\extrasbritish{\frenchspacing}% +\addto\noextrasbritish{\nonfrenchspacing}% +\addto\extrasbritish{\frenchspacing}% +\addto\noextrasbritish{\nonfrenchspacing}% +\addto\extrascanadian{\frenchspacing}% +\addto\noextrascanadian{\nonfrenchspacing}% +\addto\extrasUKenglish{\frenchspacing}% +\addto\noextrasUKenglish{\nonfrenchspacing}% +\addto\extrasUSenglish{\frenchspacing}% +\addto\noextrasUSenglish{\nonfrenchspacing}% +% \end{macrocode} +% \end{macro} +% +% \subsection{Kapitel- und Abschnittsüberschriften formatieren} +% +% Für jede Ebene eine Länge definieren: +% \begin{macrocode} +\newlength{\hhcls@chapterindent}% +\newlength{\hhcls@sectionindent}% +\newlength{\hhcls@subsectionindent}% +\newlength{\hhcls@subsubsectionindent}% +\newlength{\hhcls@paragraphindent}% +\newlength{\hhcls@subparagraphindent}% +% \end{macrocode} +% Für die Kapitelüberschrift den Einzug festlegen. +% Vor |\begin{document}| kann das durch den Nutzer noch verändert +% werden (sollte aber nicht). +% \begin{macrocode} +\setlength{\hhcls@chapterindent}{3.9199em}% +% \end{macrocode} +% Am |\begin{document}| den Einzug für die anderen Ebenen kopieren: +% \begin{macrocode} +\AtBeginDocument{% + \setlength{\hhcls@sectionindent}{\hhcls@chapterindent}% + \setlength{\hhcls@subsectionindent}{\hhcls@chapterindent}% + \setlength{\hhcls@subsubsectionindent}{\hhcls@chapterindent}% + \setlength{\hhcls@paragraphindent}{\hhcls@chapterindent}% + \setlength{\hhcls@subparagraphindent}{\hhcls@chapterindent}% +} +% \end{macrocode} +% Schriftart der Kapitel- und Abschnittsüberschriften, mathematische +% Zeichen werden passend fett gedruckt, falls nicht Vektoren und +% Matrizen fett ausgezeichnet werden. +% \begin{macrocode} +\setkomafont{sectioning}{\normalcolor\normalfont\bfseries + \iftensor@bold\else\mathversion{bold}\fi} +% \end{macrocode} +% \begin{macro}{\chapterformat} +% Formatierung der Kapitelüberschriften mit dem oben angegebenen +% Einzug. Die Zahl wird in eine Box fester breite linksbündig +% geschrieben: +% \begin{macrocode} +\renewcommand*\chapterformat{% + \makebox[\hhcls@chapterindent][l]{% + \chapappifchapterprefix{\ }\thechapter\autodot}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\othersectionlevelsformat} +% Formatierung der Abschnittsüberschriften mit dem oben angegebenen +% Einzug sowie mit definierbaren Pre"= und Postfixen für die +% Abschnittsnummer. +% Die Pre- und Postfixe werden normalerweise nur für andere +% Überschriften wie z.\,B.\ für Beispiele, Aufgaben oder Lösungen +% benötigt. +% Die allgemeine Deklaration ist aber am einfachsten und praktischsten: +% \begin{macrocode} +\DeclareRobustCommand*\othersectionlevelsformat[1]{% + \makebox[\csname hhcls@#1indent\endcsname][l]{% + \csname prefix#1\endcsname\csname the#1\endcsname\autodot + \csname postfix#1\endcsname}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\prefixsection} +% \begin{macro}{\prefixsubsection} +% \begin{macro}{\prefixsubsubsection} +% \begin{macro}{\prefixparagraph} +% \begin{macro}{\prefixsubparagraph} +% Definition leerer Prefixe zu den Überschriften. +% Das wäre nicht notwendig, da das Konstrukt mit |\csname| und +% |\endcsname| unbekannte Befehle ignoriert. +% Die Definition macht den Code aber sauberer. +% \begin{macrocode} +\def\prefixsection{}% +\def\prefixsubsection{}% +\def\prefixsubsubsection{}% +\def\prefixparagraph{}% +\def\prefixsubparagraph{}% +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \subsection{Inhaltsverzeichnis} +% +% Einzüge im Inhaltsverzeichnis festlegen: +% \begin{macrocode} +\ifhhcls@tocindent + \newlength{\hhcls@tocindentlength} + \settowidth{\hhcls@tocindentlength}{0.} + \renewcommand*\l@section{% + \@dottedtocline{1}{1\hhcls@tocindentlength}{2.3em}} + \renewcommand*\l@subsection{% + \@dottedtocline{2}{2\hhcls@tocindentlength}{3.2em}} + \renewcommand*\l@subsubsection{% + \@dottedtocline{3}{3\hhcls@tocindentlength}{4.1em}} + \renewcommand*\l@paragraph{% + \@dottedtocline{4}{4\hhcls@tocindentlength}{5.0em}} + \renewcommand*\l@subparagraph{% + \@dottedtocline{5}{5\hhcls@tocindentlength}{5.9em}} +\else + \renewcommand*\l@section{\@dottedtocline{1}{0em}{2.3em}} + \renewcommand*\l@subsection{\@dottedtocline{2}{0em}{3.2em}} + \renewcommand*\l@subsubsection{\@dottedtocline{3}{0em}{4.1em}} + \renewcommand*\l@paragraph{\@dottedtocline{4}{0em}{5.0em}} + \renewcommand*\l@subparagraph{\@dottedtocline{5}{0em}{5.9em}} +\fi +% \end{macrocode} +% +% \subsection{Anhang} +% +% \begin{macro}{\appendixmore} +% Falls Mediävalziffern verwendet werden, sollen die Anhangsbuchstaben +% etwas kleiner gedruckt werden. +% Außerdem automatische Erzeugung der Überschrift \emph{Anhang} am +% Anfang des Anhangs. +% \changes{1.32}{2004/08/19}{Move \cs{ifhhcls@times} outside +% definition of \cs{appendixmore}}% +% \begin{macrocode} +\ifhhcls@times + \def\appendixmore{% + \addpart{\appendixname}% + } +\else + \def\appendixmore{% + \renewcommand*\thechapter{\textsc{\@alph\c@chapter}}% + \addpart{\appendixname}% + } +\fi +% \end{macrocode} +% \end{macro} +% +% \subsection{Description-Umgebung} +% +% Schriftart für description-Umgebung: +% \begin{macrocode} +\setkomafont{descriptionlabel}{\normalcolor\normalfont\rmfamily\bfseries + \iftensor@bold\else\mathversion{bold}\fi} +% \end{macrocode} +% \begin{macro}{\headfont} +% +% \subsection{Kolumnentitel} +% +% Schriftart für die Kolumnentitel festlegen (nicht kursiv): +% \changes{1.32}{2004/08/19}{Remove \cs{rmfamily} from pagehead since +% \cs{normalfont} does that already}% +% \begin{macrocode} +\setkomafont{pagehead}{\normalfont\normalcolor\small} +% \end{macrocode} +% \end{macro} +% Kolumnentitel formatieren: +% \begin{macrocode} +\pagestyle{scrheadings} +\renewcommand*\partpagestyle{empty} +\renewcommand*\chapterpagestyle{empty} +\renewcommand*\indexpagestyle{empty} +\clearscrheadfoot +\ifhhcls@headingoutside + \rohead[\pagemark]{\headmark\makebox[\hhcls@chapterindent][r]{\pagemark}} + \lehead[\pagemark]{\makebox[\hhcls@chapterindent][l]{\pagemark}\headmark} +\else + \ohead[\pagemark]{\pagemark} + \ihead{\headmark} +\fi +% \end{macrocode} +% +% \subsection{Guillemets als Anführungszeichen} +% +% \begin{macro}{\flqq} +% \begin{macro}{\frqq} +% \begin{macro}{\flq} +% \begin{macro}{\frq} +% \changes{1.30}{2004/04/10}{Redefine quotation marks to allow math +% mode and kerning}% +% Redefine quotation marks in order to allow kerning (fix bug in +% babel.sty). +% \begin{macrocode} +\ProvideTextCommand{\flqq}{T1}{% + \textormath{\guillemotleft}{\mbox{\guillemotleft}}} +\ProvideTextCommand{\flqq}{OT1}{% + \textormath{\guillemotleft}{\mbox{\guillemotleft}}} +\ProvideTextCommandDefault{\flqq}{\UseTextSymbol{OT1}\flqq} +\ProvideTextCommand{\frqq}{T1}{% + \textormath{\guillemotright}{\mbox{\guillemotright}}} +\ProvideTextCommand{\frqq}{OT1}{% + \textormath{\guillemotright}{\mbox{\guillemotright}}} +\ProvideTextCommandDefault{\frqq}{\UseTextSymbol{OT1}\frqq} +\ProvideTextCommand{\flq}{T1}{% + \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}} +\ProvideTextCommand{\flq}{OT1}{% + \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}} +\ProvideTextCommandDefault{\flq}{\UseTextSymbol{OT1}\flq} +\ProvideTextCommand{\frq}{T1}{% + \textormath{\guilsinglright}{\mbox{\guilsinglright}}} +\ProvideTextCommand{\frq}{OT1}{% + \textormath{\guilsinglright}{\mbox{\guilsinglright}}} +\ProvideTextCommandDefault{\frq}{\UseTextSymbol{OT1}\frq} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \begin{macro}{\glqq} +% \begin{macro}{\grqq} +% \begin{macro}{\glq} +% \begin{macro}{\grq} +% Französische Anführungsstriche als Anführungszeichen verwenden. +% \begin{macrocode} + \let\glqq=\frqq + \let\grqq=\flqq + \let\glq=\frq + \let\grq=\flq +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \section{Literaturverweise} +% +% \begin{environment}{thebibliography} +% Flattersatz im Literaturverzeichnis und kleine Schrift: +% \begin{macrocode} +\renewenvironment{thebibliography}[1]{% + \setchapterpreamble{\bibpreamble}% + \bib@heading% + \list{\@biblabel{\@arabic\c@enumiv}}{% + \settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \@openbib@code + \usecounter{enumiv}% + \let\p@enumiv\@empty + \renewcommand*\theenumiv{\@arabic\c@enumiv}% + }% + \sloppy\clubpenalty4000\widowpenalty4000% + \setlength\RaggedRightRightskip{\z@\@plus 6em}% + \small\RaggedRight + \sfcode`\.=\@m +}{ + \def\@noitemerr + {\@latex@warning{Empty `thebibliography' environment}}% + \endlist +} +% \end{macrocode} +% \end{environment} +% Im Literaturverzeichnis die Blöcke nur durch ein einfaches +% Leerzeichen trennen. +% Dadurch wird das weite Auseinanderziehen verhindert. +% \begin{macrocode} +\renewcommand*\newblock{\ } +% \end{macrocode} +% \begin{macro}{\@bibitem} +% \begin{macro}{\@lbibitem} +% Literaturangaben sollen in Majuskelziffern geschrieben werden: +% \begin{macrocode} +\def\@bibitem#1{\stepcounter{\@listctr}% +\item[{[\newstylenums{\the\value{\@listctr}}]}]\if@filesw + \immediate\write\@auxout + {\string\bibcite{#1}{% + \string\newstylenums{\the\value{\@listctr}}}}\fi\ignorespaces} +\def\@lbibitem[#1]#2{\item[\@biblabel{\newstylenums{#1}}\hfill]\if@filesw + {\let\protect\noexpand + \immediate\write\@auxout{% + \string\bibcite{#2}{\protect\newstylenums{#1}}}}\fi\ignorespaces} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% Literaturverweise nicht umbrechbar: +% \begin{macrocode} +\def\@citex[#1]#2{% + \let\@citea\@empty + \@cite{\@for\@citeb:=#2\do + {\@citea\def\@citea{,\,}% + \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% + \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi + \@ifundefined{b@\@citeb}{\mbox{\reset@font\bfseries ?}% + \G@refundefinedtrue + \@latex@warning + {Citation `\@citeb' on page \thepage \space undefined}}% + {\hbox{\csname b@\@citeb\endcsname}}}}{#1}% +} +% \end{macrocode} +% \begin{macro}{\btxISBN} +% \begin{macro}{\btxISSN} +% Die Zeichenketten ISBN und ISSN etwas kleiner schreiben: +% \begin{macrocode} +\renewcommand\btxISBN{\acro{ISBN}} +\renewcommand\btxISSN{\acro{ISSN}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \begin{macro}{\printISBN} +% \changes{1.10}{2003/10/30}{Umbruch in ISBN verhindern}% +% \begin{macrocode} +\ifhhcls@times +% \end{macrocode} +% Umbruch verhindern für Times: +% \begin{macrocode} + \newcommand\printISBN[1]{\mbox{#1}} +\else +% \end{macrocode} +% Falls Mediävalziffern verwendet werden, Ausgabe der ISBN mit +% verkleinertem X und verhindertem Umbruch: +% \begin{macrocode} + \newcommand\printISBN[1]{% + \mbox{\expandafter\hhcls@printISBN#1\@empty\@empty}% + } +% \end{macrocode} +% \end{macro} +% Drucken eines "`X"' in einer ISBN, in Kapitälchen. +% \begin{macrocode} + \newcommand\hhcls@printISBNx[1]{\acro{#1}} +% \end{macrocode} +% Dieser Befehl durchsucht die ISBN nach ``x'' oder ``X'' und druckt +% diese gesondert: +% \begin{macrocode} + \def\hhcls@printISBN#1#2\@empty{% + \begingroup + \edef\hhcls@argeins{#1}% + \edef\hhcls@argzwei{#2}% + \def\hhcls@argX{X}% + \def\hhcls@argx{x}% + \ifx\hhcls@argeins\hhcls@argX + \hhcls@printISBNx{#1}% + \else + \ifx\hhcls@argeins\hhcls@argx + \hhcls@printISBNx{#1}% + \else + #1% + \fi + \fi + \ifx\hhcls@argzwei\@empty + \else + \hhcls@printISBN#2\@empty + \fi + \endgroup + } +\fi +% \end{macrocode} +% \changes{1.10}{2003/10/30}{ISSN formatieren}% +% In der Bibliographie umschalten: +% \begin{macrocode} +\setbibliographyfont{ISBN}{\printISBN} +\setbibliographyfont{ISSN}{\printISBN} +% \end{macrocode} +% +% \section{Tabellen} +% +% Irgendein Spaltentyp mit Ausrichtung am Dezimalzeichen: +% \begin{macrocode} +\newcolumntype{d}[1]{D{.}{,}{#1}} +% \end{macrocode} +% +% \section{Fließumgebungen} +% +% \subsection{Platzierung} +% +% Bilder und Tabellen nur oben auf der Seite oder auf gesonderten Seiten: +% \begin{macrocode} +\renewcommand\fps@figure{tp} +\renewcommand\fps@table{tp} +% \end{macrocode} +% +% \begin{macro}{\floatpagefraction} +% Fließumgebungen erst auf eine eigene Seite packen, wenn sie +% mindestens 75\,\%\ der Seite in Anspruch nehmen: +% \begin{macrocode} +\renewcommand{\floatpagefraction}{0.75} % Default: 0.5 +% \end{macrocode} +% \end{macro} +% \begin{macro}{\topfraction} +% Bildplatzierung oben bis 75\,\%\ der Seite zulassen: +% \begin{macrocode} +\renewcommand{\topfraction}{0.75} % Default: 0.7 +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bottomfraction} +% Bildplatzierung unten bis 35\,\%\ der Seite zulassen: +% \begin{macrocode} +\renewcommand{\bottomfraction}{0.35} % Default: 0.3 +% \end{macrocode} +% \end{macro} +% \begin{macro}{\textfraction} +% Textanteil muss mindestens 20\,\%\ betragen: +% \begin{macrocode} +\renewcommand{\textfraction}{0.2} % Default: 0.2 +% \end{macrocode} +% \end{macro} +% Höchstens zwei Bilder oben: +% \begin{macrocode} +\setcounter{topnumber}{2} % Default: 2 +% \end{macrocode} +% Höchstens ein Bild unten: +% \begin{macrocode} +\setcounter{bottomnumber}{1} % Default: 1 +% \end{macrocode} +% Höchstens drei Bilder insgesamt: +% \begin{macrocode} +\setcounter{totalnumber}{3} % Default: 3 +% \end{macrocode} +% +% \subsection{Bugfix für Platzierung im Text} +% +% Fließumgebungen verhindern eine Silbentrennung im folgenden Wort. +% Diese Definition behebt das Problem +% (von Heiko Oberdiek, oberdiek@uni-freiburg.de): +% \begin{macrocode} +\g@addto@macro\end@float{% + \ifnum\@floatpenalty<\z@ + \ifnum\@floatpenalty<-\@Mii + \else + \ifhmode + \if@ignore + \penalty\@M + \hskip\z@skip + \fi + \fi + \fi + \fi +} +% \end{macrocode} +% +% \subsection{Abstände} +% +% Abstand zwischen zwei Fließumgebungen: +% \begin{macrocode} +\setlength\floatsep{18\p@ \@plus 10\p@ \@minus 2\p@} +% \end{macrocode} +% Abstand zwischen einer Fließumgebung und dem Text: +% \begin{macrocode} +\setlength\textfloatsep{14\p@ \@plus 20\p@ \@minus 4\p@} +% \end{macrocode} +% Abstände auf Fließumgebungsseiten: +% \begin{macrocode} +\setlength\@fptop{0\p@ \@plus 1fil} +\setlength\@fpsep{18\p@ \@plus 1fil} +\setlength\@fpbot{0\p@ \@plus 2fil} +% \end{macrocode} +% +% \subsection{Bildunter"= und Tabellenüberschriften} +% +% Hängender Einzug: +% \begin{macrocode} +\setcaphanging +% \end{macrocode} +% Schriftart für Bildunterschriften: +% \begin{macrocode} +\setkomafont{caption}{\normalfont\normalcolor\small\RaggedRight} +% \end{macrocode} +% \begin{macro}{\germanfigurename} +% Definition eines Befehls, der den Namen der Bildunterschriften ändert: +% \begin{macrocode} +\newcommand*\germanfigurename[1]{\gdef\hhcls@germanfigurename{#1}} +% \end{macrocode} +% \end{macro} +% Setzen der Bildunterschriften auf "`Bild"': +% \begin{macrocode} +\germanfigurename{Bild} +% \end{macrocode} +% Dem Paket |babel.sty| erzählen, dass für die deutsche Sprache immer +% |\hhcls@germanfigurename| als Bildunterschrift dienen soll: +% \begin{macrocode} +\addto\captionsgerman{\renewcommand*\figurename{\hhcls@germanfigurename}}% +\addto\captionsngerman{\renewcommand*\figurename{\hhcls@germanfigurename}}% +\addto\captionsaustrian{\renewcommand*\figurename{\hhcls@germanfigurename}}% +\addto\captionsnaustrian{\renewcommand*\figurename{\hhcls@germanfigurename}}% +% \end{macrocode} +% +% \subsection{Schriftart in Bildern} +% +% Schriftbefehle einrichten, die in der Art von KOMA"=Script mit +% \cs{setkomafont} verändert werden können. +% \begin{macrocode} +\newcommand*\@floatfont{\normalfont\normalcolor\normalsize} +\newcommand*\scr@fnt@float{\@floatfont} +% \end{macrocode} +% Einen Befehl umdefinieren, der am Anfang jeder Fließumgebung +% ausgeführt wird. Leider definiert schon |setspace| daran herum. +% \begin{macrocode} +\@ifpackageloaded{setspace}{% + \def\@xfloat #1[#2]{% + \latex@xfloat #1[#2]% + \def\baselinestretch{\setspace@singlespace}% + \scr@fnt@float + }% +}{% + \def\@floatboxreset{% + \reset@font + \scr@fnt@float + \@setminipage + }% +}% +% \end{macrocode} +% Schriftgröße in Fließumgebungen verringern. +% \begin{macrocode} +\setkomafont{float}{\normalfont\normalcolor\small}% +% \end{macrocode} +% Auch in |longtable|"=Umgebungen kleinere Schrift: +% \begin{macrocode} +\newcommand\hhcls@longtable{} +\let\hhcls@longtable\longtable +\renewcommand\longtable{\small\hhcls@longtable} +% \end{macrocode} +% +% \subsection{Verzeichnisse} +% +% \begin{macrocode} +\renewcommand*\l@figure{\@dottedtocline{1}{0em}{2.9em}} +% \end{macrocode} +% \begin{macrocode} +\let\l@table\l@figure +% \end{macrocode} +% +% +% \subsection{Subfigures} +% +% \begin{macro}{\subfigtopskip} +% \begin{macro}{\subfigbottomskip} +% \begin{macro}{\subfigcapmargin} +% Keine Abstände um Subfigures. Die müssen dann von Hand gemacht werden: +% \begin{macrocode} +\renewcommand{\subfigtopskip}{0pt} +\renewcommand{\subfigbottomskip}{0pt} +\renewcommand{\subfigcapmargin}{0pt} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \begin{macro}{\subcapsize} +% Bei Subfigures die gleiche Schriftgröße wie bei normalen +% Bildunterschriften: +% \begin{macrocode} +\renewcommand{\subcapsize}{\small} +% \end{macrocode} +% \end{macro} +% Abstand zwischen Bild und Bildunterschrift: +% \begin{macrocode} +\setlength{\subfigcapskip}{8pt} +% \end{macrocode} +% \begin{macro}{\subcapfont} +% Schriftart der Bildunterunterschriften. Zusätzlich Flattersatz. +% \begin{macrocode} +\renewcommand{\subcapfont}{\rmfamily\RaggedRight} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\subcaplabelfont} +% Schriftart für die Labels: +% \begin{macrocode} +\renewcommand{\subcaplabelfont}{\rmfamily} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\thesubfigure} +% Formatierung der Subfigure"=Nummer in Verweisen: +% \begin{macrocode} +\renewcommand*{\thesubfigure}{\,\alph{subfigure}} +\renewcommand*{\@@thesubfigure}{\alph{subfigure}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\@thesubfigure} +% Formatierung der Subfigure"=Nummer in Bildunterschriften: +% \begin{macrocode} +\renewcommand{\@thesubfigure}{% + {\subcapsize\subcaplabelfont\alph{subfigure}:}\space} +% \end{macrocode} +% \end{macro} +% +% \subsection{Subfloats} +% +% Nummerierung bei wiederholten Bildern und Tabellen: +% \begin{macrocode} +\renewcommand*\thesubfloatfigure{% + \themainfigure\,(\arabic{subfloatfigure}/\arabic{subfloatfiguremax})} +\renewcommand*\thesubfloattable{% + \themaintable\,(\arabic{subfloattable}/\arabic{subfloattablemax})} +% \end{macrocode} +% +% \subsection{Bilder und Tabellen zählen} +% +% Bilder zählen: +% \begin{macrocode} +\newcounter{bilderzahl}% +\g@addto@macro\endfigure{% + \stepcounter{bilderzahl}% +}% +% \end{macrocode} +% Tabellen zählen: +% \begin{macrocode} +\newcounter{tabellenzahl}% +\g@addto@macro\endtable{% + \stepcounter{tabellenzahl}% +}% +% \end{macrocode} +% Ausgabe der Werte: +% \begin{macrocode} +\AtEndDocument{% + \immediate\write\@auxout{% + \string\gdef\string\hhclsbilderzahl{\thebilderzahl}^^J% + \string\gdef\string\hhclstabellenzahl{\thetabellenzahl}^^J% + \string\gdef\string\hhclsaufgabenzahl{\theaufgabenzahl}}% +} +\addglobalwarning{% + \typeout{^^JNumber of figures: \thebilderzahl}% + \typeout{Number of tables: \thetabellenzahl}% + \typeout{Number of exercises: \theaufgabenzahl^^J}% +}% +% \end{macrocode} +% +% \subsection{Verzeichnisse} +% +% \begin{macro}{\listoffigures} +% Verzeichnis der Bilder (kleinere Schrift): +% \begin{macrocode} +\renewcommand*\listoffigures{% + \begingroup% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \lof@heading% + \small + \@parskipfalse\@parskip@indent% + \@starttoc{lof}% + \if@restonecol\twocolumn\fi + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\listoftables} +% Verzeichnis der Tabellen (kleinere Schrift): +% \begin{macrocode} +\renewcommand*\listoftables{% + \begingroup + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \lot@heading% + \small + \@parskipfalse\@parskip@indent% + \@starttoc{lot}% + \if@restonecol\twocolumn\fi + \endgroup +} +% \end{macrocode} +% \end{macro} +% +% \section{Index} +% +% Schreiben, wie Index erzeugt wird. +% \begin{macrocode} +\newcommand\hhcls@makeindex{} +\let\hhcls@makeindex=\makeindex +\renewcommand\makeindex{% + \hhcls@makeindex + \addglobalwarning{% + \typeout{^^JGenerate index by using^^J% + \space\space`makeindex -c -g -s bgteubner.ist \jobname'.^^J% + Have a look to the log file `\jobname.ilg'.^^J}% + }% +} +% \end{macrocode} +% \begin{macro}{\hhcls@germanindexname} +% Name des Index: +% \begin{macrocode} +\newcommand*\hhcls@germanindexname{Stichwortverzeichnis} +% \end{macrocode} +% \end{macro} +% Dem Paket |babel.sty| erzählen, dass für die deutsche Sprache immer +% |\hhcls@germanindexname| als Titel für das Sachwortverzeichnis dienen soll: +% \begin{macrocode} +\addto\captionsgerman{\renewcommand*\indexname{\hhcls@germanindexname}}% +\addto\captionsngerman{\renewcommand*\indexname{\hhcls@germanindexname}}% +\addto\captionsaustrian{\renewcommand*\indexname{\hhcls@germanindexname}}% +\addto\captionsnaustrian{\renewcommand*\indexname{\hhcls@germanindexname}}% +% \end{macrocode} +% Am Ende ein Sachwortverzeichnis erstellen: +% \begin{macrocode} +\AtEndDocument{\printindex} +% \end{macrocode} +% Set size for lists. +% \begin{macrocode} +\newcommand\listsfont{\footnotesize} +% \end{macrocode} +% \begin{environment}{theindex} +% Indexumgebung redefinieren, damit Flattersatz und kleinere Schrift +% verwendet werden. Außerdem gegenüber |\RaggedRight| eine größere +% "`Flatterung"' zulassen, um Overful hboxes zu vermeiden: +% \begin{macrocode} +\renewenvironment{theindex} + {\if@twocolumn + \@restonecolfalse + \else + \@restonecoltrue + \fi + \columnseprule \z@ + \columnsep 20\p@ + \setchapterpreamble{\index@preamble}% + \idx@heading% + \thispagestyle{\indexpagestyle}% + \par + \parindent\z@ + \setlength{\parskip}{\z@ \@plus .3\p@}% + \setlength{\parfillskip}{\z@ \@plus 1fil}% + \let\item\@idxitem + \setlength\RaggedRightRightskip{\z@\@plus 4em}% +% \end{macrocode} +% Boolean einführen, der prüfen hilft, ob der richtige Indexstil +% verwendet wurde. +% \begin{macrocode} + \newif\ifhhclsiscorrectindex + \RaggedRight\listsfont} + {\ifhhclsiscorrectindex + \else +% \end{macrocode} +% Der Autor hat einen nicht zulässigen Indexstil verwendet: +% \begin{macrocode} + \ClassError{bgteubner}{You have not used the correct index + style\MessageBreak + `bgteubner.ist' for the class `bgteubner.cls'}{% + You have to use the style bgteubner.ist:^^J% + Generate index by using^^J% + \space\space`makeindex -c -g -s bgteubner.ist \jobname'.^^J% + Have a look to the log file `\jobname.ilg'.}% + \fi + \if@restonecol\onecolumn\else\clearpage\fi} +% \end{macrocode} +% \end{environment} +% \begin{macro}{\@idxitem} +% Hängender Einzug mit 30\,pt: +% \begin{macrocode} +\renewcommand*\@idxitem{\par\hangindent 24\p@} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\subitem} +% Ein "`--"' vor Untereinträgen: +% \begin{macrocode} +\renewcommand*\subitem{\@idxitem \quad --\;} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\subsubitem} +% Zwei "`--"' vor Unter"=Untereinträgen: +% \begin{macrocode} +\renewcommand*\subsubitem{\@idxitem \quad --\;--\;} +% \end{macrocode} +% \end{macro} +% +% Befehle für Seitenbereiche, Verwendung z.\,B.\ \verb_\index{Moin|ff}_. +% +% \begin{macro}{\f} +% Ein einfaches "`f"' angehängt: +% \begin{macrocode} +\newcommand*\f[1]{#1\,f}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\ff} +% Ein einfaches "`ff"' angehängt: +% \begin{macrocode} +\newcommand*\ff[1]{#1\,ff}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\textbff} +% \begin{macro}{\textbfff} +% Die beiden Befehle in fett: +% \begin{macrocode} +\newcommand*\textbff[1]{\textbf{#1\,f}}% +\newcommand*\textbfff[1]{\textbf{#1\,ff}}% +% \end{macrocode} +% \end{macro} +% \end{macro} +% \begin{macro}{\subind} +% Wenn mit \verb_|see_ auf andere Indexeinträge mit Unterpunkten +% verwiesen wird, soll \cs{subind} statt einem Komma verwendet werden: +% \begin{macrocode} +\newcommand\subind{\,--\,\hskip\z@skip}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\emphindex} +% \changes{2.01}{2011/12/25}{Added macro \cs{emphindex} for important index +% entryies}% +% Macro for generating bold page references in the index. May be +% redefined if hyperref is used. +% \begin{macrocode} +\newcommand*\emphindex[1]{\textbf{#1}}% +% \end{macrocode} +% \end{macro} +% +% \section{Fußnoten} +% +% Formatierung der Fußnoten. Hängender Einzug, Fußnotenmarkierung +% nicht hochgestellt, Versalziffern: +% \begin{macrocode} +\deffootnote{1.5em}{1.5em}{\normalfont\newstylenums{\thefootnotemark}\enspace} +% \end{macrocode} +% \changes{1.02}{2003/09/17}{\cs{normalfont} in Fußnoten aufrufen}% +% Fußnoten im Flattersatz: +% \begin{macrocode} +\addtokomafont{footnote}{\normalfont\RaggedRight} +% \end{macrocode} +% Fußnotenmarkierung im Text in Versalziffern: +% \begin{macrocode} +\deffootnotemark{\textsuperscript{\newstylenums{\thefootnotemark}}} +% \end{macrocode} +% Abstand der Fußnoten vom Text? +% \begin{macrocode} +\setlength{\skip\footins}{10\p@ \@plus 4\p@ \@minus 2\p@} +% \end{macrocode} +% +% \section{Zusätzliche Textbefehle} +% +% \begin{macro}{\acro} +% \changes{1.01}{2003/09/16}{\cs{acro} für European Computer Modern +% serifenlos sowie kursive Schreibmaschinenschrift mit +% \cs{textsmaller} statt \cs{textsc}}% +% Großbuchstabige Abkürzungen in Kapitälchen setzen: +% \begin{macrocode} +\ifhhcls@times + \DeclareRobustCommand\acro[1]{\textsmaller{\MakeUppercase{#1}}} +\else + \DeclareRobustCommand\acro[1]{% + \ifthenelse{\equal{\f@family}{hfor}\or\equal{\f@family}{cmr}}{% + \textsc{\MakeLowercase{#1}}% + }{% + \ifthenelse{\(\equal{\f@family}{hfott}\or\equal{\f@family}{cmtt}\)% + \and\equal{\f@shape}{n}}{% + \textsc{\MakeLowercase{#1}}% + }{% + \textsmaller{\MakeUppercase{#1}}% + }% + }% + } +\fi +% \end{macrocode} +% \end{macro} +% \begin{macro}{\person} +% Personennamen: +% \begin{macrocode} +\newcommand\person{}% +\let\person=\emph +% \end{macrocode} +% \end{macro} +% \begin{macro}{\new} +% Neu eingeführte Begriffe: +% \begin{macrocode} +\newcommand\new{}% +\let\new=\emph +% \end{macrocode} +% \end{macro} +% \begin{macro}{\engl} +% Englische Begriffe: +% \begin{macrocode} +\newcommand\engl{}% +\let\engl=\emph +% \end{macrocode} +% \end{macro} +% \begin{macro}{\qed} +% \changes{1.10}{2003/10/30}{Befehl \cs{qed} eingeführt}% +% Ende eines Beweises: +% \begin{macrocode} +\newcommand*\qed{% + \hskip 1em plus 1fill\rule{0pt}{1ex}\hskip\z@skip + \hglue 0pt plus 1fill\mbox{\qedname}} +% \hskip 1em plus 1fill\rule{0.05mm}{1ex}\hskip\z@skip +% \rule{0.05mm}{1ex}\hglue 0pt plus 1fill\qedname} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\qedname} +% Text, der von \cs{qed} gesetzt wird: +% \begin{macrocode} +\newcommand*\qedname{\rule{1ex}{1ex}} +% \end{macrocode} +% \end{macro} +% +% +% \section{Mathematik} +% +% \subsection{Zusätzliche mathematische Befehle} +% +% \begin{macro}{\tr} +% Spur (tr): +% \begin{macrocode} +\newcommand*\tr{\mathop{\operator@font tr}\nolimits} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\e} +% Eulerkonstante: +% \begin{macrocode} +\newcommand*\e{\mathop{\operator@font e}\nolimits} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\d} +% Differentialoperator: +% +% For some reason, since texlive 2011, the original \cs{d} macro is +% redefined later again. This can be overcome by redefining \cs{d} at +% \cs{begin{document}}. +% \changes{2.01}{2011/12/29}{Fix later redefinition of \cs{d} for +% usage in math mode}% +% \begin{macrocode} +\let\origd=\d +\AtBeginDocument{ + \renewcommand*\d{% +% \end{macrocode} +% Das |\relax| ist notwendig, weil |\ifmmode| sonst nicht in der +% |align|"=Umgebung funktionieren würde. +% \begin{macrocode} + \relax\ifmmode + \mathrm{d}% + \else + \expandafter\origd + \fi + }% +}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\D} +% Differenzenoperator: +% \begin{macrocode} +\newcommand*\D{\ensuremath{\upDelta}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\grad} +% Gradient: +% \begin{macrocode} +\newcommand*\grad{\mathop{\operator@font grad}\nolimits} +% \end{macrocode} +% \end{macro} +% \begin{environment}{cases*} +% Fallunterscheidung mit schließender Klammer: +% \begin{macrocode} +\newenvironment{cases*}{% + \matrix@check\cases\env@cases +}{% + \endarray\right\rbrace% +} +% \end{macrocode} +% \end{environment} +% \begin{macro}{\equivalent} +% Entspricht-Zeichen: +% \begin{macrocode} +\newcommand*\equivalent{\ensuremath{\mathrel{\widehat{=}}}} +% \end{macrocode} +% \end{macro} +% \begin{environment}{nomathindent} +% Innerhalb dieser Umgebung ist der mathematische Einzug verringert +% oder gelöscht. +% \begin{macrocode} +%\newcommand*\nomathindent[1][1.0]{\rule{-#1\mathindent}{0mm}} +\newenvironment{nomathindent}[1][1.0]{% + \addtolength{\mathindent}{-#1\mathindent}% + \ignorespaces +}{\ignorespacesafterend} +% \end{macrocode} +% \end{environment} +% +% \begin{macro}{\vec} +% \begin{macro}{\matr} +% \begin{macro}{\tens} +% \changes{1.06}{2003/10/12}{Befehl \cs{tensor} in \cs{tens} umbenannt}% +% \changes{1.20}{2004/03/07}{MathTime font has original bold math. Use +% if available}% +% Befehl für Matrizen und Vektoren. +% Falls Fettdruck bei Times, gibt es keine richtige fette Schrift. +% "`Poor Man's Bold als Ersatz"'. +% \begin{macrocode} +\iftensor@bold + \ifhhcls@times + \ifhhcls@mathtime + \else + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{The combination of the main font + Times\MessageBreak + with bold vectors (option <boldvec>)\MessageBreak + leads to ugly results in some cases}}% + \renewcommand*\vec[1]{\ensuremath{\pmb{#1}}} + \renewcommand*\matr[1]{\ensuremath{\pmb{#1}}} + \renewcommand*\tens[2]{\ensuremath{\pmb{#1}}} + \fi + \fi +\fi +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \begin{macro}{\tensor} +% Einen Befehl \cs{tensor} erzeugen, der dem Nutzer sagt, dass der +% Befehl in \cs{tens} umbenannt wurde. +% \begin{macrocode} +\AtBeginDocument{% + \providecommand*\tensor{% + \ClassError{bgteubner}{\string\tensor\space command used instead + of \string\tens\space command (see help by pressing h)}{% + Because of some name clashes, the \string\tensor\space command + had to be renamed to \string\tens. Please change all calls + inside your document.}% + \tens + }% +} +% \end{macrocode} +% \end{macro} +% +% \subsection{Formatierung} +% +% Zeilenumbrüche zwischen Zeilen in abgesetzten Formeln erlauben: +% \begin{macrocode} +\allowdisplaybreaks +% \end{macrocode} +% Bug von |amsmath| beheben, der Labels auf Normalschrift zwingt: +% \begin{macrocode} +\def\maketag@@@#1{\hbox{\m@th#1}} +% \end{macrocode} +% +% Komma im Mathemodus als Dezimalzeichen verwenden, von +% Donald Arseneau (asnd@triumf.ca): +% \begin{macrocode} +\mathchardef\mathcomma\mathcode`\, +\mathcode`\,=32768 % "8000 +% +\begingroup +\catcode`\_=12 +\catcode`\,=\active +\@firstofone{% +\endgroup +% + \edef\DC@char{\meaning_} + \def\DC@parse#1 _{\def\DC@parse##1#1 ##2##3\delimiter{##2}} + \expandafter\DC@parse\DC@char + \toks@={\expandafter\DC@parse\meaning\DC@char} + \edef\DC@test{9<2\the\toks@ \DC@char.\delimiter} +% + \DeclareRobustCommand\ActiveComma{\futurelet\DC@char\DC@docomma} + \def\DC@docomma{% + \ifnum\DC@test \mathord \fi + \mathcomma + } + \let,\ActiveComma +} +% \end{macrocode} +% +% \section{Glossar, Abkürzungs- und Formelverzeichnisse}% +% +% Die Behandlung von solchen Verzeichnissen wurde aus dem +% |nomencl|"=Paket, Version~v3.1a vom 13.\,12.~2000, +% weiterentwickelt. +% +% Zunächst werden Befehle definiert, die das At"=Zeichen (@) in +% Argumenten finden und verarbeiten können. +% Da in der Klassendatei das @ eine besondere Bedeutung hat, muss dies +% zunächst auf den Standardwert wie im Text umgeschaltet werden. +% \begin{macrocode} +\makeatother +% \end{macrocode} +% \begin{macro}{\ifhasat} +% Dieser Befehl hat drei Argumente, wenn das erste ein @ enthält, wird +% das zweite Argument ausgeführt, andernfalls das dritte. +% \begin{macrocode} +\newcommand*\ifhasat[1]{% + \expandafter\csname @ifhasat\expandafter\endcsname#1@\end +} +% \end{macrocode} +% Routine, die die Arbeit für \cs{ifhasat} erledigt. +% \begin{macrocode} +\expandafter\def\csname @ifhasat\endcsname#1@#2\end{% + \ifx\relax#2\relax + \expandafter\csname @secondoftwo\expandafter\endcsname + \else + \expandafter\csname @firstoftwo\expandafter\endcsname + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\beforeat} +% Ähnlich wie \cs{ifhasat}, übernimmt aber nur ein Argument und gibt +% den Teil vor dem @ zurück. +% \begin{macrocode} +\newcommand*\beforeat[1]{% + \expandafter\csname @beforeat\expandafter\endcsname#1@\end +} +\expandafter\def\csname @beforeat\endcsname#1@#2\end{#1} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\afterat} +% Ähnlich wie \cs{ifhasat}, übernimmt aber nur ein Argument und gibt +% den Teil nach dem @ zurück. +% \begin{macrocode} +\newcommand*\afterat[1]{% + \ifhasat{#1}{\expandafter\csname hh@afterat\expandafter\endcsname#1\end}{}% +} +\expandafter\def\csname hh@afterat\endcsname#1@#2\end{#2} +% \end{macrocode} +% \end{macro} +% Zurückschalten des @ auf den Wert innerhalb der Klassendefinition. +% \begin{macrocode} +\makeatletter +% \end{macrocode} +% Prefix vor Einträge, um die Sortierung korrekt zu gestalten. Siehe +% dazu die Dokumentation zu |nomencl.sty|. Standardmäßig +% ausgeschaltet, um |makeindex| zu ermöglichen, Zeichen einzufügen. +% \begin{macrocode} +\def\hhcls@gloprefix{} +% \end{macrocode} +% Lösche die von der Formatdatei erzeugten Glossar"=Befehle. +% \begin{macrocode} +\let\glossary=\@undefined +\let\makeglossary=\@undefined +% \end{macrocode} +% \begin{macro}{\makeglossary} +% Definiere einen Befehl \cs{makeglossary}, der einen neuen Typ +% Glossar einrichtet.\sloppypar +% Standardmäßig wird ein Glossar erzeugt, für den neue Einträge mit +% \cs{glossary\{\meta{Eintrag}\}\{\meta{Erklärung}\}} generiert +% werden. Dann werden die Dateien \cs{\meta{\cs{jobname}}.glo} und +% \cs{jobname.gls} verwendet. +% Wird ein optionales Argument mit \cs{makeglossary[\meta{Name}]} +% übergeben, wird ein neuer Glossartyp eingerichtet, für den Einträge +% mit dem Befehl +% \cs{glossary\meta{Name}\{\meta{Eintrag}\}\{\meta{Erklärung}\}} +% generiert werden. Es werden die Dateien +% \cs{jobname.\meta{Name}} und +% \cs{jobname.\meta{Name}s} verwendet. +% \begin{macrocode} +\newcommand*\makeglossary[1][\@empty]{% +% \end{macrocode} +% Speicher die Dateiendungen für die von \LaTeX und die von makeindex +% erzeugten Dateien in den Makros \cs{hhcls@gloname} und +% \cs{hhcls@\meta{Name}glsname}. +% \begin{macrocode} + \edef\hhcls@gloname{glo#1}% + \expandafter\edef\csname hhcls@#1glsname\endcsname{gls#1}% +% \end{macrocode} +% Ein paar Ausgaben zur Information. +% \begin{macrocode} + \typeout{^^JNew glossary type \string\glossary#1 with file + extensions `\hhcls@gloname' and `\csname hhcls@#1glsname\endcsname'.}% + \typeout{Writing glossary file `\jobname.\hhcls@gloname'.^^J}% +% \end{macrocode} +% Am Ende des Übersetzungslaufs wird dem Anwender mitgeteilt, wie er +% die Glossare erzeugen kann. +% \begin{macrocode} + \addglobalwarning{% + \typeout{^^JGenerate glossary type \string\glossary#1 by using^^J% + \space\space`makeindex -c -g -s bgteuglo.ist -o + \jobname.\csname hhcls@#1glsname\endcsname\space + -t \jobname.\hhcls@gloname lg \jobname.\hhcls@gloname'^^J% + or^^J% + \space\space`makeindex -c -g -s bgteuglochar.ist -o + \jobname.\csname hhcls@#1glsname\endcsname\space + -t \jobname.\hhcls@gloname lg \jobname.\hhcls@gloname'.^^J% + Have a look to the log file `\jobname.\hhcls@gloname lg'^^J.}% + }% +% \end{macrocode} +% Überprüfen, ob es den Befehl schon gibt, damit nicht doppelt +% definiert wird. +% \begin{macrocode} + \@ifundefined{glossary#1}{% +% \end{macrocode} +% \begin{macro}{\glossary} +% Definition des Befehls, der im Text verwendet wird, also +% \cs{glossary} oder \cs{glossary\meta{Name}}. Dieser Befehl ist +% zerbrechlich, darf also nicht in Bildunterschriften etc.\ verwendet +% werden. Dies ist aber keine Einschränkung, da ja im Glossar keine +% Verweise auf Seiten oder andere Dinge gemacht werden. +% Wird als erstes Argument ein zusätzliches optionales Arguemnt +% angegeben, wird der Inhalt dem Eintrag statt des normalerweise +% verwendeten "`a"' vorangestellt, um die Sortierung zu +% beeinflussen. Ebenso ist aber auch die Verwendung von |blah@fasel| +% wie beim Index möglich. +% \begin{macrocode} + \expandafter\def\csname glossary#1\endcsname{% +% \end{macrocode} +% Den Ausgabekanal an \cs{@hhcls@glossary} weiterreichen. +% \begin{macrocode} + \def\hhcls@tmpoutputfile{\csname hhcls@glossaryfile#1\endcsname}% +% \end{macrocode} +% Die eigentliche Arbeit wird von \cs{@hhcls@glossary} übernommen. +% \begin{macrocode} + \protect\@hhcls@glossary + }% +% \end{macrocode} +% \end{macro} +% Festlegen und öffnen der Ausgabedatei. +% \begin{macrocode} + \expandafter\newwrite\csname hhcls@glossaryfile#1\endcsname + \immediate\openout\csname hhcls@glossaryfile#1\endcsname=% + \jobname.\hhcls@gloname% +% \end{macrocode} +% \begin{macro}{\glossarypreamble} +% Definieren der Präambel des Glossars. Per Default wird ein neues, +% unnummeriertes Kapitel mit der Überschrift +% \cs{glossary\meta{Name}name} angefangen. Für den normalen Glossar +% \cs{glossary} ist diese durch |babel.sty| definiert. Bei anderen +% Glossartypen \cs{glossary\meta{Name}} muss der Anwender dies selbst +% erledigen, indem er mit +% \cs{newcommand}\cs{glossary\meta{Name}name\{\meta{Titel}\}} einen +% Befehl erzeugt. +% Der Anwender kann auch den Befehl \cs{glossary\meta{Name}preamble} +% umdefinieren, um beispielsweise nur einen Abschnitt zu beginnen oder +% zusätzlichen Text zu platzieren. +% \begin{macrocode} + \expandafter\def\csname glossary#1preamble\endcsname{% + \@ifundefined{glossary#1name}{% +% \end{macrocode} +% Wenn \cs{glossary\meta{Name}name} nicht definiert ist, einen Fehler +% ausgeben und \emph{\bfseries ????} als Titel verwenden. +% \begin{macrocode} + \ClassError{bgteubner}{No title for glossary type `#1' + defined}{You have to define a title for the glossary type by + doing^^J% + \space\space\space\space% + \string\newcommand\string\glossary #1name{<Name>}.}% + \addchap{\itshape ????}% + }{% +% \end{macrocode} +% Titel als Kapitelnamen ausgeben. +% \begin{macrocode} + \addchap{\csname glossary#1name\endcsname}}% + }% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\printglossary} +% Befehl \cs{printglossary\meta{Name}}, der ein automatisch erzeugtes +% Glossar ausgibt. Wird ein optionales Argument angegeben, verändert +% sich die Spaltenbreite der Einträge. +% \begin{macrocode} + \expandafter\def\csname printglossary#1\endcsname{% + \@ifnextchar[% + {\csname @printglossary#1\endcsname}% + {\csname @printglossary#1\endcsname[\glossarylabelwidth]}% + }% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\@printglossary} +% Der interne Befehl, der von \cs{printglossary\meta{Name}} aufgerufen +% wird. +% \begin{macrocode} + \expandafter\def\csname @printglossary#1\endcsname[##1]{% + \begingroup +% \end{macrocode} +% Breite aus dem Argument setzen. +% \begin{macrocode} + \setlength{\glossarylabelwidth}{##1}% +% \end{macrocode} +% Preambel umkopieren. +% \begin{macrocode} + \def\hhcls@glossarypreamble{\csname glossary#1preamble\endcsname}% +% \end{macrocode} +% Die erzeugte Datei mit der enthaltenen |theglossary|"=Umgebung laden. +% \begin{macrocode} + \@input@{\jobname.\csname hhcls@#1glsname\endcsname}% + \endgroup + }% +% \end{macrocode} +% \end{macro} +% \begin{macrocode} + }{% +% \end{macrocode} +% Ist der Glossartyp schon definiert, eine Fehlermeldung ausgeben. +% \begin{macrocode} + \ClassError{bgteubner}{Glossary type `#1' already defined}{You + have tried to define the glossary type `#1' twice}}% +} +\@onlypreamble\makeglossary +% \end{macrocode} +% \end{macro} +% Defaulteinstellung für diejenigen, die nicht mit automatisch +% erzeugten Verzeichnissen arbeiten und direkt in den Quelltext eine +% |theglossary|"=Umgebung schreiben. +% \begin{macrocode} +\def\hhcls@glossarypreamble{\addchap{\glossaryname}}% +% \end{macrocode} +% Ein Befehl aus dem |nomencl|"=Paket, bei dem ich nicht weiß, was er +% genau tut. Behalte ich lieber, wie es ist. +% \begin{macrocode} +\def\hhcls@glo@verb{\expandafter\strip@prefix\meaning} +% \end{macrocode} +% Dieser Befehl stellt fest, ob ein Präfix zur Sortierung angegeben +% wurde oder nicht. +% \begin{macrocode} +\def\@hhcls@glossary{% + \@bsphack + \begingroup + \@sanitize + \@ifnextchar[% + {\@@@hhcls@glossary}{\@@@hhcls@glossary[\hhcls@gloprefix]}% +}% +% \end{macrocode} +% \begin{macro}{\@@@hhcls@glossary} +% Das eigentliche Schreiben des Eintrags in die Ausgabedatei. +% \begin{macrocode} +\def\@@@hhcls@glossary[#1]#2#3{% + \def\@tempa{#2}\def\@tempb{#3}% +% \end{macrocode} +% Wenn das Argument ein @ enthält, eine andere Behandlung verwenden. +% \begin{macrocode} + \ifhasat{#2}{% +% \end{macrocode} +% Ist ein @ enthalten, den Eintrag fast unverändert in die Ausgabedatei +% schreiben. Es wird nur der Präfix vorgeschaltet und der Teil nach +% dem @ in geschweifte Klammern gesetzt, um Probleme zu verhindern, +% wenn eine eckige Klammer enthalten ist. +% \begin{macrocode} + \protected@write\hhcls@tmpoutputfile{}% + {\string\glossaryentry{#1\beforeat{#2}@{\afterat{#2}}] +% \hhcls@glo@verb\@tempb + \@tempb + |glossarypage}{\thepage}% + }% + }{% +% \end{macrocode} +% Ist kein @ enthalten, wird der Eintrag verdoppelt und mit @ in die +% Datei geschrieben. +% \begin{macrocode} + \protected@write\hhcls@tmpoutputfile{}% + {\string\glossaryentry{% + #1\@tempa @{\@tempa}] + \@tempb +% #1\hhcls@glo@verb\@tempa @{\hhcls@glo@verb\@tempa}] +% \hhcls@glo@verb\@tempb + |glossarypage}{\thepage}% + }% + }% + \endgroup + \@esphack} +% \end{macrocode} +% \end{macro} +% Breite der Einträge in den Verzeichnissen definieren. +% \begin{macrocode} +\newlength{\glossarylabelwidth} +\setlength{\glossarylabelwidth}{3em} +% \end{macrocode} +% Einträge linksbündig. +% \begin{macrocode} +\def\glossarylabel#1{#1\hfil} +% \end{macrocode} +% \begin{environment}{theglossary} +% Die Umgebung, die die Ausgabe der Verzeichnisse vornimmt. +% Im optionalen Argument kann der Defaultwert der Präambel +% überschrieben werden. Das ist nützlich, wenn man |theglossary| +% direkt verwendet. +% \begin{macrocode} +\newenvironment{theglossary}[1][\@empty]{% + \def\tuetel{#1}% + \def\tueteluet{\@empty}% +% \end{macrocode} +% Verzeichnisse zweispaltig setzen. +% \begin{macrocode} + \begin{multicols}{2}[% +% \end{macrocode} +% Schriftgrößen umstellen. +% \begin{macrocode} + \let\size@section\normalsize + \let\size@subsection\small + \let\size@subsubsection\small + \small +% \end{macrocode} +% Präambel ausgeben. +% \begin{macrocode} + \ifx\tuetel\tueteluet + \hhcls@glossarypreamble + \else + #1% + \fi + ]% +% \end{macrocode} +% Layout innerhalb der Liste. +% \begin{macrocode} + \setlength{\columnsep}{20pt}% + \listsfont +% \end{macrocode} +% Liste beginnen. Falls ein \cs{item} ohne Argument in eckigen +% Klammern verwendet wird, einen Fehler ausgeben, denn das macht hier +% wirklich keinen Sinn. +% \begin{macrocode} + \begin{list}{\ClassError{bgteubner}{No symbol given for + \string\item}{In the `theglossary' environment, you have to + specify a symbol^^J% + for each \string\item\space using \string\item[<symbol>], e.g.^^J% + \space\space\space\space + \string\item[{$\string\sigma_{\string\mathrm{max}}$}] Maximal + stress^^J% + \space\space\space\space + \string\item[DIN] Deutsches Institut f"ur Normung}}{% + \setlength{\labelwidth}{\glossarylabelwidth}% + \leftmargin\labelwidth + \advance\leftmargin by \labelsep + \let\makelabel\glossarylabel% +% \end{macrocode} +% Absatzabstand nicht dehnbar, um nicht die Zeilen zu weit auseinander +% zu ziehen. +% \begin{macrocode} + \parsep\z@% + \parskip\z@% +% \parsep\z@ \@plus\p@% +% \parskip\z@ \@plus\p@% + \setlength{\itemsep}{0pt}% + \newif\ifhhclsiscorrectglossary + \RaggedRight + }% + }{% +% \end{macrocode} +% Ende der Liste. +% \begin{macrocode} +% \ifhhclsiscorrectglossary +% \else +% \ClassError{bgteubner}{You have not used the correct glossary +% style\MessageBreak +% `bgteuglo.ist' or `bgteuglochar.ist' for the class +% `bgteubner.cls'}{% +% You have to use one of the style `bgteuglo.ist' or +% `bgteuglochar.ist'.^^J% +% Have a look to the file \jobname.log to learn which command +% line to use.}% +% \fi + \end{list}% + \end{multicols}% + \ignorespacesafterend + \noindentnextpar\par +} +% \end{macrocode} +% \end{environment} +% \begin{macro}{\glossarypage} +% Befehl, der die Seitenzahlen in den theoremartigen Verzeichnissen +% ignoriert. +% \begin{macrocode} +\def\glossarypage#1{} +\def\glossarypagedelim{} +\def\glossarypagerange{} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\glossarynewchar} +% Zeichen für einen neuen Buchstaben im Glossar: +% \begin{macrocode} +\newcommand\glossarynewchar[1]{% + \indexspace + \item [\textbf{#1}]\strut + \@nobreaktrue\nopagebreak +} +% \end{macrocode} +% \end{macro} +% +% \section{Anderer Kram} +% +% Testen, ob beidseitig (zu Debug"=Zwecken): +% \begin{macrocode} +\if@twoside +\else + \ClassError{bgteubner}{One-side format chosen}{You may not print a + book with one-side format.} +\fi +% \end{macrocode} +% \changes{1.14}{2003/12/17}{New command \cs{GetFileInfo} (from +% \texttt{url.sty})}% +% \begin{macro}{\GetFileInfo} +% Get file version and date (from |doc.sty|). +% \begin{macrocode} +\providecommand*\GetFileInfo[1]{% + \def\filename{#1}% + \def\@tempb##1 ##2 ##3\relax##4\relax{% + \def\filedate{##1}% + \def\fileversion{##2}% + \def\fileinfo{##3}}% + \edef\@tempa{\csname ver@#1\endcsname}% + \expandafter\@tempb\@tempa\relax? ? \relax\relax} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\version} +% Überprüfung, ob das Dokument mit der geforderten Version übersetzt wird: +% \begin{macrocode} +\newcommand*\version[1]{% + \begingroup + \GetFileInfo{bgteubner.cls}% + \ifx\hhcls@tmp\fileversion + \typeout{^^JVersion of the class `bgteubner.cls' + (\fileversion) is identical^^J% + with the wanted version.^^J}% + \else + \typeout{^^JVersion of the class `bgteubner.cls' + (\fileversion) differs from wanted version (#1).^^J}% + \addglobalwarning{\ClassWarningNoLine{bgteubner}{The version, wanted in + the document (#1),\MessageBreak + differs from the used version of the + `bgteubner.cls'\MessageBreak + class (\fileversion)}}% + \fi + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\frontmatter} +% \changes{1.01}{2003/09/16}{Römische Seitenzahlen für European +% Computer Modern in Kapitälchen statt Versalien}% +% Buch fängt mit Seite~5 an: +% \begin{macrocode} +\newcommand\hhcls@frontmatter{} +\let\hhcls@frontmatter=\frontmatter +\renewcommand\frontmatter[1][5]{% + \hhcls@frontmatter + \ifhhcls@times + \pagenumbering{Roman}% + \else + \renewcommand\thepage{\textsc{\roman{page}}}% + \fi + \setcounter{page}{5}% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\backmatter} +% \cs{backmatter} ignorieren. +% \begin{macrocode} +\renewcommand*\backmatter{\ClassWarning{bgteubner}{The + \string\backmatter\space command is ignored}} +% \end{macrocode} +% \end{macro} +% Dinge, die im Entwurfsmodus getan werden: +% \begin{macrocode} +\ifhhcls@entwurf +% \end{macrocode} +% Warnung am Ende, dass man nicht vergisst, den Entwurfsmodus +% auszuschalten: +% \begin{macrocode} + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{Leave out the class option + <draft>\MessageBreak + for the final version}% + } +% \end{macrocode} +% \begin{macro}{\now} +% Zeit berechnen (aus time.sty): +% \begin{macrocode} + \newcommand*\now{{% + \def\Time{3}% + \def\Hour{4}% + \def\Minute{5}% + \count\Time=\time\relax + \count\Hour=\count\Time\relax + \divide\count\Hour by 60\relax%%hours past midnight + \count\Minute=\count\Hour\relax + \multiply\count\Minute by -60\relax + \advance\count\Minute by \count\Time\relax %%minutes past hour + \the\count\Hour\relax:% + \ifnum\count\Minute<10 + 0% + \fi + \the\count\Minute\relax + }} +% \end{macrocode} +% \end{macro} +% Fußzeilen anpassen: +% \begin{macrocode} + \ifoot[{\rmfamily \"Ubersetzt: \today, \now}]{% + {\rmfamily \"Ubersetzt: \today, \now}} +% \end{macrocode} +% Warnung bei übervollen Zeilen anschalten: +% \begin{macrocode} + \overfullrule5mm +\fi +% \end{macrocode} +% +% \begin{macro}{\noindentnextpar} +% Dieser Befehl löscht im nächsten Absatz den Absatzeinzug: +% \begin{macrocode} +\newcommand*\noindentnextpar{% + \global\everypar{% +% \end{macrocode} +% Einzug auf Null setzen: +% \begin{macrocode} + \setbox0\lastbox +% \end{macrocode} +% Für die folgenden Absätze diese Einstellung wieder löschen: +% \begin{macrocode} + \global\everypar{}% + }% +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\bigskip} +% Befehl |\bigskip| für Abschnittswechsel so ändern, dass danach kein +% Einzug gesetzt wird. Außerdem den Abstand anpassen: +% \begin{macrocode} +\newcommand\hhcls@bigskip{} +\let\hhcls@bigskip=\bigskip +\renewcommand\bigskip{\par\hhcls@bigskip\noindentnextpar} +\setlength{\bigskipamount}{18.0pt plus 6.0pt minus 6.0pt} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\medskip} +% Befehl |\medskip| für Abschnittswechsel so ändern, dass danach kein +% Einzug gesetzt wird. Außerdem den Abstand anpassen: +% \begin{macrocode} +\newcommand*\hhcls@medskip{} +\let\hhcls@medskip\medskip +\renewcommand{\medskip}{\par\hhcls@medskip\noindentnextpar} +\setlength{\medskipamount}{9.0pt plus 3.0pt minus 3.0pt} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\smallskip} +% Befehl |\smallskip| für Abschnittswechsel so ändern, dass danach kein +% Einzug gesetzt wird. Außerdem den Abstand anpassen: +% \begin{macrocode} +\newcommand*\hhcls@smallskip{} +\let\hhcls@smallskip\smallskip +\renewcommand{\smallskip}{\par\hhcls@smallskip\noindentnextpar} +\setlength{\smallskipamount}{4.5pt plus 1.5pt minus 1.5pt} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\gliederungsfehler} +% Fehlerausgaben in den Umgebungen, wenn Gliederungsbefehle verboten sind: +% \begin{macrocode} +\newcommand*\gliederungsfehler[1]{% + \renewcommand{\part}{\ClassError{bgteubner}{\string\part\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% + \renewcommand{\addpart}{\ClassError{bgteubner}{\string\addpart\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% + \renewcommand{\chapter}{\ClassError{bgteubner}{\string\chapter\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% + \renewcommand{\addchap}{\ClassError{bgteubner}{\string\addchap\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% + \renewcommand{\section}{\ClassError{bgteubner}{\string\section\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% + \renewcommand{\subsection}{\ClassError{bgteubner}{\string\subsection\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% +} +% \end{macrocode} +% \end{macro} +% \begin{environment}{hhcls@quotation} +% Eine eigene quotation-Umgebung für interne Belange: +% \begin{macrocode} +\newlength{\hhcls@leftmargin}% +\newlength{\hhcls@rightmargin}% +\newenvironment{hhcls@quotation}[3][\@empty]{% + \edef\hhcls@tmpa{#1}% + \ifx\hhcls@tmpa\@empty + \setlength{\hhcls@rightmargin}{#2}% + \else + \setlength{\hhcls@rightmargin}{#1}% + \fi + \setlength{\hhcls@leftmargin}{#2}% + \begin{list}{}{% + \listparindent\parindent% + \itemindent0em% + \leftmargin\hhcls@leftmargin% + \rightmargin\hhcls@rightmargin + \parsep\z@ \@plus\p@}% + \begin{spacing}{#3}% + \item\relax + }{% +% \end{macrocode} +% \changes{1.10}{2003/10/30}{Abstände am Ende der Umgebung korrigiert}% +% \begin{macrocode} + \end{spacing}% + \removelastskip + \end{list}% + }% +% \end{macrocode} +% \end{environment} +% \begin{environment}{quotation} +% \changes{1.10}{2003/10/30}{\texttt{quotation}"=Umgebung angepasst}% +% \changes{1.20}{2004/03/07}{\texttt{quotation} environment with +% correct margins}% +% |quotation|"=Umgebung ohne Einrückung im ersten Absatz, größerer +% Absatzeinzug. +% \begin{macrocode} +\renewenvironment{quotation}{% + \list{}{% + \listparindent \parindent + \itemindent \z@ + \leftmargin \hhcls@leftmargin + \rightmargin \hhcls@rightmargin + \parsep \z@ \@plus\p@}% + \item\relax +}{% + \endlist +} +% \end{macrocode} +% \end{environment} +% \begin{environment}{quote} +% \changes{1.20}{2004/03/07}{\texttt{quote} environment with +% correct margins}% +% |quote| environment with correct margins in |important| environment. +% \begin{macrocode} +\renewenvironment{quote}{% + \list{}{% + \leftmargin \hhcls@leftmargin + \rightmargin \hhcls@rightmargin + }% + \item\relax +}{% + \endlist +} +% \end{macrocode} +% \end{environment} +% \begin{macro}{\setmargin} +% Befehl zum Setzen von Einrücken bei den vielen Umgebungen: +% \begin{macrocode} +\newcommand*\setmargin[1]{% + \edef\@setmarginname{#1}% + \@setmargin} +\newcommand*\@setmargin[2][\@empty]{% + \edef\hhcls@tmp{#1}% + \ifx\hhcls@tmp\@empty + \setlength{% + \expandafter\csname\@setmarginname @lmargin\endcsname}{#2}% + \else + \setlength{% + \expandafter\csname\@setmarginname @lmargin\endcsname}{#1}% + \fi + \setlength{% + \expandafter\csname\@setmarginname @rmargin\endcsname}{#2}% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\leftmargin} +% Einrückung aller eingerückten Umgebungen. +% \changes{1.10}{2003/10/30}{Einrückung aller Umgebungen angepasst}% +% \changes{1.09}{2003/10/28}{Einrückung aller Umgebungen erneut +% angepasst}% +% \begin{macrocode} +\setlength{\leftmargini}{1.75\parindent} +\setlength{\leftmargin}{\leftmargini} +\setlength{\hhcls@leftmargin}{\leftmargini} +\setlength{\labelwidth}{\leftmargini} +% \end{macrocode} +% \end{macro} +% +% \section{Advanced"=Umgebung} +% +% Einzüge, standardmäßig links und rechts auf |\leftmargin|: +% \begin{macrocode} +\newlength{\advanced@lmargin} +\newlength{\advanced@rmargin} +\setmargin{advanced}{\leftmargini} +% \end{macrocode} +% \begin{macro}{\advancedfont} +% Schriftart innerhalb der advanced"=Umgebung: +% \begin{macrocode} +\newcommand\advancedfont{\footnotesize} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\advancedspacing} +% Zeilenabstand innerhalb advanced"=Umgebung: +% \begin{macrocode} +\ifhhcls@times + \newcommand\advancedspacing{1.18} +\else + \newcommand\advancedspacing{1.12} +\fi +% \end{macrocode} +% \end{macro} +% \begin{macro}{\advancednamefont} +% \begin{macro}{\noadvancedname} +% \begin{macro}{\advancedname} +% Name der Umgebung, falls nicht definiert, wird nichts angezeigt: +% \begin{macrocode} +\newcommand*\advancednamefont{\bfseries% + \iftensor@bold\else\mathversion{bold}\fi} +\newcommand*\noadvancedname{\gdef\advancedname{}} +\noadvancedname +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \begin{environment}{advanced} +% Definition der Advanced"=Umgebung: +% \begin{macrocode} +\newenvironment{advanced}{% +% \end{macrocode} +% Kapitel"= und Abschnittsüberschriften bis |\subsection| verbieten: +% \begin{macrocode} + \gliederungsfehler{advanced}% +% \end{macrocode} +% Schriftarten für kleine Abschnittsüberschriften festlegen: +% \begin{macrocode} + \let\size@subsubsection\advancedfont + \let\size@paragraph\advancedfont + \let\size@subparagraph\advancedfont +% \end{macrocode} +% Die eigentliche Umgebung starten: +% \begin{macrocode} +% \bigskip + \begin{hhcls@quotation}[\advanced@rmargin]{\advanced@lmargin}{% + \advancedspacing}% +% \end{macrocode} +% Schriftart in der Advanced"=Umgebung +% \begin{macrocode} + \advancedfont +% \end{macrocode} +% Falls vorhanden, die Inline"=Überschrift anzeigen: +% \begin{macrocode} + \ifx\advancedname\empty + \else + {\advancednamefont\advancedname}~% + \fi +% \end{macrocode} +% Leerzeichen am Anfang ignorieren: +% \begin{macrocode} + \ignorespaces + }{% +% \end{macrocode} +% Ende der Umgebung: +% \begin{macrocode} + \end{hhcls@quotation}% +% \bigskip +% \end{macrocode} +% Leerzeichen ignorieren: +% \begin{macrocode} + \ignorespacesafterend +% \end{macrocode} +% Nächsten Absatz nicht einrücken. Damit das funktioniert, muss die +% |hhcls@quotation|"=Umgebung zwingend mit +% \cs{begin\{hhcls@quotation\}}\ldots\cs{end\{hhcls@quotation\}} +% aufgerufen werden, da sonst die Änderung lokal bleibt. +% \begin{macrocode} + \noindentnextpar\par +} +% \end{macrocode} +% \end{environment} +% +% \section{Beliebige theoremartige Umgebungen} +% +% \changes{1.10}{2003/10/30}{Schriftgröße in theoremartigen Umgebungen +% einstellbar}% +% Sollen Theoreme kleine oder normale Schrift haben? +% \begin{macrocode} +\ifhhcls@theoremsmall +% \end{macrocode} +% \begin{macro}{\theoremfont} +% Schriftgröße in Theoremen, einheitlich: +% \begin{macrocode} + \def\theoremfont{\small} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\theoremspacing} +% Zeilenabstand innerhalb der Theoreme, einheitlich: +% \begin{macrocode} + \ifhhcls@times + \newcommand\theoremspacing{1.12} + \else + \newcommand\theoremspacing{1.06} + \fi +\else +% \end{macrocode} +% \end{macro} +% \begin{macro}{\theoremfont} +% Schriftgröße in Theoremen, einheitlich: +% \begin{macrocode} + \def\theoremfont{\normalsize} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\theoremspacing} +% Zeilenabstand innerhalb der Theoreme, einheitlich: +% \begin{macrocode} + \newcommand\theoremspacing{1.0} +\fi +% \end{macrocode} +% \end{macro} +% Einzug der Theoreme links und rechts, einheitlich: +% \changes{1.13}{2003/12/16}{Use variable margins for theorem-like +% environments}% +% \begin{macrocode} +\newlength{\theorem@lmargin} +\newlength{\theorem@rmargin} +% \end{macrocode} +% \changes{1.10}{2003/10/30}{Einrückung der Theoremüberschriften +% automatisch erhöhen, fall nötig}% +% Einrückung der Theoremsüberschrift. +% Die unterschiedlichen Maße sind nötig, um die Einrückung automatisch +% erhöhen zu können, falls eine Überschrift zu lang ist. +% \cs{theorem@indent@min} ist das Minimalmaß und der Default, +% \cs{theorem@indent} ist die aktuell verwendete Länge, und +% \cs{theorem@indent@max} ist die maximal auftretende Breite. +% \begin{macrocode} +\newlength{\theorem@indent@min} +\setlength{\theorem@indent@min}{7.8398em} +\newlength{\theorem@indent} +\setlength{\theorem@indent}{\theorem@indent@min} +\newlength{\theorem@indent@max} +% \end{macrocode} +% Nach dem Übersetzungslauf wird kontrolliert, ob eine +% Theoremsüberschrift zu lang war, so dass beim nächsten Lauf die +% korrekte Länge verwendet werden kann. +% \begin{macrocode} +\AtEndDocument{% +% \end{macrocode} +% Die maximal auftretende Breite ist größer als das definierte +% Minimum. +% \begin{macrocode} + \ifdim\theorem@indent@max>\theorem@indent@min +% \end{macrocode} +% Im nächsten Lauf muss dann die aktuell größte Breite verwendet +% werden. +% \begin{macrocode} + \immediate\write\@auxout{% + \string\global\string\theorem@indent=\the\theorem@indent@max}% +% \end{macrocode} +% Die größte Breite ist größer als der aktuell verwendete Wert. +% Die Breite hat sich also erhöht $\longrightarrow$ Warnung. +% \begin{macrocode} + \ifdim\theorem@indent@max>\theorem@indent + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{Indentation for theorem + titles has been increased.\MessageBreak + Rerun to adjust the indentation}% + }% + \else +% \end{macrocode} +% Die größte Breite ist kleiner als der aktuell verwendete Wert. +% Die Breite hat sich also verringert $\longrightarrow$ Warnung. +% \begin{macrocode} + \ifdim\theorem@indent@max<\theorem@indent + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{Indentation for theorem + titles has been decreased.\MessageBreak + Rerun to adjust the indentation}% + }% + \fi + \fi + \else +% \end{macrocode} +% Die größte Breite ist kleiner als das Minimum. +% Zusätzlich ist der aktuell verwendete Wert aber noch größer. +% Die Breite hat sich also verringert $\longrightarrow$ Warnung. +% \begin{macrocode} + \ifdim\theorem@indent>\theorem@indent@min + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{Indentation for theorem + titles has been decreased.\MessageBreak + Rerun to adjust the indentation}% + }% + \fi + \fi +} +% \end{macrocode} +% \begin{macro}{\float@addtolists} +% \begin{macro}{\hhcls@theoremlist} +% Dieser Befehl wird vom \cs{chapter}"=Befehl aufgerufen, wenn +% ein neues Kapitel begonnen wird. +% Dadurch soll in allen Verzeichnissen der Theoremumgebungen ein +% Zwischenraum eingefügt werden. +% Der Umweg mit \cs{hhcls@theoremskip} wird gewählt, weil +% \cs{float@addtolists} ein Argument besitzt, die Definition der Liste +% \cs{hhcls@theoremlist} nur ohne Argumente funktioniert. +% \begin{macrocode} +\newcommand\float@addtolists[1]{% + \def\hhcls@theoremskip{#1}% + \hhcls@theoremlist} +\newcommand\hhcls@theoremlist{} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \begin{macro}{\hhcls@theoremzahl} +% Funktion, die am Ende die Anzahl des Auftretens der einzelnen +% Theorem"=Umgebungen in die PDF"=Datei schreibt: +% \begin{macrocode} +\newcommand\hhcls@theoremanzahl{} +\newsavebox{\hhcls@@@theoremtitlewidth} +% \end{macrocode} +% \end{macro} +% Boolean, ob Theoremumgebung mit Sternvariante aufgerufen wird. +% \begin{macrocode} +\newif\iftheorem@starvariant +% \end{macrocode} +% \begin{macro}{\newtheorem} +% Befehl zum Einrichten beliebiger Theoreme, z.\,B.\ von Beispielen, +% Sätzen usw. Erster Parameter: Name der Umgebung; zweiter Parameter: +% Gedruckter Präfix zur Nummer. +% \begin{macrocode} +\def\newtheorem#1#2{% +% Name des Theorems in der Überschrift: +% \begin{macrocode} + \expandafter\def\csname theorem@#1name\endcsname{#2}% +% \end{macrocode} +% \changes{1.13}{2003/12/16}{Make delimiter for theorems configurable}% +% Postfix (colon) after theorem name and number: +% \begin{macrocode} + \expandafter\def\csname theorem@#1postfix\endcsname{:}% +% \end{macrocode} +% Set margins. +% \begin{macrocode} + \expandafter\newlength\expandafter{\csname theorem@#1@lmargin\endcsname}% + \expandafter\newlength\expandafter{\csname theorem@#1@rmargin\endcsname}% + \setmargin{theorem@#1}{\leftmargini}% +% \end{macrocode} +% Zähler dieser Theoremart: +% \begin{macrocode} + \newcounter{theorem@#1}[chapter]% +% \end{macrocode} +% Zählen der Anzahl des Auftretens: +% \begin{macrocode} + \newcounter{theorem@#1zahl}% +% \end{macrocode} +% Zählen der Anzahl des Auftretens: +% \begin{macrocode} + \g@addto@macro\hhcls@theoremanzahl{% + ; #2: \csname thetheorem@#1zahl\endcsname}% +% \end{macrocode} +% Labelformat: "`Kapitel.Theorem"': +% \begin{macrocode} + \expandafter\def\csname thetheorem@#1\endcsname{% + \thechapter.\@arabic\csname c@theorem@#1\endcsname}% +% \end{macrocode} +% Befehl für die Theoremüberschrift: +% \begin{macrocode} + \expandafter\def\csname theorem@#1title\endcsname##1{% +% \end{macrocode} +% Zähler anpassen. +% \begin{macrocode} + \iftheorem@starvariant + \else + \refstepcounter{theorem@#1}% + \fi +% \end{macrocode} +% Überschrift erzeugen. +% \begin{macrocode} + {% + \raggedsection\normalfont\normalsize\sectfont\nobreak +% \end{macrocode} +% \changes{1.13}{2003/12/16}{Make delimiter for theorems configurable}% +% Den Anfang der Überschrift in eine Box speichern. +% \begin{macrocode} + \savebox{\hhcls@@@theoremtitlewidth}{% + \csname theorem@#1name\endcsname% + \iftheorem@starvariant + \else + ~\csname thetheorem@#1\endcsname + \fi + \csname theorem@#1postfix\endcsname~}% +% \end{macrocode} +% Prüfen, ob die aktuelle Überschrift breiter als alle vorherigen ist. +% \begin{macrocode} + \settowidth{\@tempdima}{\usebox{\hhcls@@@theoremtitlewidth}}% + \ifdim\@tempdima>\theorem@indent@max + \global\theorem@indent@max=\@tempdima + \fi +% \end{macrocode} +% Überschrift ausgeben. +% \changes{1.20}{2004/03/07}{Avoid page break after title in +% theorem-like enverionment}% +% \changes{1.30}{2004/04/10}{Improve spacing after title of +% theorem-like environment}% +% \begin{macrocode} + \normalfont\normalsize\sectfont + \makebox[\theorem@indent][l]{\usebox{\hhcls@@@theoremtitlewidth}}% + \setlength\@tempdima{1pt}% + \settoheight\@tempdimb{D}% + \addtolength\@tempdima{\@tempdimb}% + \settoheight\@tempdimb{\theoremfont D}% + \addtolength\@tempdima{-\@tempdimb}% + ##1\nobreak\par\nobreak\vspace{\@tempdima}\nobreak}\nobreak + \@afterheading}% +% \end{macrocode} +% Dieser Befehl wird von \cs{chapter} aufgerufen, um in der +% Liste der Theoreme einen Platz einzufügen. +% \begin{macrocode} + \g@addto@macro\hhcls@theoremlist{% + \addtocontents{#1}{\hhcls@theoremskip}% + }% +% \end{macrocode} +% Den Startbefehl der Sternvariante (unnummeriert) definieren: +% \begin{macrocode} + \expandafter\def\csname #1*\endcsname{% +% \end{macrocode} +% Schalter anschalten. +% \begin{macrocode} + \theorem@starvarianttrue +% \end{macrocode} +% Jetzt die Theorem"=Umgebung aufrufen: +% \begin{macrocode} + \csname #1\endcsname + }% +% \end{macrocode} +% Ende der Sternvariante: +% \begin{macrocode} + \expandafter\def\csname end#1*\endcsname{\csname end#1\endcsname}% +% \end{macrocode} +% Den Startbefehl der eigentlichen Umgebung definieren: +% \begin{macrocode} + \expandafter\def\csname #1\endcsname{% + \@ifnextchar[{% + \csname hhcls@@#1\endcsname + }{% + \csname hhcls@@#1\endcsname[\empty]% + }}% +% \end{macrocode} +% Initialisierung durchführen: +% \begin{macrocode} + \expandafter\def\csname hhcls@@#1\endcsname[##1]{% +% \end{macrocode} +% \changes{1.13}{2003/12/16}{Use variable margins for theorem-like +% environments}% +% Set margins. +% \begin{macrocode} + \setlength{\theorem@lmargin}{\csname theorem@#1@lmargin\endcsname}% + \setlength{\theorem@rmargin}{\csname theorem@#1@rmargin\endcsname}% +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Reintroduce lost adaption of margins for +% theorem-like environments inside important environment}% +% Set margins. +% \begin{macrocode} + \ifhhcls@inimportant + \addtolengthminzero{\theorem@lmargin}{-\fboxsep}% + \addtolengthminzero{\theorem@rmargin}{-\fboxsep}% + \addtolengthminzero{\theorem@indent}{-\fboxsep}% + \fi +% \end{macrocode} +% Zur Sicherheit einen Absatz (z.\,B.\ damit im vorherigen Absatz die +% Zeilenabstände korrekt bleiben). +% \begin{macrocode} + \par +% \end{macrocode} +% Die eigentliche Umgebung starten: +% \begin{macrocode} + \begin{list}{}{% +% \end{macrocode} +% \changes{1.10}{2003/10/30}{Linker Abstand eingestellt}% +% Abstände einstellen. +% \begin{macrocode} + \topsep 8\p@ \@plus2\p@ \@minus4\p@ + \itemindent-\theorem@lmargin + \listparindent\parindent + \leftmargin\theorem@lmargin + \rightmargin\theorem@rmargin + \parsep\z@ \@plus\p@ +% \end{macrocode} +% Anzahl zählen: +% \begin{macrocode} + \stepcounter{theorem@#1zahl}% +% \end{macrocode} +% Gliederungsbefehle ausschalten +% \begin{macrocode} + \gliederungsfehler{#1}% +% \end{macrocode} +% Schriftart einstellen: +% \begin{macrocode} + \let\size@subsubsection\theoremfont + \let\size@paragraph\theoremfont + \let\size@subparagraph\theoremfont +% \end{macrocode} +% Schriftart: +% \begin{macrocode} + \theoremfont + }% +% \end{macrocode} +% Zeilenabstand anpassen. +% \begin{macrocode} + \begin{spacing}{\theoremspacing}% +% \end{macrocode} +% Eine List"=Umgebung fängt immer mit \cs{item} an. +% \begin{macrocode} + \item\relax +% \end{macrocode} +% Überschrift. +% \begin{macrocode} + \csname theorem@#1title\endcsname{##1}\nobreak% +% \end{macrocode} +% Eintrag in das Verzeichnis der Sätze schreiben (aber nur, wenn +% das Theorem benannt ist): +% \begin{macrocode} + \edef\hhtmp{##1}% + \ifx\hhtmp\empty + \else + \iftheorem@starvariant + \addcontentsline{#1}{#1}{##1}% + \else + \addcontentsline{#1}{#1}{% + \numberline {\csname thetheorem@#1\endcsname}##1}% + \fi + \fi +% \end{macrocode} +% Leerzeichen am Anfang ignorieren: +% \begin{macrocode} + \nobreak\ignorespaces + }% +% \end{macrocode} +% Ende der Umgebung: +% \begin{macrocode} + \expandafter\def\csname end#1\endcsname{% +% \end{macrocode} +% Ende der Umgebung: +% \changes{1.10}{2003/10/30}{Abstände am Ende der Umgebung korrigiert}% +% \begin{macrocode} + \end{spacing}% + \removelastskip + \end{list}% +% \end{macrocode} +% Leerzeichen ignorieren: +% \begin{macrocode} + \ignorespacesafterend +% \end{macrocode} +% Nächsten Absatz nicht einrücken: +% \begin{macrocode} + \noindentnextpar + \par + }% +% \end{macrocode} +% Erzeugen einer Liste der Satze: +% \begin{macrocode} + \expandafter\def\csname l@#1\endcsname{\@dottedtocline{1}{0em}{2.9em}}% +% \end{macrocode} +% \begin{macrocode} + \addglobalwarning{% + \typeout{#2: \csname thetheorem@#1zahl\endcsname\space times used}% + } +% \end{macrocode} +% \begin{macrocode} +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\listoftheorems} +% \begin{macrocode} +\newcommand*\listoftheorems[2]{% + \begingroup% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \float@listhead{#2}% + \small + \setlength{\parskip}{\z@}% + \@starttoc{#1}% + \if@restonecol\twocolumn\fi + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{environment}{theoremdelimiter} +% \changes{1.13}{2003/12/16}{Make delimiter for theorems configurable}% +% This environment takes two arguments, the first is the name of the +% theorem-like environment that shall get another delimiter after the +% number. +% The second argument is the new delimiter that is valid inside the +% environment. +% \begin{macrocode} +\newenvironment{theoremdelimiter}[2]{% + \expandafter\def\csname theorem@#1postfix\endcsname{#2}% + \ignorespaces +}{% + \ignorespacesafterend +}% +% \end{macrocode} +% \end{environment} +% +% \begin{macro}{\settheoremmargin} +% \changes{1.13}{2003/12/16}{Use variable margins for theorem-like +% environments}% +% Befehl zum Setzen von Einrücken theoremartiger Umgebungen: +% \begin{macrocode} +\newcommand*\settheoremmargin[1]{% + \edef\@setmarginname{#1}% + \@settheoremmargin} +\newcommand*\@settheoremmargin[2][\@empty]{% + \edef\hhcls@tmp{#1}% + \ifx\hhcls@tmp\@empty + \setlength{% + \expandafter\csname theorem@\@setmarginname @lmargin\endcsname}{#2}% + \else + \setlength{% + \expandafter\csname theorem@\@setmarginname @lmargin\endcsname}{#1}% + \fi + \setlength{% + \expandafter\csname theorem@\@setmarginname @rmargin\endcsname}{#2}% +} +% \end{macrocode} +% \end{macro} +% +% +% \subsection{Beispiele} +% +% \begin{environment}{example} +% Beispiel"=Umgebung einrichten: +% \begin{macrocode} +\newtheorem{example}{\examplename} +% \end{macrocode} +% \end{environment} +% \begin{macro}{\listofexamples} +% Verzeichnis der Beispiele: +% \begin{macrocode} +\newcommand*\listofexamples{\listoftheorems{example}{\listexamplename}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\examplename} +% \begin{macro}{\listexamplename} +% Überschriften für Beispiele und deren Verzeichnisse: +% \begin{macrocode} +\newcommand*\examplename{} +\newcommand*\listexamplename{} +\addto\captionsgerman{% + \renewcommand*\examplename{Beispiel}% + \renewcommand*\listexamplename{Verzeichnis der Beispiele}% +} +\addto\captionsngerman{% + \renewcommand*\examplename{Beispiel}% + \renewcommand*\listexamplename{Verzeichnis der Beispiele}% +} +\addto\captionsaustrian{% + \renewcommand*\examplename{Beispiel}% + \renewcommand*\listexamplename{Verzeichnis der Beispiele}% +} +\addto\captionsnaustrian{% + \renewcommand*\examplename{Beispiel}% + \renewcommand*\listexamplename{Verzeichnis der Beispiele}% +} +\addto\captionsenglish{% + \renewcommand*\examplename{Example}% + \renewcommand*\listexamplename{List of Examples}% +} +\addto\captionsamerican{% + \renewcommand*\examplename{Example}% + \renewcommand*\listexamplename{List of Examples}% +} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \subsection{Definitionen} +% +% \begin{environment}{definition} +% Definition"=Umgebung einrichten: +% \begin{macrocode} +\newtheorem{definition}{\definitionname} +% \end{macrocode} +% \end{environment} +% \begin{macro}{\listofdefinitions} +% Verzeichnis der Definitionen: +% \begin{macrocode} +\newcommand*\listofdefinitions{% + \listoftheorems{definition}{\listdefinitionname}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\definitionname} +% \begin{macro}{\listdefinitionname} +% Überschriften für Definitionen und deren Verzeichnisse: +% \begin{macrocode} +\newcommand*\definitionname{} +\newcommand*\listdefinitionname{} +\addto\captionsgerman{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{Verzeichnis der Definitionen}% +} +\addto\captionsngerman{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{Verzeichnis der Definitionen}% +} +\addto\captionsaustrian{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{Verzeichnis der Definitionen}% +} +\addto\captionsnaustrian{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{Verzeichnis der Definitionen}% +} +\addto\captionsenglish{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{List of Definitions}% +} +\addto\captionsamerican{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{List of Definitions}% +} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \subsection{Beweise} +% +% \begin{environment}{proof} +% Beweis"=Umgebung einrichten: +% \begin{macrocode} +\newtheorem{proof}{\proofname} +% \end{macrocode} +% \end{environment} +% \begin{macro}{\listofproofs} +% Verzeichnis der Beweise: +% \begin{macrocode} +\newcommand*\listofproofs{\listoftheorems{proof}{\listproofname}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\proofname} +% \begin{macro}{\listproofname} +% Überschriften für Beweise und deren Verzeichnisse: +% \begin{macrocode} +\newcommand*\proofname{} +\newcommand*\listproofname{} +\addto\captionsgerman{% + \renewcommand*\proofname{Beweis}% + \renewcommand*\listproofname{Verzeichnis der Beweise}% +} +\addto\captionsngerman{% + \renewcommand*\proofname{Beweis}% + \renewcommand*\listproofname{Verzeichnis der Beweise}% +} +\addto\captionsaustrian{% + \renewcommand*\proofname{Beweis}% + \renewcommand*\listproofname{Verzeichnis der Beweise}% +} +\addto\captionsnaustrian{% + \renewcommand*\proofname{Beweis}% + \renewcommand*\listproofname{Verzeichnis der Beweise}% +} +\addto\captionsenglish{% + \renewcommand*\proofname{Proof}% + \renewcommand*\listproofname{List of Proofs}% +} +\addto\captionsamerican{% + \renewcommand*\proofname{Proof}% + \renewcommand*\listproofname{List of Proofs}% +} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \section{Grau schattierte Kiste für Formeln} +% +% \changes{1.13}{2003/12/16}{Avoid negative margins of theorems}% +% \begin{macro}{\addtolengthminzero} +% This command acts like \cs{addtolength} but don't set a length +% smaller than zero. +% \begin{macrocode} +\newcommand*\addtolengthminzero[2]{% + \addtolength{#1}{#2}% + \ifdim#1<0pt + \setlength{#1}{0pt}% + \fi +} +% \end{macrocode} +% \end{macro} +% +% Boolean zur Entscheidung, ob die |important|- oder die +% |important*|"=Umgebung verwendet wird. +% \begin{macrocode} +\newif\ifhhcls@importantmath +\newif\ifhhcls@inimportant +% \end{macrocode} +% Graue Kästen an? +% \begin{macrocode} +\ifhhcls@greybox +% \end{macrocode} +% Savebox, in die der Inhalt der |important|- und +% |important*|"=Umgebungen zwischengespeichert wird. +% \begin{macrocode} + \newsavebox{\hhcls@@@important} +% \end{macrocode} +% Länge, um den Absatzeinzug in die Kästen rüberretten zu können. +% \begin{macrocode} + \newlength{\hhcls@important@parindent} +% \end{macrocode} +% Farbe des Hintergrunds. +% \begin{macrocode} + \definecolor{importantcolor}{gray}{0.9} +% \end{macrocode} +% Fußnotenkram, um innerhalb der |important|- und der +% |important*|"=Umgebung Fußnoten verwenden zu können. +% Innerhalb der Umgebung wird beim Auftreten des +% \cs{footnote}"=Befehls der Inhalt in einen Befehl gespeichert und +% nach der Minipage ausgegeben. +% Lokal wird ein \cs{footnotemark} gesetzt. +% \begin{macrocode} + \newcounter{hhcls@savefootnote} +% \end{macrocode} +% \begin{macro}{\addfnmark} +% Befehl, der den Fußnotentext in eine Liste im Befehl +% \cs{hhcls@fnlist} speichert, die am Ende der Umgebungen ausgegeben +% wird. +% \begin{macrocode} + \newcommand\addfnmark[2][\@empty]{% + \begingroup + \edef\hhcls@temp{#1}% + \ifx\hhcls@temp\@empty + \g@addto@macro\hhcls@fnlist{% + \stepcounter{hhcls@savefootnote}% + \footnotetext[\thehhcls@savefootnote]{#2}% + }% + \else + \g@addto@macro\hhcls@fnlist{\footnotetext[#1]{#2}}% + \fi + \endgroup + } +% \end{macrocode} +% \end{macro} +% \begin{macro}{\hhcls@important@footnote} +% Fußnotenbefehl, der in den Umgebungen auf \cs{footnote} umkopiert +% werden wird. +% \begin{macrocode} + \newcommand\hhcls@important@footnote[2][\@empty]{% + \begingroup + \edef\hhcls@temp{#1}% + \ifx\hhcls@temp\@empty + \footnotemark + \else + \footnotemark[#1]% + \fi + \addfnmark[#1]{#2}% + \endgroup + }% +% \end{macrocode} +% \end{macro} +% \begin{environment}{important} +% Graue Kiste, die mit Text anfängt: +% \begin{macrocode} + \newenvironment{important}{% +% \end{macrocode} +% Set boolean that we are inside important now. +% \begin{macrocode} + \hhcls@inimportanttrue +% \end{macrocode} +% Längen setzen. +% \changes{1.10}{2003/10/30}{Theoremeinzüge in grauen Kästen +% reduzieren}% +% \changes{1.13}{2003/12/16}{Avoid negative margins of theorems in +% grey boxes}% +% \changes{1.13}{2003/12/16}{Reduce margins of advanced and +% execercises in grey boxes}% +% \changes{1.20}{2004/03/07}{Add some margin adjustments to important +% environment}% +% \begin{macrocode} + \setlength{\fboxsep}{0.5\parindent}% + \addtolengthminzero{\mathindent}{-\fboxsep}% + \addtolengthminzero{\theorem@lmargin}{-\fboxsep}% + \addtolengthminzero{\theorem@rmargin}{-\fboxsep}% + \addtolengthminzero{\advanced@lmargin}{-\fboxsep}% + \addtolengthminzero{\advanced@rmargin}{-\fboxsep}% + \addtolengthminzero{\subexercise@lmargin}{-\fboxsep}% + \addtolengthminzero{\subexercise@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@subexerciseindent}{-\fboxsep}% + \addtolengthminzero{\answer@lmargin}{-\fboxsep}% + \addtolengthminzero{\answer@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@answerindent}{-\fboxsep}% + \addtolengthminzero{\subanswer@lmargin}{-\fboxsep}% + \addtolengthminzero{\subanswer@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@subanswerindent}{-\fboxsep}% + \addtolengthminzero{\leftmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@leftmargin}{-\fboxsep}% + \setlength{\hhcls@important@parindent}{\parindent}% +% \end{macrocode} +% Zunächst einen Absatz und entsprechenden Abstand einfügen. +% \changes{1.10}{2003/10/30}{Abstände am Anfang der Umgebung korrigiert}% +% \begin{macrocode} + \removelastskip + \par + \vskip\topsep +% \end{macrocode} +% Fußnoten initialisieren. +% \begin{macrocode} + \gdef\hhcls@fnlist{}% + \setcounter{hhcls@savefootnote}{\value{footnote}}% + \let\mpfootnote=\footnote + \let\footnote\hhcls@important@footnote% +% \end{macrocode} +% |figure|- und |table|"=Umgebung sowie \cs{marginpar}"=Befehl +% abfangen, da sie nicht funktionieren. +% \begin{macrocode} + \let\hhcls@important@figure=\figure + \renewcommand\figure{% + \ClassError{bgteubner}{% + figure environment used inside + important\ifhhcls@importantmath *\fi\space environment}{% + Inside the important\ifhhcls@importantmath *\fi\space + environment, floats cannot be used.}% + \hhcls@important@figure}% + \let\hhcls@important@table=\table + \renewcommand\table{% + \ClassError{bgteubner}{% + table environment used inside + important\ifhhcls@importantmath *\fi\space environment}{% + Inside the important\ifhhcls@importantmath *\fi\space + environment, floats cannot be used.}% + \hhcls@important@table}% + \let\hhcls@important@marginpar=\marginpar + \renewcommand\marginpar{% + \ClassError{bgteubner}{% + \string\marginpar\space used inside + important\ifhhcls@importantmath *\fi\space environment}{% + Inside the important\ifhhcls@importantmath *\fi\space + environment, floats cannot be used.}% + \hhcls@important@marginpar}% +% \end{macrocode} +% Den Inhalt der Umgebung erstmal in die Box \cs{hhcls@@@important} +% zwischenspeichern. +% \begin{macrocode} + \begin{lrbox}{\hhcls@@@important}% + \setlength\@tempdima{\linewidth}% + \addtolength\@tempdima{-2\fboxsep}% + \begin{minipage}{\@tempdima}% +% \end{macrocode} +% Falls die Sternvariante gewählt wurde, den oberen Abstand verringern. +% \begin{macrocode} + \ifhhcls@importantmath + \vspace{-\abovedisplayskip}% + \fi +% \end{macrocode} +% Absatzeinzug restaurieren, erster Absatz ohne Einzug. +% \changes{1.21}{2004/03/25}{Reduce skip when \texttt{important} +% environment starts with a theorem-like environment}% +% \begin{macrocode} + \setlength{\parindent}{\hhcls@important@parindent}% + \noindent + \@setminipage + \ignorespaces + }{% +% \end{macrocode} +% Ende der Umgebung. +% \begin{macrocode} + \par\unskip + \end{minipage}% + \end{lrbox}% +% \end{macrocode} +% Jetzt wird der Inhalt der Umgebung in eine Kiste gesetzt. +% Die graue Kiste soll nicht eingerückt werden. +% \begin{macrocode} + \noindent +% \end{macrocode} +% Jetzt wird der Inhalt wirklich gesetzt. +% \changes{1.10}{2003/10/30}{Breite korrigiert, wenn nur eine +% theoremartige Umgebung gesetzt wird}% +% \begin{macrocode} + \colorbox{importantcolor}{% + \setlength\@tempdima{\linewidth}% + \addtolength\@tempdima{-2\fboxsep}% + \begin{minipage}{\@tempdima}% + \usebox{\hhcls@@@important}% + \end{minipage}% + }% +% \end{macrocode} +% Jetzt die Fußnoten setzen, falls welche aufgetreten sind. +% \begin{macrocode} + \hhcls@fnlist +% \end{macrocode} +% Unterer Abstand und Absatzeinzug verhindern, falls kein weiterer +% Absatz im Quelltext folgt. +% \begin{macrocode} + \vskip\topsep + \noindentnextpar + \par + \ignorespacesafterend + } +% \end{macrocode} +% \end{environment} +% \begin{environment}{important*} +% Sternvariante für Kästen, die mit einer abgesetzten Formel beginnen. +% Der normalen Variante wird übergeben, dass sie oben Platz klauen +% soll, und dann aufgerufen. +% \begin{macrocode} + \newenvironment{important*}{% + \hhcls@importantmathtrue + \begin{important}% + }{% + \end{important}% + \ignorespacesafterend} +% \end{macrocode} +% \end{environment} +% \begin{environment}{longimportant} +% Variante für lange Kästen, die über Seiten umbrochen werden können. +% Sollte möglichst wenig verwendet werden. +% \begin{macrocode} + \newenvironment{longimportant}{% +% \end{macrocode} +% Set boolean that we are inside important now. +% \begin{macrocode} + \hhcls@inimportanttrue +% \end{macrocode} +% \changes{1.10}{2003/10/30}{Theoremeinzüge in grauen Kästen +% reduzieren}% +% Längen setzen. +% \changes{1.13}{2003/12/16}{Avoid negative margins of theorems in +% grey boxes}% +% \changes{1.13}{2003/12/16}{Reduce margins of advanced and +% execercises in grey boxes}% +% \changes{1.20}{2004/03/07}{Add some margin adjustments to longimportant +% environment}% +% \begin{macrocode} + \setlength{\fboxsep}{0.5\parindent}% + \addtolengthminzero{\mathindent}{-\fboxsep}% + \addtolengthminzero{\theorem@lmargin}{-\fboxsep}% + \addtolengthminzero{\theorem@rmargin}{-\fboxsep}% + \addtolengthminzero{\advanced@lmargin}{-\fboxsep}% + \addtolengthminzero{\advanced@rmargin}{-\fboxsep}% + \addtolengthminzero{\subexercise@lmargin}{-\fboxsep}% + \addtolengthminzero{\subexercise@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@subexerciseindent}{-\fboxsep}% + \addtolengthminzero{\answer@lmargin}{-\fboxsep}% + \addtolengthminzero{\answer@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@answerindent}{-\fboxsep}% + \addtolengthminzero{\subanswer@lmargin}{-\fboxsep}% + \addtolengthminzero{\subanswer@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@subanswerindent}{-\fboxsep}% + \addtolengthminzero{\leftmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@leftmargin}{-\fboxsep}% +% \end{macrocode} +% Befehl zum Erzeugen des Hintergrunds festlegen. +% \begin{macrocode} + \def\FrameCommand{\colorbox{importantcolor}}% +% \end{macrocode} +% |figure|- und |table|"=Umgebung sowie die Befehle \cs{footnote} und +% \cs{marginpar} abfangen, da sie nicht funktionieren. +% \begin{macrocode} + \renewcommand\footnote[2][]{% + \ClassError{bgteubner}{% + \footnote\space used inside longimportant environment}{% + Inside the longimportant environment, footnotes cannot be + used.\MessageBreak + You may use the short version, the important or important* + environment if you\MessageBreak + really need a footnote. Be aware that these environments + don't\MessageBreak + break across pages.}% + }% + \let\hhcls@important@figure=\figure + \renewcommand\figure{% + \ClassError{bgteubner}{% + figure environment used inside longimportant environment}{% + Inside the longimportant environment, floats cannot be used.}% + \hhcls@important@figure}% + \let\hhcls@important@table=\table + \renewcommand\table{% + \ClassError{bgteubner}{% + table environment used inside longimportant environment}{% + Inside the longimportant environment, floats cannot be used.}% + \hhcls@important@table}% + \let\hhcls@important@marginpar=\marginpar + \renewcommand\marginpar{% + \ClassError{bgteubner}{% + \string\marginpar\space used inside longimportant environment}{% + Inside the longimportant environment, floats cannot be used.}% + \hhcls@important@marginpar}% +% \end{macrocode} +% Internen Befehl aufrufen. +% \changes{1.21}{2004/03/25}{Reduce skip when \texttt{longimportant} +% environment starts with a theorem-like environment}% +% \begin{macrocode} + \MakeFramed {\advance\hsize-\width \FrameRestore + \noindent\@setminipage}% +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Workaround for bug in \texttt{framed.sty} +% which causes wrong width in some cases}% +% This \cs{vspace} is a work around for a bug in |framed.sty| which +% causes |longimportant| environments with only a theorem-like +% environment to be too narrow. +% \begin{macrocode} + \hhcls@important@workaround + \ignorespaces + }{% + \par\unskip + \endMakeFramed + \noindentnextpar + \par + \ignorespacesafterend + } +% \end{macrocode} +% \end{environment} +% \begin{environment}{longimportant*} +% \changes{1.20}{2004/03/07}{New \texttt{longimportant*} environment}% +% Define a |longimportant*| environment in analogy to the |important*| +% environment. +% With an optional argument, the vertical adjustment can be changed. +% \begin{macrocode} + \newenvironment{longimportant*}[1][\abovedisplayskip]{% + \begin{longimportant}\vspace{-#1}\ignorespaces + }{% + \end{longimportant}% + } +% \end{macrocode} +% \end{environment} +% \begin{macro}{\hhcls@important@workaround} +% \changes{1.21}{2004/03/25}{Use \texttt{framed} workaround for +% longimportant only for old versions of that package}% +% From 2004-03-07 on, the bug in the |framed| package has been fixed, +% that caused the box to be too narrow sometimes. +% \begin{macrocode} + \@ifpackagelater{framed}{2004/03/07}{% + \newcommand*\hhcls@important@workaround{} + }{% + \newcommand*\hhcls@important@workaround{\vspace{0mm}} + \ClassWarningNoLine{bgteubner}{Outdated version of framed.sty + used. A workaround\MessageBreak + for a bug has been installed. Future versions of\MessageBreak + bgteubner.cls will need a version of framed.sty\MessageBreak + that is dated 2004/03/07 or newer} + } +% \end{macrocode} +% \end{macro} +% Kisten aus? +% \begin{macrocode} +\else +% \end{macrocode} +% \begin{environment}{important} +% \begin{environment}{important*} +% \begin{environment}{longimportant} +% \begin{environment}{longimportant*} +% Dummy"=Befehle, falls graue Kästen ausgeschaltet sind. +% \begin{macrocode} + \newenvironment{important}{\par}{\par} + \newenvironment{important*}{\par}{\par} + \newenvironment{longimportant}{\par}{\par} + \newenvironment{longimportant*}[1][]{\par}{\par} +\fi +% \end{macrocode} +% \end{environment} +% \end{environment} +% \end{environment} +% \end{environment} +% +% \section{Aufgaben und Lösungen} +% +% \subsection{Aufgaben für globale Aufgabensammlung} +% +% Aufgaben zählen: +% \begin{macrocode} +\newcounter{aufgabenzahl}% +% \end{macrocode} +% Berechnung der Einrueckung der Aufgabenüberschriften: +% \begin{macrocode} +\newlength{\hhcls@@exerciseindent}% +\setlength{\hhcls@@exerciseindent}{7.8398em}% +% \end{macrocode} +% Zähler definieren. Für die |aufgabe|"=Umgebung Format "`Aufgabe"': +% \begin{macrocode} +\newcounter{@exercise} +\renewcommand*\the@exercise{\@arabic\c@@exercise} +% \end{macrocode} +% Überschrift der |exercise|"=Umgebung: +% \begin{macrocode} +% Befehle selbst +\newcommand\@exercise{\@startsection{@exercise}{1}{\z@}% + {-3.5ex \@plus -1ex \@minus -.2ex}% + {2.3ex \@plus.2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@section\nobreak}} +% \end{macrocode} +% Einträge ins Inhaltsverzeichnis definieren, falls gewünscht: +% \begin{macrocode} +\if@exercisetotoc + \newcommand*\l@@exercise[2]{\@dottedtocline{1}{1.5em}{2.3em}{% + \def\numberline##1{% + \hb@xt@\@tempdima{\lprefix@exercise##1\hfil}}#1}{#2}} +\else + \newcommand*\l@@exercise[2]{} +\fi +% \end{macrocode} +% \begin{macro}{\exercisename} +% Name der Aufgaben: +% \begin{macrocode} +\newcommand*\exercisename{Aufgabe} +% \end{macrocode} +% \end{macro} +% Format der Überschrift: +% \begin{macrocode} +\def\prefix@exercise{\exercisename~}% +% \end{macrocode} +% Doppelpunkt nach der Zahl: +% \begin{macrocode} +\def\postfix@exercise{:}% +% \end{macrocode} +% Überschrift für unnummerierte Aufgaben: +% \begin{macrocode} +\def\prefix@exercisestar{\exercisename}% +% \end{macrocode} +% Unnummeriert mit Doppelpunkt: +% \begin{macrocode} +\def\postfix@exercisestar{:}% +% \end{macrocode} +% Prefix im Inhaltsverzeichnis: +% \begin{macrocode} +\def\lprefix@exercise{}% +% \end{macrocode} +% Aufgaben zählen: +% \begin{macrocode} + \g@addto@macro\hhcls@theoremlist{% + \addtocontents{exercise}{\hhcls@theoremskip}% + }% +% \end{macrocode} +% Kein Kolumnentitel: +% \begin{macrocode} +\let\@exercisemark\@gobble +% \end{macrocode} +% \begin{macro}{\exercisefont} +% \changes{1.30}{2004/04/10}{Make font in exercises adjustable}% +% Font for exercises. +% \begin{macrocode} +\newcommand*\exercisefont{\normalsize} +% \end{macrocode} +% \end{macro} +% \begin{environment}{exercise} +% Nummerierte |exercise|"=Umgebung: +% \begin{macrocode} +\newenvironment{exercise}[1]{% +% \end{macrocode} +% Teilaufgabennummerierung auf Null setzen: +% \begin{macrocode} + \setcounter{subtaskoffset}{0}% +% \end{macrocode} +% Aufgaben zählen: +% \begin{macrocode} + \stepcounter{aufgabenzahl}% +% \end{macrocode} +% Überschrift +% \begin{macrocode} + \@exercise{#1}% +% \end{macrocode} +% Eintrag in das Verzeichnis der Aufgaben schreiben: +% \begin{macrocode} + \addcontentsline{exercise}{exercise}{\numberline {\the@exercise}#1}% +% \end{macrocode} +% Gliederungsbefehle ausschalten +% \begin{macrocode} + \gliederungsfehler{exercise}% +% \end{macrocode} +% Switch to chosen font. +% \begin{macrocode} + \exercisefont +}{% +% \end{macrocode} +% Leerzeichen ignorieren: +% \begin{macrocode} + \ignorespacesafterend +% \end{macrocode} +% Nächsten Absatz nicht einrücken: +% \begin{macrocode} + \noindentnextpar + \par +} +% \end{macrocode} +% \end{environment} +% \begin{environment}{exercise*} +% Unnummerierte |exercise*|"=Umgebung: +% \begin{macrocode} +\newenvironment{exercise*}[1]{% +% \end{macrocode} +% Teilaufgabennummerierung auf Null setzen +% \begin{macrocode} + \setcounter{subtaskoffset}{0}% +% \end{macrocode} +% Aufgaben zählen: +% \begin{macrocode} + \stepcounter{aufgabenzahl}% +% \end{macrocode} +% Überschrift. Die Sternvariante lässt die Nummer usw. weg. Daher muss +% der Teil von Hand eingefügt werden. +% \begin{macrocode} + \@exercise*{\makebox[\hhcls@@exerciseindent][l]{% + \prefix@exercisestar\postfix@exercisestar}#1}% +% \end{macrocode} +% Eintrag in das Verzeichnis der Aufgaben schreiben: +% \begin{macrocode} + \addcontentsline{exercise}{exercise}{#1}% +% \end{macrocode} +% Gliederungsbefehle ausschalten +% \begin{macrocode} + \gliederungsfehler{exercise}% +% \end{macrocode} +% Switch to chosen font. +% \begin{macrocode} + \exercisefont +% \begin{macrocode} +}{% +% \end{macrocode} +% Leerzeichen ignorieren: +% \begin{macrocode} + \ignorespacesafterend +% \end{macrocode} +% Nächsten Absatz nicht einrücken: +% \begin{macrocode} + \noindentnextpar + \par +} +% \end{macrocode} +% \end{environment} +% +% \subsection{Lösungen für globale Aufgabensammlung} +% +% Berechnung der Einrückung der Lösungsüberschrift. +% \begin{macrocode} +\newlength{\hhcls@@answerindent}% +\AtBeginDocument{% + \setlength{\hhcls@@answerindent}{\hhcls@@exerciseindent}% +} +% \end{macrocode} +% Zähler, alle haben keine Ausgabe, weil sie eigentlich nicht benötigt +% werden. +% \begin{macrocode} +\newcounter{@answer} +\renewcommand*\the@answer{} +% \end{macrocode} +% Befehle für die Überschriften: +% \begin{macrocode} +\newcommand\@answer{\@startsection{@answer}{2}{\z@}% + {-3.25ex \@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@subsection\nobreak}} +% \end{macrocode} +% Befehle für das Inhaltsverzeichnis, falls gewünscht: +% \begin{macrocode} +\if@answertotoc + \newcommand*\l@@answer[2]{\@dottedtocline{1}{0em}{6.2em}{% + \def\numberline##1{% + \hb@xt@\@tempdima{\lprefix@answer##1\hfil}}#1}{#2}} +\else + \newcommand*\l@@answer[2]{} +\fi +% \end{macrocode} +% \begin{macro}{\answerspacing} +% Zeilenabstand innerhalb der Lösungen: +% \begin{macrocode} +\ifhhcls@times + \newcommand\answerspacing{1.12} +\else + \newcommand\answerspacing{1.06} +\fi +% \end{macrocode} +% \end{macro} +% \begin{macro}{\answername} +% Name für Lösungen: +% \begin{macrocode} +\newcommand*\answername{L\"osung} +% \end{macrocode} +% \end{macro} +% Prefixe für nummerierte Überschriften: +% \begin{macrocode} +\def\prefix@answer{\answername~}% +% \end{macrocode} +% Doppelpunkte nach der Nummer: +% \begin{macrocode} +\def\postfix@answer{:}% +% \end{macrocode} +% Unnummerierte Namen: +% \begin{macrocode} +\def\prefix@answerstar{\answername}% +% \end{macrocode} +% Doppelpunkt nach unnummeriert: +% \begin{macrocode} +\def\postfix@answerstar{:}% +% \end{macrocode} +% Prefix im Inhaltsverzeichnis: +% \begin{macrocode} +\def\lprefix@answer{\answername~}% +% \end{macrocode} +% Keine Kolumnentitel: +% \begin{macrocode} +\let\@answermark\@gobble +% \end{macrocode} +% \begin{macro}{\answerfont} +% Schriftgrößen für die Lösungen: +% \begin{macrocode} +\newcommand\answerfont{\footnotesize} +% \end{macrocode} +% \end{macro} +% Einzüge für die Lösungen: +% \begin{macrocode} +\newlength{\answer@lmargin} +\newlength{\answer@rmargin} +\setmargin{answer}{0em} +% \end{macrocode} +% +% \begin{environment}{answer} +% Nummerierte |answer|"=Umgebung: +% \begin{macrocode} +\newcommand\answer[2][\@empty]{% +% \end{macrocode} +% Nummer auf das Label kopieren: +% \begin{macrocode} + \def\the@answer{\ref{#2}}% +% \end{macrocode} +% Die eigentliche Umgebung starten: +% \begin{macrocode} + \@@answer{#1}% +} +% \end{macrocode} +% \end{environment} +% \begin{environment}{answer*} +% Unnummerierte |answer|"=Umgebung: +% \begin{macrocode} +\expandafter\newcommand\csname answer*\endcsname[1][\@empty]{% +% \end{macrocode} +% Label löschen: +% \begin{macrocode} + \def\the@answer{}% +% \end{macrocode} +% Pre"= und Postfix kopieren: +% \begin{macrocode} + \def\prefix@answer{\prefix@answerstar}% + \def\postfix@answer{\postfix@answerstar}% +% \end{macrocode} +% Die eigentliche Umgebung starten: +% \begin{macrocode} + \@@answer{#1}% +} +% \end{macrocode} +% \end{environment} +% Die Umgebung, die wirklich eine Lösung setzt. +% \begin{macrocode} +\def\@@answer#1{% +% \end{macrocode} +% Überschrift +% \begin{macrocode} + \@answer{#1}% +% \end{macrocode} +% Teilloesungsnummerierung auf Null setzen +% \begin{macrocode} + \setcounter{subtaskoffset}{0}% +% \end{macrocode} +% Gliederungsbefehle ausschalten +% \begin{macrocode} + \gliederungsfehler{answer}% +% \end{macrocode} +% \changes{1.02}{2003/09/17}{\cs{normalfont} in Bildunterschriften +% aufrufen}% +% Schriftarten und Längen setzen: +% \begin{macrocode} + \answerfont + \let\size@subsubsection\answerfont + \let\size@paragraph\answerfont + \let\size@subparagraph\answerfont + \setlength{\mathindent}{0.5\leftmargini}% + \setlength{\abovecaptionskip}{0.89\abovecaptionskip}% + \setkomafont{caption}{\normalfont\rmfamily\footnotesize\RaggedRight}% + \setkomafont{float}{\normalfont\normalcolor\footnotesize}% + \renewcommand{\subcapsize}{\footnotesize}% +% \end{macrocode} +% \changes{1.30}{2004/04/09}{Remove \cs{begingroup} and \cs{endgroup} +% because they removed the correct linespacing}% +% Abstand erhöhen: +% \begin{macrocode} + \setstretch{\answerspacing}% +} +% \end{macrocode} +% Ende der Umgebung: +% \begin{macrocode} +\def\endanswer{% + \par +% \end{macrocode} +% Leerzeichen ignorieren: +% \begin{macrocode} + \ignorespacesafterend +% \end{macrocode} +% Nächsten Absatz nicht einrücken: +% \begin{macrocode} + \noindentnextpar +} +% \end{macrocode} +% Ende unnummeriert +% \begin{macrocode} +\expandafter\def\csname endanswer*\endcsname{\endanswer} +% \end{macrocode} +% +% \subsection{Aufgaben innerhalb von Kapiteln} +% +% Berechnung der Einrueckung der Überschriften: +% \begin{macrocode} +\newlength{\hhcls@@subexerciseindent}% +\AtBeginDocument{% + \setlength{\hhcls@@subexerciseindent}{\hhcls@@exerciseindent}% +} +% \end{macrocode} +% Für die |subexercise|"=Umgebung Format "`Kapitel.Subexercise"': +% \begin{macrocode} +\newcounter{@subexercise}[chapter] +\renewcommand*\the@subexercise{\thechapter.\@arabic\c@@subexercise} +% \end{macrocode} +% \changes{1.13}{2003/12/16}{Make delimiter for subexercise configurable}% +% \changes{1.20}{2004/03/07}{Avoid page break after title in subexercise}% +% \changes{1.30}{2004/04/10}{Improve spacing after title of +% subexercise}% +% Überschrift der |subexercise|"=Umgebung: +% \begin{macrocode} +\newcommand\subexercise@title[1]{% + \iftheorem@starvariant + \else + \refstepcounter{@subexercise}% + \fi + {% + \raggedsection\normalfont\normalsize\sectfont\nobreak + \makebox[\hhcls@@subexerciseindent][l]{\exercisename + \iftheorem@starvariant + \else + ~\the@subexercise + \fi + \postfix@exercise}% + \setlength\@tempdima{1pt}% + \settoheight\@tempdimb{D}% + \addtolength\@tempdima{\@tempdimb}% + \settoheight\@tempdimb{\subexercisefont D}% + \addtolength\@tempdima{-\@tempdimb}% + #1\nobreak\par\nobreak\vspace{\@tempdima}\nobreak}\nobreak + \@afterheading} +% \end{macrocode} +% \begin{macro}{\subexercisefont} +% Schriftgröße in Aufgaben: +% \begin{macrocode} +\newcommand\subexercisefont{\normalfont\small} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\subexercisespacing} +% Zeilenabstand innerhalb der Subaufgabee: +% \begin{macrocode} +\ifhhcls@times + \newcommand\subexercisespacing{1.12} +\else + \newcommand\subexercisespacing{1.06} +\fi +% \end{macrocode} +% \end{macro} +% Einrückung: +% \begin{macrocode} +\newlength{\subexercise@lmargin} +\newlength{\subexercise@rmargin} +\setmargin{subexercise}{\leftmargini} +% \end{macrocode} +% \begin{environment}{subexercise*} +% Unnummerierte Umgebung: +% \begin{macrocode} +\expandafter\def\csname subexercise*\endcsname{% + \theorem@starvarianttrue + \subexercise +}% +% \end{macrocode} +% Ende der Sternvariante: +% \begin{macrocode} +\expandafter\def\csname endsubexercise*\endcsname{\endsubexercise} +% \end{macrocode} +% \end{environment} +% \begin{environment}{subexercise} +% Nummerierte |subexercise|"=Umgebung: +% \begin{macrocode} +\newenvironment{subexercise}[1]{% +% \end{macrocode} +% Zur Sicherheit einen Absatz. +% \begin{macrocode} + \par +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Fix left margin in subexercise environment}% +% Die eigentliche Umgebung beginnen: +% \begin{macrocode} + \begin{list}{}{% + \itemindent-\subexercise@lmargin + \listparindent\parindent + \leftmargin\subexercise@lmargin + \rightmargin\subexercise@rmargin + \parsep\z@ \@plus\p@ +% \end{macrocode} +% Aufgaben zählen: +% \begin{macrocode} + \stepcounter{aufgabenzahl}% +% \end{macrocode} +% Gliederungsbefehle ausschalten: +% \begin{macrocode} + \gliederungsfehler{subexercise}% +% \end{macrocode} +% Teilaufgabennummerierung auf Null setzen +% \begin{macrocode} + \setcounter{subtaskoffset}{0}% + }% +% \end{macrocode} +% Zeilenabstand anpassen: +% \begin{macrocode} + \begin{spacing}{\subexercisespacing}% +% \end{macrocode} +% List"=Umgebung fängt mit \cs{item} an: +% \begin{macrocode} + \item\relax +% \end{macrocode} +% Überschrift +% \begin{macrocode} + \subexercise@title{#1}% +% \end{macrocode} +% Eintrag in das Verzeichnis der Aufgaben schreiben: +% \begin{macrocode} + \edef\hhtmp{#1}% + \ifx\hhtmp\empty + \else + \iftheorem@starvariant + \addcontentsline{exercise}{exercise}{#1}% + \else + \addcontentsline{exercise}{exercise}{% + \numberline{\the@subexercise}#1}% + \fi + \fi +% \end{macrocode} +% Schriftart setzen: +% \begin{macrocode} + \subexercisefont + \let\size@subsubsection\subexercisefont + \let\size@paragraph\subexercisefont + \let\size@subparagraph\subexercisefont +% \end{macrocode} +% Leerzeichen ignorieren: +% \begin{macrocode} + \ignorespaces + }{% +% \end{macrocode} +% Ende der Umgebung: +% \changes{1.10}{2003/10/30}{Abstände am Ende der Umgebung korrigiert}% +% \begin{macrocode} + \end{spacing}% + \removelastskip + \end{list}% +% \end{macrocode} +% Leerzeichen ignorieren: +% \begin{macrocode} + \ignorespacesafterend +% \end{macrocode} +% Nächsten Absatz nicht einrücken: +% \begin{macrocode} + \noindentnextpar + \par +} +% \end{macrocode} +% \end{environment} +% +% \subsection{Lösungen} +% +% Berechnung der Einrückung der Lösungsüberschrift. +% \begin{macrocode} +\newlength{\hhcls@@subanswerindent}% +\AtBeginDocument{% + \setlength{\hhcls@@subanswerindent}{\hhcls@@answerindent}% +} +% \end{macrocode} +% Zähler, alle haben keine Ausgabe, weil sie eigentlich nicht benötigt +% werden. +% \begin{macrocode} +\newcounter{@subanswer} +\renewcommand*\the@subanswer{} +% \end{macrocode} +% \changes{1.13}{2003/12/16}{Make delimiter for subanswer configurable}% +% \changes{1.20}{2004/03/07}{Avoid page break after title in subanswer}% +% \changes{1.30}{2004/04/10}{Improve spacing after title of +% subanswer}% +% Überschrift der |subexercise|"=Umgebung: +% \begin{macrocode} +\newcommand\subanswer@title[2]{% + {% + \raggedsection\normalfont\normalsize\sectfont\nobreak + \makebox[\hhcls@@subanswerindent][l]{\answername + \iftheorem@starvariant + \else + ~\ref{#1}% + \fi + \postfix@answer}% + \setlength\@tempdima{1pt}% + \settoheight\@tempdimb{D}% + \addtolength\@tempdima{\@tempdimb}% + \settoheight\@tempdimb{\subanswerfont D}% + \addtolength\@tempdima{-\@tempdimb}% + #2\nobreak\par\nobreak\vspace{\@tempdima}\nobreak}\nobreak + \@afterheading} +% \end{macrocode} +% \begin{macro}{\subanswerfont} +% Schriftgrößen für die Lösungen: +% \begin{macrocode} +\newcommand\subanswerfont{\footnotesize} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\subanswerspacing} +% \changes{1.30}{2004/04/10}{Subanswers can have another linespacing +% than answers}% +% Zeilenabstand innerhalb der Lösungen: +% \begin{macrocode} +\ifhhcls@times + \newcommand\subanswerspacing{1.12} +\else + \newcommand\subanswerspacing{1.06} +\fi +% \end{macrocode} +% \end{macro} +% Einzüge für die Lösungen: +% \begin{macrocode} +\newlength{\subanswer@lmargin} +\newlength{\subanswer@rmargin} +\setmargin{subanswer}{\leftmargini} +% \end{macrocode} +% \begin{environment}{subanswer*} +% Unnummerierte Umgebung: +% \begin{macrocode} +\expandafter\newcommand\csname subanswer*\endcsname[1][\@empty]{% + \theorem@starvarianttrue + \subanswer[#1]{}% +}% +% \end{macrocode} +% Ende der Sternvariante: +% \begin{macrocode} +\expandafter\def\csname endsubanswer*\endcsname{\endsubanswer} +% \end{macrocode} +% \end{environment} +% \begin{environment}{subanswer} +% Nummerierte |subanswer|"=Umgebung: +% \begin{macrocode} +\newenvironment{subanswer}[2][\@empty]{% +% \end{macrocode} +% Zur Sicherheit einen Absatz. +% \begin{macrocode} + \par +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Fix left margin in subanswer environment}% +% Die eigentliche Umgebung beginnen: +% \begin{macrocode} + \begin{list}{}{% + \itemindent-\subanswer@lmargin + \listparindent\parindent + \leftmargin\subanswer@lmargin + \rightmargin\subanswer@rmargin + \parsep\z@ \@plus\p@ +% \end{macrocode} +% Gliederungsbefehle ausschalten: +% \begin{macrocode} + \gliederungsfehler{subanswer}% +% \end{macrocode} +% Teilaufgabennummerierung auf Null setzen +% \begin{macrocode} + \setcounter{subtaskoffset}{0}% + }% +% \end{macrocode} +% Zeilenabstand anpassen: +% \begin{macrocode} + \begin{spacing}{\subanswerspacing}% +% \end{macrocode} +% List"=Umgebung fängt mit \cs{item} an: +% \begin{macrocode} + \item\relax +% \end{macrocode} +% Überschrift +% \begin{macrocode} + \subanswer@title{#2}{#1}% +% \end{macrocode} +% Schriftart setzen: +% \begin{macrocode} + \let\size@subsubsection\subanswerfont + \let\size@paragraph\subanswerfont + \let\size@subparagraph\subanswerfont + \subanswerfont +% \end{macrocode} +% Leerzeichen ignorieren: +% \begin{macrocode} + \ignorespaces + }{% +% \end{macrocode} +% Ende der Umgebung: +% \changes{1.10}{2003/10/30}{Abstände am Ende der Umgebung korrigiert}% +% \begin{macrocode} + \end{spacing}% + \removelastskip + \end{list}% +% \end{macrocode} +% Leerzeichen ignorieren: +% \begin{macrocode} + \ignorespacesafterend +% \end{macrocode} +% Nächsten Absatz nicht einrücken: +% \begin{macrocode} + \noindentnextpar + \par +} +% \end{macrocode} +% \end{environment} +% +% \subsection{Aufgabenliste} +% +% \begin{macro}{\listofexercises} +% Erzeugen einer Liste der Aufgaben: +% \begin{macrocode} +\newcommand*\exercise@heading{\float@listhead{\listexercisename}} +\newcommand*\listofexercises{% + \begingroup% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \exercise@heading + \small + \setlength{\parskip}{\z@}% + \@starttoc{exercise}% + \if@restonecol\twocolumn\fi + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\listexercisename} +% \begin{macrocode} +\newcommand*\listexercisename{List of Exercises} +\newcommand*\hhcls@germanlistexercisename{Aufgabenverzeichnis} +\addto\captionsgerman{% + \renewcommand{\listexercisename}{\hhcls@germanlistexercisename}}% +\addto\captionsngerman{% + \renewcommand{\listexercisename}{\hhcls@germanlistexercisename}}% +\addto\captionsaustrian{% + \renewcommand{\listexercisename}{\hhcls@germanlistexercisename}}% +\addto\captionsnaustrian{% + \renewcommand{\listexercisename}{\hhcls@germanlistexercisename}}% +\newcommand*\l@exercise{\@dottedtocline{1}{0em}{2.9em}} +% \end{macrocode} +% \end{macro} +% +% \subsection{Changing the delimiter} +% +% \begin{environment}{exercisedelimiter} +% \changes{1.13}{2003/12/16}{Make delimiter for exercises configurable}% +% This environment takes one argument. +% It is the new delimiter after the exercise number that is valid +% inside the environment. +% \begin{macrocode} +\newenvironment{exercisedelimiter}[1]{% + \def\postfix@exercise{#1}% + \def\postfix@exercisestar{#1}% + \def\postfix@answer{#1}% + \def\postfix@answerstar{#1}% + \ignorespaces +}{% + \ignorespacesafterend +}% +% \end{macrocode} +% \end{environment} +% +% \subsection{Teilaufgaben} +% +% Zähler innerhalb einer teilaufgabe-Umgebung +% \begin{macrocode} +\newcounter{subtask} +% \end{macrocode} +% Zähler, der dafür sorgt, dass in weiteren Umgebungen weitergezählt +% wird. Er wird bei einer neuen Aufgabe auf Null gesetzt. +% \begin{macrocode} +\newcounter{subtaskoffset}[@exercise]% +\renewcommand\thesubtask{\alph{subtask}}% +% \end{macrocode} +% \begin{environment}{subtask} +% Die Umgebung selbst: +% \begin{macrocode} +\newenvironment{subtask}{% +% \end{macrocode} +% Listenumgebung +% \begin{macrocode} + \begin{list}{\thesubtask)}{\usecounter{subtask}% +% \end{macrocode} +% Kleine Abstände zwischen den Teilaufgaben (Platz sparen): +% \begin{macrocode} + \parskip\z@% + \itemsep\z@% +% \end{macrocode} +% Absatzeinzug statt Durchschuss: +% \begin{macrocode} + \parsep\z@ + \listparindent\parindent +% \end{macrocode} +% Offset zum Zähler addieren, damit weitergezählt wird +% \begin{macrocode} + \setcounter{subtask}{\value{subtaskoffset}}}}{% +% \end{macrocode} +% Am Ende Offset speichern für weiteren Gebrauch +% \begin{macrocode} + \setcounter{subtaskoffset}{\value{subtask}}% + \end{list}% +% \end{macrocode} +% Leerzeichen ignorieren: +% \begin{macrocode} + \ignorespacesafterend +% \end{macrocode} +% Nächsten Absatz nicht einrücken: +% \begin{macrocode} + \noindentnextpar\par} +% \end{macrocode} +% \end{environment} +% \begin{macro}{\subtaskref} +% Referenz auf eine Teilaufgabe: +% \begin{macrocode} +\newcommand\subtaskref[1]{\ref{#1})} +% \end{macrocode} +% \end{macro} +% +% \section{Listen und Aufzählungen} +% +% \begin{macro}{\labelenumii} +% Punkt statt Klammer in der zweiten Ebene: +% \begin{macrocode} +\renewcommand*\labelenumii{\theenumii.} +% \end{macrocode} +% \end{macro} +% +% \section{Vorwort} +% +% \begin{macro}{\preface} +% \changes{1.30}{2004/04/10}{Start prefaces on odd and even pages}% +% Überschrift des Vorworts: +% \begin{macrocode} +\newcommand*\preface[1]{% + \begingroup + \@openrightfalse + \chapter*{#1}% + \markboth{}{}% + \endgroup + \noindentnextpar\par +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\signature} +% Unterschrift im Vorwort: +% \begin{macrocode} +\newcommand*\signature[3]{% + \par\bigskip + \begin{minipage}[t]{0.45\linewidth}% + #1,\\ + #2% + \end{minipage}% + \hfill + \begin{minipage}[t]{0.5\linewidth}% + \itshape\raggedleft + #3% + \end{minipage}% +} +% \end{macrocode} +% \end{macro} +% +% \section{Titelseite} +% +% Interne Befehle für die Titelseite auf \cs{@empty} setzen: +% \begin{macrocode} +\let\@author=\@empty +% \end{macrocode} +% Titel leer vordefinieren: +% \begin{macrocode} +\let\@title\@empty +% \end{macrocode} +% \begin{macro}{\subtitle} +% Sub-title. +% Koma-Script has added the macro \cs{subtitle} in v2.97c. Only define +% it if it is not present already. +% \changes{2.01}{2011/12/29}{Only define \cs{subtitle} if not present already}% +% \begin{macrocode} +\let\@subtitle\@empty +\@ifundefined{subtitle}{% + \newcommand\subtitle[1]{\gdef\@subtitle{#1}}% +}{} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\edition} +% Auf"|lage: +% \begin{macrocode} +\let\@edition\@empty +\newcommand*\edition[1]{\gdef\@edition{#1}} +\edition{1} +% \end{macrocode} +% \end{macro} +% +% \changes{1.30}{2004/04/10}{Set PDF information only if PDF is +% produced}% +% \changes{1.30}{2004/04/10}{Write info file containing the same +% information as the PDF-info entries}% +% PDF-Datei mit Informationen versorgen: +% \begin{macrocode} +\newwrite\hhcls@fileinfo +\immediate\openout\hhcls@fileinfo\jobname.info +\AtEndDocument{% + \ifpdf + \if\@title\@empty\else\pdfinfo{/Title (\@title)}\fi + \if\@subtitle\@empty + \pdfinfo{/Subject (\@edition. Auflage)}% + \else + \pdfinfo{/Subject (\@subtitle\space (\@edition. Auflage))}% + \fi + \ifx\@author\@empty + \else + \pdfinfo{/Author (\@author)}% + \fi +% \end{macrocode} +% Der \texttt{/Creator}"=Eintrag, der in die PDF"=Datei geschrieben +% wird, muss in veränderten und umbenannten Kopien der Dateien +% "`|bgteubner.cls|"' und "`|bgteucls.dtx|"' folgende Informationen +% enthalten: +% \begin{itemize} +% \item Den Dateinamen "`|bgteubner.cls|"', +% \item einen Hinweis darauf, dass diese Dokumentklasse für den +% "`Springer Vieweg Verlag, Wiesbaden, Germany"' entwickelt wurde. +% \end{itemize} +% \begin{macrocode} + % If you modify a renamed copy of the files `bgteubner.cls' or + % `bgteucls.dtx', you have to preserve some information in the + % PDF /Creator entry. The following data have to remain: + % - The name `bgteubner.cls', + % - a hint that this class has been developed for the `Teubner + % Verlag, Wiesbaden, Germany'. + \begingroup + \GetFileInfo{bgteubner.cls}% + \pdfinfo{/Creator (document class bgteubner.cls for the + Springer Vieweg Verlag, Wiesbaden, Germany, by Harald Harders + \fileversion)}% + \endgroup + \pdfinfo{/Keywords (Bild: \thebilderzahl; Tabelle: \thetabellenzahl; + Aufgabe: \theaufgabenzahl\hhcls@theoremanzahl)}% + \fi + \if\@title\@empty + \else + \immediate\write\hhcls@fileinfo{Titel: \@title}% + \fi + \if\@subtitle\@empty + \else + \immediate\write\hhcls@fileinfo{Untertitel: \@subtitle}% + \fi + \if\@subtitle\@empty + \fi + \immediate\write\hhcls@fileinfo{\@edition. Auflage}% + \ifx\@author\@empty + \else + \immediate\write\hhcls@fileinfo{Autor(en): \@author}% + \fi + \immediate\write\hhcls@fileinfo{Bild: \thebilderzahl; Tabelle: + \thetabellenzahl; Aufgabe: \theaufgabenzahl\hhcls@theoremanzahl}% +} +% \end{macrocode} +% \begin{macro}{\maketitle} +% Titel ertellen. +% \begin{macrocode} +\ifhhcls@titlepage +\renewcommand*\maketitle{% + \edef\hhcls@tmppage{\arabic{page}}% + \begin{titlepage}% + \renewcommand{\sfdefault}{phv}% +% \end{macrocode} +% Warnungen und Fehler für nicht angegebene Dinge: +% \begin{macrocode} + \ifx\@title\@empty + \ClassError{bgteubner}{No title given}{Define a title using + \string\title{Titel}} + \fi + \ifx\@author\@empty + \ClassError{bgteubner}{No author given}{Define + an author using \string\author{Name}.} + \fi +% \end{macrocode} +% Formatierungsangaben: +% \begin{macrocode} + \newlength{\hhcls@parindent}% + \setlength{\hhcls@parindent}{2.5\parindent}% + \setlength{\parindent}{0mm}% + \let\footnotesize\small + \let\footnoterule\relax + \renewcommand*\thefootnote{\@fnsymbol\c@footnote}% + \let\@oldmakefnmark\@makefnmark + \def\@makefnmark{\rlap\@oldmakefnmark} +% \end{macrocode} +% Titelseite ist zentriert: +% \begin{macrocode} + \begin{center} + \sffamily\Large +% \end{macrocode} +% Titel: +% \begin{macrocode} + {\bfseries\LARGE \@author}% + \vskip 2.5em + \par + {\bfseries\iftensor@bold\else\mathversion{bold}\fi\Huge\@title\par} + \ifx\@subtitle\@empty + \else + \vskip 2.5em + {\bfseries\iftensor@bold\else\mathversion{bold}\fi + \LARGE\@subtitle\par} + \fi + \vskip 2.5em + \par +% \end{macrocode} +% \changes{1.20}{2004/03/07}{Titelpage: Only type these items that +% really are used}% +% \changes{1.30}{2004/05/09}{Titelpage: Minor bugfix testing on used items}% +% Only type these items that really are used. +% Singular cases are not handled. +% \begin{macrocode} + \@ifundefined{hhclsbilderzahl}{% + Mit + \textbf{??}~Abbildungen, + \textbf{???}~Tabellen + und + \textbf{???}~Aufgaben + }{% + \ifnum\hhclsbilderzahl=0\relax + \ifnum\hhclstabellenzahl=0\relax + \ifnum\hhclsaufgabenzahl=0\relax + \else + Mit \hhclsaufgabenzahl~Aufgaben + \fi + \else + Mit \hhclstabellenzahl~Tabellen + \ifnum\hhclsaufgabenzahl=0\relax + \else + und \hhclsaufgabenzahl~Aufgaben + \fi + \fi + \else + Mit \hhclsbilderzahl~Abbildungen% + \ifnum\hhclstabellenzahl=0\relax + \ifnum\hhclsaufgabenzahl=0\relax + \else + \space und \hhclsaufgabenzahl~Aufgaben + \fi + \else + \ifnum\hhclsaufgabenzahl=0\relax + \space und \hhclstabellenzahl~Tabellen + \else + , \hhclstabellenzahl~Tabellen + und \hhclsaufgabenzahl~Aufgaben + \fi + \fi + \fi + }% + \ifhhcls@entwurf + \vskip 2.5em + \par + \strut\"Ubersetzt: \today, \now + \fi + \vfill + \par +% \end{macrocode} +% Testen, ob |\@edition| als Zahl angegeben wurde. +% Tipp von David Kastrup, der für vorzeichenlose Zahlen funktioniert. +% \begin{macrocode} + \ifx\@edition\@empty + \else +% \end{macrocode} +% Testen, ob |\@edition| als Zahl angegeben wurde. +% Tipp von David Kastrup, der für vorzeichenlose Zahlen funktioniert. +% \begin{macrocode} + \ifnum1<1\@edition +% \end{macrocode} +% Wenn es eine Zahl ist, nur ausgeben, wenn die Auf"|lage größer 1 +% ist. +% \begin{macrocode} + \ifnum1<0\@edition\relax + \@edition.~Auf\/lage% + \vskip 4em + \fi +% \end{macrocode} +% Wenn keine Zahl, nur den Text in \cs{@edition} ausgeben. +% \begin{macrocode} + \else + \@edition + \vskip 4em + \fi + \fi + \par + {\Large \hhcls@publisher\par} + \end{center} + \end{titlepage} +% \end{macrocode} +% Impressum: +% \begin{macrocode} + \next@tpage\cleardoubleemptypage + \setcounter{page}{\hhcls@tmppage}% +% \end{macrocode} +% Widmung. +% \begin{macrocode} + \ifx\@dedication\@empty \else + \next@tpage\null\vfill + {\centering \Large \@dedication \par} + \vskip \z@ \@plus3fill + \if@twoside \next@tpage\cleardoublepage \fi + \fi +% \end{macrocode} +% Alles Mögliche löschen, da nicht mehr gebraucht: +% \begin{macrocode} +% \setcounter{footnote}{0}% + \global\let\maketitle\relax +} +\else + \renewcommand\maketitle{% + \ClassWarningNoLine{bgteubner}{Titlepage switched off for final print}% +% \end{macrocode} +% Widmung. +% \begin{macrocode} + \ifx\@dedication\@empty \else + \begin{titlepage} + \next@tpage\null\vfill + {\centering \Large \@dedication \par} + \vskip \z@ \@plus3fill + \if@twoside \next@tpage\cleardoublepage \fi + \end{titlepage} + \fi + \global\let\maketitle\relax + } +\fi +% \end{macrocode} +% \end{macro} +% Layoutparameter ausgeben: +% \begin{macrocode} +\ifhhcls@entwurf + \newlength{\hhtmplen}% + \setlength{\hhtmplen}{0.35145980351\textwidth}% + \typeout{^^JText width: \strip@pt\hhtmplen mm}% + \setlength{\hhtmplen}{0.35145980351\textheight}% + \typeout{Text block: \strip@pt\hhtmplen}% + \setlength{\hhtmplen}{\headheight}% + \addtolength{\hhtmplen}{\headsep}% + \addtolength{\hhtmplen}{\textheight}% + \setlength{\hhtmplen}{0.35145980351\hhtmplen}% + \typeout{Total height: \strip@pt\hhtmplen mm}% + \setlength{\hhtmplen}{0.35145980351\baselineskip}% + \typeout{Baseline skip: \strip@pt\hhtmplen mm^^J}% +\fi +% \end{macrocode} +% \begin{macro}{\verboten} +% Verbotene Pakete abfangen: +% \begin{macrocode} +\newcommand\verboten[1]{% + \BeforePackage{#1}{% + \ClassError{bgteubner}{Forbidden package `#1' loaded}{% + You are not allowed to load the package `#1' because it^^J% + changes the layout. This error message occurs one line below^^J% + the line.}}% +} +\verboten{a4wide} +\verboten{a4} +\verboten{a5comb} +\verboten{a5} +\verboten{aeguill} +\verboten{ae} +\verboten{appendix} +\verboten{avantgar} +\verboten{avant} +\verboten{bibgerm} +\verboten{bookman} +\verboten{caption2} +\verboten{caption} +\verboten{chancery} +\verboten{chappg} +\verboten{charter} +\verboten{cmbright} +\verboten{concmath} +\verboten{doublespace} +\verboten{dropcaps} +\verboten{eco} +\verboten{endfloat} +\verboten{epsfig} +\verboten{eulervm} +\verboten{extsizes} +\verboten{fandyhdr} +\verboten{figcaps} +\verboten{floatfig} +\verboten{floatflt} +\verboten{fltpage} +\verboten{french} +\verboten{geometry} +\verboten{geomsty} +\verboten{german} +\verboten{graphics} +\verboten{hangcaption} +\verboten{hangftn} +\verboten{hanging} +\verboten{helvetic} +\verboten{here} +\verboten{hvmath} +%\verboten{hyperref} +\verboten{indentfirst} +\verboten{initials} +\verboten{landscape} +\verboten{lmodern} +\verboten{lucidabr} +\verboten{lucidaso} +\verboten{mathptm} +\verboten{mathsans} +\verboten{mathtime} +\verboten{ncntrsbk} +\verboten{newcent} +\verboten{ngerman} +\verboten{palatcm} +\verboten{palatino} +\verboten{sansmath} +\verboten{sectsty} +\verboten{times} +\verboten{titlesec} +\verboten{utopia} +\verboten{zapfchan} +\verboten{zefonts} +% \end{macrocode} +% \end{macro} +% \iffalse +%</class> +% \fi +% +% \section{Indexstil} +% +% \iffalse +%<*idxstyle> +% \fi +% +% Quote-Zeichen geändert für deutsche Unterstützung +% \begin{macrocode} +quote '>' +% \end{macrocode} +% Umgebung aufrufen +% \begin{macrocode} +preamble "\\begin{theindex}\n\\hhclsiscorrectindextrue\n" +postamble "\n\n\\end{theindex}\n" +% \end{macrocode} +% Buchstaben einfügen +% \begin{macrocode} +heading_prefix "\\textbf{" +heading_suffix "}\\nopagebreak\n" +symhead_positive "Symbole" +numhead_positive "Zahlen" +headings_flag 1 +% \end{macrocode} +% \iffalse +%</idxstyle> +% \fi +% +% \section{Glossarystile} +% +% \iffalse +%<*glostyle1> +% \fi +% +% \subsection{Ohne trennende Buchstaben} +% +% Quote-Zeichen geändert für deutsche Unterstützung. +% \begin{macrocode} +quote '>' +% \end{macrocode} +% Schlüsselwörter in der Eingabedatei. +% \begin{macrocode} +keyword "\\glossaryentry" +% \end{macrocode} +% |theglossary|"=Umgebung statt |theindex|"=Umgebung verwenden. +% \begin{macrocode} +preamble "\\begin{theglossary}\n\\hhclsiscorrectglossarytrue\n" +postamble "\n\n\\end{theglossary}\n" +group_skip "\n" +% \end{macrocode} +% Keine Kommata vor und zwischen den Zahlen. +% \begin{macrocode} +delim_0 "" +delim_1 "" +delim_2 "" +delim_n "\\glossarypagedelim" +delim_r "\\glossarypagerange" +% \end{macrocode} +% Die öffnende Klammer anfügen. Die schließende wird von \LaTeX\ erzeugt. +% \begin{macrocode} +item_0 "\n \\item [" +% \end{macrocode} +% +% \iffalse +%</glostyle1> +% \fi +% +% \iffalse +%<*glostyle2> +% \fi +% +% \subsection{Ohne trennende Buchstaben} +% +% Quote-Zeichen geändert für deutsche Unterstützung. +% \begin{macrocode} +quote '>' +% \end{macrocode} +% Buchstaben einfügen +% \begin{macrocode} +heading_prefix "\\glossarynewchar{" +heading_suffix "}\n" +symhead_positive "Symbole" +numhead_positive "Zahlen" +headings_flag 1 +% \end{macrocode} +% Schlüsselwörter in der Eingabedatei. +% \begin{macrocode} +keyword "\\glossaryentry" +% \end{macrocode} +% |theglossary|"=Umgebung statt |theindex|"=Umgebung verwenden. +% \begin{macrocode} +preamble "\\begin{theglossary}\n\\hhclsiscorrectglossarytrue\n" +postamble "\n\n\\end{theglossary}\n" +group_skip "\n" +% \end{macrocode} +% Keine Kommata vor und zwischen den Zahlen. +% \begin{macrocode} +delim_0 "" +delim_1 "" +delim_2 "" +delim_n "\\glossarypagedelim" +delim_r "\\glossarypagerange" +% \end{macrocode} +% Die öffnende Klammer anfügen. Die schließende wird von \LaTeX\ erzeugt. +% \begin{macrocode} +item_0 "\n \\item [" +% \end{macrocode} +% +% \iffalse +%</glostyle2> +% \fi +% +% +% \section{Bib\TeX"=Stil} +% +% Einträge. +% \begin{macrocode} +%<*bibstyle> +ENTRY + { address + author + booktitle + chapter + edition + editor + howpublished + institution + isbn + issn + journal + key + language + month + note + number + organization + pages + publisher + school + series + title + type + url + volume + year + } + {} + { label } + +% \end{macrocode} +% Variablen definieren. +% \begin{macrocode} +INTEGERS + { output.state + before.all + mid.sentence + after.sentence + after.block + before.title + } +STRINGS + { s + t + language.state + change.temp + } +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := + #4 'before.title := + "nostate" 'language.state := +} +% \end{macrocode} +% Logische Nicht"=Funktion. +% \begin{macrocode} +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} +% \end{macrocode} +% Logische Und"=Funktion. +% \begin{macrocode} +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} +% \end{macrocode} +% Logische Oder"=Funktion +% \begin{macrocode} +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} +% \end{macrocode} +% Schreibt den zweiten Stackwert einmal mit veränderter Groß"= und +% Kleinschreibung und einmal mit Originalschreibung hinter den Befehl +% \cs{btxifchangecase}. +% \LaTeX\ entscheiden dann, welche Version verwendet werden so.. +% \begin{macrocode} +FUNCTION {language.change.case} +{ + 'change.temp := + 't := + "\btxifchangecase {" + t change.temp change.case$ * + "}{" * + t * + "}" * +} +% \end{macrocode} +% Ausgabefunktion. +% \begin{macrocode} +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { + output.state before.title = + { "\btxauthorcolon\ " * write$ } + { add.period$ " " * write$ } + if$ + } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} +% \end{macrocode} +% Noch eine Ausgabefunktion. +% \begin{macrocode} +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} +% \end{macrocode} +% Gibt eine Warnung bei leerem Argument aus und schreibt den Inhalt +% sonst. +% \begin{macrocode} +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} +% \end{macrocode} +% Ausgabe eines Literatuverweises. +% Zunächst wird die Sprache auf die angegebene Sprache gesetzt, dann +% der \cs{bibitem} gesetzt. +% \begin{macrocode} +FUNCTION {output.bibitem} +{ newline$ + language empty$ + { "empty language in " cite$ * warning$ } + { language.state language = + 'skip$ + { "\btxselectlanguage {" language * "}" * write$ + newline$ + } + if$ + language 'language.state := + } + if$ + "\bibitem{" write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} +% \end{macrocode} +% Ende des Eintrags. +% \begin{macrocode} +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {after.authors} +{ output.state before.all = + 'skip$ + { before.title 'output.state := } + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {new.block.checkc} +{ empty$ + swap$ empty$ + and + 'skip$ + 'after.authors + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} +% \end{macrocode} +% Formatier den Stackinhalt mit \cs{btxnamefont}. +% \begin{macrocode} +FUNCTION {namefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxnamefont {" swap$ * "}" * } + if$ +} +% \end{macrocode} +% Formatier den Stackinhalt mit \cs{btxlastnamefont}. +% \begin{macrocode} +FUNCTION {lastnamefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxlastnamefont {" swap$ * "}" * } + if$ +} +% \end{macrocode} +% Formatier den Stackinhalt mit \cs{btxtitlefont}. +% \begin{macrocode} +FUNCTION {titlefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxtitlefont {" swap$ * "}" * } + if$ +} +% \end{macrocode} +% Formatier den Stackinhalt mit \cs{btxjournalfont}. +% \begin{macrocode} +FUNCTION {journalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxjournalfont {" swap$ * "}" * } + if$ +} +% \end{macrocode} +% Formatier den Stackinhalt mit \cs{btxvolumefont}. +% \begin{macrocode} +FUNCTION {volumefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxvolumefont {" swap$ * "}" * } + if$ +} +% \end{macrocode} +% Formatier den Stackinhalt mit \cs{btxetalfont}. +% \begin{macrocode} +FUNCTION {etalfont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxetalfont {" swap$ * "}" * } + if$ +} +% \end{macrocode} +% Neue Variablen definieren. +% \begin{macrocode} +INTEGERS { nameptr namesleft numnames } +% \end{macrocode} +% Namen (Autoren, Herausgeber) formatieren. +% \begin{macrocode} +FUNCTION {format.names} +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { +%</bibstyle> +% \end{macrocode} +% \changes{1.13}{2003/12/16}{Second Bib style with different name format}% +% \changes{1.14}{2003/12/17}{New abbreviated Bib styles}% +% \begin{macrocode} +%<*bibstyle&long&names1> + s nameptr "{ff~}{vv~}" format.name$ + s nameptr "{ll}" format.name$ lastnamefont * + s nameptr "{, jj}" format.name$ * 't := +%</bibstyle&long&names1> +%<*bibstyle&long&names2> + s nameptr "{ll}" format.name$ lastnamefont + s nameptr "{, jj}{, ff}{~vv}" format.name$ * 't := +%</bibstyle&long&names2> +%<*bibstyle&long&names3> + s nameptr "{f{.\,}.~}{vv~}" format.name$ + s nameptr "{ll}" format.name$ lastnamefont * + s nameptr "{, jj}" format.name$ * 't := +%</bibstyle&long&names3> +%<*bibstyle&short&names1> + s nameptr "{f{.\,}.~}{vv~}" format.name$ + s nameptr "{ll}" format.name$ lastnamefont * + s nameptr "{, jj}" format.name$ * 't := +%</bibstyle&short&names1> +%<*bibstyle&short&names2> + s nameptr "{ll}" format.name$ lastnamefont + s nameptr "{,~jj}{,~f{.\,}.}{~vv}" format.name$ * 't := +%</bibstyle&short&names2> +%<*bibstyle> + namesleft #1 > + { ", " * t namefont * } + { numnames #2 > + { "\btxandcomma {}" * } + 'skip$ + if$ + s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * t namefont * } + if$ + } + if$ + } + { +%</bibstyle> +%<*bibstyle&long&names3> + s nameptr "{f{.\,}.~}{vv~}" format.name$ + s nameptr "{ll}" format.name$ lastnamefont * + s nameptr "{, jj}" format.name$ * namefont +%</bibstyle&long&names3> +%<*bibstyle&long&!names3> + s nameptr "{ll}" format.name$ lastnamefont + s nameptr "{,~jj}{, ff}{~vv}" format.name$ * namefont +%</bibstyle&long&!names3> +%<*bibstyle&short> + s nameptr "{ll}" format.name$ lastnamefont + s nameptr "{,~jj}{,~f{.\,}.}{~vv}" format.name$ * namefont +%</bibstyle&short> +%<*bibstyle> + } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} +% \end{macrocode} +% Autoren formatieren. +% \begin{macrocode} +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} +% \end{macrocode} +% Herausgeber formatieren. +% \begin{macrocode} +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > +%</bibstyle> +%<bibstyle&long> { "\ (\btxeditorslong {})" * } +%<bibstyle&long> { "\ (\btxeditorlong {})" * } +%<bibstyle&short> { "\ (\btxeditorsshort {.})" * } +%<bibstyle&short> { "\ (\btxeditorshort {.})" * } +%<*bibstyle> + if$ + } + if$ +} +% \end{macrocode} +% Titel formatieren. +% \begin{macrocode} +FUNCTION {format.title} +{ title empty$ + { "" } + { title "t" language.change.case titlefont } + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +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$ +} +% \end{macrocode} +% Datum formatieren. +% \begin{macrocode} +FUNCTION {format.date} +{ year empty$ + { month empty$ + { "" } + { "there's a month but no year in " cite$ * warning$ + month + } + if$ + } + { month empty$ + 'year + { month "\ " * year * } + if$ + } + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.btitle} +{ title titlefont +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ * * +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {volume.tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { "\ " } + if$ + swap$ volumefont * * +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { output.state after.block = +%</bibstyle> +%<bibstyle&long> { "\Btxvolumelong {}" } +%<bibstyle&long> { "\btxvolumelong {}" } +%<bibstyle&short> { "\Btxvolumeshort {.}" } +%<bibstyle&short> { "\btxvolumeshort {.}" } +%<*bibstyle> + if$ + volume volume.tie.or.space.connect + series empty$ + 'skip$ +%</bibstyle> +%<bibstyle&long> { " \btxofserieslong {}\ " * series titlefont * } +%<bibstyle&short> { " \btxofseriesshort {.}\ " * series titlefont * } +%<*bibstyle> + if$ + "volume and number" number either.or.check + } + if$ +} +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { output.state mid.sentence = +%</bibstyle> +%<bibstyle&long> { "\btxnumberlong {}" } +%<bibstyle&long> { "\Btxnumberlong {}" } +%<bibstyle&short> { "\btxnumbershort {.}" } +%<bibstyle&short> { "\Btxnumbershort {.}" } +%<*bibstyle> + if$ + number tie.or.space.connect + series empty$ + { "there's a number but no series in " cite$ * warning$ } +%</bibstyle> +%<bibstyle&long> { " \btxinserieslong {}\ " * series titlefont * } +%<bibstyle&short> { " \btxinseriesshort {.}\ " * series titlefont * } +%<*bibstyle> + if$ + } + if$ + } + { "" } + if$ +} +% \end{macrocode} +% Auf"|lage formatieren. +% \begin{macrocode} +FUNCTION {format.edition} +{ edition empty$ + { "" } + { + output.state mid.sentence = +%</bibstyle> +%<bibstyle&long> { edition "l" language.change.case "~\btxeditionlong {}" * } +%<bibstyle&long> { edition "t" language.change.case "~\btxeditionlong {}" * } +%<bibstyle&short> { edition "l" language.change.case "~\btxeditionshort {.}" * } +%<bibstyle&short> { edition "t" language.change.case "~\btxeditionshort {.}" * } +%<*bibstyle> + if$ + } + if$ +} +% \end{macrocode} +% ISBN formatieren +% \begin{macrocode} +FUNCTION {format.isbn} +{ isbn empty$ + { "" } + { "\btxISBN~\btxISBNfont {" isbn * "}" * } + if$ +} +% \end{macrocode} +% ISSN formatieren. +% \begin{macrocode} +FUNCTION {format.issn} +{ issn empty$ + { "" } + { "\btxISSN~\btxISSNfont {" issn * "}" * } + if$ +} +% \end{macrocode} +% Url formatieren. +% \begin{macrocode} +FUNCTION {format.url} +{ url empty$ + { "" } + { "\btxurlfont {" url * "}" * } + if$ +} +% \end{macrocode} +% Noch eine Variable. +% \begin{macrocode} +INTEGERS { multiresult } +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} +% \end{macrocode} +% Seitenzahlen formatieren. +% \begin{macrocode} +FUNCTION {format.pages} +{ pages empty$ + { "" } + { pages multi.page.check +%</bibstyle> +%<bibstyle&long> { "\btxpageslong {}" pages n.dashify tie.or.space.connect } +%<bibstyle&long> { "\btxpagelong {}" pages tie.or.space.connect } +%<bibstyle&short> { "\btxpagesshort {.}" pages n.dashify tie.or.space.connect } +%<bibstyle&short> { "\btxpageshort {.}" pages tie.or.space.connect } +%<*bibstyle> + if$ + } + if$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.vol.num.pages} +{ volume field.or.null + number empty$ + 'skip$ + { "(" number * ")" * * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ":" * pages n.dashify * } + if$ + } + if$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ +%</bibstyle> +%<bibstyle&long> { "\btxchapterlong {}" } +%<bibstyle&short> { "\btxchaptershort {.}" } +%<*bibstyle> + { type "l" language.change.case } + if$ + chapter tie.or.space.connect + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { editor empty$ +%</bibstyle> +%<bibstyle&long> { "\Btxinlong {}\ " booktitle titlefont * } +%<bibstyle&long> { "\Btxinlong {}\ " format.editors * ": " * booktitle titlefont * } +%<bibstyle&short> { "\Btxinshort {.}\ " booktitle titlefont * } +%<bibstyle&short> { "\Btxinshort {.}\ " format.editors * ": " * booktitle titlefont * } +%<*bibstyle> + if$ + } + if$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" language.change.case + } + if$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.tr.number} +{ + number empty$ + { + type empty$ +%</bibstyle> +%<bibstyle&long> { "\btxtechreplong {}" } +%<bibstyle&short> { "\btxtechrepshort {.}" } +%<*bibstyle> + { type "t" language.change.case } + if$ + } + { + type empty$ +%</bibstyle> +%<bibstyle&long> { "\Btxtechreplong {}" } +%<bibstyle&short> { "\Btxtechrepshort {.}" } +%<*bibstyle> + { type "t" language.change.case } + if$ + number tie.or.space.connect + } + if$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.article.crossref} +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } +%</bibstyle> +%<bibstyle&long> { "\Btxinlong {}\ " journal titlefont * } +%<bibstyle&short> { "\Btxinshort {.}\ " journal titlefont * } +%<*bibstyle> + if$ + } +%</bibstyle> +%<bibstyle&long> { "\Btxinlong {}\ " key titlefont * } +%<bibstyle&short> { "\Btxinshort {.}\ " key titlefont * } +%<*bibstyle> + if$ + " \cite{" * crossref * "}" * +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.crossref.editor} +%</bibstyle> +%<bibstyle&long&names1>{ editor #1 "{ff~}{vv~}{ll}{, jj}" format.name$ namefont +%<bibstyle&long&names2>{ editor #1 "{ll}{, jj}{, ff}{~vv}" format.name$ namefont +%<bibstyle&long&names3>{ editor #1 "{f{.\,}.~}{vv~}{ll}{, jj}" format.name$ namefont +%<bibstyle&short&names1>{ editor #1 "{f.~}{vv~}{ll}{, jj}" format.name$ namefont +%<bibstyle&short&names2>{ editor #1 "{ll}{, jj}{, f.}{~vv}" format.name$ namefont +%<*bibstyle> + editor num.names$ duplicate$ + #2 > + { pop$ " " "\btxetalshort {.}" etalfont * * } + { #2 < + 'skip$ + { editor #2 "{ff }{vv~}{ll}{ jj}" format.name$ "others" = + { " " "\btxetalshort {.}" etalfont * * } + { " \btxandlong {}\ " * editor #2 +%</bibstyle> +%<bibstyle&long&names1> "{ff~}{vv~}{ll}{, jj}" format.name$ +%<bibstyle&long&names2> "{ll}{, jj}{, ff}{~vv}" format.name$ +%<bibstyle&long&names3> "{f{.\,}.~}{vv~}{ll}{, jj}" format.name$ +%<bibstyle&short&names1> "{f.~}{vv~}{ll}{, jj}" format.name$ +%<bibstyle&short&names2> "{ll}{, jj}{, f.}{~vv}" format.name$ +%<*bibstyle> + namefont * } + if$ + } + if$ + } + if$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {format.book.crossref} +{ volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ +%</bibstyle> +%<*bibstyle&long> + "\Btxinlong {}\ " + } + { "\Btxvolumelong {}" volume volume.tie.or.space.connect + " \btxofserieslong {}\ " * +%</bibstyle&long> +%<*bibstyle&short> + "\Btxinshort {.}\ " + } + { "\Btxvolumeshort {.}" volume volume.tie.or.space.connect + " \btxofseriesshort {.}\ " * +%</bibstyle&short> +%<*bibstyle> + } + 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$ + "" * + } + { series titlefont * } + if$ + } + { key titlefont * } + if$ + } + { format.crossref.editor * } + if$ + " \cite{" * crossref * "}" * +} + +% \end{macrocode} +% +% \begin{macrocode} +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$ + "" + } +%</bibstyle> +%<*bibstyle&long> + { "\Btxinlong {}\ " booktitle titlefont * } + if$ + } + { "\Btxinlong {}\ " key titlefont * } + if$ + } + { "\Btxinlong {}\ " format.crossref.editor * } +%</bibstyle&long> +%<*bibstyle&short> + { "\Btxinshort {.}\ " booktitle titlefont * } + if$ + } + { "\Btxinshort {.}\ " key titlefont * } + if$ + } + { "\Btxinshort {.}\ " format.crossref.editor * } +%</bibstyle&short> +%<*bibstyle> + if$ + " \cite{" * crossref * "}" * +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { journal + title missing$ + { titlefont } + { journalfont } + if$ + "journal" output.check + format.vol.num.pages output + format.date "year" output.check + } + { format.article.crossref output.nonnull + format.pages output + } + if$ + format.issn output + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {booklet} +{ output.bibitem + format.authors output + after.authors + format.title "title" output.check + howpublished address new.block.checkb + howpublished output + address output + format.date output + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + after.authors + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + new.sentence + publisher "publisher" output.check + address output + format.edition output + format.date "year" output.check + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + address empty$ + { organization publisher new.sentence.checkb + organization output + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + organization output + publisher output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {conference} { inproceedings } + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {manual} +{ output.bibitem + author empty$ + { organization empty$ + 'skip$ + { organization output.nonnull + address output + } + if$ + } + { format.authors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + author empty$ + { organization empty$ + { address new.block.checka + address output + } + 'skip$ + if$ + } + { organization address new.block.checkb + organization output + address output + } + if$ + format.edition output + format.date output + format.isbn output + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + "\btxmastthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {misc} +{ output.bibitem + format.authors output + title howpublished new.block.checkc + format.title output + howpublished new.block.checka + howpublished output + format.date output + format.isbn output + format.issn output + new.block + format.url output + note output + fin.entry + empty.misc.check +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + after.authors + format.btitle "title" output.check + new.block + "\btxphdthesis {}" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {proceedings} +{ output.bibitem + editor empty$ + { organization output } + { format.editors output.nonnull } + if$ + after.authors + format.btitle "title" output.check + format.bvolume output + format.number.series output + address empty$ + { editor empty$ + { publisher new.sentence.checka } + { organization publisher new.sentence.checkb + organization output + } + if$ + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + editor empty$ + 'skip$ + { organization output } + if$ + publisher output + } + if$ + format.isbn output + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" output.check + address output + format.date "year" output.check + format.isbn output + new.block + format.url output + note output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + after.authors + format.title "title" output.check + new.block + format.url output + note "note" output.check + format.date output + fin.entry +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {default.type} { misc } + +% \end{macrocode} +% Monate sollen ausgeschrieben werden. +% \begin{macrocode} +%</bibstyle> +%<*bibstyle&long> +MACRO {jan} {"\btxmonjanlong {}"} +MACRO {feb} {"\btxmonfeblong {}"} +MACRO {mar} {"\btxmonmarlong {}"} +MACRO {apr} {"\btxmonaprlong {}"} +MACRO {may} {"\btxmonmaylong {}"} +MACRO {jun} {"\btxmonjunlong {}"} +MACRO {jul} {"\btxmonjullong {}"} +MACRO {aug} {"\btxmonauglong {}"} +MACRO {sep} {"\btxmonseplong {}"} +MACRO {oct} {"\btxmonoctlong {}"} +MACRO {nov} {"\btxmonnovlong {}"} +MACRO {dec} {"\btxmondeclong {}"} +%</bibstyle&long> +%<*bibstyle&short> +MACRO {jan} {"\btxmonjanshort {.}"} +MACRO {feb} {"\btxmonfebshort {.}"} +MACRO {mar} {"\btxmonmarshort {.}"} +MACRO {apr} {"\btxmonaprshort {.}"} +MACRO {may} {"\btxmonmayshort {.}"} +MACRO {jun} {"\btxmonjunshort {.}"} +MACRO {jul} {"\btxmonjulshort {.}"} +MACRO {aug} {"\btxmonaugshort {.}"} +MACRO {sep} {"\btxmonsepshort {.}"} +MACRO {oct} {"\btxmonoctshort {.}"} +MACRO {nov} {"\btxmonnovshort {.}"} +MACRO {dec} {"\btxmondecshort {.}"} +%</bibstyle&short> +%<*bibstyle> +% \end{macrocode} +% Zeitschriften. +% \begin{macrocode} +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"} +MACRO {jcss} {"Journal of Computer and System Sciences"} +MACRO {scp} {"Science of Computer Programming"} +MACRO {sicomp} {"SIAM Journal on Computing"} +MACRO {tocs} {"ACM Transactions on Computer Systems"} +MACRO {tods} {"ACM Transactions on Database Systems"} +MACRO {tog} {"ACM Transactions on Graphics"} +MACRO {toms} {"ACM Transactions on Mathematical Software"} +MACRO {toois} {"ACM Transactions on Office Information Systems"} +MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} +MACRO {tcs} {"Theoretical Computer Science"} + +% \end{macrocode} +% +% \begin{macrocode} +READ + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +% \end{macrocode} +% +% \begin{macrocode} +INTEGERS { len } + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { nameptr #1 > + { " " * } + 'skip$ + if$ +%</bibstyle> +%<bibstyle&long> s nameptr "{ll{ }}{ ff{ }}{vv{ } }{ jj{ }}" format.name$ 't := +%<bibstyle&short> s nameptr "{ll{ }}{ f{ }}{vv{ } }{ jj{ }}" format.name$ 't := +%<*bibstyle> + nameptr numnames = t "others" = and + { "et al" * } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {sort.format.title} +{ 't := + "A " #2 + "An " #3 + "The " #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} + +% \end{macrocode} +% +% \begin{macrocode} +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$ +} + +% \end{macrocode} +% +% \begin{macrocode} +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$ +} + +% \end{macrocode} +% +% \begin{macrocode} +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$ +} + +% \end{macrocode} +% +% \begin{macrocode} +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$ := +} + +% \end{macrocode} +% +% \begin{macrocode} +ITERATE {presort} + +% \end{macrocode} +% +% \begin{macrocode} +SORT + +% \end{macrocode} +% +% \begin{macrocode} +STRINGS { longest.label } + +% \end{macrocode} +% +% \begin{macrocode} +INTEGERS { number.label longest.label.width } + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #1 'number.label := + #0 'longest.label.width := +} + +% \end{macrocode} +% +% \begin{macrocode} +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$ +} + +% \end{macrocode} +% +% \begin{macrocode} +EXECUTE {initialize.longest.label} + +% \end{macrocode} +% +% \begin{macrocode} +ITERATE {longest.label.pass} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" longest.label * "}" * write$ newline$ + " \providebibliographyfont{name}{}%" write$ newline$ + " \providebibliographyfont{lastname}{}%" write$ newline$ + " \providebibliographyfont{title}{\emph}%" write$ newline$ + " \providebibliographyfont{etal}{\emph}%" write$ newline$ + " \providebibliographyfont{journal}{}%" write$ newline$ + " \providebibliographyfont{volume}{}%" write$ newline$ + " \providebibliographyfont{ISBN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{ISSN}{\MakeUppercase}%" write$ newline$ + " \providebibliographyfont{url}{\url}%" write$ newline$ +} + +% \end{macrocode} +% +% \begin{macrocode} +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +% \end{macrocode} +% +% \begin{macrocode} +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} +%</bibstyle> +% \end{macrocode} +% +% \section{Cover der Installations"=CD} +% \changes{1.04}{2003/09/23}{CD"=Hülle in die Hauptdistribution +% aufgenommen}% +% +% \begin{macrocode} +%<*cdcover> +\documentclass[ngerman,a4paper,fleqn,10pt,landscape]{article} +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} +\usepackage{babel} +\usepackage[scaled=0.92]{helvet} +\usepackage{courier} +\usepackage{graphicx} +\usepackage{amsmath} +\usepackage{amsfonts} +\usepackage{cd-cover} +\usepackage{relsize} +\usepackage{array} +\usepackage{url} +\usepackage{mdwlist} +\usepackage[textwidth=250mm,textheight=140mm]{geometry} +\usepackage{ragged2e} +\usepackage[num]{isodate} + +\makeatletter +\def\GetFileInfo#1{% + \def\filename{#1}% + \def\@tempb##1 ##2 ##3\relax##4\relax{% + \def\filedate{##1}% + \def\fileversion{##2}% + \def\fileinfo{##3}}% + \edef\@tempa{\csname ver@#1\endcsname}% + \expandafter\@tempb\@tempa\relax? ? \relax\relax} +\makeatother + +\GetFileInfo{cdcover.tex} + +\setlength{\parindent}{0mm} +\setlength{\parskip}{6pt plus 2pt minus 1pt} + +\renewcommand*\familydefault{\sfdefault} + +\begin{document} +%\begin{landscape} +\bookletsheet{% + \RaggedRight + {\bfseries\Large Zusammenfassung des \textsmaller{CD}"=Inhalts} + \vspace{5mm} + + \begin{tabular}{@{}>{\ttfamily}l>{\RaggedRight}p{0.7\linewidth}} + alt/ & Archiv alter Versionen der Dokumentklasse \\ + doc/ & Autorenrichtlinien inklusive Installationsanleitung + \url{bgteubner-17x24-times.pdf} (Times), + \url{bgteubner-17x24-cm.pdf} (European Computer Modern) und + Beschreibung der Implementation \url{bgreucls.pdf} \\ + pakete/ & \textsmaller{ZIP}"=Archive der Installationsdateien \\ + source/ & Quelltext der \texttt{bgteubner}"=Dokumentklasse + \end{tabular} + \vspace{5mm} + + Lesen Sie vor der Installation und vor dem Schreiben des Buchs bitte + aufmerksam die Autorenrichtlinien \url{bgteubner-17x24-times.pdf} oder + \url{bgteubner-17x24-cm.pdf} durch. + }{% + \begin{center} + \sffamily\Large + {\bfseries\Large + Harald Harders + \par}% + \vskip 2.0em + \par + {\bfseries\LARGE + Erstellen von Büchern für den Vieweg+Teubner Verlag mit \LaTeX + \par} + \vskip 2.0em + {\bfseries\Large + Dokumentklasse, Autorenrichtlinien und Installationsanleitung, + zusätzliche Pakete + \par} + \vskip 5.0em + Version \fileversion, \printdateTeX{\filedate} + \par + \vskip 2.0em + Vieweg+Teubner\quad Stuttgart $\cdot$ Leipzig $\cdot$ Wiesbaden + \end{center} +} + +\backsheet{Erstellen von Büchern für den Vieweg+Teubner Verlag mit \LaTeX + \qquad\qquad\qquad\quad\small v\fileversion}{% + \RaggedRight + {\bfseries + Harald Harders + \par} + \vskip 1em + {\Large\bfseries Erstellen von Büchern für den Vieweg+Teubner Verlag mit + \LaTeX + \par} + \vskip 3em + + Diese \textsmaller{CD} enthält die Dokumentklasse + \url{bgteubner.cls} sowie die Autorenrichtlinien inklusive + Installationsanleitung in zwei Versionen: + \begin{itemize*} + \item \url{bgteubner-17x24-times.pdf}: Brotschrift Times, + \item \url{bgteubner-17x24-cm.pdf}: Brotschrift European + Computer Modern. + \end{itemize*} + Außerdem sind Zusatzpakete enthalten, die in \TeX Live\,8 entweder + nicht oder nur veraltet enthalten sind. + + Diese \textsmaller{CD} sollte zusammen mit einer + \TeX Live"=8"=Installation verwendet werden (dafür ist eine + Anleitung enthalten). + Sie läuft auch mit anderen Distributionen, wobei dann aber keine + Anleitung enthalten ist. + } +%\end{landscape} + +\end{document} +% \end{macrocode} +% +% \iffalse +%</cdcover> +% \fi +% \Finale diff --git a/Master/texmf-dist/source/latex/bgteubner/bgteucls.ins b/Master/texmf-dist/source/latex/bgteubner/bgteucls.ins new file mode 100644 index 00000000000..6efdd2e7649 --- /dev/null +++ b/Master/texmf-dist/source/latex/bgteubner/bgteucls.ins @@ -0,0 +1,138 @@ +%% bgteubner class bundle +%% +%% bgteucls.ins +%% Copyright 2003--2012 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% This program consists of all files listed in manifest.txt. +\input docstrip.tex +\preamble + + bgteubner class bundle + + Copyright 2003--2012 Harald Harders + + This program may be distributed and/or modified under the + conditions of the LaTeX Project Public License, either version 1.3 + of this license or (at your opinion) any later version. + The latest version of this license is in + http://www.latex-project.org/lppl.txt + and version 1.3 or later is part of all distributions of LaTeX + version 1999/12/01 or later. + + This program consists of all files listed in manifest.txt. + + harald.harders@gmx.de + +\endpreamble + +\declarepreamble\clspreamble + + bgteubner class bundle + + Copyright 2003--2012 Harald Harders + + This program may be distributed and/or modified under the + conditions of the LaTeX Project Public License, either version 1.3 + of this license or (at your opinion) any later version. + The latest version of this license is in + http://www.latex-project.org/lppl.txt + and version 1.3 or later is part of all distributions of LaTeX + version 1999/12/01 or later. + + Additional conditions to the license: + + If you modify a renamed copy of the files `bgteubner.cls' or + `bgteucls.dtx', you have to preserve some information in the + PDF /Creator entry. The following data have to remain: + - The name `bgteubner.cls', + - a hint that this class has been developed for the `Teubner + Verlag, Wiesbaden, Germany'. + + This program consists of all files listed in manifest.txt. + + harald.harders@gmx.de + +\endpreamble + + +\declarepreamble\bstpreamble + + bgteubner class bundle + + Copyright 2003--2012 Harald Harders + + This program may be distributed and/or modified under the + conditions of the LaTeX Project Public License, either version 1.3 + of this license or (at your opinion) any later version. + The latest version of this license is in + http://www.latex-project.org/lppl.txt + and version 1.3 or later is part of all distributions of LaTeX + version 1999/12/01 or later. + + This program consists of all files listed in manifest.txt. + + This BibTeX style is intended to be used with the bgteubner + document class and the babelbib package. It may work together with + other document classes but is unlikely to work without the + babelbib package. + + harald.harders@gmx.de + +\endpreamble + +\declarepreamble\istpreamble + + bgteubner class bundle + + Copyright 2003--2012 Harald Harders + + This program may be distributed and/or modified under the + conditions of the LaTeX Project Public License, either version 1.3 + of this license or (at your opinion) any later version. + The latest version of this license is in + http://www.latex-project.org/lppl.txt + and version 1.3 or later is part of all distributions of LaTeX + version 1999/12/01 or later. + + This program consists of all files listed in manifest.txt. + + This Makeindex style file is intended to be used with the bgteubner + document class. It may or may not work together with other document + classes. + + harald.harders@gmx.de + +\endpreamble + + +\askforoverwritefalse + +% Files +%%%%%%%%%%%%%%%%%%%%%% +\generate{% + \file{bgteuversion.tex}{\from{bgteucls.dtx}{version}}% + \file{cdcover.tex}{\from{bgteucls.dtx}{cdcover}}% + \usepreamble\clspreamble + \file{bgteubner.cls}{\from{bgteucls.dtx}{class}}% + \usepostamble\empty + \usepreamble\istpreamble + \file{bgteubner.ist}{\from{bgteucls.dtx}{idxstyle}}% + \file{bgteuglo.ist}{\from{bgteucls.dtx}{glostyle1}}% + \file{bgteuglochar.ist}{\from{bgteucls.dtx}{glostyle2}}% + \usepostamble\empty + \usepreamble\bstpreamble + \file{bgteupln.bst}{\from{bgteucls.dtx}{bibstyle,long,names1}}% + \file{bgteupln2.bst}{\from{bgteucls.dtx}{bibstyle,long,names2}}% + \file{bgteupln3.bst}{\from{bgteucls.dtx}{bibstyle,long,names3}}% + \file{bgteuabbr.bst}{\from{bgteucls.dtx}{bibstyle,short,names1}}% + \file{bgteuabbr2.bst}{\from{bgteucls.dtx}{bibstyle,short,names2}}% +} +\endbatchfile diff --git a/Master/texmf-dist/source/latex/bgteubner/hhsubfigure.dtx b/Master/texmf-dist/source/latex/bgteubner/hhsubfigure.dtx new file mode 100644 index 00000000000..cd39eb59cc3 --- /dev/null +++ b/Master/texmf-dist/source/latex/bgteubner/hhsubfigure.dtx @@ -0,0 +1,3913 @@ +% \iffalse % hhsubfigure.dtx +% Subfigure/subtable macros for use with the LaTeX figure/table environments. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Copyright (C) 2003 Harald Harders. +% +% This is a slightly modified version of the `subfigure' package by +% Steven Douglas Cochran. The origianl package can be downloaded from +% <ftp://ftp.dante.de/tex-archive/macros/latex/contrib/subfigure/>. +% +% The hhsubfigure package is free software; it may be distributed under +% the conditions of the LaTeX Project Public License, either version 1.1 +% of this license or (at your option) any later version. The latest +% version of this license is in: +% http://www.latex-project.org/lppl.txt +% and version 1.1 or later is part of all distributions of LaTeX version +% 1999/06/01 or later. +% +% The captcont package is distributed in the hope that it will be +% useful, but WITHOUT ANY WARRANTY; without even the implied warranty +% of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% LaTeX Project Public License for more details. +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% @LaTeX-style-file{ +%% author = "Steven Douglas Cochran (modified by Harald Harders)", +%% version = "2.1.4", +%% date = "2003/09/14", +%% time = "09:34:13", +%% filename = "hhsubfigure.sty", +%% email = "h.harders@tu-bs.de", +%% codetable = "ISO/ASCII", +%% keywords = "LaTeX, float, figure, table, captcont", +%% supported = "yes", +%% abstract = "LaTeX package for providing support for the +%% inclusion of small, `sub', figures and tables. It +%% simplifies the positioning, captioning and +%% labeling of them within a single figure or table +%% environment. In addition, this package allows +%% such subcaptions to be written to the List of +%% Figures or List of tables if desired." +%% } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +%<*driver> +\NeedsTeXFormat{LaTeX2e}[1994/12/01] +\ProvidesFile{hhsubfigure.dtx} +\documentclass{ltxdoc} +\usepackage[tight,TABTOPCAP]{hhsubfigure}[2002/03/15] +\setlength\hfuzz{100pt} +\setlength\vfuzz{100pt} +\clubpenalty=10000 +\widowpenalty=10000 +\displaywidowpenalty=5000 +\brokenpenalty=5000 +\begin{document} + \DocInput{hhsubfigure.dtx} +\end{document} +%</driver> +% +%<*ltxdoc> +\AtBeginDocument{ +% \OnlyDescription % comment out for implementation details + \EnableCrossrefs + \RecordChanges + \CodelineIndex} +\AtEndDocument{ + \PrintChanges + \PrintIndex} +%</ltxdoc> +% +% \fi +% \catcode`\^=14 ^^A We will use a ^ for a comment rather than ^^A. +% \newcommand*{\Lopt}[1]{\textsf{#1}} ^ Package options +% \newcommand*{\Lfile}[1]{\texttt{#1}} ^ File names +% \newcommand*{\Lpack}[1]{\textsf{#1}} ^ Package names +% \newcommand*{\Lenv}[1]{\texttt{#1}} ^ Environment names +% \newcommand*{\Lcount}[1]{\textsl{\small#1}} ^ Counter names +% \newcommand*{\Lif}[1]{\textsc{\bf#1}} ^ \if names +% ^ NOTE: Hacks added to make the final format are marked ``^finalhack''. +% +% \changes{v1.0}{05 Mar 1986}{Created.} +% +% \changes{v1.1}{02 Nov 1988}{Initial revision.} +% +% \changes{v1.2}{30 Aug 1989}{Added a separate bottom margin and +% expanded the comments.} +% +% \changes{v1.3}{22 Oct 1990}{Changed test for empty subcaption inside +% of \cmd{\@subfigure} to compare tokens and not the subcaption vs.\ +% \cmd{\@empty}. The former (incorrect) test caused an error when the +% first two letters of the subcaption were the same.} +% +% \changes{v1.4}{27 Jun 1992}{Added a hack to allow the \cmd{\label} +% command to be used within the body of the subfigure giving a +% reference label in the form \cmd{\arabic{thefigure}\thesubfigure}. +% Added standard file header for style.} +% +% \changes{v1.5}{11 Aug 1992}{Fixed a bug which caused a problem with +% subcaptions that contained expressions like \cmd{\sqrt}; This was +% pointed out by Tom Scavo (scavo\@cie.uoregon.edu). A separate bug +% was fixed which caused different sized subcaptions to be misaligned; +% This problem was pointed out by Simon Marshall +% (S.Marshal\@Hull.ac.uk). Also cleaned up the code a mite and +% {\bf changed} the figure spacing so that if no optional section is +% given, then the figure is only followed by \cmd{\subfigbottomskip} +% and not that plus $(\cmd{\subfigcapskip}+\cmd{\strut}\hbox{height})$. +% This should make it easier to adjust spacing as desired.} +% +% \changes{v1.6}{13 May 1993}{Changed to use the \cmd{\thefigure} +% command in building the referenced label. The old form caused a +% problem when used with the report.sty as pointed out by Andrew +% Anselmo (anselmo\@cumesb.mech.columbia.edu). Also modified to +% restrict the scope of the subfigure \cmd{\label} to the body of the +% subfigure. Added \cmd{\@thesubfigure} to allow a separate labeling +% of the subfigure in the figure and in the text. By default it is +% the same as \cmd{\thesubfigure} with space appended. Added some +% code to print the subfigure captions to the List-of-Figures file +% if desired. Finally, added the corresponding support for subtables +% as well as subfigures. NOTE: the optional subcaption is now a moving +% argument and any fragile commands that appear in the subcaption must +% be preceded by a \cmd{\protect} (just like that of the \cmd{\caption} +% command).} +% +% \changes{v2.0}{06 Mar 1995}{This version of \cmd{\subfigure} is the +% first to be ported to \LaTeXe\ (with backward compatibility to +% \LaTeX2.09). \cmd{\subfigure} and \cmd{\subtable} are now identical +% and the environment controls internal differences between them. Now, +% the subcaption setting portion of \cmd{\@subfloat} is broken into the +% separate commands \cmd{\@makesubfigurecaption} and +% \cmd{\@makesubtablecaption} to allow a separate hook for the +% modification of how the subcaption is constructed and to allow the +% subtable and subfigure captions to be different. In addition, support +% of the \Lopt{normal}, \Lopt{hang}, \Lopt{center}, \Lopt{centerlast}, +% \Lopt{nooneline}; \Lopt{scriptsize}, \ldots, \Lopt{Large}; \Lopt{up}, +% \Lopt{it}, \Lopt{sl}, \Lopt{sc}, \Lopt{md}, \Lopt{bf}, \Lopt{rm}, +% \Lopt{sf}, and \Lopt{tt} package options were added for compatibility +% with the caption.sty by H.A. Sommerfeldt.} +% +% \changes{v2.1}{23 Jan 2002}{Upgraded to fix a \cmd{\protect} bug that +% crept in due to changes in \LaTeXe\ and to enhance the interaction +% with the ``List-of'' files. Backward compatibility with \LaTeX2.09 is +% \textbf{not} supported. This version allows optional subcaption +% strings for the ``List-of'' files and the companion captcont.sty +% allows further extensions. Added check for \Lfile{subfigure.cfg} file +% for automatic configuration. Added more options for adjustment of the +% look-and-feel of the subcaption. Added the ability to independently +% move the float caption and subcaption before or after the figure. +% Removed extra space from the top of a figure at the top of a page and +% some accidental whitespace. Reduced the default space around the +% figure and made it actual skips. Updated the documentation to +% describe the new changes and to make some points more clear.} +% +% \DoNotIndex{\@@@,\@auxout,\@bsphack,\@dottedtocline,\@empty,\@esphack} +% \DoNotIndex{\@flushglue,\@for,\@gobble,\@ifnextchar,\@ifpackageloaded} +% \DoNotIndex{\@ifstar,\@ifundefined,\@minipagefalse,\@nameuse,\@ne} +% \DoNotIndex{\@rightskip,\@tempboxa,\@tempcnta,\@tempdima} +% \DoNotIndex{\@tempdimb,\@tempskipb,\@xaddvskip,\addcontentsline} +% \DoNotIndex{\addtolength,\advance,\alph,\arabic,\AtBeginDocument} +% \DoNotIndex{\AtEndOfPackage,\begingroup,\bfseries,\bgroup,\box} +% \DoNotIndex{\DeclareOption,\def,\do,\edef,\egroup,\else,\endgroup} +% \DoNotIndex{\ExecuteOption,\ExecuteOptions,\ext@figure,\ext@table} +% \DoNotIndex{\familydefault,\fi,\footnotesize,\fontfamily,\fontseries} +% \DoNotIndex{\fontshape,\gdef,\global,\hbox,\hfil,\hskip,\hss,\if@minipage} +% \DoNotIndex{\ifcase,\ifdim,\ifnum,\ifx,\ignorespaces,\InputIfFileExists} +% \DoNotIndex{\itshape,\label,\lastskip,\leftskip,\Large,\large,\leavevmode} +% \DoNotIndex{\let,\long,\m@ne,\mdseries,\multiply,\NeedsTeXFormat} +% \DoNotIndex{\newcommand,\newcounter,\newdimen,\newif,\newlabel,\newskip} +% \DoNotIndex{\noexpand,\normalsize,\numberline,\or,\p@,\par,\parbox} +% \DoNotIndex{\parfillskip,\parindent,\ProcessOptions,\protect} +% \DoNotIndex{\protected@write,\protected@edef,\providecommand} +% \DoNotIndex{\ProvidesPackage,\ref,\refstepcounter,\relax,\renewcommand} +% \DoNotIndex{\RequirePackage,\rightskip,\rmfamily,\sbox,\scriptsize} +% \DoNotIndex{\scshape,\selectfont,\seriesdefault,\setbox,\setcounter} +% \DoNotIndex{\setlength,\sffamily,\shapedefault,\slshape,\small,\space} +% \DoNotIndex{\string,\strut,\thefigure,\thepage,\thetable,\ttfamily,\tw@} +% \DoNotIndex{\typeout,\undefined,\upshape,\usebox,\vbox,\vskip,\vspace} +% \DoNotIndex{\vtop,\wd,\xdef,\z@,\z@skip} +% +% \CheckSum{770}% +% ^ Allow a little more freedom in typesetting floats. +% \setcounter{topnumber}{8} +% \def\topfraction{.8} +% \setcounter{bottomnumber}{8} +% \def\bottomfraction{.8} +% \setcounter{totalnumber}{8} +% \def\textfraction{.2} +% \def\floatpagefraction{.8} +% \setcounter{dbltopnumber}{8} +% \def\dbltopfraction{.8} +% \def\dblfloatpagefraction{.8} +% +% ^ Add some space above any footnotes. +% \skip\footins=1.5\baselineskip +% +% \makeatletter +% +% ^ Remove some space above minipage footnotes. +% \skip\@mpfootins=2.6\p@ +% +% ^ Define a raggedright for use in tabular's. +% \newcommand{\rr}{^ +% \@rightskip\@flushglue +% \rightskip\@rightskip +% \leftskip\z@ +% \parindent\z@} +% +% ^ Turn off any list entries by ``eating'' any \addcontentsline stuff. +% \newcommand*{\eatthree}[3]{}^ +% \newcommand*{\turnofflistentry}{\let\addcontentsline=\eatthree} +% +% ^ Print text (#2) only if reference (r@#1) is defined. +% \newcommand{\PrintIfDefined}[3]{^ +% \@bsphack +% \@ifundefined{r@#1}{#3}{#2}^ +% \@esphack} +% +% \makeatother +% +% \def\docdate{2002/07/02} +% \def\fileversion{v2.1.4a} +% \def\filedate{2003/09/14} +% \def\filename{hhsubfigure.dtx} +% +% \title{The \Lpack{hhsubfigure} Package\footnote{This paper documents +% the \Lpack{hhsubfigure} package \fileversion, last revised \filedate.}} +% \author{Steven Douglas Cochran\\[5pt] +% Digital Mapping Laboratory, School of Computer Science \\ +% Carnegie-Mellon University, 5000 Forbes Avenue \\ +% Pittsburgh, PA 15213--3890, USA\\[5pt] +% \texttt{sdc+@cs.cmu.edu}} +% \date{\docdate} +% +% \maketitle +% +% \begin{abstract} +% \noindent +% This article documents the \LaTeX\ package `\Lpack{hhsubfigure}', which +% provides support for the inclusion of small, `sub', figures and +% tables. It simplifies the positioning, captioning and labeling of +% such objects within a single \Lenv{figure} or \Lenv{table} +% environment. In addition, this package allows such subcaptions to be +% written to a List-of-Figures or List-of-Tables if desired. The +% `\Lpack{hhsubfigure}' package also cooperates with the `\Lpack{caption}' +% and `\Lpack{caption2}' packages by H.A. Sommerfeldt +% \cite{Somm95a,Somm95b}, the `\Lpack{ccaption}' and `\Lpack{tocloft}' +% packages \cite{Wils01,Wils01B} by Peter Wilson, the `\Lpack{hyperref}' +% package by Sebastian Rahtz \cite{Raht02}, the `\Lpack{captcont}' package +% \cite{Coch02}, and should be compatible with all other packages that +% modify or extend the \Lenv{float} environment or the \cmd{\caption} or +% \cmd{\label} commands. +% +% \end{abstract} +% +% \newpage +% \tableofcontents +% +% \newpage +% \setcounter{lotdepth}{2}^ +% \listoftables +% \setcounter{lofdepth}{2}^ +% \listoffigures +% +% \newpage +% \section{Introduction} +% \enlargethispage{24pt}^finalhack +% +% This package provides support for the manipulation and reference of +% small or `sub' figures and tables within a single \Lenv{figure} or +% \Lenv{table} environment\@.\footnote{Section~\ref{sec:customfloat} +% describes how to add support for additional \Lenv{float} +% environments.} It is convenient to use this package when your +% subfigures are to be separately captioned, referenced, or when such +% subcaptions are to be included in the List-of-Figures. +% +% Before using the \Lpack{hhsubfigure} package, consider the following to +% see if you really need it. If you simply want to center your figure, +% then you can use |\centerline|, |\centering| or the \Lenv{center} +% environment to do so. If your figure has a short width or if you wrap +% your figure in a |\parbox| or a \Lenv{minipage} of a short width, then +% you can place multiple figures or tables side-by-side. For example, +% the following will put two images side-by-side in a single figure as +% shown in figure~\ref{fig:1figs}:\footnote{You might have to use the +% optional position arguments `[b]' or `[t]' if the figures are of +% different heights.} +% +% \begin{verbatim} +% \begin{figure}% +% \centering +% \parbox{1.2in}{...figure code...}% +% \qquad +% \begin{minipage}{1.2in}% +% ...figure code... +% \end{minipage}% +% \caption{Here are two figures side-by-side.}% +% \label{fig:1figs}% +% \end{figure} +% \end{verbatim} +% \vspace{-1\baselineskip} +% \begin{figure}^ +% \abovecaptionskip=6pt^ +% \centering +% \parbox{1.2in}{^ +% \fboxsep=-\fboxrule +% \fbox{\hbox to 1.2in{\vbox to 15mm{\null\vfil}\hfil}}}^ +% \qquad +% \begin{minipage}{1.2in}^ +% \fboxsep=-\fboxrule +% \fbox{\hbox to 1.2in{\vbox to 15mm{\null\vfil}\hfil}}^ +% \end{minipage}^ +% \caption{Here are two figures side-by-side.}^ +% \label{fig:1figs}^ +% \vspace{-10pt} +% \end{figure} +% +% \noindent +% Further, if you place the caption inside the |\parbox| or +% \Lenv{minipage}, then the width of the caption will be limited to the +% width of the parbox or minipage as shown in figures~\ref{fig:2figsA} +% and \ref{fig:2figsB}: +% +% \begin{verbatim} +% \begin{figure}% +% \centering +% \parbox{1.2in}{% +% ...figure code... +% \caption{First.}% +% \label{fig:2figsA}}% +% \qquad +% \begin{minipage}{1.2in}% +% ...figure code... +% \caption{Second.}% +% \label{fig:2figsB}% +% \end{minipage}% +% \end{figure}% +% \end{verbatim} +% \vspace{-\baselineskip} +% \begin{figure}^ +% \abovecaptionskip=2pt^ +% \centering +% \parbox{1.2in}{^ +% \fboxsep=-\fboxrule +% \fbox{\hbox to 1.2in{\vbox to 15mm{\vfil\null}\hfil}}^ +% \caption{First.}^ +% \label{fig:2figsA}}^ +% \qquad +% \begin{minipage}{1.2in}^ +% \fboxsep=-\fboxrule +% \fbox{\hbox to 1.2in{\vbox to 15mm{\vfil\null}\hfil}}^ +% \caption{Second.}^ +% \label{fig:2figsB}^ +% \end{minipage}^ +% \vspace{-10pt} +% \end{figure} +% +% For more information on typesetting figures and tables, see the +% document ``Using Imported Graphics in \LaTeXe'' by Keith Reckdahl +% \cite{Reck97}. +% +% \section{The User Interface} +% \vspace{-5pt}^finalhack +% \enlargethispage{12pt}^finalhack +% +% To use this package place +% \begin{quote} +% |\usepackage|\oarg{options}\marg{hhsubfigure} +% \end{quote} +% in the preamble of your document. The supported options are shown in +% table~\ref{tab:options}. +% \DescribeMacro{\subfigure} +% \DescribeMacro{\subtable} +% Within a \Lenv{figure} or \Lenv{table} +% environment, you can use the following commands to create a subfigure +% or subtable ``box'' with an optional subcaption underneath. +% \vspace{-2pt} +% \begin{quote} +% |\subfigure|\oarg{list\_entry}\oarg{subcaption}\marg{figure}\\ +% |\subtable|\oarg{list\_entry}\oarg{subcaption}\marg{figure} +% \end{quote} +% \vspace{-2pt} +% +% \noindent +% If a subcaption argument is given (including the null subcaption +% `{\ttfamily [$\;$]}') then the subfigure is labeled with a counter +% formatted by the command `|\thesubfigure|' which returns, by default, +% `(a)', `(b)', etc. The counter used for labeling the subfigures is +% \Lcount{hhsubfigure} and is incremented for each subfigure regardless of +% whether a subcaption was printed. The internals of the |\subtable| +% command are symmetric to those of the |\subfigure| command. Further, +% if a List-of-Figures (or List-of-Tables) is generated, then the +% \meta{list\_entry} argument controls how the caption text is used +% there. Table~\ref{tab:calling} shows the possibilities. +% +% \changes{v2.1.4}{30 Apr 2002}{Changed the label and caption defaults +% from \cmd{\rmfamily}\cmd{\mdseries}\cmd{\upshape} to +% \cmd{\familydefault}\cmd{\seriesdefault} \cmd{\shapedefault}.} +% \DeleteShortVerb{\|} +% \begin{table} +% \def\M#1{\vspace*{#1}} +% \centering +% \caption{\Lpack{hhsubfigure} package options.} +% \label{tab:options} +% \vspace{8pt} +% \fbox{\begin{tabular}{|p{0.36\textwidth}|p{0.63\textwidth}|} \hline +% \multicolumn{1}{|c|}{{\large\bf\strut Option}} +% & \multicolumn{1}{c|}{{\large\bf Description}} +% \\ \hline\hline +% \Lopt{normal} & \rr Provides `normal' subcaptions, this is the +% default. \\ \hline +% \raisebox{-1.4ex}{\Lopt{hang}, \Lopt{isu}} +% & \rr Causes the label to be a hanging +% indentation to the subcaption paragraph. +% (\Lopt{isu} is a synonym for \Lopt{hang}.) +% \\ \hline +% \raisebox{-1.4ex}{\Lopt{center}} +% & \rr Causes each line of the paragraph to be +% separately centered. Overrides +% \Lopt{centerlast}.\\ \hline +% \raisebox{-1.4ex}{\Lopt{centerlast}, \Lopt{anne}} +% & \rr Causes the last line only to be centered. +% Overrides \Lopt{nooneline}. (\Lopt{anne} is +% a synonym for \Lopt{centerlast}.) \\ \hline +% \raisebox{-2.6ex}{\Lopt{nooneline}} +% & \rr If a subcaption fits on one line it will, by +% default, be centered. This option +% treats a single line like a mid-line of a +% multi-line caption.\\ \hline +% \raisebox{-1.4ex}{\Lopt{raggedright}} +% & \rr Causes the subcaption text to be raggedright. +% Overrides \Lopt{center} and \Lopt{centerlast}. +% \\ \hline +% \raisebox{-1.4ex}{\Lopt{RaggedRight}} +% & \rr Causes the subcaption text to be +% raggedright with hyphenation (using the +% ragged2e package). +% Overrides \Lopt{center} and \Lopt{centerlast}. +% \\ \hline\hline +% \Lopt{scriptsize{\rm,} footnotesize{\rm,} small{\rm,}\hfil\null\linebreak +% normalsize{\rm,} large{\rm,} Large} +% & \rr Sets the font size of the subcaptions (both +% the label and the text), \Lopt{footnotesize} +% is default. \\ \hline +% \M{1.8ex} +% \Lopt{rm{\rm,} sf{\rm,} tt{\rm,} md{\rm,} bf{\rm,}\efill +% up{\rm,} it{\rm,} sl{\rm,} sc{\rm,}}\hfil\null\linebreak +% \Lopt{RM{\rm,} SF{\rm,} TT{\rm,} MD{\rm,} BF{\rm,}\efill +% UP{\rm,} IT{\rm,} SL{\rm,} SC} +% & \rr The lowercase commands set the font attributes +% of the subcaption label. The capitalized version +% sets the font attributes of the text. Family, +% shape and style attributes may be mixed. +% The default is to set the document defaults for +% the family, series and shape.\\ \hline\hline +% \M{4ex} +% \Lopt{figbotcap}{\rm,} \Lopt{tabbotcap}{\rm,}\hfil\null\linebreak +% \Lopt{FIGBOTCAP}{\rm,} \Lopt{TABBOTCAP} +% & \rr Sets the figure or table numbering based on +% the assumption that the figure or table caption +% comes after the subfigures or subtables. The +% capitalized version also places the subcaption +% after the figure (``\Lopt{FIGBOTCAP}'' and +% ``\Lopt{TABBOTCAP}'' are the default settings). +% \\ \hline +% \M{3.9ex} +% \Lopt{figtopcap}{\rm,} \Lopt{tabtopcap}{\rm,}\hfil\null\linebreak +% \Lopt{FIGTOPCAP}{\rm,} \Lopt{TABTOPCAP} +% & \rr Sets the figure or table numbering based on +% the assumption that the figure or table caption +% precedes the subfigures or subtables. The +% capitalized version also places the subcaption +% before the figure (``\Lopt{TABTOPCAP}'' is the +% preferred table setting, see +% section~\ref{sec:position} for details). +% \\ \hline\hline +% \M{2.6ex} +% \Lopt{loose}{\rm,} \Lopt{tight} +% & \rr The (default) \Lopt{loose} option sets the +% historically normal whitespace around the subfloat. +% The \Lopt{tight} option sets less space around the +% subfigure (this is the preferred setting). +% \\ \hline +% \end{tabular}}% +% \end{table} +% \MakeShortVerb{\|} +% +% \begin{table} +% \centering +% \caption{\cmd{\subfigure} calling arguments.} +% \label{tab:calling} +% \begingroup\small +% \begin{tabular}{llc} \\ \hline +% {\normalsize Subfigure Command} +% & {\normalsize LoF/LoT} +% & \multicolumn{1}{r}{\hbox to .25in{% +% \hss\normalsize +% Subfigure Caption}} +% \\ \hline +% \cmd{\subfigure}\{\dots fig\dots\} +% & & \\ +% \cmd{\subfigure}[~]\{\dots fig\dots\} +% & (b)\ \ . . . . . . . . . . +% & (b) \\ +% \cmd{\subfigure}[Subcaption.]\{\dots fig\dots\} +% & (c) Subcaption. . . . +% & (c) Subcaption. \\ +% \cmd{\subfigure}[\space][Subcaption.]\{\dots fig\dots\} +% & & (d) Subcaption. \\ +% \cmd{\subfigure}[\space][\space]\{\dots fig\dots\} +% & & (e) \\ +% \cmd{\subfigure}[List\_entry.][Subcaption.]\{\dots fig\dots\} +% & (f) List\_entry. . . . +% & (f) Subcaption. \\ +% \cmd{\subfigure}[List\_entry.][~]\{\dots fig\dots\} +% & (g) List\_entry. . . . +% & (g) \\ \hline +% \end{tabular} +% \endgroup +% \vspace{-8pt} +% \end{table} +% +% If you wish to reference a specific subfigure or subtable, you can +% include a |\label| inside the body of either the \meta{subcaption} or +% \meta{figure} argument to the command (but not the \meta{list\_entry} +% argument). If supplied by itself, the \meta{subcaption} is a ``moving +% argument''\footnote{See \cite[\textsection~4.7 and +% \textsection~C.1.3]{Lamp94} for a more detailed description of +% ``moving arguments'' and ``fragile'' commands.} and, therefore, any +% ``fragile'' commands contained within it must be |\protect|'ed. If +% the \meta{list\_entry} argument is supplied, then the +% \meta{subcaption} is not a ``moving argument''; however, the +% \meta{list\_entry} is. +% +% {\bf Note:} since the |\subfigure| and |\subtable| commands have optional +% arguments, delimited with square brackets, before their required argument, +% you cannot use the `]' character at the top level of either the +% \meta{subcaption} or \meta{list\_entry} argument. To overcome this +% problem, you must wrap the portion of the text containing the `]' +% character (or the entire argument), in a pair of curly brackets (see +% \cite[\textsection~C.1.1]{Lamp94} for more detail). For example: +% +% \begin{verbatim} +% \subfigure[This does not $sqrt[3]{8}$ work.]{... figure text ...} +% \subfigure[This works {$sqrt[3]{8}$} fine.]{... figure text ...} +% \subfigure[{This also works $sqrt[3]{8}$ fine.}]{... figure text ...} +% \end{verbatim} +% +% One final note, the |\subfigure| and |\subtable| commands are +% actually identical and it is the surrounding environment that defines +% actually identical and it is the surrounding environment that defines +% whether a subtable or subfigure will be generated and not which command +% is used. At the user level, the choice of names is purely cosmetic +% (and historical). Therefore you can use |\subfigure| for any float +% ({\it e.g.\/}, \Lenv{figure}, \Lenv{table}, or other) environment. +% +% \subsection{Format Options} +% \label{sec:format} +% +% There are six options for formatting the layout of the caption label +% and text. The first is \Lopt{normal}, which produces the style shown +% in figure~\ref{fig:format-01}. The other options may be used in +% various combinations to produce the layouts shown in +% figures~\ref{fig:format-02} thru \ref{fig:format-14}. Note that some +% combinations, like \Lopt{center} and \Lopt{centerlast} do not make +% sense since \Lopt{center} overrides \Lopt{centerlast}. Also, +% \Lopt{nooneline}, when combined with either \Lopt{center} or +% \Lopt{centerlast} has no effect (unless the \Lopt{hang} option is +% also set); and, \Lopt{raggedright} overrides both \Lopt{center} and +% \Lopt{centerlast}. +% +% \begingroup +% \def\sc{Short.} +% \def\lc{This is a long caption of gibberish: Aafas d taed +% gaihgghn adf irin sadf aets etsd na.} +% \def\b{\fboxsep=-\fboxrule +% \fbox{\hbox to 2.0in{\vbox to 2mm{\vfil\null}\hfil}}} +% \def\g{\hspace{.5in}} +% \subfigtopskip=20pt +% \subfigcapskip=-3pt +% \subfigbottomskip=0pt +% \abovecaptionskip=5pt +% \begin{figure}^ +% \centering +% \turnofflistentry +% \subcaphangfalse +% \subcapcenterfalse +% \subcapcenterlastfalse +% \subcapnoonelinefalse +% \subcapraggedrightfalse +% \subfigure[\sc]{\b}\g\subfigure[\lc]{\b}\\ +% \caption{Format option [\Lopt{normal}].}^ +% \label{fig:format-01}^ +% \subcapnoonelinetrue +% \subfigure[][\sc]{\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format option [\Lopt{nooneline}].}^ +% \label{fig:format-02}^ +% \subcapcenterlasttrue +% \subcapnoonelinefalse +% \subfigure[][\sc]{\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format option [\Lopt{centerlast}]; \Lopt{centerlast} overrides +% \Lopt{nooneline}.\footnotemark} +% \label{fig:format-03}^ +% \subcapcentertrue +% \subcapcenterlastfalse +% \subfigure[][\sc]{\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format option [\Lopt{center}]; \Lopt{center} overrides +% \Lopt{nooneline} and \Lopt{centerlast}.}^ +% \label{fig:format-04}^ +% \subcaphangtrue +% \subcapcenterfalse +% \subfigure[][\sc]{\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format option [\Lopt{hang}].} +% \label{fig:format-05} +% \subcapnoonelinetrue +% \subfigure[][\sc]{\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format options [\Lopt{hang},\Lopt{nooneline}].} +% \label{fig:format-06} +% \subcapcenterlasttrue +% \subcapnoonelinefalse +% \subfigure[][\sc]{\b}\g\subfigure[][\lc]{\b}\\ +% \caption{\Lpack{Hhsubfigure}\ format options [\Lopt{hang},^ +% \Lopt{centerlast}].} +% \label{fig:format-07} +% \vspace{2\baselineskip} +% \begin{minipage}{\linewidth} +% \footnotetext{\raise1ex\hbox to 0pt{\hss\tiny\thefootnote}^ +% So this is the same as [\Lopt{centerlast},\Lopt{nooneline}]. Only +% the shortest number of options to achieve an effect is shown. +% Adding any combination of overridden options has no effect.} +% \end{minipage} +% \end{figure} +% +% \begin{figure} +% \turnofflistentry +% \centering +% \subcaphangtrue +% \subcapcenterfalse +% \subcapcenterlasttrue +% \subcapnoonelinetrue +% \subcapraggedrightfalse +% \subfigure[][\sc]{\label{fig:format-08A}\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format options [\Lopt{hang},\Lopt{centerlast},\Lopt{nooneline}].} +% \label{fig:format-08} +% \subcapcentertrue +% \subcapcenterlastfalse +% \subcapnoonelinefalse +% \subfigure[][\sc]{\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format options [\Lopt{hang},\Lopt{center}]; +% \Lopt{center} overrides \Lopt{centerlast}.} +% \label{fig:format-09} +% \subcapnoonelinetrue +% \subfigure[][\sc]{\label{fig:format-10A}\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format options [\Lopt{hang},\Lopt{center},\Lopt{nooneline}]; +% \Lopt{center} overrides \Lopt{centerlast}.} +% \label{fig:format-10} +% \subcaphangfalse +% \subcapcenterfalse +% \subcapnoonelinefalse +% \subcapraggedrighttrue +% \subfigure[][\sc]{\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format option [\Lopt{raggedright}]; +% \Lopt{raggedright} overrides \Lopt{center} and \Lopt{centerlast}.} +% \label{fig:format-11} +% \subcapnoonelinetrue +% \subfigure[][\sc]{\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format options [\Lopt{raggedright},\Lopt{noonelirne}]; +% \Lopt{raggedright} overrides \Lopt{center} and \Lopt{centerlast}.} +% \label{fig:format-12} +% \subcaphangtrue +% \subcapnoonelinefalse +% \subfigure[][\sc]{\b}\g\subfigure[][\lc]{\b}\\ +% \caption{Format options [\Lopt{hang},\Lopt{raggedright}]; +% \Lopt{raggedright} overrides \Lopt{center} and \Lopt{centerlast}.} +% \label{fig:format-13} +% \subcapnoonelinetrue +% \subfigure[][\sc]{\label{fig:format-14A}\b}\g\subfigure[][\lc]{\b}\\ +% \caption{\Lpack{hhsubfigure}\ format options [\Lopt{hang},\Lopt{raggedright}, +% \Lopt{nooneline}]; \Lopt{raggedright} overrides \Lopt{center} +% and \Lopt{centerlast}.} +% \label{fig:format-14} +% \end{figure} +% \endgroup +% +% \addtocontents{lof}{^ +% \string\contentsline +% {figure} +% {\numberline{\ref{fig:format-01}--\ref{fig:format-14}}^ +% {\ignorespaces \Lpack{Hhsubfigure}\ format options.}}^ +% {\pageref{fig:format-01}--\pageref{fig:format-14}}} +% +% \subsection{Font Size and Style Options} +% \label{sec:font} +% +% There are twenty-four options for setting the font of the subcaption. +% The first six set the size of both the subcaption label and text. +% They are: \Lopt{scriptsize}, \Lopt{footnotesize} (default), +% \Lopt{small}, \Lopt{normalsize}, \Lopt{large}, and \Lopt{Large}. +% Their effect is shown in figure~\ref{fig:font1}. +% +% The next nine, \Lopt{rm}: \Lopt{sf}, \Lopt{tt}, \Lopt{md}, \Lopt{bf}, +% \Lopt{up}, \Lopt{it}, \Lopt{sl}, and \Lopt{sc}, set the family, series +% or shape of the subcaption label, as shown in +% figures~\ref{fig:font2A}--~\ref{fig:font2I}. The last nine: +% \Lopt{RM}, \Lopt{SF}, \Lopt{TT}, \Lopt{MD}, \Lopt{BF}, \Lopt{UP}, +% \Lopt{IT}, \Lopt{SL}, and \Lopt{SC}, do the same for the text of the +% subcaption, as shown in figure~\ref{fig:font2J}--\ref{fig:font2R}. +% These size and style options may be combined in 3456 ways to set the +% label and text of the subcaption (as long as the selected font +% combination exists\@!) The font family for the text and label may be +% set as roman (\Lopt{rm}/\Lopt{RM}), sans serif (\Lopt{sf}/\Lopt{SF}), +% and typewriter (\Lopt{tt}/\Lopt{TT}). These may be combined with +% those for the font series, medium (\Lopt{md}/\Lopt{MD}) and bold +% (\Lopt{bf}/\Lopt{BF}); and the font shape, upright +% (\Lopt{up}/\Lopt{UP}), italic (\Lopt{it}/\Lopt{IT}), slanted +% (\Lopt{sl}/\Lopt{SL}), and small caps (\Lopt{sc}/\Lopt{SC}). +% +% \begin{figure}^ +% \def\b{\fboxsep=-\fboxrule +% \fbox{\hbox to 2.0in{\vbox to 2mm{\vfil\null}\hfil}}}^ +% \subfigtopskip=8pt^ +% \subfigcapskip=0pt^ +% \subfigbottomskip=4pt^ +% \centering +% {\renewcommand{\subcapsize}{\scriptsize}^ +% \subfigure[][Font option {[scriptsize]}.]{\b}}\qquad +% {\renewcommand{\subcapsize}{\footnotesize}^ +% \subfigure[][Font option {[footnotesize]}.]{\b}}\\ +% {\renewcommand{\subcapsize}{\small}^ +% \subfigure[][Font option {[small]}.]{\b}}\qquad +% {\renewcommand{\subcapsize}{\normalsize}^ +% \subfigure[][Font option {[normalsize]}.]{\b}}\\ +% {\renewcommand{\subcapsize}{\large}^ +% \subfigure[][Font option {[large]}.]{\b}}\qquad +% {\renewcommand{\subcapsize}{\Large}^ +% \subfigure[][Font option {[Large]}.]{\b}}% +% \caption[\Lpack{Hhsubfigure} font size options.]{% +% \Lpack{Hhsubfigure} font size options. (Default: +% \Lopt{footnotesize}).}^ +% \label{fig:font1}^ +% \end{figure} +% +% \begin{figure}^ +% \def\b{\fboxsep=-\fboxrule +% \fbox{\hbox to 2.0in{\vbox to 2mm{\vfil\null}\hfil}}}^ +% \subfigtopskip=8pt^ +% \subfigcapskip=0pt^ +% \subfigbottomskip=4pt^ +% \centering +% \begin{minipage}{2.0in}^ +% {\renewcommand{\subcaplabelfont}{\rmfamily}^ +% \subfigure[][Subcaption label font option {[\Lopt{rm}]}.]{\b^ +% \label{fig:font2A}}}\\ +% {\renewcommand{\subcaplabelfont}{\sffamily}^ +% \subfigure[][Subcaption label font option {[\Lopt{sf}]}.]{\b}}\\ +% {\renewcommand{\subcaplabelfont}{\ttfamily}^ +% \subfigure[][Subcaption label font option {[\Lopt{tt}]}.]{\b}}\\ +% {\renewcommand{\subcaplabelfont}{\mdseries}^ +% \subfigure[][Subcaption label font option {[\Lopt{md}]}.]{\b}}\\ +% {\renewcommand{\subcaplabelfont}{\bfseries}^ +% \subfigure[][Subcaption label font option {[\Lopt{bf}]}.]{\b}}\\ +% {\renewcommand{\subcaplabelfont}{\upshape}^ +% \subfigure[][Subcaption label font option {[\Lopt{up}]}.]{\b}}\\ +% {\renewcommand{\subcaplabelfont}{\itshape}^ +% \subfigure[][Subcaption label font option {[\Lopt{it}]}.]{\b}}\\ +% {\renewcommand{\subcaplabelfont}{\slshape}^ +% \subfigure[][Subcaption label font option {[\Lopt{sl}]}.]{\b}}\\ +% {\renewcommand{\subcaplabelfont}{\scshape}^ +% \subfigure[][Subcaption label font option {[\Lopt{sc}]}.]{^ +% \label{fig:font2I}\b}}\\ +% \end{minipage}^ +% \qquad +% \begin{minipage}{2.0in}^ +% {\renewcommand{\subcapfont}{\rmfamily}^ +% \subfigure[][Subcaption font option {[\Lopt{RM}]}.]{^ +% \label{fig:font2J}\b}}\\ +% {\renewcommand{\subcapfont}{\sffamily}^ +% \subfigure[][Subcaption font option {[\Lopt{SF}]}.]{\b}}\\ +% {\renewcommand{\subcapfont}{\ttfamily}^ +% \subfigure[][Subcaption font option {[\Lopt{TT}]}.]{\b}}\\ +% {\renewcommand{\subcapfont}{\mdseries}^ +% \subfigure[][Subcaption font option {[\Lopt{MD}]}.]{\b}}\\ +% {\renewcommand{\subcapfont}{\bfseries}^ +% \subfigure[][Subcaption font option {[\Lopt{BF}]}.]{\b}}\\ +% {\renewcommand{\subcapfont}{\upshape}^ +% \subfigure[][Subcaption font option {[\Lopt{UP}]}.]{\b}}\\ +% {\renewcommand{\subcapfont}{\itshape}^ +% \subfigure[][Subcaption font option {[\Lopt{IT}]}.]{\b}}\\ +% {\renewcommand{\subcapfont}{\slshape}^ +% \subfigure[][Subcaption font option {[\Lopt{SL}]}.]{\b}}\\ +% {\renewcommand{\subcapfont}{\scshape}^ +% \subfigure[][Subcaption font option {[\Lopt{SC}]}.]{^ +% \label{fig:font2R}\b}}^ +% \end{minipage}^ +% \caption[\Lpack{Hhsubfigure} font style options.]{% +% \Lpack{Hhsubfigure} font style options. (Default: +% \Lopt{rm,md,up,RM,MD,UP}). Note: The above single options +% are loaded after the default settings and multiple options are +% allowed, see the text, section~\ref{sec:font}.}^ +% \label{fig:font2}^ +% \end{figure} +% +% \subsection{Caption Position Options} +% \enlargethispage{12pt}^finalhack +% \label{sec:position} +% +% There are eight options that control the {\em position\/} of the +% subcaption and how the subcaption {\em numbering\/} is related to the +% ``containing'' figure or table's caption. The following shows only +% the subfigure-related options, but the subtable options are symmetric. +% +% The first option, \Lopt{figbotcap} tells the subfigure command that +% the ``containing'' figure's |\caption| occurs {\bf after} the +% subfigures. This information is needed to decide if the current +% figure counter shows the number for the last figure (\Lopt{figbotcap}) +% or for the current one (\Lopt{figtopcap}, see below). +% +% The second option, \Lopt{figtopcap} tells the subfigure command that +% the ``containing'' figure's |\caption| occurs {\bf before} the +% subfigures. The subcaption is automatically placed below the figure +% for each of these options. +% +% The third option, \Lopt{FIGBOTCAP}, is similar to \Lopt{figbotcap}, +% except that it also forces the subcaption to be placed under the +% figure. This is the default setting for figures (and \Lopt{TABBOTCAP} +% for tables) and is shown in figure~\ref{fig:position1}. +% +% The fourth option, \Lopt{FIGTOPCAP}, is similar to \Lopt{figtopcap}, +% except that it forces the subcaption to be placed above the figure +% box. (While not the default, it is the preferred format for tables, +% which uses the option \Lopt{TABTOPCAP}\@.) An example of this option +% is shown in figure~\ref{fig:position2}. Note that the baseline of the +% subfigure is along the top of the two subfigures. See +% section~\ref{sec:custom-position} for another way of positioning the +% caption when captions are placed above the figure or table. +% +% \begin{figure}^ +% \subfigtopskip=8pt^ +% \subfigcapskip=0pt^ +% \subfigbottomskip=4pt^ +% \abovecaptionskip=5pt^ +% \centering +% \subfigure[First caption.]{^ +% \fbox{\hbox to 1.5in{\vbox to 15mm{\vfil\null}\hfil}}}^ +% \hspace{0.2in}^ +% \subfigure[Second long, long, long, long, long, long, caption.]{^ +% \fbox{\hbox to 1.5in{\vbox to 10mm{\vfil\null}\hfil}}}^ +% \caption{Subcaption position option [\Lopt{FIGBOTCAP}].} +% \label{fig:position1}^ +% \end{figure} +% +% \begin{figure}^ +% \subfigtopskip=8pt^ +% \subfigcapskip=0pt^ +% \subfigbottomskip=0pt^ +% \belowcaptionskip=5pt^ +% \caption{Subcaption position option: [\Lopt{FIGTOPCAP}].}^ +% \label{fig:position2}^ +% \centering +% \figuretopcaptrue +% \subfiguretopcaptrue +% \subfigure[First caption.]{^ +% \fbox{\hbox to 1.5in{\vbox to 15mm{\vfil\null}\hfil}}}^ +% \hspace{0.2in}^ +% \subfigure[Second long, long, long, long, long, long caption.]{^ +% \fbox{\hbox to 1.5in{\vbox to 10mm{\vfil\null}\hfil}}}^ +% \setcounter{subfigure}{0}^ +% \vspace{-18pt} +% \end{figure} +% +% \subsection{Recent Changes and Backward Compatibility} +% \enlargethispage{24pt}^finalhack +% \label{sec:back-compat} +% +% There are some significant changes in this version of the +% \Lpack{hhsubfigure} package. One of them was to pack the subfigure +% tighter together by removing the space at the top of the subfigure at +% the beginning of a page, or minipage, and to reduce the spacing around +% the subfigure, see table~\ref{tab:spacing}. If you have been using an +% older version of the \Lpack{hhsubfigure} package ({\it i.e.\/}, version +% 2.0 or eariler) than the default (\Lopt{loose}) setting will not cause +% any change in your existing documents.\footnote{If you have been using +% a beta release version of \Lpack{subfigure} 2.1, than you will need to +% use the \Lopt{tight} option in order to maintain the ``look-and-feel'' +% that you are used to.} +% +% If you want to use the new and preferred, \Lopt{tight} option, your +% subfigures will take up less space and should provide a more balanced +% visual appearance for your paper. +% +% The second significant change is the ability to make the text on the +% List-of-Figures page different than that in the subcaption. The use +% of a second optional argument to the |\subfigure| command is shown in +% table~\ref{tab:calling}. This should not cause any compatibility +% problems. +% +% The third significant change is the it is now possible to have the +% captions and subcaptions come before or after the corresponding +% figure/table portion. While the default settings support the old view +% of the subcaptions following the figure/table and, in turn, followed +% by the main caption. The preferred format is for figures to retain +% that layout and for tables to have both their subcaption and main +% captions come before the table portion. This preferred setting may be +% specified by adding the option \Lopt{TABTOPCAP} when loading the +% \Lpack{hhsubfigure} package. +% +% The fourth update is that the font style options have been generalized +% so that an option from each of the family, series and shape, may be +% combined, as long as that combination exists; and you can set the font +% of the label and text separately. In addition, the the |\space| that +% separated the label from the text in the subcaption has been replaced +% with a horizontal skip of |\subfiglabelskip| which has the default +% value of |0.33em plus 0.07em minus 0.03em|. This extension should not +% cause any compatibility problems. +% +% The last major change is that there is now a |\subref| command that +% allows a reference to the subfigure without the figure number. An +% example of the use of this command is shown later in +% section~\ref{sec:ex3}. Associated with this change is that the +% |\label| command will accept an optional argument, for use with the +% \Lpack{hyperref} package, when used within the scope of the +% |\subfigure| or |\subtable|, see section~\ref{sec:hyperref} for details. +% +% \DeleteShortVerb{\|} +% \MakeShortVerb{\/} +% \begin{table}^ +% \def\pz{\phantom{0}}^ +% \centering +% \caption{\Lpack{hhsubfigure} spacing changes.}^ +% \label{tab:spacing}^ +% \vspace{4pt}^ +% \begin{tabular}{|l|c|c|c|} \hline +% \multicolumn{1}{|c|}{\bf{\Lpack{hhsubfigure}}} +% & \multicolumn{1}{c|}{{\bf Old (v2.0)}} +% & \multicolumn{1}{c|}{\bf\Lopt{loose}} +% & \multicolumn{1}{c|}{\bf\Lopt{tight}} \\ +% \multicolumn{1}{|c|}{{\bf Constant}} +% & \multicolumn{1}{c|}{{\bf Value}} +% & \multicolumn{1}{c|}{{\bf Option}} +% & \multicolumn{1}{c|}{{\bf Option}} +% \\ \hline +% /\subfigtopskip/ & 10 pt & 10 pt & 5 pt \\ +% /\subfigcapskip/ & 10 pt & 10 pt & 0 pt \\ +% /\subfigcaptopadj/ & | &\pz0 pt & 3 pt \\ +% /\subfigbottomskip/ & 10 pt & 10 pt & 5 pt \\ +% /\subfigcapmargin/ & 10 pt & 10 pt & 0 pt \\ +% /\subfiglabelskip/ & | & 0.33 em & +% \vtop{\hbox to 1.2in{0.33 em plus 0.07 em} +% \hbox to 1.2in{\hfill minus 0.03 em}} +% \\[8pt] \hline +% \end{tabular}^ +% \end{table} +% \DeleteShortVerb{\/} +% \MakeShortVerb{\|} +% +% The \Lpack{hhsubfigure} package checks for and loads a configuration +% file called \Lfile{subfigure.cfg} which is placed anywhere that \LaTeX\ +% will look for classes or packages (see +% section~\ref{sec:customization}). By default, the \Lfile{subfigure.sty} +% file tries to look unchanged from older versions. In order to +% have it automatically use the preferred settings, you can add a +% configuration file containing the options \Lopt{tight} to reduce the +% extra whitespace around the subfigures and \Lopt{TABTOPCAP} to show +% that table captions will come before the table and the the subcaptions +% for tables should be set above the subtable. The following line is all +% you need in your configuration file: +% +% \iffalse +%<*newconf> +% \fi +% \begin{macrocode} +\ExecuteOptions{tight,TABTOPCAP} +% \end{macrocode} +% \iffalse +%</newconf> +% \fi +% +% You could also load the subfigure package with the options with the +% following in your \LaTeX\ preamble: +% \begin{quote} +% |\usepackage[tight,TABTOPCAP]{hhsubfigure}| +% \end{quote} +% +% \subsection{Frequently Asked Questions} +% \label{sec:faq} +% +% The four most frequently asked questions about the \Lpack{hhsubfigure} +% package are: +% +% \begin{enumerate} +% \item ``My subfigures are not aligned along their bottoms. Why?'' +% +% Remember! The \Lpack{hhsubfigure} package aligns subfigure along +% their baselines with the subcaption (if any) sticking out above or +% below. The above problem is usually due to using a \Lenv{minipage}, +% \Lenv{tabular} or \Lenv{array} environment that, by default, +% places the baseline at the center of the box that it generates. +% If the two subfigures are different sizes, or if one subfigure is +% generated in some other way with its baseline not at the expected +% place (perhaps an |\includegraphics|), then the subfigures will be +% misaligned. One solution is to use the environment options `[t]' +% or `[b]' to move the baseline to the top or bottom rather than the +% center. +% +% \item ``How can I get my figures/subfigures to line up the way I want?'' +% +% A similar question, but this one is caused by extra whitespace in +% the source text generating spaces next to the figures, and |\par|'s +% generated by blanklines. The main thing is {\it be aware\/} that +% extra whitespace can move figures and subfigures around, sometimes +% a lot and sometimes just a little so that they look ``wrong''. +% Placing too many `\%'s at the end of the lines is better than too +% few in the figure and table environments. (See the discussion of +% ``white space'' in section~\ref{sec:examples}.) +% +% \item ``I have too many subfigures for one page, How can I spread +% them over two or more pages and continue the numbering?'' +% \begin{description} +% \item[Option 1:] Adjust the \Lcount{figure} and \Lcount{subfigure} +% counters (or the \Lcount{table} and +% \Lcount{subtable} counters) as needed before and +% after each figure (or table) See, for example +% \emph{Using Imported Graphics in \LaTeXe} +% \cite[\textsection~30]{Reck97}. +% \item[Option 2:] Use the \Lpack{ccaption} package by Peter Wilson +% \cite{Wils01}. +% \item[Option 3:] Use the simpler \Lpack{captcont} package by +% Steven Cochran \cite{Coch02}. +% \end{description} +% All of these options work well. Of the packages, the +% \Lpack{ccaption} package is bigger and offers more control over +% what is done (and things to do) at the expense of being a little +% harder to use. The \Lpack{captcont} package is easier to use, +% but only provides for continued floats. +% \newpage^finalhack +% \item ``Why do I get a garbled caption or an error when I use +% square brackets?'' +% \vspace{-2pt} +% \begin{verbatim} +% \subfigure[SHIFT: ``register[3] $<<=$ 3;'']{... figure text ...} +% \end{verbatim} +% \vspace{-12pt} +% Since the |\subfigure| and |\subtable| commands have optional +% arguments, delimited with square brackets, before their required +% argument, you cannot use the `]' character at the top level of +% either the \meta{subcaption} or \meta{list\_entry} argument. To +% overcome this problem, you must wrap all or the portion of the text +% containing the `]' character, in a pair of curly brackets +% (see \cite[\textsection~C.1.1]{Lamp94} for more detail). For example: +% \begin{verbatim} +% \subfigure[SHIFT: ``register{[3]} $<<=$ 3;'']{... figure text ...} +% \end{verbatim} +% \vspace{-16pt} +% \noindent +% or +% \vspace{-4pt} +% \begin{verbatim} +% \subfigure[{SHIFT: ``register[3] $<<=$ 3;''}]{... figure text ...}. +% \end{verbatim} +% \vspace{-12pt} +% \end{enumerate} +% +% \section{Three Examples} +% \label{sec:examples} +% +% The easiest way to show the use of this package is to give a few +% examples. The two most important things to remember when working +% with the \Lpack{hhsubfigure} package are that (1) the subfigures are +% aligned along their baselines (see figure~\ref{fig:layout} and +% section~\ref{sec:customlayout}) and (2) that whitespace in the +% \Lenv{figure} environment are significant and affect the layout. +% +% The baseline of the subfigure is usually at the bottom of the +% subfigure or (when the subcaption appears at the top) at the bottom of +% the subcaption {\em and\/} the |\subfigcapskip| space---which is usually +% the same as the top of the subfigure. However sometimes, especially +% when using the \Lenv{tabular}, \Lenv{array}, or \Lenv{minipage} +% environments to build the figure, the baseline appears elsewhere. The +% above environments are all aligned at their center by default but that +% may be changed with the optional `{\bf [t]}' or `{\bf [b]}' arguments. +% As a last resort you can wrap all of your figures in a |\vtop| box with +% a |\vbox to 0pt{\null}| at the top followed by the figure. +% +% If your figure is not quite centered or where you want it to be, the +% problem is often a space character being placed to one side or the +% other of the figure. Some general rules of thumb are:\footnote{See +% chapters 7 and 8 of ``The \TeX book'' \cite{Knut86} for details.} +% \begin{itemize}\itemsep0pt +% \item Two end-of-lines following each other (ignoring any +% whitespace) are turned into a |\par| or paragraph break. +% \item Multiple whitespace (including the end-of-line) are +% compressed into a single space. +% \item The spaces after a macro command name ({\it e.g.\/}, |\foo|) +% are ignored. +% \item A `\%' character at the end of the line suppresses the +% end-of-line and all of the spaces (if any) at the +% beginning of the next line. +% \end{itemize} +% +% To suppress significant extra whitespace, you can add some `\%' +% characters at the end of each line that doesn't end with a command name. +% This is more than is required, but extra `\%' usually don't cause a +% problem. +% +% The other case where things are not correctly centered is when the +% subfigure uses only the label for the subcaption. This is often the +% case when the description for each subfigure is given in the figure +% caption rather than in each subcaption. In this case, the default +% label has the form `(a)\ \ ' where the trailing space is defined by +% |\subfiglabelskip|. In this case the style should redefine this space +% as `0pt' so that the label is perfectly centered (see +% section~\ref{sec:ex3}, below for an example). +% +% \subsection{A Simple Example} +% \enlargethispage{12pt} +% +% The first example, shown in figure~\ref{3figs}, specifies |\centering| +% \DescribeMacro{\subfigure} +% to horizontally center the set of subfigures, and uses |\\| and +% some horizontal space (using |\qquad|) to control the placement of +% the subfigures. Note that the alignment of the top two subfigures +% is along the bottom of the figure portion of each. +% +% \begin{figure}^ +% \centering +% \fboxsep=-\fboxrule +% \fbox{^ +% \begin{minipage}{4.0in}^ +% \vspace{10pt}^ +% \centering +% \begin{minipage}{3.5in}^ +% \subfigtopskip=3pt^ +% \subfigcapskip=-2pt^ +% \subfigbottomskip=5pt^ +% \subfigcapmargin=3pt^ +% \abovecaptionskip=5pt^ +% \centering +% \subfigure[First.]{^ +% \fbox{\hbox to 20mm{\vbox to 15mm{\vfil\null}\hfil}}}\qquad +% \subfigure[Second figure.]{^ +% \fbox{\hbox to 20mm{\vbox to 10mm{\vfil\null}\hfil}}}\\[6pt] +% \subfigure[Third.]{\label{3figs-c}^ +% \fbox{\hbox to 20mm{\vbox to 10mm{\vfil\null}\hfil}}}\\ +% \caption{Three subfigures.}^ +% \label{3figs}^ +% \rr +% \vspace{15pt}^ +% Figure~\ref{3figs} contains two top `subfigures' and +% figure~\ref{3figs-c}.$\!$\footnotemark +% \end{minipage}^ +% \vspace{4pt}^ +% \end{minipage}} +% \vspace{-5pt}^ +% \end{figure} +% \footnotetext{In this and later boxed figures, the boxes are intended to +% represent a portion of the page in which the figure occurs. This is +% usually to show the figure along with some text or to show the effect +% of some option on multiple pages.} +% +% \begin{verbatim} +% \begin{figure}% +% \centering +% \subfigure[First.]{...}\qquad +% \subfigure[Second figure.]{...}\\ +% \subfigure[Third.]{\label{3figs-c}...}% +% \caption{Three subfigures.} +% \label{3figs} +% \end{figure} +% ... +% Figure~\ref{3figs} contains two top `subfigures' and +% figure~\ref{3figs-c}. +% \end{verbatim} +% +% \subsection{A More Advanced Example} +% +% A second example, shown in figure~\ref{fig:ex2}, demonstrates how to +% change the subfigure labels and have the subfigure captions printed in +% the List-of-Figures. +% +% The first |\renewcommand| changes the reference to |\thesubfigure| to +% return both the figure number and the subfigure number separated with +% a period. The next two |\renewcommand|'s turn off the |\p@subfigure| +% (since it is now included in |\thesubfigure| and adds the colon and +% space to the subfigure label. Later in the file, the +% \Lcount{lofdepth} is set to ``2'' so allow the subfigure captions to +% show and the |\listoffigures| is loaded. Finally, the \Lenv{figure} +% is defined and a little following text is given that refers to it. +% +% \begin{verbatim} +% \renewcommand{\thesubfigure}{\thefigure.\arabic{subfigure}} +% \makeatletter +% \renewcommand{\p@subfigure}{} +% \renewcommand{\@thesubfigure}{\thesubfigure:\hskip\subfiglabelskip} +% \makeatother +% ... +% \setcounter{lofdepth}{2} +% \listoffigures +% ... +% \begin{figure}% +% \centering +% \subfigure[First.]{% +% \label{fig:first}% +% ...}% +% \qquad +% \subfigure[Second.]{% +% \label{fig:second}% +% ...}% +% \caption{Two subfigures.} +% \end{figure} +% ... +% See figures~\ref{fig:first} and \ref{fig:second}. +% \end{verbatim}% +% +% \begin{figure}^ +% \centering +% \fboxsep=-\fboxrule +% \renewcommand{\thesubfigure}{\thefigure.\arabic{subfigure}}^ +% \makeatletter +% \renewcommand{\p@subfigure}{}^ +% \renewcommand{\@thesubfigure}{\thesubfigure:\hskip\subfiglabelskip}^ +% \makeatother +% \fbox{^ +% \begin{minipage}{4.0in}^ +% \centering +% \begin{minipage}{3.5in}^ +% \setcounter{lofdepth}{2}^ +% \vspace{.1in}^ +% \section*{ List of Figures}^ +% \vspace{-15pt}^ +% \hspace{40pt}\dots +% \vspace{3pt}^ +% \contentsline{figure}{\numberline{\ref{fig:ex2}}^ +% {\ignorespaces Two subfigures.}}{\pageref{fig:ex2}}^ +% \contentsline{subfigure}{\numberline{\ref{fig:first}}^ +% {\ignorespaces First.}}{\pageref{fig:first}}^ +% \contentsline{subfigure}{\numberline{\ref{fig:second}}^ +% {\ignorespaces Second.}}{\pageref{fig:second}}^ +% \hspace{40pt}\dots +% \vspace{8pt}^ +% \end{minipage}^ +% \end{minipage}}\\ +% \fbox{^ +% \begin{minipage}{4.0in}^ +% \centering +% \begin{minipage}{3.5in}^ +% \subfigtopskip=3pt^ +% \subfigcapskip=-2pt^ +% \abovecaptionskip=5pt^ +% \vspace{10pt}^ +% \centering +% \subfigure[First.]{^ +% \label{fig:first}^ +% \fbox{\hbox to 22mm{\vbox to 15mm{\vfil\null}\hfil}}}^ +% \hspace{14pt}^ +% \subfigure[Second.]{^ +% \label{fig:second}^ +% \fbox{\hbox to 22mm{\vbox to 15mm{\vfil\null}\hfil}}}\\ +% \caption{Two subfigures.}^ +% \label{fig:ex2}^ +% \rr +% \vspace{15pt}^ +% See figures~\ref{fig:first} and \ref{fig:second}. +% \vspace{4pt}^ +% \end{minipage}^ +% \end{minipage}}^ +% \vspace{-8pt} +% \end{figure} +% \vspace{-12pt}^finalhack +% +% \subsection{An Example Without Subcaption Text} +% \label{sec:ex3} +% +% The last example, shown in figure~\ref{fig:ex3}, demonstrates a +% \DescribeMacro{\subref} +% \DescribeMacro{\Subref} +% \enlargethispage{12pt} +% commonly required format where the subfigure are just labeled and the +% description occurs in the main caption. This is easy to do by using +% the ``empty'' optional caption arguments ``[\space ][\space ]''. This +% creates a label for the subfigure in the text, but it does not show on +% the List-of-Figures page. However, by default the caption may not be +% perfectly centered, so |\subfiglabelskip| is reduced to zero points to +% ensure that there is not any extra space hidden in the subcaption. To +% refer to the subfigure label within the text or the main caption, you +% can use the |\subref| command, which is similar to the |\ref| command, +% but does not carry the figure number. (The |\Subref| command is the +% same but sets it with |\subcaplabelfont|). +% +% \begin{figure}^ +% \centering +% \fboxsep=-\fboxrule +% \subfiglabelskip=0pt +% \fbox{^ +% \begin{minipage}{4.0in}^ +% \centering +% \begin{minipage}{3.5in}^ +% \setcounter{lofdepth}{2}^ +% \vspace{.1in}^ +% \section*{ List of Figures}^ +% \vspace{-15pt}^ +% \hspace{40pt}\dots +% \vspace{3pt}^ +% \contentsline{figure}{\numberline{\ref{fig:ex3}}^ +% {\ignorespaces A set of four subfigures.}}^ +% {\pageref{fig:ex3}}^ +% \hspace{40pt}\dots +% \vspace{8pt}^ +% \end{minipage}^ +% \end{minipage}}\\ +% \fbox{^ +% \begin{minipage}{4.0in}^ +% \centering +% \begin{minipage}{3.5in}^ +% \subfigtopskip=3pt^ +% \subfigcapskip=-2pt^ +% \subfigbottomskip=3pt^ +% \abovecaptionskip=5pt^ +% \vspace{7pt}^ +% \centering +% \makeatletter +% \subfigure[][]{^ +% \label{fig:ex3-a}^ +% \fbox{\hbox to 1.2in{\vbox to 15mm{\null\vfil}\hfil}}}% +% \hspace{8pt}% +% \subfigure[][]{^ +% \label{fig:ex3-b}^ +% \fbox{\hbox to 1.2in{\vbox to 15mm{\null\vfil}\hfil}}}\\ +% \subfigure[][]{^ +% \label{fig:ex3-c}^ +% \fbox{\hbox to 1.2in{\vbox to 15mm{\null\vfil}\hfil}}}% +% \hspace{8pt}% +% \subfigure[][]{^ +% \label{fig:ex3-d}^ +% \fbox{\hbox to 1.2in{\vbox to 15mm{\null\vfil}\hfil}}}% +% \caption[A set of four subfigures.]{A set of four subfigures: +% \subref{fig:ex3-a} describes the first subfigure; +% \subref{fig:ex3-b} describes the second subfigure; +% \subref{fig:ex3-c} describes the third subfigure; and, +% \subref{fig:ex3-d} describes the last subfigure.}^ +% \label{fig:ex3}^ +% \rr +% \vspace{15pt}^ +% The text references the main figure as figure~\ref{fig:ex3} +% or part of it as figures~\ref{fig:ex3-a}--\subref{fig:ex3-c}. +% \vspace{4pt}^ +% \end{minipage}^ +% \end{minipage}}^ +% \vspace{-12pt} +% \end{figure} +% +% \enlargethispage{12pt} +% \begin{verbatim} +% \subfiglabelskip=0pt +% ... +% \listoffigures +% ... +% \begin{figure}% +% \centering +% \subfigure[][]{% +% \label{fig:ex3-a}% +% ...figure code...}% +% \hspace{8pt}% +% \subfigure[][]{% +% \label{fig:ex3-b}% +% ...figure code...}\\ +% \subfigure[][]{% +% \label{fig:ex3-c}% +% ...figure code...}% +% \hspace{8pt}% +% \subfigure[][]{% +% \label{fig:ex3-d}% +% ...figure code...}% +% \caption[A set of four subfigures.]{A set of four subfigures: +% \subref{fig:ex3-a} describes the first subfigure; +% \subref{fig:ex3-b} describes the second subfigure; +% \subref{fig:ex3-c} describes the third subfigure; and, +% \subref{fig:ex3-d} describes the last subfigure.}% +% \label{fig:ex3}% +% \end{figure} +% ... +% The text references the main figure as figure~\ref{fig:ex3} or part +% of it as figures~\ref{fig:ex3-a}--\subref{fig:ex3-c}. +% \end{verbatim}% +% +% \section{Customization} +% \label{sec:customization} +% +% The following sections describe the internal parameters used by the +% \Lpack{hhsubfigure} package to define the layout of the subfigures +% or tables, as well as the labels and captions the accompany them. +% In addition, adjustments to the entries on a ``List-of'' page and +% the addition of new \Lenv{float} environments are described. +% +% Adjusting these values allows extensive customization of the +% \Lpack{hhsubfigure} package. If you want to customize the package, an +% alternative to actually changing the code is to create a a file called +% \Lfile{subfigure.cfg} and place it anywhere that \LaTeX\ will look for +% classes or packages. Any changes placed in the file will affect the +% predefined parameters and you can override the default settings. Any +% user options will be processed after this file is loaded. +% +% In order to change the major commands in the \Lpack{hhsubfigure} package +% with this configure file, you will need to use the |\AtEndOfPackage| +% command to defer that portion of your changes until the end of the +% package. +% +% \subsection{Changing the Layout} +% \enlargethispage{15pt}^finalhack +% \label{sec:customlayout} +% +% \noindent +% The layout of the |\subfigure| or |\subtable| is defined by several +% internal values which may be changed to customize appearance of the +% object. The following illustration shows the relationship of these +% values. Figure~\ref{fig:layout-A} shows the standard layout with the +% caption following the figure. The figure is vertically centered with +% |\subfigtopskip| of space added above, then |\subfigcapskip| of +% space is added below the figure followed by the subcaption and, +% finally, |\subfigbottomskip| of space added at the bottom. The baseline +% is located at the bottom of the figure. It is along this baseline that +% adjacent subfigure boxes are aligned. Figure~\ref{fig:layout-C} shows +% the case where the caption precedes the figure ({\it ie.\/}, +% |\subfiguretopcaptrue| or |\subtabletopcaptrue|). In this case the +% various boxes and glue are reversed,$\!$\footnote{The \cmd{\subfigtopskip} +% and \cmd{\subfigbottomskip} actually follow the \Lif{figuretopcap} +% and \Lif{tabletopcap} flags, so that the actual top spacing used is +% \cmd{\subfigtopskip} when the flags are {\bf false} and +% \cmd{\subfigbottomskip} when they are {\bf true}.} +% except that the |\subfigcapskip| is increased by |\subfigcaptopadj|. +% The other two cases, figures~\ref{fig:layout-B} and +% \subref{fig:layout-D}, show the cases where there is no caption. Note +% that the |\subfigcapskip| is left out when there is no caption. +% Note also, for all of these cases, that the space at the top of the +% subfigure is automatically removed for items that are the first box +% in a vertical list or other than the first box in a horizontal list. +% This allows tighter packing of the subfigures and the full use of +% the page or \Lenv{minipage}. +% +% Each of these values |\subfigtopskip|, |\subfigcapskip|, and +% |\subfigbottomskip|; as well as |\subfigcapmargin| and +% |\subfiglabelskip| (the latter not shown in figure~\ref{fig:layout}) +% may be changed from their defaults (see +% table~{\PrintIfDefined{tab:defaults}{\ref{tab:defaults}}{\ref{tab:spacing}}}) +% to adjust the subfigure for the current layout style. In addition, +% they may all assume negative values, which in some cases may solve +% problems with the layout. Even though these constants are ``skips'', +% only the last two (|\subfigcapmargin| and |\subfiglabelskip|) will +% shrink or expand since the others assume their natural size in the +% subfigure box and are fixed at that size. +% +% \begin{figure}[p] +% \subfigtopskip=10pt^ +% \subfigcapskip=4pt^ +% \subfigbottomskip=12pt^ +% \abovecaptionskip=3pt^ +% \centering +% \fboxsep=-\fboxrule +% \newbox{\tempbox} +% \newdimen{\tempdima} +% \newdimen{\tempdimb} +% \setbox\tempbox\hbox{ +% $\stackrel{\longleftrightarrow}{\cs{subfigcapmargin}}$} +% \setbox\tempbox\hbox{\cs{subfigcapmargin}} +% \tempdimb \wd\tempbox +% \setbox\tempbox\hbox to \tempdimb{^ +% \kern -.5mm\hbox{$\leftarrow$}\kern -.5mm^ +% \leaders\hrule width1pt height2.6pt depth-2.2pt\hfill +% \kern -.13mm$\rightarrow$} +% \tempdima \wd\tempbox +% \advance\tempdima 1mm +% \tempdimb \tempdima +% \multiply\tempdimb -2 +% \advance\tempdimb 4.5in +% \advance\tempdimb -4mm +% \subfigure[Standard layout {[FIGBOTCAP] or [TABBOTCAP]}.]{ +% \label{fig:layout-A} +% \fbox{\parbox{4.5in}{ +% \vspace{1pt} +% \hbox to 4.5in{ +% \hspace{1.5in} +% $\left\updownarrow\vrule width0pt height11pt depth1pt\right.$ +% (\cs{subfigtopskip}) +% \hfil} +% \fbox{\vbox to 45pt{ +% \vskip1pt +% \vskip\baselineskip +% \vfil +% \hbox to 4.5in{ +% \hfil +% {\scshape subfigure} or {\scshape subtable} +% \hfil} +% \vfil +% \vbox to 0pt{% +% \vss +% \hbox to 4.5in{ +% \hspace{9pt} +% {\small Baseline} +% \hfil}} +% \vspace{1pt}}} +% \hbox to 4.5in{ +% \hspace{1.5in} +% $\left\updownarrow\vrule width0pt height11pt depth1pt\right.$ +% \cs{subfigcapskip} +% \hfil} +% \hbox to 4.5in{ +% \hbox to\tempdima{ +% \vbox to 20pt{ +% \vfil +% \copy\tempbox +% \vfil +% \hbox{\kern .5mm\cs{subfigcapmargin}} +% \vfil}} +% \fbox{\vbox to 20pt{ +% \vfil +% \hbox to\tempdimb{ +% \hfil +% {\scshape subcaption} +% \hfil} +% \vfil}} +% \hbox to\tempdima{ +% \vbox to 20pt{ +% \vfil +% \copy\tempbox +% \vfil +% \hbox{\kern .5mm\cs{subfigcapmargin}} +% \vfil}} +% \hfill} +% \hbox to 4.5in{ +% \hspace{1.5in} +% $\left\updownarrow\vrule width0pt height11pt depth1pt\right.$ +% \cs{subfigbottomskip} +% \hfil}}}} +% +% \subfigure[Standard layout {[FIGBOTCAP] or [TABBOTCAP]} with no +% caption present.]{ +% \label{fig:layout-B} +% \fbox{\parbox{4.5in}{ +% \vspace{1pt} +% \hbox to 4.5in{ +% \hspace{1.5in} +% $\left\updownarrow\vrule width0pt height11pt depth1pt\right.$ +% (\cs{subfigtopskip}) +% \hfil} +% \fbox{\vbox to 45pt{ +% \vskip1pt +% \vskip\baselineskip +% \vfil +% \hbox to 4.5in{ +% \hfil +% {\scshape subfigure} or {\scshape subtable} +% \hfil} +% \vfil +% \hbox to 4.5in{ +% \hspace{9pt} +% {\small Baseline} +% \hfil} +% \vspace{1pt}}} +% \hbox to 4.5in{ +% \hspace{1.5in} +% $\left\updownarrow\vrule width0pt height11pt depth1pt\right.$ +% \cs{subfigbottomskip} +% \hfil}}}} +% +% \subfigure[Reversed layout {[FIGTOPCAP] or [TABTOPCAP]}.]{ +% \label{fig:layout-C} +% \fbox{\parbox{4.5in}{ +% \vspace{1pt} +% \hbox to 4.5in{ +% \hspace{1.5in} +% $\left\updownarrow\vrule width0pt height11pt depth1pt\right.$ +% (\cs{subfigbottomskip}) +% \hfil} +% \hbox to 4.5in{ +% \hbox to\tempdima{ +% \vbox to 20pt{ +% \vfil +% \copy\tempbox +% \vfil +% \hbox{\kern -.5mm\cs{subfigcapmargin}} +% \vfil}} +% \fbox{\vbox to 20pt{ +% \vfil +% \hbox to\tempdimb{ +% \hfil +% {\scshape subcaption} +% \hfil} +% \vfil}} +% \hbox to\tempdima{ +% \vbox to 20pt{ +% \vfil +% \box\tempbox +% \vfil +% \hbox{\kern -.5mm\cs{subfigcapmargin}} +% \vfil}} +% \hfill} +% \hbox to 4.5in{ +% \hbox to 0pt{ +% \hspace{9pt} +% \smash{\raisebox{-6.5pt}{\small Baseline}} +% \hss} +% \hspace{1.5in} +% $\left\updownarrow\vrule width0pt height11pt depth1pt\right.$ +% \cs{subfigcapskip}$+$\cs{subfigcaptopadj} +% \hfil} +% \fbox{\vbox to 45pt{ +% \vfil +% \hbox to 4.5in{ +% \hfil +% {\scshape subfigure} or {\scshape subtable} +% \hfil} +% \vfil}} +% \hbox to 4.5in{ +% \hspace{1.5in} +% $\left\updownarrow\vrule width0pt height11pt depth1pt\right.$ +% \cs{subfigtopskip} +% \hfil}}}} +% +% \subfigure[Reversed layout {[FIGTOPCAP] or [TABTOPCAP]} with no +% caption present.]{ +% \label{fig:layout-D} +% \fbox{\parbox{4.5in}{ +% \vspace{1pt} +% \hbox to 4.5in{ +% \hbox to 0pt{ +% \hspace{9pt} +% \smash{\raisebox{-6.5pt}{\small Baseline}} +% \hss} +% \hspace{1.5in} +% $\left\updownarrow\vrule width0pt height11pt depth1pt\right.$ +% (\cs{subfigbottomskip}) +% \hfil} +% \fbox{\vbox to 45pt{ +% \vfil +% \hbox to 4.5in{ +% \hfil +% {\scshape subfigure} or {\scshape subtable} +% \hfil} +% \vfil}} +% \hbox to 4.5in{ +% \hspace{1.5in} +% $\left\updownarrow\vrule width0pt height11pt depth1pt\right.$ +% \cs{subfigtopskip} +% \hfil}}}} +% \caption{Subfigure and subtable layout.} +% \label{fig:layout} +% \end{figure} +% +% \subsection{Adjusting the Subcaption} +% \label{sec:customlabel} +% +% The subfigure label has three forms. The first is the one that +% \DescribeMacro{\subref} +% \DescribeMacro{\Subref} +% appears in the text when you use the |\ref| command; the second is the +% one that appears on the List-of-Figures page and may be used to +% reference individual subfigures within the figure and subfigure captions, +% using the |\subref| or |\Subref| commands; and the third is the fully +% formatted version used under the subfigure as the label part of the caption. +% +% The |\ref| command yields the string, saved by the |\label| command, +% composed by concatenating the value of |\p@subfigure| to +% |\thesubfigure|. By default these are defined by: ``|\thefigure|'' +% and ``|(\alph{subfigure})|'', respectively, which produces a reference +% of the figure number followed by the subfigure letter in parentheses. +% +% The label used on the List-of-Figures page may be retrieved with the +% |\subref| command (this value is saved by the |\label| command when +% the |\label| command is used within the scope of the subfigure. This is +% the string defined by |\@@thesubfigure|, which, by default, is the +% value ``|\thesubfigure|'' (or ``|(\alph{subfigure})|''). +% +% The label used with the subcaption text is defined by the internal +% value |\@thesubfigure|, which, by default, has the +% value\hfil\null\linebreak +% \centerline{``\cmd{\thesubfigure}\cmd{\hskip}\cmd{\subfiglabelskip}''.} +% It is prefixed by |\subcapsize\subcaplabelfont| and followed by the +% subcaption text which is set with |\subcapfont|. +% +% \changes{v2.1.4}{30 Apr 2002}{Changed the label and caption defaults +% from \cmd{\rmfamily}\cmd{\mdseries}\cmd{\upshape} to +% \cmd{\familydefault}\cmd{\seriesdefault} \cmd{\shapedefault}.} +% Note that by default |\subcaplabelfont| has the default value +% ``|{\familydefault| |\seriesdefault\shapedefault}|''. The package +% options described in table~\ref{tab:options} allow you to set these +% values for your paper. If you update the |\@subfigure| command, you +% should include any separator character or spacing between the label +% and the start of the subcaption text. The default is +% |\hskip\subfiglabelskip| placed after the label. +% +% Finally, the text of the subcaption is prefixed by |\subcapfont| which +% may be changed using the set of nine lower-case font options described +% in table~\ref{tab:options}\@.$\!$\footnote{It is also prefixed by +% \cmd{\subcapsize} as part of the overall label and caption.} \ One other +% way of changing the layout of the lapel and caption is by replacing +% the |\@makesubfigurecaption| or |\@makesubtablecaption| command (which +% by default are identical). +% +% \subsection{Adjusting the Subfigure and Subtable Counters} +% \label{sec:counters} +% +% To create some special effects, such as continuing the subfigure +% \DescribeMacro{\c@figure} +% \DescribeMacro{\c@table} +% numbering across several pages as part of one long continued figure, +% you can back off the number change from a caption with the command: +% \begin{quote} +% |\addtocounter{|\Lcount{figure}|}{|-1|}| +% \end{quote} +% within the \Lenv{figure} environment. In addition, you can adjust for +% previous subfigures or subtables with one of the following (here +% we assume that two subfigures or subtables appeared in the previous +% pages: +% \begin{quote} +% |\addtocounter{|\Lcount{subfigure}|}{|2|}| +% \end{quote} +% \vspace{-5pt} +% \noindent +% or +% \vspace{-5pt} +% \begin{quote} +% |\addtocounter{|\Lcount{subtable}|}{|2|}|. +% \end{quote} +% +% Two other things that may be necessary, if you switch between figures +% and tables in the same \Lenv{figure} environment ({\it e.g.\/}, by +% changing |\@captype|, see section~\ref{sec:float_env}), is to add the +% command |\listsubcaptions| following the last subfigure when the +% subfigure is using the \Lopt{TOPCAP} or \Lopt{topcap} option. This is +% necessary to flush the list of subcaptions before the next +% \Lenv{subfigure} or \Lenv{subtable}. This also may be necessary if +% you switch between |\figuretopcaptrue| and |\figuretopcapfalse|. The +% other thing that may be required in some cases, is to reset the +% subfigure counter by entering: +% \begin{quote} +% |\setcounter{|\Lcount{subfigure}|}{|0|}| +% \end{quote} +% \noindent +% This should only be necessary if you are dynamically switching between +% different \Lpack{hhsubfigure} options, or changing the |\@captype|, +% within a float environment. +% +% \subsection{Modifying the List-of-Figures and List-of-Tables} +% \label{sec:listof} +% +% To generate a List-of-Figures, or List-of-Tables, page you need to +% \DescribeMacro{\l@subfigure} +% \DescribeMacro{\@dottedxxxline} +% add a |\listoffigures| or |\listoftables| command where +% you want the list to appear. These +% commands also cause the appropriate captions and subcaptions to be +% written to a file with the extensions \Lfile{lof} (\Lfile{lot}). If +% you want the subcaption text to appear in the List-of-Figures or +% List-of-Tables page, you need to change the value of the counter +% \Lcount{lofdepth} (\Lcount{lotdepth}) counter from its default of `1'. +% For example, to have the \Lpack{hhsubfigure} subcaptions to appear on +% the List-of-Figures, add the following to the preamble of your +% paper: +% \begin{quote} +% |\setcounter{|\Lcount{lofdepth}|}{2}| +% \end{quote} +% +% If you want to change how the subcaption appears on the ``List-of'' +% pages you can change its format by redefining the |\l@subfigure| +% or |\l@subtable| command. Usually you will want to use the +% |\@dottedxxxline| command +% \PrintIfDefined{sec:dl}{(section~\ref{sec:dl}, +% page~\pageref{sec:dl})\space}{} to help with the formatting. For +% instance the default value of |\l@subfigure| is: +% +% \begin{verbatim} +% \newcommand{\l@subfigure}{% +% \@dottedxxxline{\ext@subfigure}{2}{3.8em}{2.5em}} +% \end{verbatim} +% \vspace{-10pt} +% +% \noindent +% The arguments of the |\@dottedxxxline| command are: +% \begin{quote} +% \begin{enumerate} +% \itemsep -\parsep +% \item \underline{\smash{\textsf{Type}}}. The usual values are +% : \Lfile{lof} or \Lfile{lot}. The internal +% values |\ext@subfigure| and |\ext@subtable| stand for +% these extensions. +% \item \underline{\textsf{Level}}. By default this is `2' +% for the \Lcount{subfigure} and \Lcount{subtable}. If the level +% is greater than \Lcount{\meta{Type}depth} (where +% \underline{\smash{\meta{Type}}} is the first argument, above), +% then no line is produced. +% \item \underline{\textsf{Indent}}. Total indentation +% from the left margin. +% \item \underline{\textsf{Numwidth}}. Width of box for the +% label number if the \underline{\textsf{Title}} has a +% |\numberline| command. This is also the amount of extra +% indentation added to second and later lines of a multiple +% line entry. +% \item \underline{\textsf{Title}}. Contents of entry ({\it e.g.\/} the +% \meta{list\_entry} or \meta{subcaption}). +% \item \underline{\smash{\textsf{Page}}}. The page number of the +% figure or table. +% \end{enumerate} +% \end{quote} +% +% \noindent +% The final two arguments, \underline{\textsf{title}} and +% \underline{\smash{\textsf{page}}}, are automatically appended to the +% value of |\l@subfigure| (and symmetrically for |\l@subtable|). +% +% For example, to change the amount of space reserved for the label +% (if, for instance, you have a lot of figures and the and you need extra +% space for the figure number) you could widen the +% \texttt{2.5em} space for the label to \texttt{4.0em}: +% \begin{verbatim} +% \makeatletter +% \renewcommand{\l@subfigure}{% +% \@dottedxxxline{\ext@subfigure}{2}{3.8em}{4.0em}} +% \makeatother +% \end{verbatim} +% +% \subsection{Aligning Captions Above the Figure} +% \label{sec:custom-position} +% +% \begin{figure}^ +% \figuretopcaptrue +% \subfigtopskip=-5pt^ +% \subfigcapskip=-3pt^ +% \subfigbottomskip=2pt^ +% \centering +% \caption{Caption position option: [\Lopt{figtopcap}] with changing +% settings of \cmd{\subfiguretopcap}.}^ +% \label{fig:position3}^ +% \subfiguretopcapfalse +% \subfigure[First caption.]{\hbox to 1.5in{\hfil\null}}^ +% \hspace{0.2in}^ +% \subfigure[Second long, long, long, long, +% long, long, long, long caption.]{^ +% \hbox to 1.5in{\hfil\null}}\\[5pt] +% \subfiguretopcaptrue +% \subfigure{\fbox{\hbox to 1.5in{\vbox to 15mm{\vfil\null}\hfil}}}^ +% \hspace{0.2in}^ +% \subfigure{\fbox{\hbox to 1.5in{\vbox to 10mm{\vfil\null}\hfil}}}^ +% \setcounter{subfigure}{0} +% \end{figure} +% +% \noindent +% For unbalanced sets of captions placed, above the figures or tables, +% \DescribeMacro{\subfiguretopcaptrue} +% \DescribeMacro{\subfiguretopcapfalse} +% \DescribeMacro{\figuretopcaptrue} +% the caption portion looks unbalanced, such as the ones in +% figure~\ref{fig:position2}. If you prefer to have the caption portion +% aligned along the top rather than the bottom, as shown in +% figure~\ref{fig:position3}, you can use the +% \Lopt{figtopcap} option as in figure~\ref{fig:position2}, but use +% two ``empty'' subfigures to position the captions followed by +% two more containing the figures, but without captions. The code +% to produce this example is: +% +% \begin{verbatim} +% \begin{figure}% +% \centering +% \caption{Caption position option: [\Lopt{figtopcap}] with changing +% settings of \subfiguretopcap.}% +% \label{fig:position3}% +% \subfiguretopcapfalse +% \subfigure[First caption.]{\hbox to 1.5in{\hfil\null}}% +% \hspace{0.2in}% +% \subfigure[Second long, long, long, long, +% long, long, long, long caption.]{% +% \hbox to 1.5in{\hfil\null}}\\[5pt] +% \subfiguretopcaptrue +% \subfigure{\fbox{\hbox to 1.5in{\vbox to 15mm{\vfil\null}\hfil}}}% +% \hspace{0.2in}% +% \subfigure{\fbox{\hbox to 1.5in{\vbox to 10mm{\vfil\null}\hfil}}}% +% \end{figure} +% \end{verbatim} +% +% This example makes use of one of the four flags that control how the +% caption labels are numbered and where the subcaption appears. Two are +% for |\subfigure| and two for |\subtable|. The first of each set tell +% the |\subfigure| or |\subtable| command that the related main caption +% appears before or after the set of subfloats. |\figuretopcaptrue| and +% |\tabletopcaptrue| indicate that the caption appears before and +% |\figureotopcapfalse| and |\tabletopcapfalse| indicate that the it +% appears after. The other two flags force the subcaption to be placed +% before (|\subfiguretopcaptrue| and |\subtabletopcaptrue|) or after the +% actual subfigure or subtable (|\subfiguretopcapfalse| and +% |\subtabletopcapfalse|). +% +% There are two difficulties with this approach, first, you need to keep +% changing the setting of |\subfiguretopcap|, and second, if you have +% more than one row of subfigures or subtables, then you will need to +% fiddle with the counter (see section~\ref{sec:counters} to keep the +% numbers straight. The reason that this format is not supported by the +% \Lpack{hhsubfigure} package is that you need information about all of +% the subfigure or subtables on a row to box the figures correctly and +% this information is not available locally. +% +% \subsection{Adding Subfloats to New Environments} +% \enlargethispage{15pt}^finalhack +% \label{sec:customfloat} +% +% It is easy to add a \Lenv{subfloat} command to a new environment. For +% instance, let us assume we have a new \Lenv{float} +% environment\footnote{For information on creating new float +% environments, see any of the following: \cite{Lamp01}, \cite{Wils01} +% or \cite{Ling01}.} called ``\Lenv{map}'' in which various maps are +% displayed and for which a List-of-Maps is to be generated in the +% contents section. If we wanted to have \Lenv{submaps}, then we could +% define the following: +% +% \vspace{-4pt} +% \begin{verbatim} +% \makeatletter +% \newcounter{submap}[map] +% \newif\ifmaptopcap +% \newif\ifsubmaptopcap +% \newcommand{\p@submap}{\themap} +% \newcommand{\thesubmap}{(\alph{submap})} +% \newcommand{\@thesubmap}{\themap\hskip\subfiglabelskip} +% \newcommand{\@@thesubmap}{\themap} +% \newcommand{\ext@submap}{\ext@map} +% \newcommand{\l@submap}{\@dottedxxxline{\ext@submap}{2}{3.8em}{2.5em}} +% \newcounter{lomdepth} +% \setcounter{lomdepth}{1} +% \newcommand{\submap}{\subfigure} +% \newcommand{\@makesubmapcaption}{\@makesubfigurecaption} +% \ifhyperrefloaded +% \newcommand\theHsubmap{\themap.\arabic{submap}} +% \newcommand{\toclevel@submap}{1} +% \fi +% \makeatother +% \end{verbatim} +% \vspace{-14pt} +% +% The first and last lines make the character `@' act like a letter +% between them and therefore it may be part of a command name used there. +% First a new counter for the \Lpack{submap} is created along with two +% conditionals that define where the position ({\i.e.\/}, above or +% below) of the main caption and subcaption is with respect to the +% submap. Then the four commands that define the \Lpack{submap} label +% are created. The first two, |\p@submap| and |\thesubmap| define the +% standard label returned by |\ref|. The next, |\@thesubmap| gives the +% label as shown under or over the submap with the subcaption and the +% last, |\@@thesubmap| shows how the label is displayed on the List-of-Maps +% and/or referenced with the |\subref| command. +% +% The next four lines show where and how to print to the List-of-Maps +% page: |\ext@submap| gives the List-of-Maps file extension; |\l@submap| +% shows how to print the submap line on the List-of-Maps page; and the last +% two lines show how to create and set the counter \Lcount{lomdepth}, which +% controls how many caption levels are shown on the page when it is printed. +% +% The next two lines create the |\submap| and |\@makesubmapcaption| +% commands by making them the same as the |\subfigure| and +% |\@makesubfigurecaption| commands. +% +% The last four lines conditionally create the |\theHsubmap| and +% |\toclevel@submap| commands which are used by the \Lpack{hyperref} +% Package to name the item and to control the presence of the item +% bookmark. +% +% Of course, this is where the \Lpack{ccaption} package \cite{Wils01} +% comes in handy since it will do all of the above with one command: +% +% \vspace{-4pt} +% \begin{verbatim} +% \newsubfloat{map} +% \end{verbatim} +% \vspace{-10pt} +% +% +% \subsection{Interaction with Other Parts of \LaTeX} +% In the following sections, the interaction of the \Lpack{hhsubfigure} +% package with other parts of \LaTeX\ is documented. These ``other +% parts'' may be either part of the the \LaTeX\ base or contributed +% packages or classes. +% +% \subsubsection{\TeX 's ``Mouth''} +% The most important thing to remember when laying out your figures +% within a \Lenv{float} environment is that spaces take room. If you +% have an extra space between two figures, then they will be separated +% by a little bit. +% +% \TeX 's state varies as it reads a line of text from a file. It +% ignores some spaces and carriage-returns and converts others to +% |\space|'s or |\par|'s. You can use a `|%|' to insure that you only +% have real spaces where you want them. To understand which spaces +% are significant, you should read chapters~7 and 8 of the \TeX book +% \cite{Knut86}. However, the main source of unexpected +% extra spacing is carriage-returns which are turned in to |\space|'s. +% As a general rule: if in doubt, then add a `|%|' immediately after +% the last significant character of the line. +% +% \subsubsection{The Float Environment} +% \label{sec:float_env} +% +% Although the \Lpack{hhsubfigure} package was designed to work within a +% \Lenv{float} environment ({\it e.g.\/}, \Lenv{figure} or +% \Lenv{table}), it can be used outside with the following two caveats: +% \begin{enumerate}\itemsep=5pt +% \item You need to define |\@captype|. This is usually either +% \Lenv{figure} or \Lenv{table}. For example add the following +% to the preamble of your document: +% \begin{verbatim} +% \makeatletter +% \newcommand{\change_cap_type}[1]{% +% \renewcommand{\@captype}{#1}} +% \makeatother +% \end{verbatim}\vspace{-15pt} +% Then use the new command to switch in the middle of a given +% \Lenv{float} environment, say from ``figure'' to ``table'' with +% the command |\change_cap_type{table}|. +% \item If you want to define references using |\label|, then you also +% need to redefine the \LaTeX\ internal |\@currentlabel|. For +% example: +% \begin{verbatim} +% \makeatletter +% \edef\@currentlabel{\p@subfigure\thesubfigure} +% \makeatother +% \end{verbatim}\vspace{-15pt} +% before using the |\label| command. NOTE: Many other commands change +% |\@currentlabel|, including all of the ``section'' commands, +% |\caption|, \Lenv{equation}'s, and \Lenv{theorem}'s. +% \end{enumerate} +% +% \subsubsection{Interaction with Other Packages} +% +% \changes{v2.1}{22 Jan 2001}{Added \Lpack{ccaption} reference.} +% +% \changes{v2.1}{11 Oct 1996}{Revised subsubsection on use with +% the caption package and extended this section to talk about the +% \Lpack{captcont} package.} +% +% \noindent +% The only packages that directly interact with the \Lpack{hhsubfigure} +% package are the \Lpack{caption}/\Lpack{caption2} packages by +% H.A. Sommerfeldt \cite{Somm95a,Somm95b}, the \Lpack{ccaption} package +% and \Lpack{tocloft} packages by Peter Wilson \cite{Wils01,Wils01B}, +% and the \Lpack{captcont} package by S.D. Cochran \cite{Coch02}. +% +% \paragraph{\Lpack{caption}} +% +% If you load the \Lpack{hhsubfigure} package {\bf before} the +% \Lpack{caption} package, then the \Lpack{caption} package will detect +% that fact and will change the |\subcapsize| when the options +% \Lopt{scriptsize}, \ldots, \Lopt{Large} are specified (overriding such +% options used when loading the \Lpack{hhsubfigure} package). In +% addition, it redefines |\@thesubfigure| and |\@thesubtable| to use +% |\captionlabelfont|. It also uses an older layout of +% |\@thesubsubfigure| and |\@thesubtable|. +% +% The best plan is to load the \Lpack{caption} package {\bf before} the +% \Lpack{hhsubfigure} package. In addition, you should try to coordinate +% the ``look and feel'' of the two packages. This limits you a little +% since, although the two packages have similar options, the options in +% the \Lpack{caption} package do not combine the same way. You can pick +% one from each column:\par\null +% +% \DeleteShortVerb{\|} +% \noindent\hfil\begin{tabular}{*{4}{p{17mm}|}p{17mm}} +% \rr \Lopt{normal}, \Lopt{hang}, \Lopt{center}, \Lopt{centerlast} & +% \rr \Lopt{nooneline} & +% \rr \Lopt{scriptsize}, \Lopt{footnotesize}, \Lopt{small}, +% \Lopt{normalsize}, \Lopt{large}, \Lopt{Large} & +% \rr \Lopt{up}, \Lopt{it}, \Lopt{sl}, \Lopt{sc}, \Lopt{md}, +% \Lopt{bf}, \Lopt{rm}, \Lopt{sf}, \Lopt{tt} & +% \rr (Other options---see package.) +% \end{tabular} +% \MakeShortVerb{\|} +% \vskip14pt +% +% \paragraph{\Lpack{caption2}} +% +% This package acts similarly to the \Lpack{caption} package. If you +% specify the \Lopt{subfigure} it will try to support the subfigure +% package, if you specify \Lopt{nosubfigure} than it will not. If +% neither option is specified, than load order matters. If loaded +% {\bf before} the \Lpack{hhsubfigure} package, than it will not try to +% support the package and if loaded {\bf after} it will. +% +% Again, the best plan is to load the \Lpack{caption2} package +% {\bf before} the \Lpack{hhsubfigure} package, and specify the +% \Lopt{nosubfigure} option. In addition, you should try to coordinate +% the ``look and feel'' of the two packages. This limits you a little +% since, although the two packages have similar options, they are not +% exactly the same; however, most of the good looking combinations are +% easily available. You can pick one from each column:\par\null +% +% \DeleteShortVerb{\|} +% \noindent\hfil\begin{tabular}{*{5}{p{17mm}|}p{17mm}} +% \rr \Lopt{nosubfigure}, \Lopt{subfigure} & +% \rr \Lopt{normal}, \Lopt{hang}, \Lopt{center}, \Lopt{centerlast} +% \Lopt{flushleft}, \Lopt{indent} & +% \rr \Lopt{oneline}, \Lopt{nooneline} & +% \rr \Lopt{scriptsize}, \Lopt{footnotesize}, \Lopt{small}, +% \Lopt{normalsize}, \Lopt{large}, \Lopt{Large} & +% \rr \Lopt{up}, \Lopt{it}, \Lopt{sl}, \Lopt{sc}, \Lopt{md}, +% \Lopt{bf}, \Lopt{rm}, \Lopt{sf}, \Lopt{tt}^, +%^ \Lopt{UP}, \Lopt{IT}, \Lopt{SL}, \Lopt{SC}, \Lopt{MD}, +%^ \Lopt{BF}, \Lopt{RM}, \Lopt{SF}, \Lopt{TT} +% & +% \rr (Other options---see package.) +% \end{tabular} +% \MakeShortVerb{\|} +% +% \paragraph{\Lpack{ccaption}} +% +% The \Lpack{ccaption} package provides for all sorts of extensions and +% style options for \Lenv{float} |\captions|. It also provides for the +% use of the |\caption| command outside of a \Lenv{float} environment and +% a mechanism for creating new types of \Lenv{float} environments. +% +% In order to use it with the \Lpack{hhsubfigure} package, you need to +% pass the \Lopt{subfigure} option when loading it: +% +% \begin{quote} +% |\usepackage|[subfigure]\{ccaption\} +% \end{quote} +% +% \paragraph{\Lpack{tocloft}} +% +% The \Lpack{tocloft} package gives the user the ability to easily +% configure the ``List-of'' pages. It takes a \Lopt{subfigure} option +% so it doesn't matter which package is loaded first. +% +% \begin{quote} +% |\usepackage|[subfigure]\{tocloft\} +% \end{quote} +% +% \paragraph{\Lpack{hyperref}} +% \label{sec:hyperref} +% +% \changes{v2.1.2}{26 Mar 2002}{Improved coordination with the hyperref +% package.} +% +% \changes{v2.1.1}{15 Mar 2002}{Added coordination with the hyperref +% package. There is some interaction with the \cmd{label} command as +% pointed out by Martin.Bernreuther@po.uni-stuttgart.de.} +% +% The \Lpack{hyperref} package extends the functionality of all of the +% \LaTeX\ cross-referencing commands to produce hypertext links. In +% addition, it provides new commands to allow the user to insert +% hypertext links. When used with the \Lpack{hhsubfigure} package, they +% may be loaded in any order; however, it might be better if the +% \Lpack{hhsubfigure} package is loaded {\bf first}. +% +% To more fully support the \Lpack{hyperref} package, the |\label| +% \DescribeMacro{\subfloat@label} +% command, when used within the scope of the |\subfigure| or |\subtable| +% commands takes an optional argument (note the parentheses rather than +% square brackets): +% \vspace{-2pt} +% \begin{quote} +% |\label|\parg{bookmark}\marg{key} +% \end{quote} +% \vspace{-2pt} +% +% \noindent +% We would like to use the subcaption as the bookmark text, but the +% |\label| command is often processed before the subcaption. Therefore, +% this optional argument may be used to supply this information if +% desired. By default a bookmark field of the form +% ``Subfigure\textvisiblespace 1(a)'' will be generated. +% \footnote{If the document class is \Lpack{report} or other class that +% defines \cmd{\thechapter}, than the default bookmark field will be of the +% form ``Subfigure\textvisiblespace 1 \textvisiblespace 1(a)''.} +% +% +% \paragraph{\Lpack{captcont}} +% +% This package may be used with or without the \Lpack{hhsubfigure} package +% \DescribeMacro{\caption} +% \DescribeMacro{\caption*} +% \DescribeMacro{\captcont} +% \DescribeMacro{\captcont*} +% to extend figure or table numbering across multiple pages. This +% package knows about how the \Lpack{hhsubfigure} package interacts with +% the List-of-Figures and List-of-Tables and does the right thing when +% used with \Lenv{subfigure}'s and \Lenv{subtable}'s. +% +% The \Lpack{captcont} package may be loaded either {\bf before} or +% {\bf after} the \Lpack{hhsubfigure} and it has four options: +% \Lopt{figbotcap} or \Lopt{figtopcap} and \Lopt{tabbotcap} or +% \Lopt{tabtopcap}. These are the same as the \Lpack{hhsubfigure} +% options. When the \Lpack{captcont} package is used with the +% \Lpack{hhsubfigure} package, only the \Lpack{hhsubfigure} options matter. +% Any given with the \Lpack{captcont} package are ignored. +% +% The thing to remember about the \Lpack{captcont} package is that if +% you normally place the |\caption| {\bf before} your subfigures or +% subtables ({\it i.e.\/}, \Lopt{figtopcap} or \Lopt{tabtopcap} +% respectively), then you start a series of continued \Lenv{figure}'s +% with the |\caption[*]| and use |\contcapt[*]| in each of the rest of +% the figures. If you {\bf follow} your subfigures or subtables with a +% caption ({\it i.e.\/}, \Lopt{figbotcap} or \Lopt{tabbotcap} +% respectively), then you start the series with the |\contcapt[*]| in +% the first \Lenv{figure} environment and all but the last where you use +% the |\caption[*]|. +% +% \subsubsection{Creating a \Lenv{subfigure} Environment} +% +% \changes{v2.1.4}{24 Apr 2002}{Added \cmd{\label} command handling +% example in the \Lenv{subfloat} environment, thanks to Lars Clausen.} +% +% Some people have wanted to use the \Lenv{verbatim} environment within +% \DescribeEnv{subfloat} +% the \cmd{\subfigure} command and run into the restriction that the +% \Lenv{verbatim} environment cannot be nested. To include verbatim text in +% a subfigure, you can define a new environment, in which verbatim +% text may be enclosed, and which calls the \cmd{\subfigure} command. +% \vspace{-2pt} +% \begin{verbatim} +% \newbox\subfigbox % Create a box to hold the subfigure. +% \makeatletter +% \newenvironment{subfloat}% % Create the new environment. +% {\def\caption##1{\gdef\subcapsave{\relax##1}}% +% \let\subcapsave=\@empty % Save the subcaption text. +% \let\sf@oldlabel=\label +% \def\label##1{\xdef\sublabsave{\noexpand\label{##1}}}% +% \let\sublabsave\relax % Save the label key. +% \setbox\subfigbox\hbox +% \bgroup}% % Open the box... +% {\egroup % ... close the box and call \subfigure. +% \let\label=\sf@oldlabel +% \subfigure[\subcapsave]{\box\subfigbox}}% +% \makeatother +% \end{verbatim} +% \enlargethispage{12pt}^finalhack +% \noindent +% The following is an example of this \Lenv{subfloat} environment begin +% used to produce figure~\ref{fig:verbatim}. Note that you need to +% supply the width of the \Lenv{verbatim}; here we use a section using a +% \Lenv{minipage}). +% \begingroup +% \newbox\subfigbox +% \makeatletter +% \newenvironment{subfloat}^ +% {\def\caption##1{\gdef\subcapsave{\relax##1}}^ +% \let\subcapsave=\@empty +% \let\sf@oldlabel=\label +% \def\label##1{\xdef\sublabsave{\noexpand\label{##1}}}^ +% \let\sublabsave\relax +% \setbox\subfigbox\hbox +% \bgroup}^ +% {\egroup +% \let\label=\sf@oldlabel +% \subfigure[\subcapsave]{\box\subfigbox\sublabsave}}^ +% \makeatother +% \begin{figure} +% \centering +% \subfigtopskip=0pt^ +% \subfigcapskip=0pt^ +% \subfigbottomskip=0pt^ +% \begin{subfloat}^ +% \begin{minipage}{2.1in} +% \begin{verbatim} +% This text should be +% verbatim. And not +% messed with in any way ! +% \end{verbatim} +% \end{minipage}^ +% \caption{First subcaption.}^ +% \label{fig:verbone} +% \end{subfloat}^ +% \hspace{10pt}^ +% \begin{subfloat}^ +% \begin{minipage}{2.1in} +% \begin{verbatim} +% This text (also)should be +% verbatim. And not +% messed with in any way ! +% \end{verbatim} +% \end{minipage}^ +% \caption{Second subcaption.}^ +% \label{fig:verbtwo} +% \end{subfloat} +% \caption{Subfigures~\subref{fig:verbone} and \subref{fig:verbtwo} +% show examples of using verbatim text in a subfigure.} +% \label{fig:verbatim} +% \end{figure} +% \endgroup +% \begin{quote}\ +% |\begin{figure}| \\ +% | \centering| +% | \begin{subfloat}%| \\ +% | \begin{minipage}{2.1in}| \\ +% | \begin{verbatim}| \\ +% | This text should be| \\ +% |verbatim. And not| \\ +% | messed with in any way !| \\ +% | \end{verbatim}| \\ +% | \end{minipage}%| \\ +% | \caption{First subcaption.}%| \\ +% | \label{fig:verbone}| \\ +% | \end{subfloat}%| \\ +% | \qquad| \\ +% | \begin{subfloat}%| \\ +% | \begin{minipage}{2.1in}| \\ +% | \begin{verbatim}| \\ +% | This text (also)should be| \\ +% |verbatim. And not| \\ +% | messed with in any way !| \\ +% | \end{verbatim}| \\ +% | \end{minipage}%| \\ +% | \caption{Second subcaption.}%| \\ +% | \label{fig:verbtwo}| \\ +% | \end{subfloat}| \\ +% | \caption{Subfigures~\subref{fig:verbone} and \subref{fig:verbtwo}| \\ +% | show examples of using verbatim text in a subfigure.}| \\ +% | \label{fig:verbatim}| \\ +% |\end{figure}| +% \end{quote} +% +% +% \StopEventually{^ +% \section{Acknowledgements} +% +% This package was originally written to automatically line up some +% figure boxes and place labels under them for a paper that I was +% writing. I thought it useful and uploaded it to the internet +% community and later to CTAN. Many people have asked questions or +% given comments which collectively have changed and improved the +% usefulness of this package. +% +% A few people have contributed more than most and I want to thank +% them publicly, but in no particular order: +% +% \begin{itemize}\itemsep=-2pt^finalhack +% \item{\bf Harald Axel Sommerfeldt} for the work that he did to adjust +% his \Lpack{caption} and \Lpack{caption2} packages as necessary to +% support the \Lpack{hhsubfigure} package when they are loaded together. +% \item {\bf Peter Wilson} for the work that he did to adjust his +% \Lpack{ccaption} package (and other packages) as necessary to support +% the \Lpack{hhsubfigure} package when they are loaded together. +% \item {\bf William `bil' L. Kleb} for his extensive list of errors and +% suggestions to this documentation. +% \item{\bf Axel Reichert} for his request for a `hang' caption style +% since the subcaptions tend to have a short width. And, for his +% request for some way of referencing the individual subfigures in +% the main caption without the figure number. +% \item{\bf Harald Harders} for his suggestion of the \cmd{\subref} +% command and modifying \cmd{\label} within the \Lpack{hhsubfigure} +% package to save local references to the subfigures that are often +% needed. +% \item{\bf Heiko Oberdiek} and {\bf James A. Bednar} for their help +% with coexisting with the \Lpack{hyperref} and \Lpack{html} packages. +% Also, {\bf Ingele Roelens} for pointing out some further compatibility +% problems when using the \Lpack{hyperref} package with PDF\LaTeX. +% \item{\bf Frederic Darboux} for searching out and finding several +% incompatibilities with other packages. +% +% \end{itemize} +% +% \newpage^finalhack +% +% \begin{thebibliography}{6}^\itemsep=-2pt^finalhack +% \itemsep=0.8pt +% \bibitem{Somm95a}^ +% Harald Axel Sommerfeldt, +% \emph{The \Lpack{caption} Package}, +% Version 1.4b, 1995/04/05. +% (Available from CTAN as file \texttt{caption.dtx}.) +% \bibitem{Somm95b}^ +% Harald Axel Sommerfeldt, +% \emph{The \Lpack{caption} Package}, +% Version 2.0(beta), 1995/10/09. +% (Available from CTAN as file \texttt{caption2.dtx}.) +% \bibitem{Wils01}^ +% Peter Wilson, +% \emph{The \Lpack{ccaption} Package}, +% Version 1.0a, 2001/08/15. +% (Available from CTAN as file \texttt{ccaption.dtx}.) +% \bibitem{Wils01B}^ +% Peter Wilson, +% \emph{The \Lpack{tocloft} Package}, +% Version 2.2, 2001/14/17. +% (Available from CTAN as file \texttt{ccaption.dtx}.) +% \bibitem{Raht02}^ +% Sebastian Rahtz, +% \emph{Hypertext marks in \LaTeX}, +% 2002/04/05/. +% (Available from CTAN as file \texttt{hyperref.dtx}.) +% \bibitem{Coch02}^ +% Steven Douglas Cochran, +% \emph{The \Lpack{captcont} Package}, +% 2002/02/14/. +% (Available from CTAN as file \texttt{captcont.dtx}.) +% \bibitem{Reck97}^ +% Keith Reckdahl, +% \emph{Using Imported Graphics in \LaTeXe}, +% 1997/12/15. +% (Available from CTAN as file \texttt{epslatex.pdf}) +% \bibitem{Lamp94}^ +% Leslie Lamport, +% \emph{LaTeX User's Guide and Reference Manual}, 2nd edition, +% Addison-Wesley, Reading, Massachusetts, +% 1994. +% \bibitem{Knut86}^ +% Donald Ervin Knuth, +% \emph{The \TeX book}, +% Addison-Wesley, Reading, Massachusetts, +% 1986. +% \bibitem{Lamp01}^ +% Leslie Lamport, Frank Mittelbach, and Johannes Braams, +% \emph{Standard Document Classes for \LaTeX\ version 2e} +% Version 1.4e, 2001/04/01. +% (Available from CTAN as file \texttt{classes.dtx}.) +% \bibitem{Ling01}^ +% Anselm Lingnau, +% \emph{An Improved Environment for Floats.} +% Version 1.3d, 2001/11/08. +% (Available from CTAN as file \texttt{float.dtx}.) +% \end{thebibliography}} +% +% \section{The Code} +% \iffalse +%<*package> +% \fi +% \subsection{Identification} +% +% \changes{v2.1}{23 Jan 2002}{Updated the release date.} +% +% \changes{v2.1}{11 Oct 1996}{Removed compatibility with \LaTeX2.09.} +% +% Announce the \Lpack{hhsubfigure} package. +% +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e}[1994/12/01] +\ProvidesPackage{hhsubfigure}[2003/09/14 v2.1.4a (hh)subfigure package] +% \end{macrocode} +% +% \subsection{Check for the \Lpack{hyperref} Package} +% +% \changes{v2.1.4}{02 Jul 2002}{Added the \cmd{\theHsubfigure} and +% \cmd{\theHsubtable} commands to avoid duplicate names in a PDF +% file when using the \Lpack{hyperref} Package.} +% +% \changes{v2.1.3}{17 Apr 2002}{Changed \cmd{\newcommand} to +% \cmd{\providecommand} to allow other packages to set the +% \cmd{\toclevel@subfigure} and \cmd{\toclevel@subtable}.} +% +% \changes{v2.1.2}{26 Mar 2002}{Changed to simplify the interaction +% with the hyperref package and avoid loading nameref.} +% +% \changes{v2.1.1}{15 Mar 2002}{Added coordination with the hyperref +% package.} +% +% \begin{macro}{\toclevel@subfigure} +% \begin{macro}{\toclevel@subtable} +% +% After every package is loaded, check to see if the \Lpack{hyperref} +% package was among them, if so, then make sure that the |\ifhyperrefloaded| +% switch is set so that the |\subfloat@label| command will write the correct +% form of the |\newlabel| to the \Lfile{aux} file. Also define the +% ``TOC level'' of the subfigure and subtable. We fix these at one since +% the default figure and table levels are zero. Finally, we add definitions +% for |\theHsubfigure| and |\theHsubtable| to avoid duplicate names in +% the PDF file when using the \Lpack{hyperref} Package. +% +% \begin{macrocode} +\newif\ifhyperrefloaded +\AtBeginDocument{% + \@ifpackageloaded{hyperref}{% + \hyperrefloadedtrue + \providecommand\theHsubfigure{\thefigure.\arabic{subfigure}}% + \providecommand\theHsubtable{\thetable.\arabic{subtable}}% + \providecommand{\toclevel@subfigure}{1}% + \providecommand{\toclevel@subtable}{1}}{}} +% \end{macrocode} +% +% \end{macro} +% \end{macro} +% +% \subsection{Initialization and Shared Constants} +% \begin{macro}{\ifsubcaphang} +% \begin{macro}{\ifsubcapcenter} +% \begin{macro}{\ifsubcapcenterlast} +% \begin{macro}{\ifsubcapnooneline} +% \begin{macro}{\ifsubcapraggedright} +% +% \changes{v2.1}{23 Jan 2002}{Added.} +% +% These five flags control how the style in which the subfloat label and +% caption are printed. The \Lif{subcaphang} flag is first checked and +% if true, causes the subcaption label to be typeset separately and +% placed to the upper left of the space available for the subcaption. +% The \Lif{subcapcenter} flag centers each line of the subcaption. The +% \Lif{subcapcenterlast} centers the last line of the subcaption (this +% is a {\sc nop} if the \Lif{subcapcenter} flag is true. If the +% \Lif{subcapnooneline} is false, then the label plus the text of the +% subcaption are centered. If it is true, than the other flags may +% cause something different to happen. The purpose of this flag, +% generally, is to cause a single line to be left justified when there +% is a very short caption. The last flag is the \Lif{subcapraggedright} +% which typsets its text without lining up the right side. This is +% useful for the subcaptions since they are usually short and prone to +% generating hyphenated words unless allowed to be ragged. +% +% \begin{macrocode} +\newif\ifsubcaphang +\newif\ifsubcapcenter +\newif\ifsubcapcenterlast +\newif\ifsubcapnooneline +\newif\ifsubcapraggedright +\newif\ifsubcapRaggedRight +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \noindent +% Table~\ref{tab:defaults} gives the initial (default) values of the +% internals that are used to control the placement and printing of the +% subfloats. +% +% \changes{v2.1.4}{30 Apr 2002}{Changed the label and caption defaults +% from \cmd{\rmfamily}\cmd{\mdseries}\cmd{\upshape} to +% \cmd{\familydefault}\cmd{\seriesdefault} \cmd{\shapedefault}.} +% \DeleteShortVerb{\|} +% \MakeShortVerb{\/} +% \begin{table}^ +% \def\pz{\phantom{0}}^ +% \def\M#1{\vspace*{#1}} +% \caption[Default values of the Subfigure constants.]% +% {Default values of the Subfigure constants. These +% values are set during the options processing (see +% section~\ref{sec:startup}).}^ +% \label{tab:defaults}^ +% \vspace{5pt}^ +% \begin{minipage}{4.8in}^ +% \setlength\tabcolsep{5pt}^ +% \rr +% \begin{tabular}{|l|c|p{1.3in}|p{1.963in}|}\hline +% \multicolumn{1}{|c|}{\raisebox{-1.5ex}{\bf Command}} +% & \multicolumn{1}{c|}{\bf \Lopt{loose}} +% & \multicolumn{1}{c|}{\bf \Lopt{tight}} +% & +% \multicolumn{1}{c|}{\raisebox{-1.5ex}{\bf Description}} +% \\ +% & \multicolumn{1}{c|}{\bf Option} +% & \multicolumn{1}{c|}{\bf Option} +% & \\ \hline +% \raisebox{-2.1ex}{\cmd{\subfigtopskip}} +% & \raisebox{-2.1ex}{10 pt} +% & \M{0.6ex}\hfil 5 pt +% & \rr Length from the top of the subfloat +% box to the beginning of the figure. +% \\ \hline +% \raisebox{-1.5ex}{\cmd{\subfigcapskip}} +% & \raisebox{-1.5ex}{10 pt} +% & \M{0.0ex}\hfil 0 pt +% & \rr Length between the baseline of the +% subcaption and the figure. +% \\ \hline +% \raisebox{-2.1ex}{\cmd{\subfigcaptopadj}} +% & \raisebox{-2.1ex}{\pz0 pt} +% & \M{0.4ex}\hfil 3 pt +% & \rr Length added to /\subfigcapskip/ +% when the caption is above the figure. +% \\ \hline +% \raisebox{-2.1ex}{\cmd{\subfigbottomskip}} +% & \raisebox{-2.1ex}{10 pt} +% & \M{0.7ex}\hfil 5 pt +% & \rr Length from the bottom of the +% subcaption to the bottom of the +% subfloat. +% \\ \hline +% \raisebox{-3.5ex}{\cmd{\subfigcapmargin}} +% & \raisebox{-3.5ex}{10 pt} +% & \M{2.0ex}\hfil 0 pt +% & \rr Indentation of the subcaption from +% the sides of the subfloat box. (This +% should always be positive or zero.) +% \\ \hline +% \raisebox{-1.5ex}{\cmd{\subfiglabelskip}} +% & \raisebox{-1.5ex}{0.33 em} +% & \raggedleft 0.33 em plus 0.07 em minus 0.03 em +% & \rr Space between the label and the +% text of the subcaption. +% \\ \hline +% \raisebox{-1.5ex}{\cmd{\subcapsize}} +% & \multicolumn{2}{c|}{\raisebox{-1.5ex}{footnotesize}} +% & \rr Size for the text portion of the +% subcaption font. +% \\ \hline +% \raisebox{-1.5ex}{\cmd{\subcaplabelfont}} +% & \multicolumn{2}{c|}{\raisebox{-1.5ex}{(Default family, series and shape)}} +% & \rr Font for the label portion of the +% subcaption. +% \\ \hline +% \raisebox{-1.5ex}{\cmd{\subcapfont}} +% & \multicolumn{2}{c|}{\raisebox{-1.5ex}{(Default family, series and shape)}} +% & \rr Font for the text portion of the +% subcaption. +% \\ \hline +% \end{tabular} +% \end{minipage} +% \end{table} +% \DeleteShortVerb{\/} +% \MakeShortVerb{\|} +% +% \begin{macro}{\subfigtopskip} +% \begin{macro}{\subfigcapskip} +% \begin{macro}{\subfigcaptopadj} +% \begin{macro}{\subfigbottomskip} +% +% \changes{v2.1}{22 Jan 1997}{Reduced the space to the values separating +% subfloat caption and figure box and its top and bottom. Added +% \cmd{\subfigcaptopadj} in case it is needed in styles that with figure +% subcaptions on the bottom and table subcaptions on the top.} +% +% See figure~\ref{fig:layout} for details of where these take effect. +% Generally the |\subfigtopskip| appears between the figure or table and +% the edge of the box. |\subfigbottomskip| appears between the +% subcaption and the edge of the box. If the subcaption follows the +% figure or table, then |\subfigcapskip| is placed before it along with +% ({\it i.e.\/}, in addition to) a |\baselineskip|. If the subcaption +% comes before the figure or table then |\subfigcapskip| is placed +% after it along with |\subfigcaptopadj|. Although several of the above +% are {\tt skip}'s they are typset at their base size and will not +% shrink or expand. +% +% \begin{macrocode} +\newskip\subfigtopskip \subfigtopskip = 5\p@ +\newskip\subfigcapskip \subfigcapskip = 0\p@ +\newdimen\subfigcaptopadj \subfigcaptopadj = 3\p@ +\newskip\subfigbottomskip \subfigbottomskip = 5\p@ +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\subfigcapmargin} +% +% \changes{v2.1}{22 Jan 1997}{Reduced \cmd{\subfigcapmargin} to zero.} +% \begin{macro}{\subfiglabelskip} +% +% \changes{v2.1}{23 Jan 2002}{Added to replace the space between the +% subcaption label and text.} +% +% These two values are used to typeset the subcaption The width of the +% subcaption is the same as that of its associated figure or table +% width. |\subfigcapmargin| is placed on either side of the caption and +% |\subfiglabelskip| is placed between the subcaption label and the +% subcaption text. Depending on the manner of typesetting the +% subcaption, this may shrink or expand. By default, the +% |\subfigcapmargin| is zero to allow as much room of the subcaption as +% possible. +% +% \begin{macrocode} +\newdimen\subfigcapmargin \subfigcapmargin = \z@ +\newskip\subfiglabelskip \subfiglabelskip = 0.33em plus 0.07em minus 0.03em +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\subcapsize} +% +% |\subcapsize| is used to set the size of both the subcaption label and +% the subcaption text. The options allow it to be set to any of the +% following: |\scriptsize|, |\footnotesize|, |\small|, |\normalsize|, +% |\large|, |\Large|. It may also be set to |\tiny|, |\LARGE|, |\huge| +% or |\HUGE| by hand if need be for special instances. +% +% \begin{macrocode} +\newcommand*{\subcapsize}{} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\subcaplabelfont} +% \begin{macro}{\subcaplabelfont@f} +% +% \changes{v2.1.4}{30 Apr 2002}{Changed the \cmd{\subcaplabelfont@f} +% default value to \cmd{\familydefault}.} +% +% \begin{macro}{\subcaplabelfont@c} +% +% \changes{v2.1.4}{30 Apr 2002}{Changed the \cmd{\subcaplabelfont@c} +% default value to \cmd{\seriesdefault}.} +% +% \begin{macro}{\subcaplabelfont@s} +% +% \changes{v2.1.4}{30 Apr 2002}{Changed the \cmd{\subcaplabelfont@s} +% default value to \cmd{\shapedefault}.} +% +% The |\subcaplabelfont| is composed of three parts, the font family, +% such as roman, san serif or typewriter; the font series, such as +% medium or bold; and the font shape, such as italic, slanted, small +% caps or upright. These are combined along with the |\subcapsize| to +% select the font for the subcaption label. +% +% \begin{macrocode} +\newcommand*{\subcaplabelfont}{% + \subcaplabelfont@f\subcaplabelfont@c\subcaplabelfont@s} +\newcommand*{\subcaplabelfont@f}{\fontfamily{\familydefault}\selectfont} +\newcommand*{\subcaplabelfont@c}{\fontseries{\seriesdefault}\selectfont} +\newcommand*{\subcaplabelfont@s}{\fontshape{\shapedefault}\selectfont} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\subcapfont} +% +% \changes{v2.1}{11 Dec 1996}{Added.} +% +% \begin{macro}{\subcapfont@f} +% +% \changes{v2.1.4}{30 Apr 2002}{Changed the \cmd{\subcapfont@f} default +% value to \cmd{\familydefault}.} +% +% \begin{macro}{\subcapfont@c} +% +% \changes{v2.1.4}{30 Apr 2002}{Changed the \cmd{\subcapfont@s} default +% value to \cmd{\seriesdefault}.} +% +% \begin{macro}{\subcapfont@s} +% +% \changes{v2.1.4}{30 Apr 2002}{Changed the \cmd{\subcapfont@s} default +% value to \cmd{\shapedefault}.} +% +% The |\subcapfont| is the same as the |\subcaplabelfont| except that it +% is applied to the subcaption text rather than the label. +% +% \begin{macrocode} +\newcommand*{\subcapfont}{% + \subcapfont@f\subcapfont@c\subcapfont@s} +\newcommand*{\subcapfont@f}{\fontfamily{\familydefault}\selectfont} +\newcommand*{\subcapfont@c}{\fontseries{\seriesdefault}\selectfont} +\newcommand*{\subcapfont@s}{\fontshape{\shapedefault}\selectfont} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ifsf@tight} +% +% Create an `if' to control whether the check for the top-of-page is +% performed in the |\@subfloat| command. This is necessary to preserve +% the look-and-feel of the older versions of this package. The +% \Lopt{loose} option turns this flag off (no check) and the +% \Lopt{tight} option turns it on (do the check). +% +% \begin{macrocode} +\newif\ifsf@tight \sf@tighttrue +% \end{macrocode} +% \end{macro} +% +% \subsection{Subfigure Constants} +% \label{sec:fig_constants} +% \begin{macro}{\c@subfigure} +% Subfigure counter. +% +% \begin{macrocode} +\newcounter{subfigure}[figure] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\iffiguretopcap} +% +% \changes{v2.1}{23 Jan 2002}{Added check for existing +% \cmd{\figuretopcaptrue} so that this package will work with the +% captcont package.} +% +% \changes{v2.1}{22 Jan 1997}{Added to control label numbering for +% captions at the top vs.\ at the bottom.} +% +% \begin{macro}{\ifsubfiguretopcap} +% +% \changes{v2.1}{15 Nov 1997}{Added to control placement of the +% subcaption at the top vs.\ at the bottom.} +% +% These control how the \Lpack{hhsubfigure} \Lcount{caption} numbering is +% obtained and where the figure caption and subcaption should appear +% relative to the body of the \Lenv{subfigure}. The boolean +% |\iffiguretopcap| indicates that the \Lcount{caption} counter is +% current and there is no need to increment it. The boolean +% |\ifsubfiguretopcap| indicates that the subcaption will be printed +% above the body portion of the \Lpack{subfigure}. +% +% \begin{macrocode} +\@ifundefined{figuretopcaptrue}{\newif\iffiguretopcap}{} +\newif\ifsubfiguretopcap +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\p@subfigure} +% \begin{macro}{\thesubfigure} +% \begin{macro}{\@thesubfigure} +% \begin{macro}{\@@thesubfigure} +% +% \changes{v2.1}{23 Jan 2002}{Added.} +% +% The |\thesubfigure| command defines the label for text references +% (prefixed by |\p@subfigure|). This is the value saved by the |\label| +% and retrieved by the |\ref| commands. In the case of a +% conflict between this package and a prior one over the definition +% of |\thesubfigure|, this package will win. This is insured by first +% specifying the |\providecommand| for the |\thesubfigure| and then +% |\renewcommand|. This is necessary because some packages incorrectly +% insert this command. +% +% The |\@thesubfigure| value defines the the caption label complete +% offset from the beginning of the caption text. It is used in the +% subfigure caption and normally takes the label portion as defined +% by |\thesubfigure|. +% +% Finally, the value defined by |\@@thesubfigure| is also saved by the +% |\label| command and may be retrieved with the |\subref| command. This is +% often useful in the subcaption or caption text when referring to the +% individual subfigures. This value is also the one that is used in +% the List-of-Figures. +% +% These multiple ``views'' of the \Lcount{subfigure} counter allow a +% style to define the way the label looks in the figure, for example +% ``{\bf (a)}\textvisiblespace''. Then references to it with |\ref| +% have the form ``2.1a'', and with |\subref| ``(a)'' (This latter form +% is also used to label references in the List-of-Figures section). +% +% \begin{macrocode} +\let\p@subfigure=\thefigure +\providecommand*{\thesubfigure}{(\alph{subfigure})} +\renewcommand*{\thesubfigure}{(\alph{subfigure})} +\newcommand*{\@thesubfigure}{\thesubfigure\hskip\subfiglabelskip} +\newcommand*{\@@thesubfigure}{\thesubfigure} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ext@subfigure} +% \begin{macro}{\l@subfigure} +% +% \changes{v2.1}{11 Oct 1996}{Changed the indentation of the +% List-of-Figures line from 2.3em to 2.5em.} +% +% \begin{macro}{\c@lofdepth} +% +% These values define how and if the subfigure caption will appear in a +% List-of-Figures file. |\ext@subfigure| defines the default subfigure +% file extension (which is the same as |\ext@figure| --- the +% List-of-Figures file, \Lcount{lof}). |\l@subfigure| +% shows how to print an \Lfile{lof} subfigure line and defines that line +% at level two. |\c@lofdepth| is an extension of the Table-of-Contents +% depth value and controls the depth to which captions in the file are +% printed to the actual page. By default, the subcaptions are not. +% +% \begin{macrocode} +\let\ext@subfigure=\ext@figure +% \end{macrocode} +% +% \begin{macrocode} +\newcommand*{\l@subfigure}{% + \@dottedxxxline{\ext@subfigure}{2}{3.8em}{2.5em}} +% \end{macrocode} +% +% \begin{macrocode} +\newcounter{lofdepth} +\setcounter{lofdepth}{1} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \subsection{Subtable Constants} +% This section is symmetric to section~\ref{sec:fig_constants}. +% \begin{macro}{\c@subtable} +% Subtable counter. +% +% \begin{macrocode} +\newcounter{subtable}[table] +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\iftabletopcap} +% +% \changes{v2.1}{23 Jan 2002}{Added check for existing +% \cmd{\tabeltopcaptrue} so that this package will work with the +% captcont package.} +% +% \changes{v2.1}{22 Jan 1997}{Added to control label numbering for +% captions at the top vs.\ at the bottom.} +% +% \begin{macro}{\ifsubtabletopcap} +% \changes{v2.1}{15 Nov 1997}{Added to control placement of the +% subcaption at the top vs.\ at the bottom.} +% +% These define the form that the subcaption prefix is generated. The +% boolean |\iftabletopcap| works with the numbering of the subcaption +% label and uses the current \Lcount{table} counter value if true and +% the next value if false. The boolean |\ifsubtabletopcap| sets the +% subcaption before the main body of the subfigure, if true; and, after +% it, if false. +% +% \begin{macrocode} +\@ifundefined{tabletopcaptrue}{\newif\iftabletopcap}{} +\newif\ifsubtabletopcap +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\p@subtable} +% \begin{macro}{\thesubtable} +% \begin{macro}{\@thesubtable} +% \begin{macro}{\@@thesubtable} +% +% \changes{v2.1}{23 Jan 2002}{Added.} +% +% The |\thesubtable| command defines the label for text references +% (prefixed by |\p@subtable|), while the |\@thesubtable| command defines +% what appears in the subcaption under or over the subtable. The +% |\@@thesubtable| command defines an alternative reference to the label +% for use in the subcaption and caption of the table (see the discussion +% above for the equivalent figure values). The latter form is also used +% for the List-of-Tables label. As above, the |\thesubtable| command is +% twice specified +% +% \begin{macrocode} +\let\p@subtable=\thetable +\providecommand*{\thesubtable}{(\alph{subtable})} +\renewcommand*{\thesubtable}{(\alph{subtable})} +\newcommand*{\@thesubtable}{\thesubtable\hskip\subfiglabelskip} +\newcommand*{\@@thesubtable}{\thesubtable} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ext@subtable} +% \begin{macro}{\l@subtable} +% +% \changes{v2.1}{11 Oct 1996}{Changed the indentation of the +% List-of-Tables line from 2.3em to 2.5em.} +% +% \begin{macro}{\c@lotdepth} +% +% These define how and if the subtable caption will appear in a +% List-of-Tables file. |\ext@subtable| defines the default subtable +% file extension (which is the same as |\ext@table| --- the +% List-of-Tables file, \Lcount{lot}). |\l@subtable| shows how to print +% an \Lfile{lot} subtable line and defines that line at level two. +% |\c@lotdepth| is an extension of the table-of-contents depth value and +% controls the depth to which captions in the file are printed to the +% actual page. By default, the subcaptions are not printed. +% +% \begin{macrocode} +\let\ext@subtable=\ext@table +% \end{macrocode} +% +% \begin{macrocode} +\newcommand*{\l@subtable}{% + \@dottedxxxline{\ext@subtable}{2}{3.8em}{2.5em}} +% \end{macrocode} +% +% \begin{macrocode} +\newcounter{lotdepth} +\setcounter{lotdepth}{1} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \subsection{Declaration of Options} +% +% The following options allow general compatibility with the +% \Lpack{caption} and \Lpack{caption2} packages by H.A. Sommerfeldt +% \cite{Somm95a}. There are six different subcaption layout options +% supported: \Lopt{normal}, \Lopt{hang} (or \Lopt{isu}), \Lopt{center}, +% \Lopt{centerlast} (or \Lopt{anne}), \Lopt{nooneline} and +% \Lopt{raggedright}. The \Lopt{hang} subcaption may be combined with +% the \Lopt{center} or \Lopt{centerlast} options. The \Lopt{nooneline} +% may be combined with any of the other options (but it's effect is +% negated or looks bad with either of \Lopt{center} or \Lopt{centerlast} +% unless the \Lopt{hang} option is also used). \Lopt{raggedright} +% overrides the \Lopt{center} or \Lopt{centerlast} options. +% +% \begin{macrocode} +\DeclareOption{normal}{% + \subcaphangfalse + \subcapcenterfalse + \subcapcenterlastfalse + \subcapnoonelinefalse + \subcapraggedrightfalse + \subcapRaggedRightfalse} +% \end{macrocode} +% +% \begin{macrocode} +\DeclareOption{hang}{\subcaphangtrue} +\DeclareOption{center}{\subcapcentertrue} +\DeclareOption{centerlast}{\subcapcenterlasttrue} +\DeclareOption{nooneline}{\subcapnoonelinetrue} +\DeclareOption{raggedright}{\subcapraggedrighttrue} +\DeclareOption{RaggedRight}{\subcapRaggedRighttrue} +% \end{macrocode} +% +% \begin{macrocode} +\DeclareOption{isu}{\ExecuteOption{hang}} +\DeclareOption{anne}{\ExecuteOption{centerlast}} +% \end{macrocode} +% +% \newpage^finalhack +% +% \noindent +% There are options for six different font sizes available. +% +% \begin{macrocode} +\DeclareOption{scriptsize}{\renewcommand*{\subcapsize}{\scriptsize}} +\DeclareOption{footnotesize}{\renewcommand*{\subcapsize}{\footnotesize}} +\DeclareOption{small}{\renewcommand*{\subcapsize}{\small}} +\DeclareOption{normalsize}{\renewcommand*{\subcapsize}{\normalsize}} +\DeclareOption{large}{\renewcommand*{\subcapsize}{\large}} +\DeclareOption{Large}{\renewcommand*{\subcapsize}{\Large}} +% \end{macrocode} +% +% \noindent +% There are eighteen options available to set the font attributes of the +% subcaptions. The first nine affect only the subcaption label +% The last nine affect only the subcaption text. +% +% \changes{v2.1}{22 Jan 1997}{Changed order of font options.} +% +% \changes{v2.1}{15 Nov 1997}{Added nine new options to set the format +% of the caption text separately from the caption label.} +% +% \begin{macrocode} +\DeclareOption{rm}{\renewcommand*{\subcaplabelfont@f}{\rmfamily}} +\DeclareOption{sf}{\renewcommand*{\subcaplabelfont@f}{\sffamily}} +\DeclareOption{tt}{\renewcommand*{\subcaplabelfont@f}{\ttfamily}} +\DeclareOption{md}{\renewcommand*{\subcaplabelfont@c}{\mdseries}} +\DeclareOption{bf}{\renewcommand*{\subcaplabelfont@c}{\bfseries}} +\DeclareOption{up}{\renewcommand*{\subcaplabelfont@s}{\upshape}} +\DeclareOption{it}{\renewcommand*{\subcaplabelfont@s}{\itshape}} +\DeclareOption{sl}{\renewcommand*{\subcaplabelfont@s}{\slshape}} +\DeclareOption{sc}{\renewcommand*{\subcaplabelfont@s}{\scshape}} +% \end{macrocode} +% +% \begin{macrocode} +\DeclareOption{RM}{\renewcommand*{\subcapfont@f}{\rmfamily}} +\DeclareOption{SF}{\renewcommand*{\subcapfont@f}{\sffamily}} +\DeclareOption{TT}{\renewcommand*{\subcapfont@f}{\ttfamily}} +\DeclareOption{MD}{\renewcommand*{\subcapfont@c}{\mdseries}} +\DeclareOption{BF}{\renewcommand*{\subcapfont@c}{\bfseries}} +\DeclareOption{IT}{\renewcommand*{\subcapfont@s}{\itshape}} +\DeclareOption{SL}{\renewcommand*{\subcapfont@s}{\slshape}} +\DeclareOption{SC}{\renewcommand*{\subcapfont@s}{\scshape}} +\DeclareOption{UP}{\renewcommand*{\subcapfont@s}{\upshape}} +% \end{macrocode} +% +% \noindent +% There are eight options available to control the caption placement +% and the proper numbering in association with the figure or table +% caption placement. The first four affect only the caption numbering +% by informing the internals that the associated figure or table +% caption appears before or after the subfloat. The second four do +% this and, in addition, shift the subfloat caption to the bottom or +% top of the subfloat. The |\subfigure| and |\subtable| commands each +% have a set of flags since it is often the case that a document style +% requires that figure captions follow the figure and table captions +% precede the table. +% +% \begin{macrocode} +\DeclareOption{figbotcap}{\figuretopcapfalse} +\DeclareOption{figtopcap}{\figuretopcaptrue} +\DeclareOption{tabbotcap}{\tabletopcapfalse} +\DeclareOption{tabtopcap}{\tabletopcaptrue} +% \end{macrocode} +% +% \begin{macrocode} +\DeclareOption{FIGBOTCAP}{\ExecuteOptions{figbotcap}\subfiguretopcapfalse} +\DeclareOption{FIGTOPCAP}{\ExecuteOptions{figtopcap}\subfiguretopcaptrue} +\DeclareOption{TABBOTCAP}{\ExecuteOptions{tabbotcap}\subtabletopcapfalse} +\DeclareOption{TABTOPCAP}{\ExecuteOptions{tabtopcap}\subtabletopcaptrue} +% \end{macrocode} +% +% \newpage^finalhack +% +% \begin{macro}{\subfigtopskip} +% \begin{macro}{\subfigcapskip} +% \begin{macro}{\subfigcaptopadj} +% \begin{macro}{\subfigbottomskip} +% \begin{macro}{\subfigcapmargin} +% \begin{macro}{\subfiglabelskip} +% +% \noindent +% The last two options control the overall ``look-and-feel'' of the +% subfloat. The \Lopt{loose} option is the default and makes the +% subfloat look like it always has with lots of extra room around the +% subfigure and subcaption. +% +% \begin{macrocode} +\DeclareOption{loose}{% + \subfigtopskip = 10\p@ + \subfigcapskip = 10\p@ + \subfigcaptopadj = 0\p@ + \subfigbottomskip = 10\p@ + \subfigcapmargin = 10\p@ + \subfiglabelskip = 0.33em +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@thesubfigure} +% \begin{macro}{\@thesubtable} +% Next, it replaces the glue at the end of the subcaption label with a +% |\space| like the older version of the \Lpack{subfigure} package. +% +% \begin{macrocode} + \renewcommand*{\@thesubfigure}{\thesubfigure\space} + \renewcommand*{\@thesubtable}{\thesubtable\space} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ifsf@tight} +% +% Finally, set the \Lif{sf@tight} flag to make the |\@subfloat| command +% skip its check for the top of a page or minipage and to always add +% its topmost vertical spacing. (For more details about the +% |\@subfloat| command, see section~\ref{sec:mainmacros}.) +% +% \begin{macrocode} + \sf@tightfalse} +% \end{macrocode} +% \end{macro} +% +% +% \begin{macro}{\subfigtopskip} +% \begin{macro}{\subfigcapskip} +% \begin{macro}{\subfigcaptopadj} +% \begin{macro}{\subfigbottomskip} +% \begin{macro}{\subfigcapmargin} +% \begin{macro}{\subfiglabelskip} +% +% The \Lopt{tight} option is the is the preferred version and has less white +% space around the subfloat. It also will omit the space above the subfloat +% at the top of the page or minipage. +% +% \begin{macrocode} +\DeclareOption{tight}{% + \subfigtopskip = 5\p@ + \subfigcapskip = 0\p@ + \subfigcaptopadj = 3\p@ + \subfigbottomskip = 5\p@ + \subfigcapmargin = \z@ + \subfiglabelskip = 0.33em plus 0.07em minus 0.03em +% \end{macrocode} +% +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@thesubfigure} +% \begin{macro}{\@thesubtable} +% Next, it keeps the glue at the end of the subcaption label to allow +% better subcaption fitting. +% +% \begin{macrocode} + \renewcommand*{\@thesubfigure}{\thesubfigure\hskip\subfiglabelskip} + \renewcommand*{\@thesubtable}{\thesubtable\hskip\subfiglabelskip} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\ifsf@tight} +% +% Finally, set the \Lif{sf@tight} flag to make the |\@subfloat| command +% check for the top of a page or minipage and to skip adding any vertical +% space there. (For more details about the |\@subfloat| command, see +% section~\ref{sec:mainmacros}.) +% +% \begin{macrocode} + \sf@tighttrue} +% \end{macrocode} +% \end{macro} +% +% \subsection{Execution of Options} +% \label{sec:startup} +% +% \changes{v2.1}{11 Oct 1996}{Added a check for a local configuration file.} +% +% \changes{v2.1}{15 Nov 1997}{Added the \Lopt{FIGBOTCAP} and +% \Lopt{TABBOTCAP} options.} +% +% \changes{v2.1.4}{30 Apr 2002}{Changed the subcaption label defaults +% to be hard coded above and no longer in the options list.} +% +% The \Lopt{normal} type of subcaption is preselected, the standard +% subcaption size is set to \Lopt{footnotesize}, and the font for both +% the subcaption label and text is set above to the global defaults for +% family, series, and shape. Also, the subcaptions for the subfigure +% and subtable are placed after the figure box and it is assumed that +% the figure or table caption follows all of the associated subfloats. +% Finally, the \Lopt{loose} form is selected in order to cause minimal +% change to existing papers using the \Lpack{subfigure} package. +% +% The preferred form would be to have the \Lopt{TABTOPCAP} and +% \Lopt{tight} be the defaults, but this would adversely affect the +% existing papers that have used the official releases of this package. +% +% \begin{macrocode} +\ExecuteOptions{normal,footnotesize,FIGBOTCAP,TABBOTCAP,loose} +\InputIfFileExists{subfigure.cfg}{% + \typeout{****************************************^^J% + * Local config file subfigure.cfg used *^^J% + ****************************************}}{} +\ProcessOptions +% \end{macrocode} +% +% \subsection{The Subfigure and Subtable Commands} +% \label{sec:mainmacros} +% +% \changes{v2.1}{23 Jan 2002}{Added setting \cmd{\label} to +% \cmd{\subfloat@label}.} +% +% \changes{v2.1}{11 Oct 1996}{Added command lines. The subfigure +% command was updated to allow a second optional argument. This +% causes changes all the way down to the \cmd{\@subcaption} command.} +% +% \begin{macro}{\subfigure} +% \label{sec:subfigure} +% +% \changes{v2.1.2}{26 Mar 2002}{Added check to see if \cmd{\subfig@oldlabel} +% is defined and if not to save the current definition.} +% +% \changes{v2.1}{22 Jan 1997}{Changed the counter advance to occur +% only if the related boolean is false. This allows \cmd{\caption}'s +% to occur before the subfloats rather than after.} +% +% \changes{v2.1}{07 Mar 1997}{Moved \cmd{\leavevmode} to \cmd{\@subfloat}.} +% +% The |\subfigure| command acts as cover function for the |\@subfloat| +% command. It locally changes the |\label| command to our special version +% that supports the |\subref|'s (see section~\ref{sec:patches}). It +% insures that the proper counter is used and has the correct value. +% Since the caption is usually generated later, we must locally +% anticipate the future value of its counter by adding one to it within +% a local group. Upon leaving |\subfigure|, the old value is restored. +% +% \begin{macrocode} +\newcommand*{\subfigure}{% + \bgroup + \let\subfig@oldlabel=\label + \let\label=\subfloat@label + \@nameuse{if\@captype topcap}\else + \advance\@nameuse{c@\@captype}\@ne + \fi + \refstepcounter{sub\@captype}% + \@ifnextchar [% + {\@subfigure}% + {\@subfigure[\@empty]}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\subtable} +% +% The |\subtable| command is identical to |\subfigure|. The of names +% at the user level is purely cosmetic (and historical). +% +% \begin{macrocode} +\let\subtable=\subfigure +% \end{macrocode} +% \end{macro} +% +% +% \enlargethispage{-24pt}^finalhack +% +% \begin{macro}{\@subfigure} +% \changes{v2.1.4}{07 Jun 2002}{Added curly brackets around the +% argument when passing it on as an optional argument.} +% +% Here we are still setting up for the main |\@subfloat| command. We +% check for a second optional argument. If one is not found, than any +% optional argument from the last |\subfigure| or |\subtable| becomes +% the main caption and we give |\@empty| as the default list-entry +% caption. If we see another optional argument, then we make that one +% the main caption and use any prior optional argument as the list-entry +% caption. See Table~\ref{tab:calling} for how this looks to the user. +% +% \begin{macrocode} +\def\@subfigure[#1]{% + \@ifnextchar [% + {\@subfloat{sub\@captype}[{#1}]}% + {\@subfloat{sub\@captype}[\@empty{#1}][{#1}]}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@subfloat} +% +% \changes{v2.1.4}{24 Apr 2002}{Changed \cmd{\@subfloat} to globally +% reset the figure/table counter if it was incremented so that any +% subfloat body that resets the counters globally will not cause +% errors ({\it e.g.\/}, the \Lpack{tabularx} package} +% +% \changes{v2.1}{23 Jan 2002}{Now using \cmd{\@nameuse} to build names. +% Made the \cmd{\def} a \cmd{\long}\cmd{\def}.} +% +% \changes{v2.1}{22 Apr 1998}{Added some percents to keep out whitespace} +% +% \changes{v2.1}{07 Mar 1997}{Changed the addition of the +% \cmd{\subfigtopskip} to be added only if not at the top of the +% float and only in vertical mode. Moved \cmd{\leavevmode} from +% \cmd{\subfigure} to after the topskip addition.} +% +% \changes{v2.1}{17 Jan 1997}{Added swap of the top and bottom space +% when in TOPCAP mode.} +% +% This is the common code for setting up the subfloat box and drawing +% the subcaption under it. The two skips are used only here to keep +% track of what vertical space is to be placed before and after the +% figure. +% +% The first argument is the type of object being generated: that is, +% a |subfigure| or a |subtable|. The second and third are the +% \texttt{subcaption} and \texttt{subfigure} arguments from the +% calling |\subfigure| or |\subtable| command. +% +% \begin{macrocode} +\newskip\subfig@top +\newskip\subfig@bottom +% \end{macrocode} +% +% If \Lif{ifsf@tight} is true, then the |\@subfloat| command checks to +% see if it is at the top of a page or a minipage and will suppress the +% top vertical space in that case; otherwise, it always adds the space. +% +% \begin{macrocode} +\long\def\@subfloat#1[#2][#3]#4{% + \@tempcnta=1 + \ifsf@tight + \if@minipage + \@tempcnta=\z@ + \else\ifdim \lastskip=\z@ \else + \@tempcnta=2 + \fi\fi + \fi +% \end{macrocode} +% +% Based on the |\iffiguretopcap| or |\iftabletopcap| flags we +% select which vertical space is to be placed above and below the figure +% or table and save it in |\subfig@top| and |\subfig@bottom|. +% +% \begin{macrocode} + \@nameuse{if\@captype topcap}% + \subfig@top=\subfigbottomskip + \subfig@bottom=\subfigtopskip + \else + \subfig@top=\subfigtopskip + \subfig@bottom=\subfigbottomskip + \fi +% \end{macrocode} +% +% The |\leavevmode| is here to inhibit any \LaTeX\ errors that the +% surreounding environment might generate if we stay in vertical mode. +% Then it determines the width of the figure or table by placing it in a +% box and testing the box. +% +% \begin{macrocode} + \leavevmode + \setbox\@tempboxa \hbox{#4}% + \@tempdima=\wd\@tempboxa +% \end{macrocode} +% +% Finally we put the figure together in a vertical box. At the very top +% goes any vertical space, but only if we are not at the top of the page +% or minipage as determined above. +% +% \begin{macrocode} + \vtop\bgroup + \vbox\bgroup + \ifcase\@tempcnta + \@minipagefalse + \or + \vspace{\subfig@top}% + \or + \ifdim \lastskip=\z@ \else + \@tempskipb\subfig@top\relax\@xaddvskip + \fi + \fi +% \end{macrocode} +% +% Next, based on the `topcap' flags, we check if the subcaption or the +% figure goes next. If it is the subcaption, then we add some extra +% |\subfigcaptopadj| space between the subcaption and the figure and +% table in addtion to the regular |\subfigcapskip| space. This finishes +% off the top box and establishes our baseline. +% +% After that we add in either the figure or subcaption (whichever we +% have not typeset yet and follow it with the bottom vertical space. +% (see figure~\ref{fig:layout-C} for a diagram of this layout). +% +% Finally, we globally ({\bf !}) reset the \Lcount{figure} or +% \Lcount{table} counter, if we incremented it at the beginning of the +% |\subfigure| or |\subtable| command so that any functions used inside +% the command body which globally sets the counters ({\it e.g.\/}, the +% \Lpack{tabularx} package) will not cause problems. +% +% \begin{macrocode} + \@nameuse{if#1topcap}% + \ifx \@empty#3\relax \else + \@subcaption{#1}{#2}{#3}% + \vskip\subfigcapskip + \vskip\subfigcaptopadj + \fi\egroup + \box\@tempboxa + \else + \box\@tempboxa\egroup + \ifx \@empty#3\relax \else + \vskip\subfigcapskip + \@subcaption{#1}{#2}{#3}% + \fi + \fi + \vspace{\subfig@bottom}% + \egroup + \@nameuse{if\@captype topcap}\else + \global\advance\@nameuse{c@\@captype}\m@ne + \fi + \egroup} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@subfigcaptionlist} +% +% \begin{macro}{\@subcaption} +% +% \changes{v2.1}{23 Jan 2002}{Now using \cmd{\@nameuse} to build names. +% Also use \@@thesubfigure and \@@thesubtable stored label.} +% +% \begin{macro}{\listsubcaptions} +% +% \changes{v2.1.4}{09 Jul 2002}{Changed \cmd{\@tempa} to \cmd{\sf@temp} +% at the request of Donald Arseneau to remove the potential of problems +% with others using the same variable.} +% \changes{v2.1}{22 Oct 1996}{Added to allow the user to cause a dump +% of the currently queued subcaptions to the ``List-of'' page. This +% is necessary when the \cmd{caption} is placed before the subfloats +% as is often the case for subtables.} +% +% \changes{v2.1}{11 Oct 1996}{Fixed \cmd{\protect} related bug caused by +% a change in \LaTeX3.} +% \begin{macro}{\@listsubcaptions} +% +% \changes{v2.1}{23 Jan 2002}{Added checks for undefined \cmd{\@captype} +% and \cmd{ext@<\@captype>} just in case the \cmd{caption} is called +% outside the \Lenv{float} or the current float type does not support +% subfigures.} +% +% \changes{v2.1}{11 Oct 1996}{Added to print the queued subcaptions. +% This is also used by the \Lpack{captcont} package to correctly print +% the subcaptions.} +% +% \changes{v2.1}{17 Jan 1997}{Changed the source of the label for the +% ``List-of'' pages to use the \cmd{\thesubfigure} or \cmd{\thesubtable} +% value rather than the \cmd{\@currentlabel}. This usually will be +% cleaner since the figure number won't be repeated.} +% +% \changes{v2.1}{05 Jan 1998}{Changed \cmd{\edef} to \cmd{\def} and added +% back the \cmd{\protect} due to changes in the use of the +% \cmd{\@subcaption}.} +% +% The following series of commands control exactly how the subcaption is +% typeset. The |\@subcaption| command adds the subcaption to the current +% list of subcaptions to be added to the ``List-of'' page as soon as +% the major caption is declared (see |\@caption| below). +% ({\scshape Note}: only one list is kept because that seems right; +% if there is a mix of tables and figures, they will be grouped +% under the next |\caption|\@.) Next |\@subcaption| calls the +% appropriate float-type specific command to decide how to size and shape +% the subcaption text. +% +% \begin{macrocode} +\newcommand*{\@subfigcaptionlist}{} +% \end{macrocode} +% \begin{macrocode} +\newcommand{\@subcaption}[3]{% + \ifx \relax#2\relax \else + \bgroup + \let\label=\@gobble + \let\protect=\string + \def\@subcaplabel{\@nameuse{@@the#1}}% + \xdef\@subfigcaptionlist{% + \@subfigcaptionlist,% + {\protect\numberline{\@subcaplabel}\noexpand{\ignorespaces #2}}}% + \egroup + \fi + \@nameuse{@make#1caption}{\@nameuse{@the#1}}{#3}} +% \end{macrocode} +% +% \begin{macrocode} +\newcommand*{\listsubcaptions}{% + \@ifstar + {\gdef\@subfigcaptionlist{}}% + {\@listsubcaptions{\@captype}}} +% \end{macrocode} +% +% \begin{macrocode} +\newcommand*{\@listsubcaptions}[1]{% + \@ifundefined{@captype}{}{% + \@ifundefined{ext@sub#1}{}{% + \@for \sf@temp:=\@subfigcaptionlist \do {% + \ifx \@empty\sf@temp\relax \else + \addcontentsline + {\@nameuse{ext@sub#1}}% + {sub#1}% + {\sf@temp}% + \fi}}}% + \gdef\@subfigcaptionlist{}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\@makesubfigurecaption} +% \begin{macro}{\@makesubtablecaption} +% +% \changes{v2.1}{17 Jan 1997}{Added the new font control.} +% +% By default, the |\@subfigurecaption| and |\@subtablecaption| +% commands are identical. Unlike the standard |\@makecaption| command, +% we assume that the first argument (the label number produced by +% the |\@thesubfigure| or the |\@thesubtable|) contains any trailing +% separator characters or spacing (which makes it easier to customize). +% +% \newpage^finalhack +% +% The |\@makesubfigurecaption| command first checks the size of the +% caption typeset as a single line. It knocks off twice the +% |\subfigcapmargin| (at it's regular size) to determine the with of the +% caption and label. +% +% \begin{macrocode} +\newcommand{\@makesubfigurecaption}[2]{% + \setbox\@tempboxa\hbox{% + \subcapsize + {\subcaplabelfont #1}% + {\subcapfont\ignorespaces #2}}% + \@tempdimb=-\subfigcapmargin + \multiply\@tempdimb\tw@ + \advance\@tempdimb\@tempdima +% \end{macrocode} +% +% Next it creates a horizontal box of that width and if the label plus +% the text was too wide or if the \Lif{subcapnooneline} flag is true, +% then it sends off the label and subcaption to |\subfig@caption| to +% typset as a paragraph. NOTE: |\subfig@caption| assumes that +% |\@tempbdimb| has the calculated width for the paragraph. +% +% If the label plus the text will fit and the \Lif{subcapnooneline} flag +% is false, then we just return them (from box |\@tempboxa|). +% +% \begin{macrocode} + \hbox to\@tempdima{% + \hss + \ifdim \wd\@tempboxa >\@tempdimb + \subfig@caption{#1}{#2}% + \else\ifsubcapnooneline + \subfig@caption{#1}{#2}% + \else + \box\@tempboxa + \fi\fi + \hss}} +% \end{macrocode} +% +% \begin{macrocode} +\let\@makesubtablecaption=\@makesubfigurecaption +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\subfig@caption} +% +% \changes{v2.1}{23 Jan 2002}{Added \cmd{\subcapfont} and +% \cmd{\ignorespaces} before the caption text. So that it does not +% interfere with the label font settings. This fixes a bug found by +% Axel Sommerfeldt.} +% +% \begin{macro}{\subfig@captionpar} +% +% \changes{v2.1}{23 Jan 2002}{Simplified by removing the font settings. +% It is up to the caller to enforce these! This fixes a bug found by +% Axel Sommerfeldt.} +% +% \changes{v2.1}{17 Jan 1997}{Added the new font control.} +% +% These commands are called to typeset a multiple-line subcaption (or a +% single line when \Lif{subcapnooneline} is true). Depending on the +% \Lif{subcapcenter} and \Lif{subcapcenterlast} flags, the text will be +% justified (both false), centered (\Lif{subcapcenter} true), or +% justified with the last line centered (only the flag +% \Lif{subcapcenterlast} set true). +% +% \begin{macrocode} +\newcommand{\subfig@caption}[2]{% + \ifsubcaphang + \sbox{\@tempboxa}{\subcapsize\subcaplabelfont #1}% + \addtolength{\@tempdimb}{-\wd\@tempboxa}% + \usebox{\@tempboxa}% + \subfig@captionpar{\@tempdimb}{% + {\subcapfont\ignorespaces #2}}% + \else + \subfig@captionpar{\@tempdimb}{% + {\subcaplabelfont #1}% + {\subcapfont\ignorespaces #2}}% + \fi} +% \end{macrocode} +% +% \begin{macrocode} +\newcommand{\subfig@captionpar}[2]{% + \parbox[t]{#1}{% + \subcapsize + \ifsubcapraggedright + \setlength{\leftskip}{\z@}% + \setlength{\@rightskip}{\@flushglue}% + \setlength{\rightskip}{\@rightskip}% + \setlength{\parindent}{\z@}% + \else\ifsubcapRaggedRight + \setlength{\leftskip}{\z@}% + \setlength{\@rightskip}{\z@ plus \tw@ em}% + \setlength{\rightskip}{\@rightskip}% + \setlength{\parfillskip}{\z@ plus \@ne fil}% + \setlength{\parindent}{\z@}% + \else\ifsubcapcenter + \setlength{\leftskip}{\@flushglue}% + \setlength{\rightskip}{\@flushglue}% + \setlength{\parfillskip}{\z@skip}% + \else\ifsubcapcenterlast + \addtolength{\leftskip}{\z@ plus 1fil}% + \addtolength{\rightskip}{\z@ plus -1fil}% + \setlength{\parfillskip}{\z@ plus 2fil}% + \fi\fi\fi\fi + #2}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \subsection{Patches to the Standard Environment} +% \label{sec:patches} +% +% The following adjust the standard environment for the +% \Lpack{subfigure} package. They are designed as wrappers to the +% current definition of the standard commands to minimize any chance of +% conflict with other packages or to extend \LaTeX. +% +% \begin{macro}{\@dottedxxxline} +% \label{sec:dl} +% This is a generalized wrapper for the |\@dottedtocline| command. +% It checks for the level based on the output file (first argument) +% and not using only |\@tocdepth|. (See section~\ref{sec:listof} +% for a description of the arguments.) +% +% \begin{macrocode} +\newcommand*{\@dottedxxxline}[6]{% + \ifnum #2>\@nameuse{c@#1depth}\else + \@dottedtocline{0}{#3}{#4}{#5}{#6} + \fi} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\subfig@end@float} +% \begin{macro}{\subfig@end@dblfloat} +% \begin{macro}{\end@float} +% \begin{macro}{\end@dblfloat} +% +% \changes{v2.1}{05 Jan 1998}{Added this section to minimize the need +% for \cmd{\listofcaptions}.} +% +% These commands patch the end of the \Lenv{float} environment so that it will +% dump out the subcaptions if any remain at this point. This can occur +% when using the \Lopt{TOPCAP} options. +% \begin{macrocode} +\let\subfig@end@float=\end@float +% \end{macrocode} +% +% \begin{macrocode} +\renewcommand*{\end@float}{% + \@listsubcaptions{\@captype}% + \subfig@end@float} +% \end{macrocode} +% +% \begin{macrocode} +\let\subfig@end@dblfloat=\end@dblfloat +% \end{macrocode} +% +% \begin{macrocode} +\renewcommand*{\end@dblfloat}{% + \@listsubcaptions{\@captype}% + \subfig@end@dblfloat} +% \end{macrocode} +% \end{macro} +% \end{macro} +% \end{macro} +% \end{macro} +% +% \newpage^finalhack +% +% \begin{macro}{\subfig@oldcaption} +% \begin{macro}{\@caption} +% +% \changes{v2.1}{23 Jan 2002}{Now using \cmd{\@nameuse} to build names. +% Added a check for topcap flag. If it is not defined, we assume that +% this float type does not support subfigures.} +% +% \changes{v2.1}{05 Jan 1998}{Changed to print the subcaptions before +% or after the caption, depending on the TOPCAP setting of the current +% environment.} +% +% Next, we redefine the current |\@caption| command to dump any +% subcaptions saved. First the `old' caption command is called to +% add the line to the ``List-of'' file and then the list of +% subcaptions, |\@subfigcaptionlist| is written to the same file. +% Lastly, the |\@subfigcaptionlist| is reinitialized. +% +% \begin{macrocode} +\let\subfig@oldcaption=\@caption +% \end{macrocode} +% +% \begin{macrocode} +\long\def\@caption#1[#2]#3{% + \@ifundefined{if#1topcap}% + {\subfig@oldcaption{#1}[{#2}]{#3}}% + {\@nameuse{if#1topcap}% + \@listsubcaptions{#1}% + \subfig@oldcaption{#1}[{#2}]{#3}% + \else + \subfig@oldcaption{#1}[{#2}]{#3}% + \@listsubcaptions{#1}% + \fi}} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\subfig@oldlabel} +% +% To support the redefinition of the |\label| command within the body of +% the subfloats, we will use |\subfig@oldlabel| to save the current +% definition of |\label| and create the |\subfloat@label| command to take its +% place during the processing of the |\subfigure| command. Since the +% definition of |\label| may change as packages are loaded, we save the +% definition each time that |\label| is replaced with |\sub@label| +% (see \ref{sec:subfigure} above). +% +% \begin{macrocode} +\let\subfig@oldlabel=\relax +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\subfloat@label} +% \begin{macro}{\sub@label} +% +% \changes{v2.1.4}{02 Jul 2002}{Added reference to this command via +% the name \cmd{subfloat@label} to avoid packages that replace the +% name without the support of the optional argument. The old name +% is still here to decoy the other packages. Added chapter number +% in the automatically generated label to increase uniqueness.} +% +% One difference from the regular |\label| command is that there is an +% optional argument (note with parentheses rather than square brackets) +% that is only used with the \Lpack{hyperref} package to define the +% {\em bookmark\/} argument to the label. Typically, this would be a +% copy or paraphrase of the subcaption text. If this is not given and +% the \Lpack{hyperref} package is being used, then the {\em bookmark\/} +% argument is of the form ``Subfigure\textvisiblespace 1(a)''. +% +% \begin{macrocode} +\newcommand*{\subfloat@label}{% + \@ifnextchar( + {\sf@sub@label} + {\sf@sub@label(Sub\@captype\space + \@ifundefined{thechapter}{}{% + \@nameuse{thechapter}\space}% + \@nameuse{p@sub\@captype}% + \@nameuse{thesub\@captype}.)}} +% \end{macrocode} +% \begin{macrocode} +\let\sub@label\subfloat@label +% \end{macrocode} +% +% \end{macro} +% \end{macro} +% +% \newpage^finalhack +% +% \begin{macro}{\sf@sub@label} +% +% \changes{v2.1.4}{02 Jul 2002}{Moved \cmd{\relax} from the +% \cmd{\sf@@sub@label} to here.} +% +% \changes{v2.1.1}{15 Mar 2002}{Added coordination with the hyperref +% package.} +% +% The |\sf@sub@label| parses the optional argument and (if the +% \Lpack{hyperref} Package is loaded) saves the {\em bookmark\/} text +% as |\@currentlabelname|. It then calls the |\sf@@sub@label| command +% to the real processing of the label. +% +% \begin{macrocode} +\def\sf@sub@label(#1)#2{% + \ifhyperrefloaded + \protected@edef\@currentlabelname{% + \expandafter\strip@period #1\relax.\relax\@@@}% + \fi + \sf@@sub@label{#2}} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\sf@@sub@label} +% +% \changes{v2.1.4}{02 Jul 2002}{Moved \cmd{\relax} from here to the +% \cmd{\sf@sub@label}.} +% +% \changes{v2.1.2}{26 Mar 2002}{Changed to simplify the operation and +% to avoid a bug in the hyperref package.} +% +% \changes{v2.1.1}{15 Mar 2002}{Added coordination with the hyperref +% package.} +% +% In order to support the \Lpack{hyperref} package we check if it was +% loaded and use the proper form of the |\newlabel| command. |\sf@@sub@label| +% operates by first calling the old |\label| definition (which adds a +% |\newlabel| command to the \Lfile{*.aux} file) and then adds another +% |\newlabel| command to the \Lfile{*.aux} file with a similar reference +% name (with `sub@' prepended) and the value of |\@@thesubfigure| or +% |\@@thesubtable|. +% +% If the |\ifhyperrefloaded| flag is set, then the |\newlabel| command +% has three extra fields, the first is the value of |\@currentlabelname|, +% which is either of the form ``Subfigure\textvisiblespace1(a)'' or +% was defined by the optional argument to |\label| (actually +% |\sub@label|). The second extra field is the hypertext anchor name +% and the third is unused. Otherwise, the we us the standard |\newlabel| +% form to write the sub-reference. +% +% \begin{macrocode} +\newcommand*{\sf@@sub@label}[1]{% + \@bsphack + \subfig@oldlabel{#1}% + \ifhyperrefloaded + \protected@write\@auxout{}{% + \string\newlabel{sub@#1}% + {{\@nameuse{@@thesub\@captype}}% + {\thepage}% + {\expandafter\strip@period\@currentlabelname\relax.\relax\@@@}% + {\@currentHref}% + {}}}% + \else + \protected@write\@auxout{}{% + \string\newlabel{sub@#1}% + {{\@nameuse{@@thesub\@captype}}% + {\thepage}}}% + \fi + \@esphack} +% \end{macrocode} +% +% \end{macro} +% +% \enlargethispage{24pt}^finalhack +% \vspace{-10pt}^finalhack +% +% \begin{macro}{\subref} +% +% The |\subref| command is the same as the |\ref| command except that +% |\@@thesubtable| instead of |\p@subfigure\thesubfigure| or +% |\p@subtable\thesubtable|. This is often of use for local references +% within the figure where the figure number may be assumed; or, for ease +% in constructing a range of references within a figure with many +% subfigures. +% +% \begin{macrocode} +\newcommand\subref[1]{% + \ref{sub@#1}} +% \end{macrocode} +% +% \end{macro} +% +% \begin{macro}{\Subref} +% +% \changes{v2.1.2}{26 Mar 2002}{Changed \cmd{\subref*} to \cmd{\Subref} to +% avoid problems in writing to the \Lfile{aux} file.} +% +% \changes{v2.1}{23 Jan 2002}{Added \cmd{\subref*} at the request of Benoit +% Hudson (bhudson\@cs.cmu.edu).} +% +% The |\Subref| command is the same as |\subref|, except that it adds +% |\subcaplabelfont| before the reference so that it uses the same font +% (except that the current font size is maintained). +% +% \begin{macrocode} +\newcommand\Subref[1]{% + {\subcaplabelfont + \ref{sub@#1}}} +% \end{macrocode} +% \end{macro} +% +% \iffalse +%</package> +% \fi +% +% \Finale +% +\endinput diff --git a/Master/texmf-dist/source/latex/bgteubner/hhsubfigure.ins b/Master/texmf-dist/source/latex/bgteubner/hhsubfigure.ins new file mode 100644 index 00000000000..7fc286f190f --- /dev/null +++ b/Master/texmf-dist/source/latex/bgteubner/hhsubfigure.ins @@ -0,0 +1,77 @@ +%% +%% This is file `hhsubfigure.ins', the installation file for the +%% `hhsubfigure' package. +%% +%% Copyright (C) 2003 Harald Harders. +%% +%% This is a slightly modified version of the `subfigure' package by +%% Steven Douglas Cochran. The origianl package can be downloaded from +%% <ftp://ftp.dante.de/tex-archive/macros/latex/contrib/subfigure/>. +%% +%% The hhsubfigure package is free software; it may be distributed under +%% the conditions of the LaTeX Project Public License, either version 1.2 +%% of this license or (at your option) any later version. The latest +%% version of this license is in: +%% http://www.latex-project.org/lppl.txt +%% and version 1.2 or later is part of all distributions of LaTeX version +%% 1999/09/03 or later. +%% +%% The hhsubfigure package is distributed in the hope that it will be +%% useful, but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LaTeX +%% Project Public License for more details. +%% +%% Please use the hhsubfigure package only in conjunction with the +%% document class bgteubner.cls. Steven has announced a successor for +%% this package that will make hhsubfigure unnecessary. +%% +\def\batchfile{hhsubfigure.ins} +\input docstrip.tex + +\keepsilent +\generateFile{ltxdoc.cfg}{t}{\from{hhsubfigure.dtx}{ltxdoc}} + +\preamble + +Copyright (C) 2003 Harald Harders. + +This is a slightly modified version of the `subfigure' package by +Steven Douglas Cochran. The origianl package can be downloaded from +<ftp://ftp.dante.de/tex-archive/macros/latex/contrib/subfigure/>. + +This file is NOT the source for hhsubfigure, because almost all comments +have been stripped from it. It is NOT the preferred form of hhsubfigure +for making modifications to it. + +Therefore you can NOT redistribute and/or modify THIS file. You can +however redistribute the complete source (hhsubfigure.dtx and +hhsubfigure.ins) and/or modify it under the terms of the LaTeX Project +Public License, either version 1.2 of this license or (at your option) +any later version. The latest version of this license is in: + http://www.latex-project.org/lppl.txt +and version 1.2 or later is part of all distributions of LaTeX version +1999/09/03 or later. + +The hhsubfigure package is distributed in the hope that it will be +useful, but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LaTeX +Project Public License for more details. + +Please use the hhsubfigure package only in conjunction with the +document class bgteubner.cls. Steven has announced a successor for +this package that will make hhsubfigure unnecessary. + +\endpreamble +\generateFile{hhsubfigure.sty}{t}{\from{hhsubfigure.dtx}{package}} + +\Msg{***********************************************************} +\Msg{* To finish the installation you have to move the file} +\Msg{* `hhsubfigure.sty' into a directory searched by TeX.} +\Msg{*} +\Msg{* To have the newer look-and-feel (but with different} +\Msg{* spacing than the old version) move the file} +\Msg{* `hhsubfigure.cfg' into a directory searched by TeX.} +\Msg{*} +\Msg{* To produce the documentation run the file `hhsubfigure.dtx'} +\Msg{* through LaTeX.} +\Msg{***********************************************************} diff --git a/Master/texmf-dist/tex/latex/bgteubner/bgteubner.cls b/Master/texmf-dist/tex/latex/bgteubner/bgteubner.cls new file mode 100644 index 00000000000..db5368b4c83 --- /dev/null +++ b/Master/texmf-dist/tex/latex/bgteubner/bgteubner.cls @@ -0,0 +1,2325 @@ +%% +%% This is file `bgteubner.cls', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bgteucls.dtx (with options: `class') +%% +%% bgteubner class bundle +%% +%% Copyright 2003--2012 Harald Harders +%% +%% This program may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3 +%% of this license or (at your opinion) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of LaTeX +%% version 1999/12/01 or later. +%% +%% Additional conditions to the license: +%% +%% If you modify a renamed copy of the files `bgteubner.cls' or +%% `bgteucls.dtx', you have to preserve some information in the +%% PDF /Creator entry. The following data have to remain: +%% - The name `bgteubner.cls', +%% - a hint that this class has been developed for the `Teubner +%% Verlag, Wiesbaden, Germany'. +%% +%% This program consists of all files listed in manifest.txt. +%% +%% harald.harders@gmx.de +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{bgteubner} + [2012/04/07 v2.02 Springer Vieweg Verlag] +\typeout{^^J^^JDokumentklasse zum Erstellen von Buechern fuer den + Springer Vieweg Verlag, Wiesbaden}% +\typeout{(vormals Vieweg+Teubner Verlag, B. G. Teubner Verlag).}% +\typeout{Erstellt im Auftrag des B. G. Teubner Verlags von}% +\typeout{Harald Harders (harald.harders@gmx.de).^^J}% +\typeout{Beachten Sie die Dokumentation in den unterschiedlichen + Versionen:}% +\typeout{\space\space bgteubner-17x24-times.pdf\space\space Times, + 17cm x 24cm,}% +\typeout{\space\space + bgteubner-17x24-cm.pdf\space\space\space\space\space European + Computer Modern, 17cm x 24cm,}% +\typeout{\space\space + bgteubner-a5-times.pdf\space\space\space\space\space Times, DIN-A 5,}% +\typeout{\space\space + bgteubner-a5-cm.pdf\space\space\space\space\space \space\space\space + European Computer Modern, DIN-A 5.}% +\typeout{^^JDocument class to produce books for the Springer Vieweg + Verlag, Wiesbaden, Germany}% +\typeout{(formerly Vieweg+Teubner Verlag, B. G. Teubner Verlag).}% +\typeout{Made by Harald Harders (harald.harders@gmx.de).}% +\typeout{Documentation is available in German only.^^J^^J}% +\newcommand\hhcls@onefilewithoptions{} +\let\hhcls@onefilewithoptions\@onefilewithoptions +\AtEndOfClass{\let\@onefilewithoptions\hhcls@onefilewithoptions} +\def\@onefilewithoptions#1[#2][#3]#4{% + \@pushfilename + \xdef\@currname{#1}% + \global\let\@currext#4% + \expandafter\let\csname\@currname.\@currext-h@@k\endcsname\@empty + \let\CurrentOption\@empty + \@reset@ptions + \makeatletter + \def\reserved@a{% + \@ifl@aded\@currext{#1}% + {\@if@ptions\@currext{#1}{#2}{}% + {\@latex@error + {Option clash for \@cls@pkg\space #1}% + {The package #1 has already been loaded + with options:\MessageBreak + \space\space[\@ptionlist{#1.\@currext}]\MessageBreak + There has now been an attempt to load it + with options\MessageBreak + \space\space[#2]\MessageBreak + Adding the global options:\MessageBreak + \space\space + \@ptionlist{#1.\@currext},#2\MessageBreak + to your \noexpand\documentclass declaration may fix this.% + \MessageBreak + Try typing \space <return> \space to proceed.}}}% + {\@pass@ptions\@currext{#2}{#1}% + \global\expandafter + \let\csname ver@\@currname.\@currext\endcsname\@empty + \InputIfFileExists + {\@currname.\@currext}% + {}% + {\@missingfileerror\@currname\@currext}% + \let\@unprocessedoptions\@@unprocessedoptions + \csname\@currname.\@currext-h@@k\endcsname + \expandafter\let\csname\@currname.\@currext-h@@k\endcsname + \@undefined + \@unprocessedoptions} + \@ifl@ter\@currext{#1}{#3}{}% + {\@latex@error + {You have requested,\on@line, + version\MessageBreak + `#3' of \@cls@pkg\space #1,\MessageBreak + but only version\MessageBreak + `\csname ver@#1.\@currext\endcsname'\MessageBreak + is available}{% + The bgteubner class is more restrictive with old packages than^^J% + standard LaTeX. Please update the specified package. New^^J% + packages may be downloaded from CTAN, e.g., ftp://ftp.dante.de.}}% + \ifx\@currext\@clsextension\let\LoadClass\@twoloadclasserror\fi + \@popfilename + \@reset@ptions}% + \reserved@a} +\PassOptionsToClass{smallheadings}{scrbook} +\PassOptionsToClass{bibtotoc,idxtotoc,liststotoc}{scrbook} +\PassOptionsToClass{fleqn}{scrbook} +\PassOptionsToPackage{fleqn}{amsmath} +\PassOptionsToPackage{intlimits}{amsmath} +\PassOptionsToClass{pointlessnumbers}{scrbook} +\PassOptionsToClass{cleardoubleempty}{scrbook} +\PassOptionsToClass{headnosepline}{scrbook} +\PassOptionsToClass{noappendixprefix}{scrbook} +\PassOptionsToClass{tablecaptionabove}{scrbook} +\PassOptionsToPackage{pagesize,headinclude}{typearea} +\newif\ifhhcls@dinafuenf +\DeclareOption{a5paper}{\hhcls@dinafuenftrue} +\DeclareOption{a5}{\hhcls@dinafuenftrue} +\DeclareOption{17x24paper}{\hhcls@dinafuenffalse} +\DeclareOption{17x24}{\hhcls@dinafuenffalse} +\newif\ifhhcls@times +\newif\ifhhcls@mathtime +\DeclareOption{times}{\hhcls@timestrue} +\DeclareOption{mathtime}{\hhcls@timestrue\hhcls@mathtimetrue} +\DeclareOption{cm}{\hhcls@timesfalse} +\newif\ifhhcls@headingoutside +\DeclareOption{headingoutside}{\hhcls@headingoutsidetrue} +\DeclareOption{headinginside}{\hhcls@headingoutsidefalse} +\newif\ifhhcls@tocindent +\DeclareOption{tocindent}{\hhcls@tocindenttrue} +\DeclareOption{tocleft}{\hhcls@tocindentfalse} +\DeclareOption{arrowvec}{\PassOptionsToPackage{arrow}{hhtensor}} +\DeclareOption{boldvec}{\PassOptionsToPackage{bold}{hhtensor}} +\DeclareOption{ulinevec}{\PassOptionsToPackage{uline}{hhtensor}} +\newif\ifhhcls@greybox +\DeclareOption{greybox}{\hhcls@greyboxtrue} +\DeclareOption{graybox}{\hhcls@greyboxtrue} +\newif\ifhhcls@theoremsmall +\DeclareOption{smalltheorem}{\hhcls@theoremsmalltrue} +\DeclareOption{normaltheorem}{\hhcls@theoremsmallfalse} +\newif\ifhhcls@entwurf +\newif\ifhhcls@titlepage +\DeclareOption{draft}{\hhcls@entwurftrue\hhcls@titlepagetrue} +\DeclareOption{titlepage}{\hhcls@titlepagetrue} +\DeclareOption{epsfigures}{% + \ifpdf + \ClassWarning{bgteubner}{Class option `epsfigures' ignored + for pdf output}% + \else + \ClassWarning{bgteubner}{Class option `epsfigures' ignored for dvi + output. eps figures are now included without this option}% + \fi +} +\newif\if@exercisetotoc +\DeclareOption{exercisetotoc}{\@exercisetotoctrue} +\newif\if@answertotoc +\DeclareOption{answertotoc}{\@exercisetotoctrue\@answertotoctrue} +\newcommand\hhcls@publisher{} +\DeclareOption{springervieweg}{\def\hhcls@publisher{% + Springer Vieweg Verlag\quad Wiesbaden% +}} +\DeclareOption{viewegteubner}{\def\hhcls@publisher{% + Vieweg+Teubner\quad Stuttgart $\cdot$ Leipzig $\cdot$ Wiesbaden% +}} +\DeclareOption{bgteubner}{\def\hhcls@publisher{% + B.~G.\ Teubner\quad Stuttgart $\cdot$ Leipzig $\cdot$ Wiesbaden% +}} +\ExecuteOptions{times,headingoutside,17x24,tocindent,% + normaltheorem,springervieweg} +\ProcessOptions\relax +\PassOptionsToClass{10pt}{scrbook} +\LoadClass{scrbook}[2003/04/22] +\let\scr@fnt@wrn@pagehead=\@undefined +\let\scr@fnt@wrn@pagefoot=\@undefined +\RequirePackage{fixltx2e}[2000/09/24] +\RequirePackage{wasysym}[2003/05/31] +\let\iint=\@undefined +\let\iiint=\@undefined +\let\iiiint=\@undefined +\RequirePackage{amsmath}[2000/07/18] +\RequirePackage{amsfonts}[2001/10/25] +\RequirePackage{amssymb}[2002/01/22] +\RequirePackage{booktabs}[2003/03/28] +\RequirePackage{array}[1998/05/13] +\RequirePackage{longtable}[2000/10/22] +\RequirePackage[T1]{fontenc}[2001/06/05] +\ifhhcls@times + \ifhhcls@mathtime + \RequirePackage[slantedgreek,mtbold]{mathtime}[1999/03/29] + \else + \RequirePackage[slantedGreek]{mathptmx}[2003/03/02] + \fi + \RequirePackage[scaled=0.92]{helvet}[2003/03/02] + \RequirePackage{courier}[2003/03/02] + \renewcommand\bfdefault{b} + \newcommand\newstylenums{} + \thinmuskip=3mu +\else + \RequirePackage[origtt]{hfoldsty}[2003/10/12] +\fi +\renewcommand*\oldstylenums{% + \ClassWarning{bgteubner}{\string\oldstylenums\space is ignored}% +} +\RequirePackage{textcomp}[2001/06/05] +\RequirePackage[rmdefault]{mathcomp}[2001/01/07] +\ifhhcls@times + \RequirePackage{ptmxcomp}[2004/03/07] + \ifhhcls@mathtime + \else + \renewcommand*\boldmath{% + \ClassError{bgteubner}{With the base font Times, bold math is + undefined\MessageBreak + (when not using MathTime math extensions)}{% + Avoid using bold math or buy the MathTime and MathTimePlus + fonts by Y\&Y.}% + } + \fi +\fi +\RequirePackage[hang,RaggedRight]{hhsubfigure}[2003/09/14] +\RequirePackage{ragged2e}[2003/01/26] +\ifhhcls@times +\else + \RequirePackage{exscale}[1997/06/16] +\fi +\RequirePackage{graphicx}[1999/02/16] +\RequirePackage{color}[1999/02/16] +\RequirePackage{framed}[2003/07/19] +\RequirePackage{hhtensor}[2003/10/09] +\RequirePackage{makeidx}[2000/03/29] +\RequirePackage{mdwlist}[1996/05/02] +\RequirePackage{paralist}[2002/03/18] +\RequirePackage{ifthen}[2001/05/26] +\RequirePackage{ifpdf}[2001/06/14] +\ifhhcls@times + \ifhhcls@mathtime + \DeclareMathSymbol\Gamma {\mathalpha}{letters}{0} + \DeclareMathSymbol\Delta {\mathalpha}{letters}{1} + \DeclareMathSymbol\Theta {\mathalpha}{letters}{2} + \DeclareMathSymbol\Lambda {\mathalpha}{letters}{3} + \DeclareMathSymbol\Xi {\mathalpha}{letters}{4} + \DeclareMathSymbol\Pi {\mathalpha}{letters}{5} + \DeclareMathSymbol\Sigma {\mathalpha}{letters}{6} + \DeclareMathSymbol\Upsilon {\mathalpha}{letters}{7} + \DeclareMathSymbol\Phi {\mathalpha}{letters}{8} + \DeclareMathSymbol\Psi {\mathalpha}{letters}{9} + \DeclareMathSymbol\Omega {\mathalpha}{letters}{10} + \DeclareMathSymbol\upGamma {\mathord}{letters}{48} + \DeclareMathSymbol\upDelta {\mathord}{letters}{49} + \DeclareMathSymbol\upTheta {\mathord}{letters}{50} + \DeclareMathSymbol\upLambda {\mathord}{letters}{51} + \DeclareMathSymbol\upXi {\mathord}{letters}{52} + \DeclareMathSymbol\upPi {\mathord}{letters}{53} + \DeclareMathSymbol\upSigma {\mathord}{letters}{54} + \DeclareMathSymbol\upUpsilon{\mathord}{letters}{55} + \DeclareMathSymbol\upPhi {\mathord}{letters}{56} + \DeclareMathSymbol\upPsi {\mathord}{letters}{57} + \DeclareMathSymbol\upOmega {\mathord}{letters}{127} + \fi +\else + \RequirePackage{fixmath}[2000/04/11] +\fi +\RequirePackage{babel}[2001/03/01] +\RequirePackage{setspace}[2000/12/01] +\RequirePackage{relsize}[1999/11/01] +\ifhhcls@times + \DeclareRobustCommand\noscshape{% + \not@math@alphabet\noscshape\relax + \ifthenelse{\equal{\f@shape}{\scdefault}}{% + \fontshape\updefault + }{% + }% + \selectfont + } +\else + \RequirePackage{slantsc}[2003/09/17] +\fi +\RequirePackage{ginpenc}[2003/09/29] +\RequirePackage{warning}[2001/08/17] +\RequirePackage[all]{onlyamsmath}[2001/10/04] +\RequirePackage[sepfour,autolanguage]{numprint}[2003/11/09] +\RequirePackage{scrpage2}[2002/11/01] +\RequirePackage[fixlanguage]{babelbib}[2003/07/28] +\RequirePackage{fnbreak}[2003/04/03] +\RequirePackage[countmax]{subfloat}[2002/12/16] +\RequirePackage{multicol}[2000/07/10] +\RequirePackage[activate]{pdfcprot}[2002/02/27] +\ifpdftex{}{% + \ClassError{bgteubner}{Ordinary latex used to compile this + document.\MessageBreak + Please use pdflatex. If you need dvi output\MessageBreak + use pdflatex and include `\string\pdfoutput=0' as first + line\MessageBreak + of your document}{The execution of latex is stopped immediately.}% + \stop +} +\ifpdf +\else + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{% + Output format is DVI, not PDF.\MessageBreak + If possible, use PDF output}% + }% +\fi +\newcommand\iftimes[2]{\ifhhcls@times #1\else #2\fi} +\newcommand\ifmathtime[2]{% + \ifhhcls@times + \ifhhcls@mathtime + #1% + \else% + #2% + \fi + \else + #2% + \fi +} +\BeforePackage{float}{% + \newcommand*\hhcls@float@addtolists{}% + \let\hhcls@float@addtolists=\float@addtolists + \let\float@addtolists=\undefined} +\AfterPackage{float}{% + \let\hhclsflt@float@addtolists=\float@addtolists + \renewcommand\float@addtolists[1]{% + \hhclsflt@float@addtolists{#1}% + \hhcls@float@addtolists{#1}% + }% + \renewcommand*\listof[2]{% + \begingroup% + \@ifundefined{ext@#1}{% + \float@error{#1}% + }{% + \@namedef{l@#1}{\@dottedtocline{1}{0em}{2.9em}}% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \float@listhead{#2}% + \small + \setlength{\parskip}{\z@}% + \@starttoc{\@nameuse{ext@#1}}% + \if@restonecol\twocolumn\fi + }% + \endgroup + }% + \floatstyle{komabelow} +} +\ifhhcls@dinafuenf + \setlength{\paperwidth}{148mm} + \setlength{\paperheight}{210mm} + \areaset[7mm]{115mm}{174mm} +\else + \setlength{\paperwidth}{170mm} + \setlength{\paperheight}{240mm} + \areaset[7mm]{135mm}{200mm} +\fi +\newcommand\ifafive[2]{\ifhhcls@dinafuenf #1\else #2\fi} +\begingroup +\newdimen\gammel +\gammel=\textheight +\advance\gammel by -0.6\baselineskip +\textheight0mm +\@whiledim\textheight<\gammel + \do{\global\advance\textheight by \baselineskip} +\endgroup +\ClassInfo{bgteubner}{% + These are the values describing the layout:\MessageBreak + BCOR\space=\space\the\ta@bcor\MessageBreak + \string\paperwidth\space\space\space\space\space\space=% + \space\the\paperwidth\MessageBreak + \space\string\textwidth\space\space\space\space\space\space=% + \space\the\textwidth\MessageBreak + \space\string\evensidemargin\space=% + \space\the\evensidemargin\MessageBreak + \space\string\oddsidemargin\space\space=% + \space\the\oddsidemargin\MessageBreak + \string\paperheight\space\space\space\space\space=% + \space\the\paperheight\MessageBreak + \space\string\textheight\space\space\space\space\space=% + \space\the\textheight\MessageBreak + \space\string\topmargin\space\space\space\space\space\space=% + \space\the\topmargin\MessageBreak + \space\string\headheight\space\space\space\space\space=% + \space\the\headheight\MessageBreak + \space\string\headsep\space\space\space\space\space\space\space\space=% + \space\the\headsep\MessageBreak + \space\string\topskip\space\space\space\space\space\space\space\space=% + \space\the\topskip\MessageBreak + \space\string\footskip\space\space\space\space\space\space\space=% + \space\the\footskip\MessageBreak + \space\string\baselineskip\space\space\space=% + \space\the\baselineskip\MessageBreak + } +\clubpenalty=100 +\widowpenalty=400 +\displaywidowpenalty=50 +\brokenpenalty=400 +\relpenalty=700 +\binoppenalty=2000 +\setlength{\parindent}{\baselineskip} +\addto\extrasamerican{\frenchspacing}% +\addto\noextrasamerican{\nonfrenchspacing}% +\addto\extrasbritish{\frenchspacing}% +\addto\noextrasbritish{\nonfrenchspacing}% +\addto\extrasbritish{\frenchspacing}% +\addto\noextrasbritish{\nonfrenchspacing}% +\addto\extrascanadian{\frenchspacing}% +\addto\noextrascanadian{\nonfrenchspacing}% +\addto\extrasUKenglish{\frenchspacing}% +\addto\noextrasUKenglish{\nonfrenchspacing}% +\addto\extrasUSenglish{\frenchspacing}% +\addto\noextrasUSenglish{\nonfrenchspacing}% +\newlength{\hhcls@chapterindent}% +\newlength{\hhcls@sectionindent}% +\newlength{\hhcls@subsectionindent}% +\newlength{\hhcls@subsubsectionindent}% +\newlength{\hhcls@paragraphindent}% +\newlength{\hhcls@subparagraphindent}% +\setlength{\hhcls@chapterindent}{3.9199em}% +\AtBeginDocument{% + \setlength{\hhcls@sectionindent}{\hhcls@chapterindent}% + \setlength{\hhcls@subsectionindent}{\hhcls@chapterindent}% + \setlength{\hhcls@subsubsectionindent}{\hhcls@chapterindent}% + \setlength{\hhcls@paragraphindent}{\hhcls@chapterindent}% + \setlength{\hhcls@subparagraphindent}{\hhcls@chapterindent}% +} +\setkomafont{sectioning}{\normalcolor\normalfont\bfseries + \iftensor@bold\else\mathversion{bold}\fi} +\renewcommand*\chapterformat{% + \makebox[\hhcls@chapterindent][l]{% + \chapappifchapterprefix{\ }\thechapter\autodot}} +\DeclareRobustCommand*\othersectionlevelsformat[1]{% + \makebox[\csname hhcls@#1indent\endcsname][l]{% + \csname prefix#1\endcsname\csname the#1\endcsname\autodot + \csname postfix#1\endcsname}} +\def\prefixsection{}% +\def\prefixsubsection{}% +\def\prefixsubsubsection{}% +\def\prefixparagraph{}% +\def\prefixsubparagraph{}% +\ifhhcls@tocindent + \newlength{\hhcls@tocindentlength} + \settowidth{\hhcls@tocindentlength}{0.} + \renewcommand*\l@section{% + \@dottedtocline{1}{1\hhcls@tocindentlength}{2.3em}} + \renewcommand*\l@subsection{% + \@dottedtocline{2}{2\hhcls@tocindentlength}{3.2em}} + \renewcommand*\l@subsubsection{% + \@dottedtocline{3}{3\hhcls@tocindentlength}{4.1em}} + \renewcommand*\l@paragraph{% + \@dottedtocline{4}{4\hhcls@tocindentlength}{5.0em}} + \renewcommand*\l@subparagraph{% + \@dottedtocline{5}{5\hhcls@tocindentlength}{5.9em}} +\else + \renewcommand*\l@section{\@dottedtocline{1}{0em}{2.3em}} + \renewcommand*\l@subsection{\@dottedtocline{2}{0em}{3.2em}} + \renewcommand*\l@subsubsection{\@dottedtocline{3}{0em}{4.1em}} + \renewcommand*\l@paragraph{\@dottedtocline{4}{0em}{5.0em}} + \renewcommand*\l@subparagraph{\@dottedtocline{5}{0em}{5.9em}} +\fi +\ifhhcls@times + \def\appendixmore{% + \addpart{\appendixname}% + } +\else + \def\appendixmore{% + \renewcommand*\thechapter{\textsc{\@alph\c@chapter}}% + \addpart{\appendixname}% + } +\fi +\setkomafont{descriptionlabel}{\normalcolor\normalfont\rmfamily\bfseries + \iftensor@bold\else\mathversion{bold}\fi} +\setkomafont{pagehead}{\normalfont\normalcolor\small} +\pagestyle{scrheadings} +\renewcommand*\partpagestyle{empty} +\renewcommand*\chapterpagestyle{empty} +\renewcommand*\indexpagestyle{empty} +\clearscrheadfoot +\ifhhcls@headingoutside + \rohead[\pagemark]{\headmark\makebox[\hhcls@chapterindent][r]{\pagemark}} + \lehead[\pagemark]{\makebox[\hhcls@chapterindent][l]{\pagemark}\headmark} +\else + \ohead[\pagemark]{\pagemark} + \ihead{\headmark} +\fi +\ProvideTextCommand{\flqq}{T1}{% + \textormath{\guillemotleft}{\mbox{\guillemotleft}}} +\ProvideTextCommand{\flqq}{OT1}{% + \textormath{\guillemotleft}{\mbox{\guillemotleft}}} +\ProvideTextCommandDefault{\flqq}{\UseTextSymbol{OT1}\flqq} +\ProvideTextCommand{\frqq}{T1}{% + \textormath{\guillemotright}{\mbox{\guillemotright}}} +\ProvideTextCommand{\frqq}{OT1}{% + \textormath{\guillemotright}{\mbox{\guillemotright}}} +\ProvideTextCommandDefault{\frqq}{\UseTextSymbol{OT1}\frqq} +\ProvideTextCommand{\flq}{T1}{% + \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}} +\ProvideTextCommand{\flq}{OT1}{% + \textormath{\guilsinglleft}{\mbox{\guilsinglleft}}} +\ProvideTextCommandDefault{\flq}{\UseTextSymbol{OT1}\flq} +\ProvideTextCommand{\frq}{T1}{% + \textormath{\guilsinglright}{\mbox{\guilsinglright}}} +\ProvideTextCommand{\frq}{OT1}{% + \textormath{\guilsinglright}{\mbox{\guilsinglright}}} +\ProvideTextCommandDefault{\frq}{\UseTextSymbol{OT1}\frq} + \let\glqq=\frqq + \let\grqq=\flqq + \let\glq=\frq + \let\grq=\flq +\renewenvironment{thebibliography}[1]{% + \setchapterpreamble{\bibpreamble}% + \bib@heading% + \list{\@biblabel{\@arabic\c@enumiv}}{% + \settowidth\labelwidth{\@biblabel{#1}}% + \leftmargin\labelwidth + \advance\leftmargin\labelsep + \@openbib@code + \usecounter{enumiv}% + \let\p@enumiv\@empty + \renewcommand*\theenumiv{\@arabic\c@enumiv}% + }% + \sloppy\clubpenalty4000\widowpenalty4000% + \setlength\RaggedRightRightskip{\z@\@plus 6em}% + \small\RaggedRight + \sfcode`\.=\@m +}{ + \def\@noitemerr + {\@latex@warning{Empty `thebibliography' environment}}% + \endlist +} +\renewcommand*\newblock{\ } +\def\@bibitem#1{\stepcounter{\@listctr}% +\item[{[\newstylenums{\the\value{\@listctr}}]}]\if@filesw + \immediate\write\@auxout + {\string\bibcite{#1}{% + \string\newstylenums{\the\value{\@listctr}}}}\fi\ignorespaces} +\def\@lbibitem[#1]#2{\item[\@biblabel{\newstylenums{#1}}\hfill]\if@filesw + {\let\protect\noexpand + \immediate\write\@auxout{% + \string\bibcite{#2}{\protect\newstylenums{#1}}}}\fi\ignorespaces} +\def\@citex[#1]#2{% + \let\@citea\@empty + \@cite{\@for\@citeb:=#2\do + {\@citea\def\@citea{,\,}% + \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}% + \if@filesw\immediate\write\@auxout{\string\citation{\@citeb}}\fi + \@ifundefined{b@\@citeb}{\mbox{\reset@font\bfseries ?}% + \G@refundefinedtrue + \@latex@warning + {Citation `\@citeb' on page \thepage \space undefined}}% + {\hbox{\csname b@\@citeb\endcsname}}}}{#1}% +} +\renewcommand\btxISBN{\acro{ISBN}} +\renewcommand\btxISSN{\acro{ISSN}} +\ifhhcls@times + \newcommand\printISBN[1]{\mbox{#1}} +\else + \newcommand\printISBN[1]{% + \mbox{\expandafter\hhcls@printISBN#1\@empty\@empty}% + } + \newcommand\hhcls@printISBNx[1]{\acro{#1}} + \def\hhcls@printISBN#1#2\@empty{% + \begingroup + \edef\hhcls@argeins{#1}% + \edef\hhcls@argzwei{#2}% + \def\hhcls@argX{X}% + \def\hhcls@argx{x}% + \ifx\hhcls@argeins\hhcls@argX + \hhcls@printISBNx{#1}% + \else + \ifx\hhcls@argeins\hhcls@argx + \hhcls@printISBNx{#1}% + \else + #1% + \fi + \fi + \ifx\hhcls@argzwei\@empty + \else + \hhcls@printISBN#2\@empty + \fi + \endgroup + } +\fi +\setbibliographyfont{ISBN}{\printISBN} +\setbibliographyfont{ISSN}{\printISBN} +\newcolumntype{d}[1]{D{.}{,}{#1}} +\renewcommand\fps@figure{tp} +\renewcommand\fps@table{tp} +\renewcommand{\floatpagefraction}{0.75} % Default: 0.5 +\renewcommand{\topfraction}{0.75} % Default: 0.7 +\renewcommand{\bottomfraction}{0.35} % Default: 0.3 +\renewcommand{\textfraction}{0.2} % Default: 0.2 +\setcounter{topnumber}{2} % Default: 2 +\setcounter{bottomnumber}{1} % Default: 1 +\setcounter{totalnumber}{3} % Default: 3 +\g@addto@macro\end@float{% + \ifnum\@floatpenalty<\z@ + \ifnum\@floatpenalty<-\@Mii + \else + \ifhmode + \if@ignore + \penalty\@M + \hskip\z@skip + \fi + \fi + \fi + \fi +} +\setlength\floatsep{18\p@ \@plus 10\p@ \@minus 2\p@} +\setlength\textfloatsep{14\p@ \@plus 20\p@ \@minus 4\p@} +\setlength\@fptop{0\p@ \@plus 1fil} +\setlength\@fpsep{18\p@ \@plus 1fil} +\setlength\@fpbot{0\p@ \@plus 2fil} +\setcaphanging +\setkomafont{caption}{\normalfont\normalcolor\small\RaggedRight} +\newcommand*\germanfigurename[1]{\gdef\hhcls@germanfigurename{#1}} +\germanfigurename{Bild} +\addto\captionsgerman{\renewcommand*\figurename{\hhcls@germanfigurename}}% +\addto\captionsngerman{\renewcommand*\figurename{\hhcls@germanfigurename}}% +\addto\captionsaustrian{\renewcommand*\figurename{\hhcls@germanfigurename}}% +\addto\captionsnaustrian{\renewcommand*\figurename{\hhcls@germanfigurename}}% +\newcommand*\@floatfont{\normalfont\normalcolor\normalsize} +\newcommand*\scr@fnt@float{\@floatfont} +\@ifpackageloaded{setspace}{% + \def\@xfloat #1[#2]{% + \latex@xfloat #1[#2]% + \def\baselinestretch{\setspace@singlespace}% + \scr@fnt@float + }% +}{% + \def\@floatboxreset{% + \reset@font + \scr@fnt@float + \@setminipage + }% +}% +\setkomafont{float}{\normalfont\normalcolor\small}% +\newcommand\hhcls@longtable{} +\let\hhcls@longtable\longtable +\renewcommand\longtable{\small\hhcls@longtable} +\renewcommand*\l@figure{\@dottedtocline{1}{0em}{2.9em}} +\let\l@table\l@figure +\renewcommand{\subfigtopskip}{0pt} +\renewcommand{\subfigbottomskip}{0pt} +\renewcommand{\subfigcapmargin}{0pt} +\renewcommand{\subcapsize}{\small} +\setlength{\subfigcapskip}{8pt} +\renewcommand{\subcapfont}{\rmfamily\RaggedRight} +\renewcommand{\subcaplabelfont}{\rmfamily} +\renewcommand*{\thesubfigure}{\,\alph{subfigure}} +\renewcommand*{\@@thesubfigure}{\alph{subfigure}} +\renewcommand{\@thesubfigure}{% + {\subcapsize\subcaplabelfont\alph{subfigure}:}\space} +\renewcommand*\thesubfloatfigure{% + \themainfigure\,(\arabic{subfloatfigure}/\arabic{subfloatfiguremax})} +\renewcommand*\thesubfloattable{% + \themaintable\,(\arabic{subfloattable}/\arabic{subfloattablemax})} +\newcounter{bilderzahl}% +\g@addto@macro\endfigure{% + \stepcounter{bilderzahl}% +}% +\newcounter{tabellenzahl}% +\g@addto@macro\endtable{% + \stepcounter{tabellenzahl}% +}% +\AtEndDocument{% + \immediate\write\@auxout{% + \string\gdef\string\hhclsbilderzahl{\thebilderzahl}^^J% + \string\gdef\string\hhclstabellenzahl{\thetabellenzahl}^^J% + \string\gdef\string\hhclsaufgabenzahl{\theaufgabenzahl}}% +} +\addglobalwarning{% + \typeout{^^JNumber of figures: \thebilderzahl}% + \typeout{Number of tables: \thetabellenzahl}% + \typeout{Number of exercises: \theaufgabenzahl^^J}% +}% +\renewcommand*\listoffigures{% + \begingroup% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \lof@heading% + \small + \@parskipfalse\@parskip@indent% + \@starttoc{lof}% + \if@restonecol\twocolumn\fi + \endgroup +} +\renewcommand*\listoftables{% + \begingroup + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \lot@heading% + \small + \@parskipfalse\@parskip@indent% + \@starttoc{lot}% + \if@restonecol\twocolumn\fi + \endgroup +} +\newcommand\hhcls@makeindex{} +\let\hhcls@makeindex=\makeindex +\renewcommand\makeindex{% + \hhcls@makeindex + \addglobalwarning{% + \typeout{^^JGenerate index by using^^J% + \space\space`makeindex -c -g -s bgteubner.ist \jobname'.^^J% + Have a look to the log file `\jobname.ilg'.^^J}% + }% +} +\newcommand*\hhcls@germanindexname{Stichwortverzeichnis} +\addto\captionsgerman{\renewcommand*\indexname{\hhcls@germanindexname}}% +\addto\captionsngerman{\renewcommand*\indexname{\hhcls@germanindexname}}% +\addto\captionsaustrian{\renewcommand*\indexname{\hhcls@germanindexname}}% +\addto\captionsnaustrian{\renewcommand*\indexname{\hhcls@germanindexname}}% +\AtEndDocument{\printindex} +\newcommand\listsfont{\footnotesize} +\renewenvironment{theindex} + {\if@twocolumn + \@restonecolfalse + \else + \@restonecoltrue + \fi + \columnseprule \z@ + \columnsep 20\p@ + \setchapterpreamble{\index@preamble}% + \idx@heading% + \thispagestyle{\indexpagestyle}% + \par + \parindent\z@ + \setlength{\parskip}{\z@ \@plus .3\p@}% + \setlength{\parfillskip}{\z@ \@plus 1fil}% + \let\item\@idxitem + \setlength\RaggedRightRightskip{\z@\@plus 4em}% + \newif\ifhhclsiscorrectindex + \RaggedRight\listsfont} + {\ifhhclsiscorrectindex + \else + \ClassError{bgteubner}{You have not used the correct index + style\MessageBreak + `bgteubner.ist' for the class `bgteubner.cls'}{% + You have to use the style bgteubner.ist:^^J% + Generate index by using^^J% + \space\space`makeindex -c -g -s bgteubner.ist \jobname'.^^J% + Have a look to the log file `\jobname.ilg'.}% + \fi + \if@restonecol\onecolumn\else\clearpage\fi} +\renewcommand*\@idxitem{\par\hangindent 24\p@} +\renewcommand*\subitem{\@idxitem \quad --\;} +\renewcommand*\subsubitem{\@idxitem \quad --\;--\;} +\newcommand*\f[1]{#1\,f}% +\newcommand*\ff[1]{#1\,ff}% +\newcommand*\textbff[1]{\textbf{#1\,f}}% +\newcommand*\textbfff[1]{\textbf{#1\,ff}}% +\newcommand\subind{\,--\,\hskip\z@skip}% +\newcommand*\emphindex[1]{\textbf{#1}}% +\deffootnote{1.5em}{1.5em}{\normalfont\newstylenums{\thefootnotemark}\enspace} +\addtokomafont{footnote}{\normalfont\RaggedRight} +\deffootnotemark{\textsuperscript{\newstylenums{\thefootnotemark}}} +\setlength{\skip\footins}{10\p@ \@plus 4\p@ \@minus 2\p@} +\ifhhcls@times + \DeclareRobustCommand\acro[1]{\textsmaller{\MakeUppercase{#1}}} +\else + \DeclareRobustCommand\acro[1]{% + \ifthenelse{\equal{\f@family}{hfor}\or\equal{\f@family}{cmr}}{% + \textsc{\MakeLowercase{#1}}% + }{% + \ifthenelse{\(\equal{\f@family}{hfott}\or\equal{\f@family}{cmtt}\)% + \and\equal{\f@shape}{n}}{% + \textsc{\MakeLowercase{#1}}% + }{% + \textsmaller{\MakeUppercase{#1}}% + }% + }% + } +\fi +\newcommand\person{}% +\let\person=\emph +\newcommand\new{}% +\let\new=\emph +\newcommand\engl{}% +\let\engl=\emph +\newcommand*\qed{% + \hskip 1em plus 1fill\rule{0pt}{1ex}\hskip\z@skip + \hglue 0pt plus 1fill\mbox{\qedname}} +\newcommand*\qedname{\rule{1ex}{1ex}} +\newcommand*\tr{\mathop{\operator@font tr}\nolimits} +\newcommand*\e{\mathop{\operator@font e}\nolimits} +\let\origd=\d +\AtBeginDocument{ + \renewcommand*\d{% + \relax\ifmmode + \mathrm{d}% + \else + \expandafter\origd + \fi + }% +}% +\newcommand*\D{\ensuremath{\upDelta}} +\newcommand*\grad{\mathop{\operator@font grad}\nolimits} +\newenvironment{cases*}{% + \matrix@check\cases\env@cases +}{% + \endarray\right\rbrace% +} +\newcommand*\equivalent{\ensuremath{\mathrel{\widehat{=}}}} +\newenvironment{nomathindent}[1][1.0]{% + \addtolength{\mathindent}{-#1\mathindent}% + \ignorespaces +}{\ignorespacesafterend} +\iftensor@bold + \ifhhcls@times + \ifhhcls@mathtime + \else + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{The combination of the main font + Times\MessageBreak + with bold vectors (option <boldvec>)\MessageBreak + leads to ugly results in some cases}}% + \renewcommand*\vec[1]{\ensuremath{\pmb{#1}}} + \renewcommand*\matr[1]{\ensuremath{\pmb{#1}}} + \renewcommand*\tens[2]{\ensuremath{\pmb{#1}}} + \fi + \fi +\fi +\AtBeginDocument{% + \providecommand*\tensor{% + \ClassError{bgteubner}{\string\tensor\space command used instead + of \string\tens\space command (see help by pressing h)}{% + Because of some name clashes, the \string\tensor\space command + had to be renamed to \string\tens. Please change all calls + inside your document.}% + \tens + }% +} +\allowdisplaybreaks +\def\maketag@@@#1{\hbox{\m@th#1}} +\mathchardef\mathcomma\mathcode`\, +\mathcode`\,=32768 % "8000 +\begingroup +\catcode`\_=12 +\catcode`\,=\active +\@firstofone{% +\endgroup + \edef\DC@char{\meaning_} + \def\DC@parse#1 _{\def\DC@parse##1#1 ##2##3\delimiter{##2}} + \expandafter\DC@parse\DC@char + \toks@={\expandafter\DC@parse\meaning\DC@char} + \edef\DC@test{9<2\the\toks@ \DC@char.\delimiter} + \DeclareRobustCommand\ActiveComma{\futurelet\DC@char\DC@docomma} + \def\DC@docomma{% + \ifnum\DC@test \mathord \fi + \mathcomma + } + \let,\ActiveComma +} +\makeatother +\newcommand*\ifhasat[1]{% + \expandafter\csname @ifhasat\expandafter\endcsname#1@\end +} +\expandafter\def\csname @ifhasat\endcsname#1@#2\end{% + \ifx\relax#2\relax + \expandafter\csname @secondoftwo\expandafter\endcsname + \else + \expandafter\csname @firstoftwo\expandafter\endcsname + \fi +} +\newcommand*\beforeat[1]{% + \expandafter\csname @beforeat\expandafter\endcsname#1@\end +} +\expandafter\def\csname @beforeat\endcsname#1@#2\end{#1} +\newcommand*\afterat[1]{% + \ifhasat{#1}{\expandafter\csname hh@afterat\expandafter\endcsname#1\end}{}% +} +\expandafter\def\csname hh@afterat\endcsname#1@#2\end{#2} +\makeatletter +\def\hhcls@gloprefix{} +\let\glossary=\@undefined +\let\makeglossary=\@undefined +\newcommand*\makeglossary[1][\@empty]{% + \edef\hhcls@gloname{glo#1}% + \expandafter\edef\csname hhcls@#1glsname\endcsname{gls#1}% + \typeout{^^JNew glossary type \string\glossary#1 with file + extensions `\hhcls@gloname' and `\csname hhcls@#1glsname\endcsname'.}% + \typeout{Writing glossary file `\jobname.\hhcls@gloname'.^^J}% + \addglobalwarning{% + \typeout{^^JGenerate glossary type \string\glossary#1 by using^^J% + \space\space`makeindex -c -g -s bgteuglo.ist -o + \jobname.\csname hhcls@#1glsname\endcsname\space + -t \jobname.\hhcls@gloname lg \jobname.\hhcls@gloname'^^J% + or^^J% + \space\space`makeindex -c -g -s bgteuglochar.ist -o + \jobname.\csname hhcls@#1glsname\endcsname\space + -t \jobname.\hhcls@gloname lg \jobname.\hhcls@gloname'.^^J% + Have a look to the log file `\jobname.\hhcls@gloname lg'^^J.}% + }% + \@ifundefined{glossary#1}{% + \expandafter\def\csname glossary#1\endcsname{% + \def\hhcls@tmpoutputfile{\csname hhcls@glossaryfile#1\endcsname}% + \protect\@hhcls@glossary + }% + \expandafter\newwrite\csname hhcls@glossaryfile#1\endcsname + \immediate\openout\csname hhcls@glossaryfile#1\endcsname=% + \jobname.\hhcls@gloname% + \expandafter\def\csname glossary#1preamble\endcsname{% + \@ifundefined{glossary#1name}{% + \ClassError{bgteubner}{No title for glossary type `#1' + defined}{You have to define a title for the glossary type by + doing^^J% + \space\space\space\space% + \string\newcommand\string\glossary #1name{<Name>}.}% + \addchap{\itshape ????}% + }{% + \addchap{\csname glossary#1name\endcsname}}% + }% + \expandafter\def\csname printglossary#1\endcsname{% + \@ifnextchar[% + {\csname @printglossary#1\endcsname}% + {\csname @printglossary#1\endcsname[\glossarylabelwidth]}% + }% + \expandafter\def\csname @printglossary#1\endcsname[##1]{% + \begingroup + \setlength{\glossarylabelwidth}{##1}% + \def\hhcls@glossarypreamble{\csname glossary#1preamble\endcsname}% + \@input@{\jobname.\csname hhcls@#1glsname\endcsname}% + \endgroup + }% + }{% + \ClassError{bgteubner}{Glossary type `#1' already defined}{You + have tried to define the glossary type `#1' twice}}% +} +\@onlypreamble\makeglossary +\def\hhcls@glossarypreamble{\addchap{\glossaryname}}% +\def\hhcls@glo@verb{\expandafter\strip@prefix\meaning} +\def\@hhcls@glossary{% + \@bsphack + \begingroup + \@sanitize + \@ifnextchar[% + {\@@@hhcls@glossary}{\@@@hhcls@glossary[\hhcls@gloprefix]}% +}% +\def\@@@hhcls@glossary[#1]#2#3{% + \def\@tempa{#2}\def\@tempb{#3}% + \ifhasat{#2}{% + \protected@write\hhcls@tmpoutputfile{}% + {\string\glossaryentry{#1\beforeat{#2}@{\afterat{#2}}] + \@tempb + |glossarypage}{\thepage}% + }% + }{% + \protected@write\hhcls@tmpoutputfile{}% + {\string\glossaryentry{% + #1\@tempa @{\@tempa}] + \@tempb + |glossarypage}{\thepage}% + }% + }% + \endgroup + \@esphack} +\newlength{\glossarylabelwidth} +\setlength{\glossarylabelwidth}{3em} +\def\glossarylabel#1{#1\hfil} +\newenvironment{theglossary}[1][\@empty]{% + \def\tuetel{#1}% + \def\tueteluet{\@empty}% + \begin{multicols}{2}[% + \let\size@section\normalsize + \let\size@subsection\small + \let\size@subsubsection\small + \small + \ifx\tuetel\tueteluet + \hhcls@glossarypreamble + \else + #1% + \fi + ]% + \setlength{\columnsep}{20pt}% + \listsfont + \begin{list}{\ClassError{bgteubner}{No symbol given for + \string\item}{In the `theglossary' environment, you have to + specify a symbol^^J% + for each \string\item\space using \string\item[<symbol>], e.g.^^J% + \space\space\space\space + \string\item[{$\string\sigma_{\string\mathrm{max}}$}] Maximal + stress^^J% + \space\space\space\space + \string\item[DIN] Deutsches Institut f"ur Normung}}{% + \setlength{\labelwidth}{\glossarylabelwidth}% + \leftmargin\labelwidth + \advance\leftmargin by \labelsep + \let\makelabel\glossarylabel% + \parsep\z@% + \parskip\z@% + \setlength{\itemsep}{0pt}% + \newif\ifhhclsiscorrectglossary + \RaggedRight + }% + }{% + \end{list}% + \end{multicols}% + \ignorespacesafterend + \noindentnextpar\par +} +\def\glossarypage#1{} +\def\glossarypagedelim{} +\def\glossarypagerange{} +\newcommand\glossarynewchar[1]{% + \indexspace + \item [\textbf{#1}]\strut + \@nobreaktrue\nopagebreak +} +\if@twoside +\else + \ClassError{bgteubner}{One-side format chosen}{You may not print a + book with one-side format.} +\fi +\providecommand*\GetFileInfo[1]{% + \def\filename{#1}% + \def\@tempb##1 ##2 ##3\relax##4\relax{% + \def\filedate{##1}% + \def\fileversion{##2}% + \def\fileinfo{##3}}% + \edef\@tempa{\csname ver@#1\endcsname}% + \expandafter\@tempb\@tempa\relax? ? \relax\relax} +\newcommand*\version[1]{% + \begingroup + \GetFileInfo{bgteubner.cls}% + \ifx\hhcls@tmp\fileversion + \typeout{^^JVersion of the class `bgteubner.cls' + (\fileversion) is identical^^J% + with the wanted version.^^J}% + \else + \typeout{^^JVersion of the class `bgteubner.cls' + (\fileversion) differs from wanted version (#1).^^J}% + \addglobalwarning{\ClassWarningNoLine{bgteubner}{The version, wanted in + the document (#1),\MessageBreak + differs from the used version of the + `bgteubner.cls'\MessageBreak + class (\fileversion)}}% + \fi + \endgroup +} +\newcommand\hhcls@frontmatter{} +\let\hhcls@frontmatter=\frontmatter +\renewcommand\frontmatter[1][5]{% + \hhcls@frontmatter + \ifhhcls@times + \pagenumbering{Roman}% + \else + \renewcommand\thepage{\textsc{\roman{page}}}% + \fi + \setcounter{page}{5}% +} +\renewcommand*\backmatter{\ClassWarning{bgteubner}{The + \string\backmatter\space command is ignored}} +\ifhhcls@entwurf + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{Leave out the class option + <draft>\MessageBreak + for the final version}% + } + \newcommand*\now{{% + \def\Time{3}% + \def\Hour{4}% + \def\Minute{5}% + \count\Time=\time\relax + \count\Hour=\count\Time\relax + \divide\count\Hour by 60\relax%%hours past midnight + \count\Minute=\count\Hour\relax + \multiply\count\Minute by -60\relax + \advance\count\Minute by \count\Time\relax %%minutes past hour + \the\count\Hour\relax:% + \ifnum\count\Minute<10 + 0% + \fi + \the\count\Minute\relax + }} + \ifoot[{\rmfamily \"Ubersetzt: \today, \now}]{% + {\rmfamily \"Ubersetzt: \today, \now}} + \overfullrule5mm +\fi +\newcommand*\noindentnextpar{% + \global\everypar{% + \setbox0\lastbox + \global\everypar{}% + }% +} +\newcommand\hhcls@bigskip{} +\let\hhcls@bigskip=\bigskip +\renewcommand\bigskip{\par\hhcls@bigskip\noindentnextpar} +\setlength{\bigskipamount}{18.0pt plus 6.0pt minus 6.0pt} +\newcommand*\hhcls@medskip{} +\let\hhcls@medskip\medskip +\renewcommand{\medskip}{\par\hhcls@medskip\noindentnextpar} +\setlength{\medskipamount}{9.0pt plus 3.0pt minus 3.0pt} +\newcommand*\hhcls@smallskip{} +\let\hhcls@smallskip\smallskip +\renewcommand{\smallskip}{\par\hhcls@smallskip\noindentnextpar} +\setlength{\smallskipamount}{4.5pt plus 1.5pt minus 1.5pt} +\newcommand*\gliederungsfehler[1]{% + \renewcommand{\part}{\ClassError{bgteubner}{\string\part\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% + \renewcommand{\addpart}{\ClassError{bgteubner}{\string\addpart\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% + \renewcommand{\chapter}{\ClassError{bgteubner}{\string\chapter\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% + \renewcommand{\addchap}{\ClassError{bgteubner}{\string\addchap\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% + \renewcommand{\section}{\ClassError{bgteubner}{\string\section\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% + \renewcommand{\subsection}{\ClassError{bgteubner}{\string\subsection\space + used inside #1 environment}{% + Inside the #1 environment,^^J\string\part, + \string\addpart, \string\chapter, \string\addchap, + \string\section\space, and \string\subsection\space + ^^Jmay not be used. + ^^J\string\subsubsection\space and \string\paragraph\space + are allowed.}}% +} +\newlength{\hhcls@leftmargin}% +\newlength{\hhcls@rightmargin}% +\newenvironment{hhcls@quotation}[3][\@empty]{% + \edef\hhcls@tmpa{#1}% + \ifx\hhcls@tmpa\@empty + \setlength{\hhcls@rightmargin}{#2}% + \else + \setlength{\hhcls@rightmargin}{#1}% + \fi + \setlength{\hhcls@leftmargin}{#2}% + \begin{list}{}{% + \listparindent\parindent% + \itemindent0em% + \leftmargin\hhcls@leftmargin% + \rightmargin\hhcls@rightmargin + \parsep\z@ \@plus\p@}% + \begin{spacing}{#3}% + \item\relax + }{% + \end{spacing}% + \removelastskip + \end{list}% + }% +\renewenvironment{quotation}{% + \list{}{% + \listparindent \parindent + \itemindent \z@ + \leftmargin \hhcls@leftmargin + \rightmargin \hhcls@rightmargin + \parsep \z@ \@plus\p@}% + \item\relax +}{% + \endlist +} +\renewenvironment{quote}{% + \list{}{% + \leftmargin \hhcls@leftmargin + \rightmargin \hhcls@rightmargin + }% + \item\relax +}{% + \endlist +} +\newcommand*\setmargin[1]{% + \edef\@setmarginname{#1}% + \@setmargin} +\newcommand*\@setmargin[2][\@empty]{% + \edef\hhcls@tmp{#1}% + \ifx\hhcls@tmp\@empty + \setlength{% + \expandafter\csname\@setmarginname @lmargin\endcsname}{#2}% + \else + \setlength{% + \expandafter\csname\@setmarginname @lmargin\endcsname}{#1}% + \fi + \setlength{% + \expandafter\csname\@setmarginname @rmargin\endcsname}{#2}% +} +\setlength{\leftmargini}{1.75\parindent} +\setlength{\leftmargin}{\leftmargini} +\setlength{\hhcls@leftmargin}{\leftmargini} +\setlength{\labelwidth}{\leftmargini} +\newlength{\advanced@lmargin} +\newlength{\advanced@rmargin} +\setmargin{advanced}{\leftmargini} +\newcommand\advancedfont{\footnotesize} +\ifhhcls@times + \newcommand\advancedspacing{1.18} +\else + \newcommand\advancedspacing{1.12} +\fi +\newcommand*\advancednamefont{\bfseries% + \iftensor@bold\else\mathversion{bold}\fi} +\newcommand*\noadvancedname{\gdef\advancedname{}} +\noadvancedname +\newenvironment{advanced}{% + \gliederungsfehler{advanced}% + \let\size@subsubsection\advancedfont + \let\size@paragraph\advancedfont + \let\size@subparagraph\advancedfont + \begin{hhcls@quotation}[\advanced@rmargin]{\advanced@lmargin}{% + \advancedspacing}% + \advancedfont + \ifx\advancedname\empty + \else + {\advancednamefont\advancedname}~% + \fi + \ignorespaces + }{% + \end{hhcls@quotation}% + \ignorespacesafterend + \noindentnextpar\par +} +\ifhhcls@theoremsmall + \def\theoremfont{\small} + \ifhhcls@times + \newcommand\theoremspacing{1.12} + \else + \newcommand\theoremspacing{1.06} + \fi +\else + \def\theoremfont{\normalsize} + \newcommand\theoremspacing{1.0} +\fi +\newlength{\theorem@lmargin} +\newlength{\theorem@rmargin} +\newlength{\theorem@indent@min} +\setlength{\theorem@indent@min}{7.8398em} +\newlength{\theorem@indent} +\setlength{\theorem@indent}{\theorem@indent@min} +\newlength{\theorem@indent@max} +\AtEndDocument{% + \ifdim\theorem@indent@max>\theorem@indent@min + \immediate\write\@auxout{% + \string\global\string\theorem@indent=\the\theorem@indent@max}% + \ifdim\theorem@indent@max>\theorem@indent + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{Indentation for theorem + titles has been increased.\MessageBreak + Rerun to adjust the indentation}% + }% + \else + \ifdim\theorem@indent@max<\theorem@indent + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{Indentation for theorem + titles has been decreased.\MessageBreak + Rerun to adjust the indentation}% + }% + \fi + \fi + \else + \ifdim\theorem@indent>\theorem@indent@min + \addglobalwarning{% + \ClassWarningNoLine{bgteubner}{Indentation for theorem + titles has been decreased.\MessageBreak + Rerun to adjust the indentation}% + }% + \fi + \fi +} +\newcommand\float@addtolists[1]{% + \def\hhcls@theoremskip{#1}% + \hhcls@theoremlist} +\newcommand\hhcls@theoremlist{} +\newcommand\hhcls@theoremanzahl{} +\newsavebox{\hhcls@@@theoremtitlewidth} +\newif\iftheorem@starvariant +\def\newtheorem#1#2{% + \expandafter\def\csname theorem@#1name\endcsname{#2}% + \expandafter\def\csname theorem@#1postfix\endcsname{:}% + \expandafter\newlength\expandafter{\csname theorem@#1@lmargin\endcsname}% + \expandafter\newlength\expandafter{\csname theorem@#1@rmargin\endcsname}% + \setmargin{theorem@#1}{\leftmargini}% + \newcounter{theorem@#1}[chapter]% + \newcounter{theorem@#1zahl}% + \g@addto@macro\hhcls@theoremanzahl{% + ; #2: \csname thetheorem@#1zahl\endcsname}% + \expandafter\def\csname thetheorem@#1\endcsname{% + \thechapter.\@arabic\csname c@theorem@#1\endcsname}% + \expandafter\def\csname theorem@#1title\endcsname##1{% + \iftheorem@starvariant + \else + \refstepcounter{theorem@#1}% + \fi + {% + \raggedsection\normalfont\normalsize\sectfont\nobreak + \savebox{\hhcls@@@theoremtitlewidth}{% + \csname theorem@#1name\endcsname% + \iftheorem@starvariant + \else + ~\csname thetheorem@#1\endcsname + \fi + \csname theorem@#1postfix\endcsname~}% + \settowidth{\@tempdima}{\usebox{\hhcls@@@theoremtitlewidth}}% + \ifdim\@tempdima>\theorem@indent@max + \global\theorem@indent@max=\@tempdima + \fi + \normalfont\normalsize\sectfont + \makebox[\theorem@indent][l]{\usebox{\hhcls@@@theoremtitlewidth}}% + \setlength\@tempdima{1pt}% + \settoheight\@tempdimb{D}% + \addtolength\@tempdima{\@tempdimb}% + \settoheight\@tempdimb{\theoremfont D}% + \addtolength\@tempdima{-\@tempdimb}% + ##1\nobreak\par\nobreak\vspace{\@tempdima}\nobreak}\nobreak + \@afterheading}% + \g@addto@macro\hhcls@theoremlist{% + \addtocontents{#1}{\hhcls@theoremskip}% + }% + \expandafter\def\csname #1*\endcsname{% + \theorem@starvarianttrue + \csname #1\endcsname + }% + \expandafter\def\csname end#1*\endcsname{\csname end#1\endcsname}% + \expandafter\def\csname #1\endcsname{% + \@ifnextchar[{% + \csname hhcls@@#1\endcsname + }{% + \csname hhcls@@#1\endcsname[\empty]% + }}% + \expandafter\def\csname hhcls@@#1\endcsname[##1]{% + \setlength{\theorem@lmargin}{\csname theorem@#1@lmargin\endcsname}% + \setlength{\theorem@rmargin}{\csname theorem@#1@rmargin\endcsname}% + \ifhhcls@inimportant + \addtolengthminzero{\theorem@lmargin}{-\fboxsep}% + \addtolengthminzero{\theorem@rmargin}{-\fboxsep}% + \addtolengthminzero{\theorem@indent}{-\fboxsep}% + \fi + \par + \begin{list}{}{% + \topsep 8\p@ \@plus2\p@ \@minus4\p@ + \itemindent-\theorem@lmargin + \listparindent\parindent + \leftmargin\theorem@lmargin + \rightmargin\theorem@rmargin + \parsep\z@ \@plus\p@ + \stepcounter{theorem@#1zahl}% + \gliederungsfehler{#1}% + \let\size@subsubsection\theoremfont + \let\size@paragraph\theoremfont + \let\size@subparagraph\theoremfont + \theoremfont + }% + \begin{spacing}{\theoremspacing}% + \item\relax + \csname theorem@#1title\endcsname{##1}\nobreak% + \edef\hhtmp{##1}% + \ifx\hhtmp\empty + \else + \iftheorem@starvariant + \addcontentsline{#1}{#1}{##1}% + \else + \addcontentsline{#1}{#1}{% + \numberline {\csname thetheorem@#1\endcsname}##1}% + \fi + \fi + \nobreak\ignorespaces + }% + \expandafter\def\csname end#1\endcsname{% + \end{spacing}% + \removelastskip + \end{list}% + \ignorespacesafterend + \noindentnextpar + \par + }% + \expandafter\def\csname l@#1\endcsname{\@dottedtocline{1}{0em}{2.9em}}% + \addglobalwarning{% + \typeout{#2: \csname thetheorem@#1zahl\endcsname\space times used}% + } +} +\newcommand*\listoftheorems[2]{% + \begingroup% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \float@listhead{#2}% + \small + \setlength{\parskip}{\z@}% + \@starttoc{#1}% + \if@restonecol\twocolumn\fi + \endgroup +} +\newenvironment{theoremdelimiter}[2]{% + \expandafter\def\csname theorem@#1postfix\endcsname{#2}% + \ignorespaces +}{% + \ignorespacesafterend +}% +\newcommand*\settheoremmargin[1]{% + \edef\@setmarginname{#1}% + \@settheoremmargin} +\newcommand*\@settheoremmargin[2][\@empty]{% + \edef\hhcls@tmp{#1}% + \ifx\hhcls@tmp\@empty + \setlength{% + \expandafter\csname theorem@\@setmarginname @lmargin\endcsname}{#2}% + \else + \setlength{% + \expandafter\csname theorem@\@setmarginname @lmargin\endcsname}{#1}% + \fi + \setlength{% + \expandafter\csname theorem@\@setmarginname @rmargin\endcsname}{#2}% +} +\newtheorem{example}{\examplename} +\newcommand*\listofexamples{\listoftheorems{example}{\listexamplename}} +\newcommand*\examplename{} +\newcommand*\listexamplename{} +\addto\captionsgerman{% + \renewcommand*\examplename{Beispiel}% + \renewcommand*\listexamplename{Verzeichnis der Beispiele}% +} +\addto\captionsngerman{% + \renewcommand*\examplename{Beispiel}% + \renewcommand*\listexamplename{Verzeichnis der Beispiele}% +} +\addto\captionsaustrian{% + \renewcommand*\examplename{Beispiel}% + \renewcommand*\listexamplename{Verzeichnis der Beispiele}% +} +\addto\captionsnaustrian{% + \renewcommand*\examplename{Beispiel}% + \renewcommand*\listexamplename{Verzeichnis der Beispiele}% +} +\addto\captionsenglish{% + \renewcommand*\examplename{Example}% + \renewcommand*\listexamplename{List of Examples}% +} +\addto\captionsamerican{% + \renewcommand*\examplename{Example}% + \renewcommand*\listexamplename{List of Examples}% +} +\newtheorem{definition}{\definitionname} +\newcommand*\listofdefinitions{% + \listoftheorems{definition}{\listdefinitionname}} +\newcommand*\definitionname{} +\newcommand*\listdefinitionname{} +\addto\captionsgerman{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{Verzeichnis der Definitionen}% +} +\addto\captionsngerman{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{Verzeichnis der Definitionen}% +} +\addto\captionsaustrian{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{Verzeichnis der Definitionen}% +} +\addto\captionsnaustrian{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{Verzeichnis der Definitionen}% +} +\addto\captionsenglish{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{List of Definitions}% +} +\addto\captionsamerican{% + \renewcommand*\definitionname{Definition}% + \renewcommand*\listdefinitionname{List of Definitions}% +} +\newtheorem{proof}{\proofname} +\newcommand*\listofproofs{\listoftheorems{proof}{\listproofname}} +\newcommand*\proofname{} +\newcommand*\listproofname{} +\addto\captionsgerman{% + \renewcommand*\proofname{Beweis}% + \renewcommand*\listproofname{Verzeichnis der Beweise}% +} +\addto\captionsngerman{% + \renewcommand*\proofname{Beweis}% + \renewcommand*\listproofname{Verzeichnis der Beweise}% +} +\addto\captionsaustrian{% + \renewcommand*\proofname{Beweis}% + \renewcommand*\listproofname{Verzeichnis der Beweise}% +} +\addto\captionsnaustrian{% + \renewcommand*\proofname{Beweis}% + \renewcommand*\listproofname{Verzeichnis der Beweise}% +} +\addto\captionsenglish{% + \renewcommand*\proofname{Proof}% + \renewcommand*\listproofname{List of Proofs}% +} +\addto\captionsamerican{% + \renewcommand*\proofname{Proof}% + \renewcommand*\listproofname{List of Proofs}% +} +\newcommand*\addtolengthminzero[2]{% + \addtolength{#1}{#2}% + \ifdim#1<0pt + \setlength{#1}{0pt}% + \fi +} +\newif\ifhhcls@importantmath +\newif\ifhhcls@inimportant +\ifhhcls@greybox + \newsavebox{\hhcls@@@important} + \newlength{\hhcls@important@parindent} + \definecolor{importantcolor}{gray}{0.9} + \newcounter{hhcls@savefootnote} + \newcommand\addfnmark[2][\@empty]{% + \begingroup + \edef\hhcls@temp{#1}% + \ifx\hhcls@temp\@empty + \g@addto@macro\hhcls@fnlist{% + \stepcounter{hhcls@savefootnote}% + \footnotetext[\thehhcls@savefootnote]{#2}% + }% + \else + \g@addto@macro\hhcls@fnlist{\footnotetext[#1]{#2}}% + \fi + \endgroup + } + \newcommand\hhcls@important@footnote[2][\@empty]{% + \begingroup + \edef\hhcls@temp{#1}% + \ifx\hhcls@temp\@empty + \footnotemark + \else + \footnotemark[#1]% + \fi + \addfnmark[#1]{#2}% + \endgroup + }% + \newenvironment{important}{% + \hhcls@inimportanttrue + \setlength{\fboxsep}{0.5\parindent}% + \addtolengthminzero{\mathindent}{-\fboxsep}% + \addtolengthminzero{\theorem@lmargin}{-\fboxsep}% + \addtolengthminzero{\theorem@rmargin}{-\fboxsep}% + \addtolengthminzero{\advanced@lmargin}{-\fboxsep}% + \addtolengthminzero{\advanced@rmargin}{-\fboxsep}% + \addtolengthminzero{\subexercise@lmargin}{-\fboxsep}% + \addtolengthminzero{\subexercise@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@subexerciseindent}{-\fboxsep}% + \addtolengthminzero{\answer@lmargin}{-\fboxsep}% + \addtolengthminzero{\answer@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@answerindent}{-\fboxsep}% + \addtolengthminzero{\subanswer@lmargin}{-\fboxsep}% + \addtolengthminzero{\subanswer@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@subanswerindent}{-\fboxsep}% + \addtolengthminzero{\leftmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@leftmargin}{-\fboxsep}% + \setlength{\hhcls@important@parindent}{\parindent}% + \removelastskip + \par + \vskip\topsep + \gdef\hhcls@fnlist{}% + \setcounter{hhcls@savefootnote}{\value{footnote}}% + \let\mpfootnote=\footnote + \let\footnote\hhcls@important@footnote% + \let\hhcls@important@figure=\figure + \renewcommand\figure{% + \ClassError{bgteubner}{% + figure environment used inside + important\ifhhcls@importantmath *\fi\space environment}{% + Inside the important\ifhhcls@importantmath *\fi\space + environment, floats cannot be used.}% + \hhcls@important@figure}% + \let\hhcls@important@table=\table + \renewcommand\table{% + \ClassError{bgteubner}{% + table environment used inside + important\ifhhcls@importantmath *\fi\space environment}{% + Inside the important\ifhhcls@importantmath *\fi\space + environment, floats cannot be used.}% + \hhcls@important@table}% + \let\hhcls@important@marginpar=\marginpar + \renewcommand\marginpar{% + \ClassError{bgteubner}{% + \string\marginpar\space used inside + important\ifhhcls@importantmath *\fi\space environment}{% + Inside the important\ifhhcls@importantmath *\fi\space + environment, floats cannot be used.}% + \hhcls@important@marginpar}% + \begin{lrbox}{\hhcls@@@important}% + \setlength\@tempdima{\linewidth}% + \addtolength\@tempdima{-2\fboxsep}% + \begin{minipage}{\@tempdima}% + \ifhhcls@importantmath + \vspace{-\abovedisplayskip}% + \fi + \setlength{\parindent}{\hhcls@important@parindent}% + \noindent + \@setminipage + \ignorespaces + }{% + \par\unskip + \end{minipage}% + \end{lrbox}% + \noindent + \colorbox{importantcolor}{% + \setlength\@tempdima{\linewidth}% + \addtolength\@tempdima{-2\fboxsep}% + \begin{minipage}{\@tempdima}% + \usebox{\hhcls@@@important}% + \end{minipage}% + }% + \hhcls@fnlist + \vskip\topsep + \noindentnextpar + \par + \ignorespacesafterend + } + \newenvironment{important*}{% + \hhcls@importantmathtrue + \begin{important}% + }{% + \end{important}% + \ignorespacesafterend} + \newenvironment{longimportant}{% + \hhcls@inimportanttrue + \setlength{\fboxsep}{0.5\parindent}% + \addtolengthminzero{\mathindent}{-\fboxsep}% + \addtolengthminzero{\theorem@lmargin}{-\fboxsep}% + \addtolengthminzero{\theorem@rmargin}{-\fboxsep}% + \addtolengthminzero{\advanced@lmargin}{-\fboxsep}% + \addtolengthminzero{\advanced@rmargin}{-\fboxsep}% + \addtolengthminzero{\subexercise@lmargin}{-\fboxsep}% + \addtolengthminzero{\subexercise@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@subexerciseindent}{-\fboxsep}% + \addtolengthminzero{\answer@lmargin}{-\fboxsep}% + \addtolengthminzero{\answer@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@answerindent}{-\fboxsep}% + \addtolengthminzero{\subanswer@lmargin}{-\fboxsep}% + \addtolengthminzero{\subanswer@rmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@@subanswerindent}{-\fboxsep}% + \addtolengthminzero{\leftmargin}{-\fboxsep}% + \addtolengthminzero{\hhcls@leftmargin}{-\fboxsep}% + \def\FrameCommand{\colorbox{importantcolor}}% + \renewcommand\footnote[2][]{% + \ClassError{bgteubner}{% + \footnote\space used inside longimportant environment}{% + Inside the longimportant environment, footnotes cannot be + used.\MessageBreak + You may use the short version, the important or important* + environment if you\MessageBreak + really need a footnote. Be aware that these environments + don't\MessageBreak + break across pages.}% + }% + \let\hhcls@important@figure=\figure + \renewcommand\figure{% + \ClassError{bgteubner}{% + figure environment used inside longimportant environment}{% + Inside the longimportant environment, floats cannot be used.}% + \hhcls@important@figure}% + \let\hhcls@important@table=\table + \renewcommand\table{% + \ClassError{bgteubner}{% + table environment used inside longimportant environment}{% + Inside the longimportant environment, floats cannot be used.}% + \hhcls@important@table}% + \let\hhcls@important@marginpar=\marginpar + \renewcommand\marginpar{% + \ClassError{bgteubner}{% + \string\marginpar\space used inside longimportant environment}{% + Inside the longimportant environment, floats cannot be used.}% + \hhcls@important@marginpar}% + \MakeFramed {\advance\hsize-\width \FrameRestore + \noindent\@setminipage}% + \hhcls@important@workaround + \ignorespaces + }{% + \par\unskip + \endMakeFramed + \noindentnextpar + \par + \ignorespacesafterend + } + \newenvironment{longimportant*}[1][\abovedisplayskip]{% + \begin{longimportant}\vspace{-#1}\ignorespaces + }{% + \end{longimportant}% + } + \@ifpackagelater{framed}{2004/03/07}{% + \newcommand*\hhcls@important@workaround{} + }{% + \newcommand*\hhcls@important@workaround{\vspace{0mm}} + \ClassWarningNoLine{bgteubner}{Outdated version of framed.sty + used. A workaround\MessageBreak + for a bug has been installed. Future versions of\MessageBreak + bgteubner.cls will need a version of framed.sty\MessageBreak + that is dated 2004/03/07 or newer} + } +\else + \newenvironment{important}{\par}{\par} + \newenvironment{important*}{\par}{\par} + \newenvironment{longimportant}{\par}{\par} + \newenvironment{longimportant*}[1][]{\par}{\par} +\fi +\newcounter{aufgabenzahl}% +\newlength{\hhcls@@exerciseindent}% +\setlength{\hhcls@@exerciseindent}{7.8398em}% +\newcounter{@exercise} +\renewcommand*\the@exercise{\@arabic\c@@exercise} +\newcommand\@exercise{\@startsection{@exercise}{1}{\z@}% + {-3.5ex \@plus -1ex \@minus -.2ex}% + {2.3ex \@plus.2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@section\nobreak}} +\if@exercisetotoc + \newcommand*\l@@exercise[2]{\@dottedtocline{1}{1.5em}{2.3em}{% + \def\numberline##1{% + \hb@xt@\@tempdima{\lprefix@exercise##1\hfil}}#1}{#2}} +\else + \newcommand*\l@@exercise[2]{} +\fi +\newcommand*\exercisename{Aufgabe} +\def\prefix@exercise{\exercisename~}% +\def\postfix@exercise{:}% +\def\prefix@exercisestar{\exercisename}% +\def\postfix@exercisestar{:}% +\def\lprefix@exercise{}% + \g@addto@macro\hhcls@theoremlist{% + \addtocontents{exercise}{\hhcls@theoremskip}% + }% +\let\@exercisemark\@gobble +\newcommand*\exercisefont{\normalsize} +\newenvironment{exercise}[1]{% + \setcounter{subtaskoffset}{0}% + \stepcounter{aufgabenzahl}% + \@exercise{#1}% + \addcontentsline{exercise}{exercise}{\numberline {\the@exercise}#1}% + \gliederungsfehler{exercise}% + \exercisefont +}{% + \ignorespacesafterend + \noindentnextpar + \par +} +\newenvironment{exercise*}[1]{% + \setcounter{subtaskoffset}{0}% + \stepcounter{aufgabenzahl}% + \@exercise*{\makebox[\hhcls@@exerciseindent][l]{% + \prefix@exercisestar\postfix@exercisestar}#1}% + \addcontentsline{exercise}{exercise}{#1}% + \gliederungsfehler{exercise}% + \exercisefont +}{% + \ignorespacesafterend + \noindentnextpar + \par +} +\newlength{\hhcls@@answerindent}% +\AtBeginDocument{% + \setlength{\hhcls@@answerindent}{\hhcls@@exerciseindent}% +} +\newcounter{@answer} +\renewcommand*\the@answer{} +\newcommand\@answer{\@startsection{@answer}{2}{\z@}% + {-3.25ex \@plus -1ex \@minus -.2ex}% + {1.5ex \@plus .2ex}% + {\raggedsection\normalfont\sectfont\nobreak\size@subsection\nobreak}} +\if@answertotoc + \newcommand*\l@@answer[2]{\@dottedtocline{1}{0em}{6.2em}{% + \def\numberline##1{% + \hb@xt@\@tempdima{\lprefix@answer##1\hfil}}#1}{#2}} +\else + \newcommand*\l@@answer[2]{} +\fi +\ifhhcls@times + \newcommand\answerspacing{1.12} +\else + \newcommand\answerspacing{1.06} +\fi +\newcommand*\answername{L\"osung} +\def\prefix@answer{\answername~}% +\def\postfix@answer{:}% +\def\prefix@answerstar{\answername}% +\def\postfix@answerstar{:}% +\def\lprefix@answer{\answername~}% +\let\@answermark\@gobble +\newcommand\answerfont{\footnotesize} +\newlength{\answer@lmargin} +\newlength{\answer@rmargin} +\setmargin{answer}{0em} +\newcommand\answer[2][\@empty]{% + \def\the@answer{\ref{#2}}% + \@@answer{#1}% +} +\expandafter\newcommand\csname answer*\endcsname[1][\@empty]{% + \def\the@answer{}% + \def\prefix@answer{\prefix@answerstar}% + \def\postfix@answer{\postfix@answerstar}% + \@@answer{#1}% +} +\def\@@answer#1{% + \@answer{#1}% + \setcounter{subtaskoffset}{0}% + \gliederungsfehler{answer}% + \answerfont + \let\size@subsubsection\answerfont + \let\size@paragraph\answerfont + \let\size@subparagraph\answerfont + \setlength{\mathindent}{0.5\leftmargini}% + \setlength{\abovecaptionskip}{0.89\abovecaptionskip}% + \setkomafont{caption}{\normalfont\rmfamily\footnotesize\RaggedRight}% + \setkomafont{float}{\normalfont\normalcolor\footnotesize}% + \renewcommand{\subcapsize}{\footnotesize}% + \setstretch{\answerspacing}% +} +\def\endanswer{% + \par + \ignorespacesafterend + \noindentnextpar +} +\expandafter\def\csname endanswer*\endcsname{\endanswer} +\newlength{\hhcls@@subexerciseindent}% +\AtBeginDocument{% + \setlength{\hhcls@@subexerciseindent}{\hhcls@@exerciseindent}% +} +\newcounter{@subexercise}[chapter] +\renewcommand*\the@subexercise{\thechapter.\@arabic\c@@subexercise} +\newcommand\subexercise@title[1]{% + \iftheorem@starvariant + \else + \refstepcounter{@subexercise}% + \fi + {% + \raggedsection\normalfont\normalsize\sectfont\nobreak + \makebox[\hhcls@@subexerciseindent][l]{\exercisename + \iftheorem@starvariant + \else + ~\the@subexercise + \fi + \postfix@exercise}% + \setlength\@tempdima{1pt}% + \settoheight\@tempdimb{D}% + \addtolength\@tempdima{\@tempdimb}% + \settoheight\@tempdimb{\subexercisefont D}% + \addtolength\@tempdima{-\@tempdimb}% + #1\nobreak\par\nobreak\vspace{\@tempdima}\nobreak}\nobreak + \@afterheading} +\newcommand\subexercisefont{\normalfont\small} +\ifhhcls@times + \newcommand\subexercisespacing{1.12} +\else + \newcommand\subexercisespacing{1.06} +\fi +\newlength{\subexercise@lmargin} +\newlength{\subexercise@rmargin} +\setmargin{subexercise}{\leftmargini} +\expandafter\def\csname subexercise*\endcsname{% + \theorem@starvarianttrue + \subexercise +}% +\expandafter\def\csname endsubexercise*\endcsname{\endsubexercise} +\newenvironment{subexercise}[1]{% + \par + \begin{list}{}{% + \itemindent-\subexercise@lmargin + \listparindent\parindent + \leftmargin\subexercise@lmargin + \rightmargin\subexercise@rmargin + \parsep\z@ \@plus\p@ + \stepcounter{aufgabenzahl}% + \gliederungsfehler{subexercise}% + \setcounter{subtaskoffset}{0}% + }% + \begin{spacing}{\subexercisespacing}% + \item\relax + \subexercise@title{#1}% + \edef\hhtmp{#1}% + \ifx\hhtmp\empty + \else + \iftheorem@starvariant + \addcontentsline{exercise}{exercise}{#1}% + \else + \addcontentsline{exercise}{exercise}{% + \numberline{\the@subexercise}#1}% + \fi + \fi + \subexercisefont + \let\size@subsubsection\subexercisefont + \let\size@paragraph\subexercisefont + \let\size@subparagraph\subexercisefont + \ignorespaces + }{% + \end{spacing}% + \removelastskip + \end{list}% + \ignorespacesafterend + \noindentnextpar + \par +} +\newlength{\hhcls@@subanswerindent}% +\AtBeginDocument{% + \setlength{\hhcls@@subanswerindent}{\hhcls@@answerindent}% +} +\newcounter{@subanswer} +\renewcommand*\the@subanswer{} +\newcommand\subanswer@title[2]{% + {% + \raggedsection\normalfont\normalsize\sectfont\nobreak + \makebox[\hhcls@@subanswerindent][l]{\answername + \iftheorem@starvariant + \else + ~\ref{#1}% + \fi + \postfix@answer}% + \setlength\@tempdima{1pt}% + \settoheight\@tempdimb{D}% + \addtolength\@tempdima{\@tempdimb}% + \settoheight\@tempdimb{\subanswerfont D}% + \addtolength\@tempdima{-\@tempdimb}% + #2\nobreak\par\nobreak\vspace{\@tempdima}\nobreak}\nobreak + \@afterheading} +\newcommand\subanswerfont{\footnotesize} +\ifhhcls@times + \newcommand\subanswerspacing{1.12} +\else + \newcommand\subanswerspacing{1.06} +\fi +\newlength{\subanswer@lmargin} +\newlength{\subanswer@rmargin} +\setmargin{subanswer}{\leftmargini} +\expandafter\newcommand\csname subanswer*\endcsname[1][\@empty]{% + \theorem@starvarianttrue + \subanswer[#1]{}% +}% +\expandafter\def\csname endsubanswer*\endcsname{\endsubanswer} +\newenvironment{subanswer}[2][\@empty]{% + \par + \begin{list}{}{% + \itemindent-\subanswer@lmargin + \listparindent\parindent + \leftmargin\subanswer@lmargin + \rightmargin\subanswer@rmargin + \parsep\z@ \@plus\p@ + \gliederungsfehler{subanswer}% + \setcounter{subtaskoffset}{0}% + }% + \begin{spacing}{\subanswerspacing}% + \item\relax + \subanswer@title{#2}{#1}% + \let\size@subsubsection\subanswerfont + \let\size@paragraph\subanswerfont + \let\size@subparagraph\subanswerfont + \subanswerfont + \ignorespaces + }{% + \end{spacing}% + \removelastskip + \end{list}% + \ignorespacesafterend + \noindentnextpar + \par +} +\newcommand*\exercise@heading{\float@listhead{\listexercisename}} +\newcommand*\listofexercises{% + \begingroup% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \exercise@heading + \small + \setlength{\parskip}{\z@}% + \@starttoc{exercise}% + \if@restonecol\twocolumn\fi + \endgroup +} +\newcommand*\listexercisename{List of Exercises} +\newcommand*\hhcls@germanlistexercisename{Aufgabenverzeichnis} +\addto\captionsgerman{% + \renewcommand{\listexercisename}{\hhcls@germanlistexercisename}}% +\addto\captionsngerman{% + \renewcommand{\listexercisename}{\hhcls@germanlistexercisename}}% +\addto\captionsaustrian{% + \renewcommand{\listexercisename}{\hhcls@germanlistexercisename}}% +\addto\captionsnaustrian{% + \renewcommand{\listexercisename}{\hhcls@germanlistexercisename}}% +\newcommand*\l@exercise{\@dottedtocline{1}{0em}{2.9em}} +\newenvironment{exercisedelimiter}[1]{% + \def\postfix@exercise{#1}% + \def\postfix@exercisestar{#1}% + \def\postfix@answer{#1}% + \def\postfix@answerstar{#1}% + \ignorespaces +}{% + \ignorespacesafterend +}% +\newcounter{subtask} +\newcounter{subtaskoffset}[@exercise]% +\renewcommand\thesubtask{\alph{subtask}}% +\newenvironment{subtask}{% + \begin{list}{\thesubtask)}{\usecounter{subtask}% + \parskip\z@% + \itemsep\z@% + \parsep\z@ + \listparindent\parindent + \setcounter{subtask}{\value{subtaskoffset}}}}{% + \setcounter{subtaskoffset}{\value{subtask}}% + \end{list}% + \ignorespacesafterend + \noindentnextpar\par} +\newcommand\subtaskref[1]{\ref{#1})} +\renewcommand*\labelenumii{\theenumii.} +\newcommand*\preface[1]{% + \begingroup + \@openrightfalse + \chapter*{#1}% + \markboth{}{}% + \endgroup + \noindentnextpar\par +} +\newcommand*\signature[3]{% + \par\bigskip + \begin{minipage}[t]{0.45\linewidth}% + #1,\\ + #2% + \end{minipage}% + \hfill + \begin{minipage}[t]{0.5\linewidth}% + \itshape\raggedleft + #3% + \end{minipage}% +} +\let\@author=\@empty +\let\@title\@empty +\let\@subtitle\@empty +\@ifundefined{subtitle}{% + \newcommand\subtitle[1]{\gdef\@subtitle{#1}}% +}{} +\let\@edition\@empty +\newcommand*\edition[1]{\gdef\@edition{#1}} +\edition{1} +\newwrite\hhcls@fileinfo +\immediate\openout\hhcls@fileinfo\jobname.info +\AtEndDocument{% + \ifpdf + \if\@title\@empty\else\pdfinfo{/Title (\@title)}\fi + \if\@subtitle\@empty + \pdfinfo{/Subject (\@edition. Auflage)}% + \else + \pdfinfo{/Subject (\@subtitle\space (\@edition. Auflage))}% + \fi + \ifx\@author\@empty + \else + \pdfinfo{/Author (\@author)}% + \fi + % If you modify a renamed copy of the files `bgteubner.cls' or + % `bgteucls.dtx', you have to preserve some information in the + % PDF /Creator entry. The following data have to remain: + % - The name `bgteubner.cls', + % - a hint that this class has been developed for the `Teubner + % Verlag, Wiesbaden, Germany'. + \begingroup + \GetFileInfo{bgteubner.cls}% + \pdfinfo{/Creator (document class bgteubner.cls for the + Springer Vieweg Verlag, Wiesbaden, Germany, by Harald Harders + \fileversion)}% + \endgroup + \pdfinfo{/Keywords (Bild: \thebilderzahl; Tabelle: \thetabellenzahl; + Aufgabe: \theaufgabenzahl\hhcls@theoremanzahl)}% + \fi + \if\@title\@empty + \else + \immediate\write\hhcls@fileinfo{Titel: \@title}% + \fi + \if\@subtitle\@empty + \else + \immediate\write\hhcls@fileinfo{Untertitel: \@subtitle}% + \fi + \if\@subtitle\@empty + \fi + \immediate\write\hhcls@fileinfo{\@edition. Auflage}% + \ifx\@author\@empty + \else + \immediate\write\hhcls@fileinfo{Autor(en): \@author}% + \fi + \immediate\write\hhcls@fileinfo{Bild: \thebilderzahl; Tabelle: + \thetabellenzahl; Aufgabe: \theaufgabenzahl\hhcls@theoremanzahl}% +} +\ifhhcls@titlepage +\renewcommand*\maketitle{% + \edef\hhcls@tmppage{\arabic{page}}% + \begin{titlepage}% + \renewcommand{\sfdefault}{phv}% + \ifx\@title\@empty + \ClassError{bgteubner}{No title given}{Define a title using + \string\title{Titel}} + \fi + \ifx\@author\@empty + \ClassError{bgteubner}{No author given}{Define + an author using \string\author{Name}.} + \fi + \newlength{\hhcls@parindent}% + \setlength{\hhcls@parindent}{2.5\parindent}% + \setlength{\parindent}{0mm}% + \let\footnotesize\small + \let\footnoterule\relax + \renewcommand*\thefootnote{\@fnsymbol\c@footnote}% + \let\@oldmakefnmark\@makefnmark + \def\@makefnmark{\rlap\@oldmakefnmark} + \begin{center} + \sffamily\Large + {\bfseries\LARGE \@author}% + \vskip 2.5em + \par + {\bfseries\iftensor@bold\else\mathversion{bold}\fi\Huge\@title\par} + \ifx\@subtitle\@empty + \else + \vskip 2.5em + {\bfseries\iftensor@bold\else\mathversion{bold}\fi + \LARGE\@subtitle\par} + \fi + \vskip 2.5em + \par + \@ifundefined{hhclsbilderzahl}{% + Mit + \textbf{??}~Abbildungen, + \textbf{???}~Tabellen + und + \textbf{???}~Aufgaben + }{% + \ifnum\hhclsbilderzahl=0\relax + \ifnum\hhclstabellenzahl=0\relax + \ifnum\hhclsaufgabenzahl=0\relax + \else + Mit \hhclsaufgabenzahl~Aufgaben + \fi + \else + Mit \hhclstabellenzahl~Tabellen + \ifnum\hhclsaufgabenzahl=0\relax + \else + und \hhclsaufgabenzahl~Aufgaben + \fi + \fi + \else + Mit \hhclsbilderzahl~Abbildungen% + \ifnum\hhclstabellenzahl=0\relax + \ifnum\hhclsaufgabenzahl=0\relax + \else + \space und \hhclsaufgabenzahl~Aufgaben + \fi + \else + \ifnum\hhclsaufgabenzahl=0\relax + \space und \hhclstabellenzahl~Tabellen + \else + , \hhclstabellenzahl~Tabellen + und \hhclsaufgabenzahl~Aufgaben + \fi + \fi + \fi + }% + \ifhhcls@entwurf + \vskip 2.5em + \par + \strut\"Ubersetzt: \today, \now + \fi + \vfill + \par + \ifx\@edition\@empty + \else + \ifnum1<1\@edition + \ifnum1<0\@edition\relax + \@edition.~Auf\/lage% + \vskip 4em + \fi + \else + \@edition + \vskip 4em + \fi + \fi + \par + {\Large \hhcls@publisher\par} + \end{center} + \end{titlepage} + \next@tpage\cleardoubleemptypage + \setcounter{page}{\hhcls@tmppage}% + \ifx\@dedication\@empty \else + \next@tpage\null\vfill + {\centering \Large \@dedication \par} + \vskip \z@ \@plus3fill + \if@twoside \next@tpage\cleardoublepage \fi + \fi + \global\let\maketitle\relax +} +\else + \renewcommand\maketitle{% + \ClassWarningNoLine{bgteubner}{Titlepage switched off for final print}% + \ifx\@dedication\@empty \else + \begin{titlepage} + \next@tpage\null\vfill + {\centering \Large \@dedication \par} + \vskip \z@ \@plus3fill + \if@twoside \next@tpage\cleardoublepage \fi + \end{titlepage} + \fi + \global\let\maketitle\relax + } +\fi +\ifhhcls@entwurf + \newlength{\hhtmplen}% + \setlength{\hhtmplen}{0.35145980351\textwidth}% + \typeout{^^JText width: \strip@pt\hhtmplen mm}% + \setlength{\hhtmplen}{0.35145980351\textheight}% + \typeout{Text block: \strip@pt\hhtmplen}% + \setlength{\hhtmplen}{\headheight}% + \addtolength{\hhtmplen}{\headsep}% + \addtolength{\hhtmplen}{\textheight}% + \setlength{\hhtmplen}{0.35145980351\hhtmplen}% + \typeout{Total height: \strip@pt\hhtmplen mm}% + \setlength{\hhtmplen}{0.35145980351\baselineskip}% + \typeout{Baseline skip: \strip@pt\hhtmplen mm^^J}% +\fi +\newcommand\verboten[1]{% + \BeforePackage{#1}{% + \ClassError{bgteubner}{Forbidden package `#1' loaded}{% + You are not allowed to load the package `#1' because it^^J% + changes the layout. This error message occurs one line below^^J% + the line.}}% +} +\verboten{a4wide} +\verboten{a4} +\verboten{a5comb} +\verboten{a5} +\verboten{aeguill} +\verboten{ae} +\verboten{appendix} +\verboten{avantgar} +\verboten{avant} +\verboten{bibgerm} +\verboten{bookman} +\verboten{caption2} +\verboten{caption} +\verboten{chancery} +\verboten{chappg} +\verboten{charter} +\verboten{cmbright} +\verboten{concmath} +\verboten{doublespace} +\verboten{dropcaps} +\verboten{eco} +\verboten{endfloat} +\verboten{epsfig} +\verboten{eulervm} +\verboten{extsizes} +\verboten{fandyhdr} +\verboten{figcaps} +\verboten{floatfig} +\verboten{floatflt} +\verboten{fltpage} +\verboten{french} +\verboten{geometry} +\verboten{geomsty} +\verboten{german} +\verboten{graphics} +\verboten{hangcaption} +\verboten{hangftn} +\verboten{hanging} +\verboten{helvetic} +\verboten{here} +\verboten{hvmath} +\verboten{indentfirst} +\verboten{initials} +\verboten{landscape} +\verboten{lmodern} +\verboten{lucidabr} +\verboten{lucidaso} +\verboten{mathptm} +\verboten{mathsans} +\verboten{mathtime} +\verboten{ncntrsbk} +\verboten{newcent} +\verboten{ngerman} +\verboten{palatcm} +\verboten{palatino} +\verboten{sansmath} +\verboten{sectsty} +\verboten{times} +\verboten{titlesec} +\verboten{utopia} +\verboten{zapfchan} +\verboten{zefonts} +\endinput +%% +%% End of file `bgteubner.cls'. diff --git a/Master/texmf-dist/tex/latex/bgteubner/hhfixme.sty b/Master/texmf-dist/tex/latex/bgteubner/hhfixme.sty new file mode 100644 index 00000000000..9da86195365 --- /dev/null +++ b/Master/texmf-dist/tex/latex/bgteubner/hhfixme.sty @@ -0,0 +1,491 @@ +%% +%% This is file `fixme.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% fixme.dtx +%% + +%% Renamed to hhfixme because the new version of fixme ist completely +%% incompatible to the old one. + +%% Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2005, 2006 Didier Verna + +%% This file is part of FiXme. + +%% FiXme may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.1 +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.1 or later is part of all distributions of LaTeX +%% version 1999/06/01 or later. + +%% FiXme consists of the files listed in the file `README'. + +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +\NeedsTeXFormat{LaTeX2e} + +\ProvidesPackage{hhfixme}[2006/04/12 v3.2 + Insert fixme notes in your documents] + +\RequirePackage{ifthen} +\RequirePackage{verbatim} + +\newcommand*\fixmelogo{\textsf{FiXme}} + +\let\l@fixme\l@figure +\newcommand\listoffixmes{} +\def\listoffixmes@final{} +\def\listoffixmes@draft{% + \IfFileExists{\jobname .lox}{\@listoffixmes@pretoc}{}% + \@starttoc{lox}% + \IfFileExists{\jobname .lox}{\@listoffixmes@posttoc}{}% + } + +\def\listoffixmes@draft@amsbook{\@starttoc{lox}\listfixmename} + +\newcommand*\listfixmename{} + +\def\@listoffixmes@pretoc@article{% + \section*{\listfixmename% + \@mkboth{\MakeUppercase\listfixmename}{\MakeUppercase\listfixmename}}% + } +\def\@listoffixmes@posttoc@article{} + +\def\@listoffixmes@pretoc@report{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\listfixmename% + \@mkboth{\MakeUppercase\listfixmename}{\MakeUppercase\listfixmename}}% + } +\def\@listoffixmes@posttoc@report{\if@restonecol\twocolumn\fi} + +\def\@listoffixmes@pretoc@book{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\listfixmename% + \@mkboth{\MakeUppercase\listfixmename}{\MakeUppercase\listfixmename}}% + } +\def\@listoffixmes@posttoc@book{\if@restonecol\twocolumn\fi} + +\def\@listoffixmes@pretoc@scrartcl{% + \section*{\listfixmename% + \@mkboth{\listfixmename}{\listfixmename}}% + } +\def\@listoffixmes@posttoc@scrartcl{} + +\def\@listoffixmes@pretoc@scrreprt{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\listfixmename% + \@mkboth{\listfixmename}{\listfixmename}}% + } +\def\@listoffixmes@posttoc@scrreprt{\if@restonecol\twocolumn\fi} + +\def\@listoffixmes@pretoc@scrbook{% + \if@twocolumn + \@restonecoltrue\onecolumn + \else + \@restonecolfalse + \fi + \chapter*{\listfixmename% + \@mkboth{\listfixmename}{\listfixmename}}% + } +\def\@listoffixmes@posttoc@scrbook{\if@restonecol\twocolumn\fi} + +\newcommand\FXInline[2]{% + \textbf{#1}: \emph{#2}} +\newcommand\FXMargin[2]{% + \marginpar{\footnotesize\raggedleft\textbf{#1}: \emph{#2}}} +\newcommand\FXMarginClue[1]{% + \marginpar{\footnotesize\raggedleft\textbf{#1}~!}} +\newcommand\FXFootnote[2]{% + \footnote{\textbf{#1}: \emph{#2}}} + +\newcommand*\fixmeindexname{} +\newcommand\FXIndex[1]{% + \index{***@\fixmeindexname:!#1}} + +\newcommand*\fixmefatalprefix{} +\newcommand\FiXmeInline[1]{\FXInline{\fixmefatalprefix}{#1}} +\newcommand\FiXmeMargin[1]{\FXMargin{\fixmefatalprefix}{#1}} +\newcommand\FiXmeFootnote[1]{\FXFootnote{\fixmefatalprefix}{#1}} +\newcommand\FiXmeUser[1]{} +\let\FiXmeUser\empty + +\newcommand\FiXmeIndex[1]{\FXIndex{#1}} +\newcommand\FiXmeInfo[1]{} +\newcommand\FiXmeWarning[1]{} + +\newif\iffixme@inline +\newif\iffixme@margin +\newif\iffixme@marginclue +\newif\iffixme@footnote +\newif\iffixme@user +\newif\iffixme@index + +\let\fixme@setinline\fixme@inlinetrue +\def\fixme@setmargin{% + \iffixme@marginclue% + \PackageWarning{FiXme}{% + Marginal notes requested; tunrning marginal clues off}% + \fixme@margincluefalse% + \fi% + \fixme@margintrue} +\def\fixme@setmarginclue{% + \iffixme@margin% + \PackageWarning{FiXme}{% + Marginal clues requested; tunrning marginal notes off}% + \fixme@marginfalse% + \fi% + \fixme@margincluetrue} +\let\fixme@setfootnote\fixme@fottnotetrue +\let\fixme@setuser\fixme@usertrue +\let\fixme@setindex\fixme@indextrue + +\def\fixme@text#1#2{% + \iffixme@inline\FXInline{#1}{#2}\fi% + \iffixme@margin\FXMargin{#1}{#2}\fi% + \iffixme@marginclue\FXMarginClue{#1}\fi% + \iffixme@footnote\FXFootnote{#1}{#2}\fi% + \iffixme@user\FXUser{#1}{#2}\fi} + +\DeclareOption{inline}{\fixme@setinline} +\DeclareOption{noinline}{\fixme@inlinefalse} +\DeclareOption{margin}{\fixme@setmargin} +\DeclareOption{nomargin}{\fixme@marginfalse} +\DeclareOption{marginclue}{\fixme@setmarginclue} +\DeclareOption{nomarginclue}{\fixme@margincluefalse} +\DeclareOption{footnote}{\fixme@footnotetrue} +\DeclareOption{nofootnote}{\fixme@footnotefalse} +\DeclareOption{user}{\fixme@usertrue} +\DeclareOption{nouser}{\fixme@userfalse} +\DeclareOption{index}{\fixme@indextrue} +\DeclareOption{noindex}{\fixme@indexfalse} + +\DeclareOption{info}{} +\DeclareOption{noinfo}{} +\DeclareOption{warning}{} +\DeclareOption{nowarning}{} + +\newcommand\FXNote[1]{% + \GenericInfo{% + (FiXme)\@spaces\@spaces\@spaces\@spaces}{% + Package FiXme Note: `#1'}} +\newcommand\FXWarning[1]{% + \PackageWarning{FiXme}{`#1'}} +\newcommand\FXError[1]{% + \GenericWarning{% + (FiXme)\@spaces\@spaces\@spaces\@spaces}{% + Package FiXme Error: `#1'}} +\newcommand\FXFatal[1]{% + \GenericWarning{% + (FiXme)\@spaces\@spaces\@spaces\@spaces}{% + Package FiXme: `#1'}} + +\newif\iffixme@silent + +%% Options that control whether to be silent or not: +\DeclareOption{silent}{\fixme@silenttrue} +\DeclareOption{nosilent}{\fixme@silentfalse} + +\newcounter{fixmecount} +\newcounter{fixmenotecount} +\newcounter{fixmewarningcount} +\newcounter{fixmeerrorcount} +\newcounter{fixmefatalcount} + +\newcommand*\fixmenoteprefix{} +\newcommand*\fixmenoteindexname{} +\def\fixme@note@draft#1{% + \fixme@text{\fixmenoteprefix}{#1}% + \iffixme@index\FXIndex{\fixmenoteindexname\thefixmenotecount: #1}\fi% + \iffixme@silent\else\FXNote{#1}\fi% + \addcontentsline{lox}{fixme}{\protect\fixmenoteprefix: #1}} +\def\fixme@note@final#1{% + \iffixme@silent\else\FXNote{#1}\fi% + \addcontentsline{lox}{fixme}{\protect\fixmenoteprefix: #1}} + +\newcommand*\fixmewarningprefix{} +\newcommand*\fixmewarningindexname{} +\def\fixme@warning@draft#1{% + \fixme@text{\fixmewarningprefix}{#1}% + \iffixme@index\FXIndex{\fixmewarningindexname\thefixmewarningcount: #1}\fi% + \iffixme@silent\else\FXWarning{#1}\fi% + \addcontentsline{lox}{fixme}{\protect\fixmewarningprefix: #1}} +\def\fixme@warning@final#1{% + \iffixme@silent\else\FXWarning{#1}\fi% + \addcontentsline{lox}{fixme}{\protect\fixmewarningprefix: #1}} + +\newcommand*\fixmeerrorprefix{} +\newcommand*\fixmeerrorindexname{} +\def\fixme@error@draft#1{% + \fixme@text{\fixmeerrorprefix}{#1}% + \iffixme@index\FXIndex{\fixmeerrorindexname\thefixmeerrorcount: #1}\fi% + \iffixme@silent\else\FXError{#1}\fi% + \addcontentsline{lox}{fixme}{\protect\fixmeerrorprefix: #1}} +\def\fixme@error@final#1{% + \iffixme@silent\else\FXError{#1}\fi% + \addcontentsline{lox}{fixme}{\protect\fixmeerrorprefix: #1}} + +\newcommand*\fixmefatalindexname{} +\def\fixme@fatal@draft#1{% + \iffixme@inline\FiXmeInline{#1}\fi% + \iffixme@margin\FiXmeMargin{#1}\fi% + \iffixme@marginclue\FXMarginClue{\fixmefatalprefix}\fi% + \iffixme@footnote\FiXmeFootnote{#1}\fi% + \iffixme@user\FiXmeUser{#1}\fi% + \iffixme@index\FiXmeIndex{% + \fixmefatalindexname\thefixmefatalcount: #1}\fi% + \iffixme@silent\else\FXFatal{#1}\fi% + \addcontentsline{lox}{fixme}{\protect\fixmefatalprefix: #1}} +\def\fixme@fatal@final#1{% + \PackageError{FiXme}{`#1' fixme left in final version}{% + You are processing your document in final mode,\MessageBreak + but you still have some critical FiXme's left behind.\MessageBreak + Type X to quit, fix your document, and rerun LaTeX.}} + +\def\@@fixme#1#2{% + \stepcounter{fixmecount}% + \stepcounter{fixme#1count}% + \csname fixme@#1\endcsname{#2}} +\def\@fixme#1[#2]#3{% + \bgroup% + \fixme@inlinefalse% + \fixme@marginfalse% + \fixme@margincluefalse% + \fixme@footnotefalse% + \fixme@userfalse% + \fixme@indexfalse% + \@for\fixme@option:=#2\do{% + \expandafter\ifx\csname fixme@\fixme@option true\endcsname\relax + \PackageError{FiXme}{Unknown layout option `\fixme@option'}{% + You have given an invalid option to \string\fixme, or an \string\fx % + command.\MessageBreak + Valid options are `inline', `margin', `marginclue', `footnote', % + `user',\MessageBreak + and `index'.\MessageBreak + Type X to quit, fix your document, and rerun LaTeX.}% + \else% + \csname fixme@set\fixme@option\endcsname% + \fi}% + \@@fixme{#1}{#3}% + \egroup} +\newcommand\fxnote{\@ifnextchar[%] + {\@fixme{note}}{\@@fixme{note}}} +\newcommand\fxwarning{\@ifnextchar[%] + {\@fixme{warning}}{\@@fixme{warning}}} +\newcommand\fxerror{\@ifnextchar[%] + {\@fixme{error}}{\@@fixme{error}}} +\newcommand\fixme{\@ifnextchar[%] + {\@fixme{fatal}}{\@@fixme{fatal}}} + +\newcommand\FXEnvBegin{\begin{quotation}} +\newcommand\FXEnvEnd{\end{quotation}} + +\def\@fxenvbegin@draft#1#2{% + \FXEnvBegin + \edef\fixme@args{inline% + \iffixme@index,index\fi% + \iffixme@marginclue,marginclue\fi}% + \csname#1\endcsname[\fixme@args]{#2}} +\def\@fxenvbegin@final#1#2{ + \edef\fixme@args{inline% + \iffixme@index,index\fi% + \iffixme@marginclue,marginclue\fi}% + \csname#1\endcsname[\fixme@args]{#2} + \comment +} + +\def\@fxenvend@draft{\FXEnvEnd} +\def\@fxenvend@final{\endcomment} + +\newenvironment{anfxnote}[1][]{% + \@fxenvbegin{fxnote}{#1}}{% + \@fxenvend} +\newenvironment{anfxwarning}[1][]{% + \@fxenvbegin{fxwarning}{#1}}{% + \@fxenvend} +\newenvironment{anfxerror}[1][]{% + \@fxenvbegin{fxerror}{#1}}{% + \@fxenvend} +\newenvironment{afixme}[1][]{% + \@fxenvbegin{fixme}{#1}}{% + \@fxenvend} + +\DeclareOption{english}{% + \renewcommand*\fixmenoteprefix{\fixmelogo\nobreakspace Note} + \renewcommand*\fixmewarningprefix{\fixmelogo\nobreakspace Warning} + \renewcommand*\fixmeerrorprefix{\fixmelogo\nobreakspace Error} + \renewcommand*\fixmefatalprefix{\fixmelogo} + \renewcommand*\fixmeindexname{\fixmelogo} + \renewcommand*\fixmenoteindexname{**a@Notes:!} + \renewcommand*\fixmewarningindexname{**b@Warnings:!} + \renewcommand*\fixmeerrorindexname{**c@Errors:!} + \renewcommand*\fixmefatalindexname{} + \renewcommand*{\listfixmename}{List of Corrections}} +\DeclareOption{french}{% + \renewcommand*\fixmenoteprefix{\fixmelogo\nobreakspace Note} + \renewcommand*\fixmewarningprefix{\fixmelogo\nobreakspace Attention} + \renewcommand*\fixmeerrorprefix{\fixmelogo\nobreakspace Erreur} + \renewcommand*\fixmefatalprefix{\fixmelogo} + \renewcommand*\fixmeindexname{\fixmelogo} + \renewcommand*\fixmenoteindexname{**a@Notes:!} + \renewcommand*\fixmewarningindexname{**b@Avertissements:!} + \renewcommand*\fixmeerrorindexname{**c@Erreurs:!} + \renewcommand*\fixmefatalindexname{} + \renewcommand*{\listfixmename}{Liste des Corrections}} +\DeclareOption{francais}{\ExecuteOptions{french}} +\DeclareOption{spanish}{% + \renewcommand*\fixmenoteprefix{\fixmelogo\nobreakspace Nota} + \renewcommand*\fixmewarningprefix{\fixmelogo\nobreakspace Aviso} + \renewcommand*\fixmeerrorprefix{\fixmelogo\nobreakspace Error} + \renewcommand*\fixmefatalprefix{\fixmelogo} + \renewcommand*\fixmeindexname{\fixmelogo} + \renewcommand*\fixmenoteindexname{**a@Notas:!} + \renewcommand*\fixmewarningindexname{**b@Avisos:!} + \renewcommand*\fixmeerrorindexname{**c@Errores:!} + \renewcommand*\fixmefatalindexname{} + \renewcommand*{\listfixmename}{Lista de Correcciones}} +\DeclareOption{italian}{% + \renewcommand*\fixmenoteprefix{\fixmelogo\nobreakspace Nota} + \renewcommand*\fixmewarningprefix{\fixmelogo\nobreakspace Avviso} + \renewcommand*\fixmeerrorprefix{\fixmelogo\nobreakspace Errore} + \renewcommand*\fixmefatalprefix{\fixmelogo} + \renewcommand*\fixmeindexname{\fixmelogo} + \renewcommand*\fixmenoteindexname{**a@Note:!} + \renewcommand*\fixmewarningindexname{**b@Avvisi:!} + \renewcommand*\fixmeerrorindexname{**c@Errori:!} + \renewcommand*\fixmefatalindexname{} + \renewcommand*{\listfixmename}{Corrigenda}} +\DeclareOption{german}{% + \renewcommand*\fixmenoteprefix{\fixmelogo\nobreakspace Anm} + \renewcommand*\fixmewarningprefix{\fixmelogo\nobreakspace Warnung} + \renewcommand*\fixmeerrorprefix{\fixmelogo\nobreakspace Fehler} + \renewcommand*\fixmefatalprefix{\fixmelogo} + \renewcommand*\fixmeindexname{\fixmelogo} + \renewcommand*\fixmenoteindexname{**a@Anmerkungen:!} + \renewcommand*\fixmewarningindexname{**b@Warnungen:!} + \renewcommand*\fixmeerrorindexname{**c@Fehler:!} + \renewcommand*\fixmefatalindexname{} + \renewcommand*{\listfixmename}{Verzeichnis der Korrekturen}} +\DeclareOption{ngerman}{% + \ExecuteOptions{german}} +\DeclareOption{danish}{% + \renewcommand*\fixmenoteprefix{\fixmelogo\nobreakspace Note} + \renewcommand*\fixmewarningprefix{\fixmelogo\nobreakspace Advarsel} + \renewcommand*\fixmeerrorprefix{\fixmelogo\nobreakspace Fejl} + \renewcommand*\fixmefatalprefix{\fixmelogo} + \renewcommand*\fixmeindexname{\fixmelogo} + \renewcommand*\fixmenoteindexname{**a@Noter:!} + \renewcommand*\fixmewarningindexname{**b@Advarsler:!} + \renewcommand*\fixmeerrorindexname{**c@Fejl:!} + \renewcommand*\fixmefatalindexname{} + \renewcommand*{\listfixmename}{Rettelser}} +\DeclareOption{croatian}{% + \renewcommand*\fixmenoteprefix{\fixmelogo\nobreakspace Poruka} + \renewcommand*\fixmewarningprefix{\fixmelogo\nobreakspace Upozorenje} + \renewcommand*\fixmeerrorprefix{\fixmelogo\nobreakspace Gre\v ska} + \renewcommand*\fixmefatalprefix{\fixmelogo} + \renewcommand*\fixmeindexname{\fixmelogo} + \renewcommand*\fixmenoteindexname{**a@Poruke:!} + \renewcommand*\fixmewarningindexname{**b@Upozorenja:!} + \renewcommand*\fixmeerrorindexname{**c@Greske:!} + \renewcommand*\fixmefatalindexname{} + \renewcommand*{\listfixmename}{Popis korekcija}} + +\DeclareOption{final}{ + \let\fixme@note\fixme@note@final + \let\fixme@warning\fixme@warning@final + \let\fixme@error\fixme@error@final + \let\fixme@fatal\fixme@fatal@final + \let\@fxenvbegin\@fxenvbegin@final + \let\@fxenvend\@fxenvend@final + \let\listoffixmes\listoffixmes@final + } + +\DeclareOption{draft}{ + \@ifclassloaded{article}{ + \let\@listoffixmes@pretoc\@listoffixmes@pretoc@article + \let\@listoffixmes@posttoc\@listoffixmes@posttoc@article}{ + \@ifclassloaded{report}{ + \let\@listoffixmes@pretoc\@listoffixmes@pretoc@report + \let\@listoffixmes@posttoc\@listoffixmes@posttoc@report}{ + \@ifclassloaded{book}{ + \let\@listoffixmes@pretoc\@listoffixmes@pretoc@book + \let\@listoffixmes@posttoc\@listoffixmes@posttoc@book}{ + \@ifclassloaded{scrartcl}{ + \let\@listoffixmes@pretoc\@listoffixmes@pretoc@scrartcl + \let\@listoffixmes@posttoc\@listoffixmes@posttoc@scrartcl}{ + \@ifclassloaded{scrreprt}{ + \let\@listoffixmes@pretoc\@listoffixmes@pretoc@scrreprt + \let\@listoffixmes@posttoc\@listoffixmes@posttoc@scrreprt}{ + \@ifclassloaded{scrbook}{ + \let\@listoffixmes@pretoc\@listoffixmes@pretoc@scrbook + \let\@listoffixmes@posttoc\@listoffixmes@posttoc@scrbook}{ + \@ifclassloaded{amsbook}{ + \let\listoffixmes@draft\listoffixmes@draft@amsbook}{ + %% Use the article layout by default. + \let\@listoffixmes@pretoc\@listoffixmes@pretoc@article + \let\@listoffixmes@posttoc\@listoffixmes@posttoc@article} + } + } + } + } + } + } + \let\fixme@note\fixme@note@draft + \let\fixme@warning\fixme@warning@draft + \let\fixme@error\fixme@error@draft + \let\fixme@fatal\fixme@fatal@draft + \let\@fxenvbegin\@fxenvbegin@draft + \let\@fxenvend\@fxenvend@draft + \let\listoffixmes\listoffixmes@draft +} + +\ExecuteOptions{english,final,margin,nosilent} +\ProcessOptions* + +\AtBeginDocument{% + \ifx\FiXmeUser\empty + \renewcommand\FiXmeUser[1]{\FXUser{\fixmefatalprefix}{#1}} + \fi} + +\AtEndDocument{% + \GenericWarning{% + (FiXme)\@spaces\@spaces\@spaces\@spaces + }{% + Package FiXme Summary: Number of notes: \thefixmenotecount,\MessageBreak% + Number of warnings: \thefixmewarningcount,\MessageBreak% + Number of errors: \thefixmeerrorcount,\MessageBreak% + Number of fatal errors: \thefixmefatalcount,\MessageBreak% + Total: \thefixmecount\@gobble% + }} +\endinput +%% +%% End of file `fixme.sty'. diff --git a/Master/texmf-dist/tex/latex/bgteubner/hhsubfigure.sty b/Master/texmf-dist/tex/latex/bgteubner/hhsubfigure.sty new file mode 100644 index 00000000000..5c0dc892177 --- /dev/null +++ b/Master/texmf-dist/tex/latex/bgteubner/hhsubfigure.sty @@ -0,0 +1,406 @@ +%% +%% This is file `hhsubfigure.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% hhsubfigure.dtx (with options: `package') +%% +%% Copyright (C) 2003 Harald Harders. +%% +%% This is a slightly modified version of the `subfigure' package by +%% Steven Douglas Cochran. The origianl package can be downloaded from +%% <ftp://ftp.dante.de/tex-archive/macros/latex/contrib/subfigure/>. +%% +%% This file is NOT the source for hhsubfigure, because almost all comments +%% have been stripped from it. It is NOT the preferred form of hhsubfigure +%% for making modifications to it. +%% +%% Therefore you can NOT redistribute and/or modify THIS file. You can +%% however redistribute the complete source (hhsubfigure.dtx and +%% hhsubfigure.ins) and/or modify it under the terms of the LaTeX Project +%% Public License, either version 1.2 of this license or (at your option) +%% any later version. The latest version of this license is in: +%% http://www.latex-project.org/lppl.txt +%% and version 1.2 or later is part of all distributions of LaTeX version +%% 1999/09/03 or later. +%% +%% The hhsubfigure package is distributed in the hope that it will be +%% useful, but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the LaTeX +%% Project Public License for more details. +%% +%% Please use the hhsubfigure package only in conjunction with the +%% document class bgteubner.cls. Steven has announced a successor for +%% this package that will make hhsubfigure unnecessary. +%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% @LaTeX-style-file{ +%% author = "Steven Douglas Cochran (modified by Harald Harders)", +%% version = "2.1.4", +%% date = "2003/09/14", +%% time = "09:34:13", +%% filename = "hhsubfigure.sty", +%% email = "h.harders@tu-bs.de", +%% codetable = "ISO/ASCII", +%% keywords = "LaTeX, float, figure, table, captcont", +%% supported = "yes", +%% abstract = "LaTeX package for providing support for the +%% inclusion of small, `sub', figures and tables. It +%% simplifies the positioning, captioning and +%% labeling of them within a single figure or table +%% environment. In addition, this package allows +%% such subcaptions to be written to the List of +%% Figures or List of tables if desired." +%% } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\NeedsTeXFormat{LaTeX2e}[1994/12/01] +\ProvidesPackage{hhsubfigure}[2003/09/14 v2.1.4a (hh)subfigure package] +\newif\ifhyperrefloaded +\AtBeginDocument{% + \@ifpackageloaded{hyperref}{% + \hyperrefloadedtrue + \providecommand\theHsubfigure{\thefigure.\arabic{subfigure}}% + \providecommand\theHsubtable{\thetable.\arabic{subtable}}% + \providecommand{\toclevel@subfigure}{1}% + \providecommand{\toclevel@subtable}{1}}{}} +\newif\ifsubcaphang +\newif\ifsubcapcenter +\newif\ifsubcapcenterlast +\newif\ifsubcapnooneline +\newif\ifsubcapraggedright +\newif\ifsubcapRaggedRight +\newskip\subfigtopskip \subfigtopskip = 5\p@ +\newskip\subfigcapskip \subfigcapskip = 0\p@ +\newdimen\subfigcaptopadj \subfigcaptopadj = 3\p@ +\newskip\subfigbottomskip \subfigbottomskip = 5\p@ +\newdimen\subfigcapmargin \subfigcapmargin = \z@ +\newskip\subfiglabelskip \subfiglabelskip = 0.33em plus 0.07em minus 0.03em +\newcommand*{\subcapsize}{} +\newcommand*{\subcaplabelfont}{% + \subcaplabelfont@f\subcaplabelfont@c\subcaplabelfont@s} +\newcommand*{\subcaplabelfont@f}{\fontfamily{\familydefault}\selectfont} +\newcommand*{\subcaplabelfont@c}{\fontseries{\seriesdefault}\selectfont} +\newcommand*{\subcaplabelfont@s}{\fontshape{\shapedefault}\selectfont} +\newcommand*{\subcapfont}{% + \subcapfont@f\subcapfont@c\subcapfont@s} +\newcommand*{\subcapfont@f}{\fontfamily{\familydefault}\selectfont} +\newcommand*{\subcapfont@c}{\fontseries{\seriesdefault}\selectfont} +\newcommand*{\subcapfont@s}{\fontshape{\shapedefault}\selectfont} +\newif\ifsf@tight \sf@tighttrue +\newcounter{subfigure}[figure] +\@ifundefined{figuretopcaptrue}{\newif\iffiguretopcap}{} +\newif\ifsubfiguretopcap +\let\p@subfigure=\thefigure +\providecommand*{\thesubfigure}{(\alph{subfigure})} +\renewcommand*{\thesubfigure}{(\alph{subfigure})} +\newcommand*{\@thesubfigure}{\thesubfigure\hskip\subfiglabelskip} +\newcommand*{\@@thesubfigure}{\thesubfigure} +\let\ext@subfigure=\ext@figure +\newcommand*{\l@subfigure}{% + \@dottedxxxline{\ext@subfigure}{2}{3.8em}{2.5em}} +\newcounter{lofdepth} +\setcounter{lofdepth}{1} +\newcounter{subtable}[table] +\@ifundefined{tabletopcaptrue}{\newif\iftabletopcap}{} +\newif\ifsubtabletopcap +\let\p@subtable=\thetable +\providecommand*{\thesubtable}{(\alph{subtable})} +\renewcommand*{\thesubtable}{(\alph{subtable})} +\newcommand*{\@thesubtable}{\thesubtable\hskip\subfiglabelskip} +\newcommand*{\@@thesubtable}{\thesubtable} +\let\ext@subtable=\ext@table +\newcommand*{\l@subtable}{% + \@dottedxxxline{\ext@subtable}{2}{3.8em}{2.5em}} +\newcounter{lotdepth} +\setcounter{lotdepth}{1} +\DeclareOption{normal}{% + \subcaphangfalse + \subcapcenterfalse + \subcapcenterlastfalse + \subcapnoonelinefalse + \subcapraggedrightfalse + \subcapRaggedRightfalse} +\DeclareOption{hang}{\subcaphangtrue} +\DeclareOption{center}{\subcapcentertrue} +\DeclareOption{centerlast}{\subcapcenterlasttrue} +\DeclareOption{nooneline}{\subcapnoonelinetrue} +\DeclareOption{raggedright}{\subcapraggedrighttrue} +\DeclareOption{RaggedRight}{\subcapRaggedRighttrue} +\DeclareOption{isu}{\ExecuteOption{hang}} +\DeclareOption{anne}{\ExecuteOption{centerlast}} +\DeclareOption{scriptsize}{\renewcommand*{\subcapsize}{\scriptsize}} +\DeclareOption{footnotesize}{\renewcommand*{\subcapsize}{\footnotesize}} +\DeclareOption{small}{\renewcommand*{\subcapsize}{\small}} +\DeclareOption{normalsize}{\renewcommand*{\subcapsize}{\normalsize}} +\DeclareOption{large}{\renewcommand*{\subcapsize}{\large}} +\DeclareOption{Large}{\renewcommand*{\subcapsize}{\Large}} +\DeclareOption{rm}{\renewcommand*{\subcaplabelfont@f}{\rmfamily}} +\DeclareOption{sf}{\renewcommand*{\subcaplabelfont@f}{\sffamily}} +\DeclareOption{tt}{\renewcommand*{\subcaplabelfont@f}{\ttfamily}} +\DeclareOption{md}{\renewcommand*{\subcaplabelfont@c}{\mdseries}} +\DeclareOption{bf}{\renewcommand*{\subcaplabelfont@c}{\bfseries}} +\DeclareOption{up}{\renewcommand*{\subcaplabelfont@s}{\upshape}} +\DeclareOption{it}{\renewcommand*{\subcaplabelfont@s}{\itshape}} +\DeclareOption{sl}{\renewcommand*{\subcaplabelfont@s}{\slshape}} +\DeclareOption{sc}{\renewcommand*{\subcaplabelfont@s}{\scshape}} +\DeclareOption{RM}{\renewcommand*{\subcapfont@f}{\rmfamily}} +\DeclareOption{SF}{\renewcommand*{\subcapfont@f}{\sffamily}} +\DeclareOption{TT}{\renewcommand*{\subcapfont@f}{\ttfamily}} +\DeclareOption{MD}{\renewcommand*{\subcapfont@c}{\mdseries}} +\DeclareOption{BF}{\renewcommand*{\subcapfont@c}{\bfseries}} +\DeclareOption{IT}{\renewcommand*{\subcapfont@s}{\itshape}} +\DeclareOption{SL}{\renewcommand*{\subcapfont@s}{\slshape}} +\DeclareOption{SC}{\renewcommand*{\subcapfont@s}{\scshape}} +\DeclareOption{UP}{\renewcommand*{\subcapfont@s}{\upshape}} +\DeclareOption{figbotcap}{\figuretopcapfalse} +\DeclareOption{figtopcap}{\figuretopcaptrue} +\DeclareOption{tabbotcap}{\tabletopcapfalse} +\DeclareOption{tabtopcap}{\tabletopcaptrue} +\DeclareOption{FIGBOTCAP}{\ExecuteOptions{figbotcap}\subfiguretopcapfalse} +\DeclareOption{FIGTOPCAP}{\ExecuteOptions{figtopcap}\subfiguretopcaptrue} +\DeclareOption{TABBOTCAP}{\ExecuteOptions{tabbotcap}\subtabletopcapfalse} +\DeclareOption{TABTOPCAP}{\ExecuteOptions{tabtopcap}\subtabletopcaptrue} +\DeclareOption{loose}{% + \subfigtopskip = 10\p@ + \subfigcapskip = 10\p@ + \subfigcaptopadj = 0\p@ + \subfigbottomskip = 10\p@ + \subfigcapmargin = 10\p@ + \subfiglabelskip = 0.33em + \renewcommand*{\@thesubfigure}{\thesubfigure\space} + \renewcommand*{\@thesubtable}{\thesubtable\space} + \sf@tightfalse} +\DeclareOption{tight}{% + \subfigtopskip = 5\p@ + \subfigcapskip = 0\p@ + \subfigcaptopadj = 3\p@ + \subfigbottomskip = 5\p@ + \subfigcapmargin = \z@ + \subfiglabelskip = 0.33em plus 0.07em minus 0.03em + \renewcommand*{\@thesubfigure}{\thesubfigure\hskip\subfiglabelskip} + \renewcommand*{\@thesubtable}{\thesubtable\hskip\subfiglabelskip} + \sf@tighttrue} +\ExecuteOptions{normal,footnotesize,FIGBOTCAP,TABBOTCAP,loose} +\InputIfFileExists{subfigure.cfg}{% + \typeout{****************************************^^J% + * Local config file subfigure.cfg used *^^J% + ****************************************}}{} +\ProcessOptions +\newcommand*{\subfigure}{% + \bgroup + \let\subfig@oldlabel=\label + \let\label=\subfloat@label + \@nameuse{if\@captype topcap}\else + \advance\@nameuse{c@\@captype}\@ne + \fi + \refstepcounter{sub\@captype}% + \@ifnextchar [% + {\@subfigure}% + {\@subfigure[\@empty]}} +\let\subtable=\subfigure +\def\@subfigure[#1]{% + \@ifnextchar [% + {\@subfloat{sub\@captype}[{#1}]}% + {\@subfloat{sub\@captype}[\@empty{#1}][{#1}]}} +\newskip\subfig@top +\newskip\subfig@bottom +\long\def\@subfloat#1[#2][#3]#4{% + \@tempcnta=1 + \ifsf@tight + \if@minipage + \@tempcnta=\z@ + \else\ifdim \lastskip=\z@ \else + \@tempcnta=2 + \fi\fi + \fi + \@nameuse{if\@captype topcap}% + \subfig@top=\subfigbottomskip + \subfig@bottom=\subfigtopskip + \else + \subfig@top=\subfigtopskip + \subfig@bottom=\subfigbottomskip + \fi + \leavevmode + \setbox\@tempboxa \hbox{#4}% + \@tempdima=\wd\@tempboxa + \vtop\bgroup + \vbox\bgroup + \ifcase\@tempcnta + \@minipagefalse + \or + \vspace{\subfig@top}% + \or + \ifdim \lastskip=\z@ \else + \@tempskipb\subfig@top\relax\@xaddvskip + \fi + \fi + \@nameuse{if#1topcap}% + \ifx \@empty#3\relax \else + \@subcaption{#1}{#2}{#3}% + \vskip\subfigcapskip + \vskip\subfigcaptopadj + \fi\egroup + \box\@tempboxa + \else + \box\@tempboxa\egroup + \ifx \@empty#3\relax \else + \vskip\subfigcapskip + \@subcaption{#1}{#2}{#3}% + \fi + \fi + \vspace{\subfig@bottom}% + \egroup + \@nameuse{if\@captype topcap}\else + \global\advance\@nameuse{c@\@captype}\m@ne + \fi + \egroup} +\newcommand*{\@subfigcaptionlist}{} +\newcommand{\@subcaption}[3]{% + \ifx \relax#2\relax \else + \bgroup + \let\label=\@gobble + \let\protect=\string + \def\@subcaplabel{\@nameuse{@@the#1}}% + \xdef\@subfigcaptionlist{% + \@subfigcaptionlist,% + {\protect\numberline{\@subcaplabel}\noexpand{\ignorespaces #2}}}% + \egroup + \fi + \@nameuse{@make#1caption}{\@nameuse{@the#1}}{#3}} +\newcommand*{\listsubcaptions}{% + \@ifstar + {\gdef\@subfigcaptionlist{}}% + {\@listsubcaptions{\@captype}}} +\newcommand*{\@listsubcaptions}[1]{% + \@ifundefined{@captype}{}{% + \@ifundefined{ext@sub#1}{}{% + \@for \sf@temp:=\@subfigcaptionlist \do {% + \ifx \@empty\sf@temp\relax \else + \addcontentsline + {\@nameuse{ext@sub#1}}% + {sub#1}% + {\sf@temp}% + \fi}}}% + \gdef\@subfigcaptionlist{}} +\newcommand{\@makesubfigurecaption}[2]{% + \setbox\@tempboxa\hbox{% + \subcapsize + {\subcaplabelfont #1}% + {\subcapfont\ignorespaces #2}}% + \@tempdimb=-\subfigcapmargin + \multiply\@tempdimb\tw@ + \advance\@tempdimb\@tempdima + \hbox to\@tempdima{% + \hss + \ifdim \wd\@tempboxa >\@tempdimb + \subfig@caption{#1}{#2}% + \else\ifsubcapnooneline + \subfig@caption{#1}{#2}% + \else + \box\@tempboxa + \fi\fi + \hss}} +\let\@makesubtablecaption=\@makesubfigurecaption +\newcommand{\subfig@caption}[2]{% + \ifsubcaphang + \sbox{\@tempboxa}{\subcapsize\subcaplabelfont #1}% + \addtolength{\@tempdimb}{-\wd\@tempboxa}% + \usebox{\@tempboxa}% + \subfig@captionpar{\@tempdimb}{% + {\subcapfont\ignorespaces #2}}% + \else + \subfig@captionpar{\@tempdimb}{% + {\subcaplabelfont #1}% + {\subcapfont\ignorespaces #2}}% + \fi} +\newcommand{\subfig@captionpar}[2]{% + \parbox[t]{#1}{% + \subcapsize + \ifsubcapraggedright + \setlength{\leftskip}{\z@}% + \setlength{\@rightskip}{\@flushglue}% + \setlength{\rightskip}{\@rightskip}% + \setlength{\parindent}{\z@}% + \else\ifsubcapRaggedRight + \setlength{\leftskip}{\z@}% + \setlength{\@rightskip}{\z@ plus \tw@ em}% + \setlength{\rightskip}{\@rightskip}% + \setlength{\parfillskip}{\z@ plus \@ne fil}% + \setlength{\parindent}{\z@}% + \else\ifsubcapcenter + \setlength{\leftskip}{\@flushglue}% + \setlength{\rightskip}{\@flushglue}% + \setlength{\parfillskip}{\z@skip}% + \else\ifsubcapcenterlast + \addtolength{\leftskip}{\z@ plus 1fil}% + \addtolength{\rightskip}{\z@ plus -1fil}% + \setlength{\parfillskip}{\z@ plus 2fil}% + \fi\fi\fi\fi + #2}} +\newcommand*{\@dottedxxxline}[6]{% + \ifnum #2>\@nameuse{c@#1depth}\else + \@dottedtocline{0}{#3}{#4}{#5}{#6} + \fi} +\let\subfig@end@float=\end@float +\renewcommand*{\end@float}{% + \@listsubcaptions{\@captype}% + \subfig@end@float} +\let\subfig@end@dblfloat=\end@dblfloat +\renewcommand*{\end@dblfloat}{% + \@listsubcaptions{\@captype}% + \subfig@end@dblfloat} +\let\subfig@oldcaption=\@caption +\long\def\@caption#1[#2]#3{% + \@ifundefined{if#1topcap}% + {\subfig@oldcaption{#1}[{#2}]{#3}}% + {\@nameuse{if#1topcap}% + \@listsubcaptions{#1}% + \subfig@oldcaption{#1}[{#2}]{#3}% + \else + \subfig@oldcaption{#1}[{#2}]{#3}% + \@listsubcaptions{#1}% + \fi}} +\let\subfig@oldlabel=\relax +\newcommand*{\subfloat@label}{% + \@ifnextchar( + {\sf@sub@label} + {\sf@sub@label(Sub\@captype\space + \@ifundefined{thechapter}{}{% + \@nameuse{thechapter}\space}% + \@nameuse{p@sub\@captype}% + \@nameuse{thesub\@captype}.)}} +\let\sub@label\subfloat@label +\def\sf@sub@label(#1)#2{% + \ifhyperrefloaded + \protected@edef\@currentlabelname{% + \expandafter\strip@period #1\relax.\relax\@@@}% + \fi + \sf@@sub@label{#2}} +\newcommand*{\sf@@sub@label}[1]{% + \@bsphack + \subfig@oldlabel{#1}% + \ifhyperrefloaded + \protected@write\@auxout{}{% + \string\newlabel{sub@#1}% + {{\@nameuse{@@thesub\@captype}}% + {\thepage}% + {\expandafter\strip@period\@currentlabelname\relax.\relax\@@@}% + {\@currentHref}% + {}}}% + \else + \protected@write\@auxout{}{% + \string\newlabel{sub@#1}% + {{\@nameuse{@@thesub\@captype}}% + {\thepage}}}% + \fi + \@esphack} +\newcommand\subref[1]{% + \ref{sub@#1}} +\newcommand\Subref[1]{% + {\subcaplabelfont + \ref{sub@#1}}} +\endinput +%% +%% End of file `hhsubfigure.sty'. diff --git a/Master/texmf-dist/tex/latex/bgteubner/ptmxcomp.sty b/Master/texmf-dist/tex/latex/bgteubner/ptmxcomp.sty new file mode 100644 index 00000000000..c36aba20662 --- /dev/null +++ b/Master/texmf-dist/tex/latex/bgteubner/ptmxcomp.sty @@ -0,0 +1,300 @@ +% +% ptmxcomp package +% +% ptmxcomp.sty +% Copyright 2004 Harald Harders +% +% This program may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.2 +% of this license or (at your opinion) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.2 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% ChangeLog: +% +% 2004/11/19 v0.03 Harald Harders (h.harders@tu-bs.de) +% - Avoid to use package calc +% +\ProvidesPackage{ptmxcomp} + [2004/11/19 v0.03 Declare textcomp symbols for mathptmx (HH)] + +\typeout{ptmxcomp: Redefine many accents and symbols from textcomp and + mathcomp.}% +\typeout{\space\space\space\space\space\space\space\space\space\space + Some are ugly. These symbols generate a warning when using them.^^J}% + +\RequirePackage{textcomp} +\RequirePackage[rmdefault]{mathcomp} +\RequirePackage{graphicx} +\RequirePackage{amsmath} + +% \end{macrocode} +% Umkreiste Zahlen wiederherstellen, wenn Times verwendet (wird von +% textcomp vermurkst): +% \begin{macrocode} +\DeclareTextAccentDefault{\textcircled}{OMS} + + +% \cs{textohm} and \cs{tcohm} have to be corrected in case of Times as +% base font. +\renewcommand*\tcohm{\upOmega}% +\renewcommand*\textohm{% + \begingroup + \ifthenelse{\equal{\f@series}{b}}{\boldmath}{}% + \ifthenelse{\equal{\f@shape}{it}}{% + \ensuremath{\Omega}% + }{% + \ifthenelse{\equal{\f@shape}{sl}}{% + \ensuremath{\Omega}% + }{% + \ensuremath{\upOmega}% + }% + }% + \endgroup +} + +% \end{macrocode} +% \cs{textpertenthousand} and \cs{tcpertenthousand} have to be +% replaced by European Computer Modern in case of Times as base font. +% \begin{macrocode} +\newcommand*\hhcls@textpertenthousand{}% +\let\hhcls@textpertenthousand=\textpertenthousand + +\renewcommand\textpertenthousand{% + \begingroup + \fontfamily{cmr}\selectfont + \hhcls@textpertenthousand + \PackageWarning{ptmxcomp}{\string\textperthousand\space and + \string\tcperthousand\space do not fit to\MessageBreak + Times (they are taken from European Computer\MessageBreak + Modern)}% + \endgroup +}% +\renewcommand*\tcpertenthousand{\text{\textpertenthousand}} + +% \end{macrocode} +% Times does not have old-style digits. +% \begin{macrocode} + \renewcommand*\tcdigitoldstyle{% + \PackageWarning{ptmxcomp}{\string\tcdigitoldstyle\space is ignored}% + } + +\newcommand*\hhcls@substituteaccent[2]{% + \expandafter\let\csname hhcls@#1\endcsname=#2 + \expandafter\DeclareRobustCommand\csname #1\endcsname[1]{% + \begingroup + \ifthenelse{\equal{\f@family}{ptm}}{% + \fontencoding{TS1}\fontfamily{cmr}\selectfont + \csname hhcls@#1\endcsname{% + \fontencoding{T1}\fontfamily{ptm}\selectfont ##1}% + }{% + \ifthenelse{\equal{\f@family}{phv}}{% + \fontencoding{TS1}\fontfamily{cmss}\selectfont + \csname hhcls@#1\endcsname{% + \fontencoding{T1}\fontfamily{phv}\selectfont ##1}% + }{% + \ifthenelse{\equal{\f@family}{pcr}}{% + \fontencoding{TS1}\fontfamily{cmtt}\selectfont + \csname hhcls@#1\endcsname{% + \fontencoding{T1}\fontfamily{pcr}\selectfont ##1}% + }{% + \csname hhcls@#1\endcsname{##1}% + }% + }% + }% + \endgroup + \PackageWarning{ptmxcomp}{Accent #2 substituted by + the European\MessageBreak + Computer Modern variant}% + }% +} +\hhcls@substituteaccent{t}{\t} +\hhcls@substituteaccent{capitaltie}{\capitaltie} +\hhcls@substituteaccent{newtie}{\newtie} +\hhcls@substituteaccent{capitalnewtie}{\capitalnewtie} +\renewcommand*\textleftarrow{\ensuremath{\leftarrow}}% +\renewcommand*\textrightarrow{\ensuremath{\rightarrow}}% +\let\hhcls@textblank=\textblank +\renewcommand*\textblank{% + \begingroup + \ifthenelse{\equal{\f@family}{ptm}}{% + \fontencoding{OT1}\fontfamily{cmr}\selectfont + \raisebox{0.4ex}[0ex][0ex]{\symbol{32}}% + \kern-0.25em b% + }{% + \ifthenelse{\equal{\f@family}{phv}}{% + \fontencoding{OT1}\fontfamily{cmss}\selectfont + \raisebox{0.5ex}[0ex][0ex]{\symbol{32}}% + \kern-0.25em b% + }{% + \ifthenelse{\equal{\f@family}{pcr}}{% + \fontencoding{OT1}\fontfamily{cmr}\selectfont + \raisebox{0.3ex}[0ex][0ex]{\symbol{32}}% + \kern-0.25em b% + }{% + \hhcls@textblank + }% + }% + }% + \endgroup + \PackageWarning{ptmxcomp}{\string\textblank\space mixed\MessageBreak + with European Computer Modern}% +} + +\renewcommand*\textdblhyphen{% + \settowidth{\@tempdima}{-}% + \raisebox{0.15ex}[0pt][0pt]{-}% + \kern-\the\@tempdima + \raisebox{-0.15ex}[0pt][0pt]{-}% + \PackageWarning{ptmxcomp}{Using faked \string\textdblhyphen}% +} +\renewcommand*\textzerooldstyle{0% + \PackageWarning{ptmxcomp}{Old-style digit 0 not available}% +} +\renewcommand*\textoneoldstyle{1% + \PackageWarning{ptmxcomp}{Old-style digit 1 not available}% +} +\renewcommand*\texttwooldstyle{2% + \PackageWarning{ptmxcomp}{Old-style digit 2 not available}% +} +\renewcommand*\textthreeoldstyle{3% + \PackageWarning{ptmxcomp}{Old-style digit 3 not available}% +} +\renewcommand*\textfouroldstyle{4% + \PackageWarning{ptmxcomp}{Old-style digit 4 not available}% +} +\renewcommand*\textfiveoldstyle{5% + \PackageWarning{ptmxcomp}{Old-style digit 5 not available}% +} +\renewcommand*\textsixoldstyle{6% + \PackageWarning{ptmxcomp}{Old-style digit 6 not available}% +} +\renewcommand*\textsevenoldstyle{7% + \PackageWarning{ptmxcomp}{Old-style digit 7 not available}% +} +\renewcommand*\texteightoldstyle{8% + \PackageWarning{ptmxcomp}{Old-style digit 8 not available}% +} +\renewcommand*\textnineoldstyle{9% + \PackageWarning{ptmxcomp}{Old-style digit 9 not available}% +} +\renewcommand*\textlangle{\ensuremath{\langle}} +\renewcommand*\textrangle{\ensuremath{\rangle}} +\renewcommand*\textmho{\rotatebox[origin=cc]{180}{\textohm}} +\renewcommand*\textbigcircle{\textcircled{}} + +\renewcommand*\textuparrow{\ensuremath{\uparrow}}% +\renewcommand*\textdownarrow{\ensuremath{\downarrow}}% +\newcommand*\hhcls@tsone@symbol[2]{% + \begingroup + \ifthenelse{\equal{\f@family}{ptm}}{% + \fontfamily{cmr}% + }{% + \ifthenelse{\equal{\f@family}{phv}}{% + \fontfamily{cmss}% + }{% + \ifthenelse{\equal{\f@family}{pcr}}{% + \fontfamily{cmtt}% + }{% + }% + }% + }% + \fontencoding{TS1}\selectfont\symbol{#2}% + \endgroup + \PackageWarning{ptmxcomp}{\string#1\space used from\MessageBreak + European Computer Modern}% +} +\renewcommand*\textborn{\hhcls@tsone@symbol{\textborn}{98}} +\renewcommand*\textdivorced{\hhcls@tsone@symbol{\textdivorced}{99}} +\renewcommand*\textdied{\hhcls@tsone@symbol{\textdied}{100}} +\renewcommand*\textleaf{\hhcls@tsone@symbol{\textleaf}{108}} +\renewcommand*\textmarried{\hhcls@tsone@symbol{\textmarried}{109}} +\renewcommand*\textmusicalnote{\hhcls@tsone@symbol{\textmusicalnote}{110}} +\renewcommand*\textdblhyphenchar{\textdblhyphen} + +\renewcommand*\textdollaroldstyle{\$% + \PackageWarning{ptmxcomp}{No old-style dollar available.\MessageBreak + Using ordinary one}% +} +\renewcommand*\textcentoldstyle{\textcent% + \PackageWarning{ptmxcomp}{No old-style cent available.\MessageBreak + Using ordinary one}% +} +\renewcommand*\textcolonmonetary{% + \settowidth{\@tempdima}{C}% + \makebox[\the\@tempdima][c]{\rule{0.05em}{0pt}|}\kern-\the\@tempdima C% +} +\renewcommand*\textwon{% + \settowidth{\@tempdimb}{W}% + \makebox[\@tempdimb][c]{\raisebox{.9ex}{\rule{\@tempdimb}{.1ex}}}% + \kern-\the\@tempdimb + \makebox[\@tempdimb][c]{\raisebox{.5ex}{\rule{\@tempdimb}{.1ex}}}% + \kern-\the\@tempdimb + W% +} +\renewcommand*\textnaira{% + \settowidth{\@tempdimb}{N}% + \makebox[\@tempdimb][c]{\raisebox{.9ex}{\rule{\@tempdimb}{.1ex}}}% + \kern-\the\@tempdimb + \makebox[\@tempdimb][c]{\raisebox{.5ex}{\rule{\@tempdimb}{.1ex}}}% + \kern-\the\@tempdimb + N% +} +\renewcommand*\textguarani{% + \settowidth{\@tempdima}{G}% + \makebox[\@tempdima][c]{\rule{0.05em}{0pt}|}\kern-\the\@tempdima G% +} +\renewcommand*\textpeso{% + \settowidth{\@tempdimb}{P}% + \makebox[0pt][l]{\raisebox{.4ex}{\rule{0.55\@tempdimb}{0.1ex}}}% + P% +} +\renewcommand*\textlira{% + \settowidth{\@tempdimb}{\textsterling}% + \makebox[0pt][l]{\rule{0.05\@tempdimb}{0pt}% + \raisebox{.5ex}{\rule{0.64\@tempdimb}{0.1ex}}}% + \textsterling +} + +\renewcommand*\textinterrobang{% + \settowidth{\@tempdimb}{?}% + \makebox[\@tempdimb][c]{!}\kern-\@tempdimb?% +} +\renewcommand*\textinterrobangdown{% + \settowidth{\@tempdimb}{?`}% + \makebox[\@tempdimb][c]{!`}\kern-\@tempdimb?`% +} +\renewcommand*\textdong{% + \underline{\dj}% +} + +\renewcommand*\textdiscount{% + \settoheight{\@tempdima}{/}% + \settoheight{\@tempdimc}{.}% + \raisebox{\@tempdima-\@tempdimc}{.}\kern-\@tempdimc + /% + \kern-\@tempdimc.% +} + +\renewcommand*\textestimated{% + \scalebox{1.3}{e}% +} + +\renewcommand*\textopenbullet{% + \raisebox{-0.45ex}[\height][0pt]{\textdegree}% +} + +%\renewcommand*\textservicemark{% +% \textsuperscript{SM}% +%} + +\renewcommand*\textcopyleft{% + \rotatebox[origin=cc]{180}{\textcopyright}% +} + +%\renewcommand*\textcircledP{\textcircled{P}} + + +\endinput diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index 57f054ce9cb..ebcb8247484 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -52,7 +52,7 @@ my @TLP_working = qw( beameraudience beamerposter beamerthemejltree beamersubframe beamerthemenirma beebe begriff bengali bera berenisadf betababel beton - bez123 bezos bgreek bhcexam + bez123 bezos bgreek bgteubner bhcexam bib-fr bibarts biber bibhtml biblatex biblatex-apa biblatex-chem biblatex-chicago biblatex-dw biblatex-fiwi biblatex-historian diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index 9a623e039b8..939a421b7c9 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -137,6 +137,7 @@ chomp ($Build = `cd $Master/../Build/source && pwd`); 'berenisadf', "&MAKEcopy", 'babeltools', "die 'skipping, use bezos'", 'bgreek', "&MAKEcopy", + 'bgteubner', "&MAKEflatten", 'bib2ml', "die 'skipping, no self-locate?, etc.'", 'bib2xhtml', "die 'skipping, requires PDF::API2'", 'bibextract', "die 'skipping, hardwires nawk cmd name'", @@ -1129,6 +1130,7 @@ $standardtex='\.(.bx|cfg|sty|clo|ldf|cls|def|fd|cmap|4ht)$'; 'bclogo', 'bc[^l].*\.(tex|pdf|eps|mps)|bclogo\.sty', 'beamer2thesis','\.jpg|' . $standardtex, 'bghyphen', '\.tex', + 'bgteubner', '\.sty|\.cls|[^c]\.cfg', # omit ltxdoc.cfg, would be system-wide 'bibtex', 'apalike\..*|' . $standardtex, 'bidi', '^bidi\.tex|' . $standardtex, 'blockdraw_mp','NULL', # skip .sty's diff --git a/Master/tlpkg/tlpsrc/bgteubner.tlpsrc b/Master/tlpkg/tlpsrc/bgteubner.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/Master/tlpkg/tlpsrc/bgteubner.tlpsrc diff --git a/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc b/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc index 7640b091a68..d99bd30a379 100644 --- a/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc @@ -18,6 +18,7 @@ depend arsclassica depend asaetr depend ascelike depend beamer-FUBerlin +depend bgteubner depend cascadilla depend chem-journal depend classicthesis |