LaTeX Vorlage für Wissenschaftliche Arbeiten

Klassen und Pakete zur einfachen Umsetzung individueller Vorstellungen


Lowrider614
Forum-Anfänger
Forum-Anfänger
Beiträge: 44
Registriert: Mi 3. Aug 2011, 16:29

LaTeX Vorlage für Wissenschaftliche Arbeiten

Beitrag von Lowrider614 »

Hallo,

ich arbeite gerade an der Latex Vorlage für wissenschaftliche Arbeiten an unserem Institut. So sieht die im Moment aus.
\newif\ifprint
% default "\printfalse" für zweiseitigen Druck
% setze "\printtrue" für einseitigen Druck
%\printtrue

\newif\ifdiss
% default "\dissfalse" für studentische Arbeit
% setze "\disstrue" für Dissertation
\disstrue

\newif\ifen
% default "\enfalse" für Arbeit in Deutsch
% setze "\entrue" für Arbeit in Englisch
%\entrue

\newif\ifnorm
% default "\normfalse" für Literatur und Normenverzeichnis in einem
% setze "\normtrue" für getrenntes Literatur und Normenverzeichnis
\normtrue

\ifprint
	\documentclass[oneside]{scrreprt} % für einseitigen Druck
\else
	\documentclass[twoside]{scrreprt} % für zweiseitigen Druck
\fi

\KOMAoptions{paper=a4%
             ,fontsize=12%
             ,usegeometry=true%
             ,parskip=half%
             ,captions=nooneline%
             ,captions=tableheading%
             ,numbers=noenddot%
             ,listof=entryprefix%
             ,open=right%
             }
             
% Zeilenabstand
\usepackage[onehalfspacing]{setspace}
\recalctypearea

% Seitenenlayout
\usepackage{geometry}
\ifprint
	\geometry{inner=22.5mm,outer=22.5mm,tmargin=30mm,bmargin=20mm,bindingoffset=5mm}
\else
	\geometry{inner=25mm,outer=20mm,tmargin=30mm,bmargin=20mm,bindingoffset=5mm}
\fi

% Einstellungen Schrift/Sprache/Kodierung
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,ngerman]{babel}
\usepackage[babel,german=quotes]{csquotes}

% Kopf- und Fußzeilen
\usepackage[headsepline]{scrlayer-scrpage} 
\pagestyle{scrheadings}
\clearpairofpagestyles
\automark[section]{chapter}
\ohead{\pagemark}
\ihead{\headmark}
\setkomafont{pageheadfoot}{\rmfamily\normalsize}

% Festlegen Schriftarten
\usepackage{mathptmx}			 % Times
\usepackage[scaled=0.82]{helvet} % Helvetica
\renewcommand{\rmdefault}{ptm}
\renewcommand{\sfdefault}{phv}
\renewcommand\familydefault{\rmdefault}

% Setzen Überschriften
\addtokomafont{chapter}{\rmfamily\mdseries\Huge}
\renewcommand*{\chapterheadstartvskip}{\vspace*{0pt}}% Abstand vor chapter einstellen
\renewcommand*{\chapterheadendvskip}{\vspace*{36pt}}% Abstand nach chapter einstellen
\addtokomafont{section}{\rmfamily\bfseries\large}
\RedeclareSectionCommand[%
                         beforeskip = -24pt% negativer Wert um den Einzug nach der Überschrift zu vermeiden
                         ,afterskip  = 8pt% Abstand nach der Überschrift
                         ,indent  = 0pt% Einzug vor der Zahl der Überschrift
                         ]{section}
\addtokomafont{subsection}{\rmfamily\bfseries}
\RedeclareSectionCommand[%
                         beforeskip = -24pt% negativer Wert um den Einzug nach der Überschrift zu vermeiden
                         ,afterskip  = 8pt% Abstand nach der Überschrift
                         ,indent  = 0pt% Einzug vor der Zahl der Überschrift
                         ]{subsection}
\addtokomafont{subsubsection}{\rmfamily\bfseries}
\RedeclareSectionCommand[%
                         beforeskip = -24pt% negativer Wert um den Einzug nach der Überschrift zu vermeiden
                         ,afterskip  = 8pt% Abstand nach der Überschrift
                         ,indent  = 0pt% Einzug vor der Zahl der Überschrift
                         ]{subsubsection}
                         
% Tabellen- und Abbildungsüberschriften
\addtokomafont{caption}{\itshape} % Schriftart der Beschreibung
\addtokomafont{captionlabel}{\itshape}  % Schriftart des Labels
\renewcommand*{\figureformat}{\figurename~\thechapter.\arabic{figure}}
\renewcommand*{\tableformat}{\tablename~\thechapter.\arabic{table}}

%Abstand Gleitumgebungen zum Text
\setlength{\intextsep}{12pt}
\setlength{\textfloatsep}{12pt}

% Inhaltsverzeichnis
\addtokomafont{chapterentry}{\rmfamily}
\addtokomafont{chapterentrydots}{\rmfamily\bfseries}
\KOMAoption{toc}{chapterentrywithdots, listofnumbered}

% Literaturverzeichnis
\usepackage[backend		 = biber,
		    citestyle	 = authoryear,
		    bibstyle	 = authoryear,
		    sorting		 = nyvt,
		    maxcitenames = 3,
		    maxbibnames	 = 25] {biblatex}		    
\ifen
	\defbibheading{Literatur}{\chapter{Bibliography}}
	\defbibheading{Norm}{\chapter{Norms}}
\else
	\defbibheading{Literatur}{\chapter{Literaturverzeichnis}}
	\defbibheading{Norm}{\chapter{Normenverzeichnis}}
\fi
\addbibresource{LitDaten.bib} 

% Zeichnen und Beschriften in LaTex
\usepackage{tikz}

% Für das Minimalbeispiel
\usepackage{blindtext}
\usepackage{graphicx}
\usepackage{filecontents} 

\begin{filecontents}{LitDaten.bib} 
@book{MAXW69,
 author = {Maxwell, James Clerk and Niven, W. D.},
 year = {1869},
 title = {The Scientific Papers of James Clerk Maxwell},
 address = {Cambridge},
 publisher = {{Cambridge University Press}},
 isbn = {978-1108015387}
}
@misc{DIN690,
 year = {2013},
 title = {Information und Dokumentation -- Richtlinien f{\"u}r Titelangaben und Zitierung von Informationsressourcen},
 author = {{DIN ISO 690}},
 keywords = {Norm},
 number = {690},
 label = {DIN ISO}
}
\end{filecontents} 

\begin{document}
    \ifen
        \selectlanguage{english}
    \else
        \selectlanguage{ngerman}
    \fi    
	% setze Seitenzahlen auf Römisch
	\pagenumbering{Roman}
	
	% Titelseite
	\ifdiss
		% Seitenränder für Titelseite anpassen
        \newgeometry{left=25mm, right=25mm, top=30mm, bottom=30mm, bindingoffset=0mm}
        \begin{titlepage}
            Ich bin ein Titelblatt für Dissertationen
        \end{titlepage}
            % zu ursprünglichen Seitenrändern zurückkehren
        \restoregeometry
	\else
	    \newgeometry{left=25mm, right=25mm, top=30mm, bottom=30mm, bindingoffset=0mm}
	    \begin{titlepage}
		    Ich bin ein Titelblatt für Studienarbeiten
		\end{titlepage}
		\restoregeometry
	\fi
	
	% Inhaltsverzeichnis
	\tableofcontents
	\cleardoublepage
	
	\pagenumbering{arabic}
	\setcounter{page}{1}
	\Blinddocument
	
	\addchaptertocentry{2}{\blindtext 1}
	\addsectiontocentry{2.1}{section}
	\addsubsectiontocentry{2.1.1}{\blindtext}
	\addsubsectiontocentry{2.1.2}{\blindtext}
	\addsubsectiontocentry{2.1.3}{\blindtext}
	\addsubsectiontocentry{2.1.4}{\blindtext}
	
	% Zitate
	\cite{MAXW69}\\
	\cite{DIN690}\\
	
	% Figure
	\begin{figure}[htb]
        \sffamily
        \centering
        \includegraphics[width=\textwidth]{example-image-b} 
        \caption{Ich bin eine schöne Abbildung}
        \label{fig:01}
    \end{figure}
    
    \captionof{figure}[\blindtext 1]
    
    \captionof{figure}[\blindtext 2]
    
    \captionof{figure}[\blindtext 3]
    
    \captionof{figure}[\blindtext 4]
    
    \captionof{figure}[\blindtext 5]
    
    \captionof{figure}[\blindtext 6]
    
    \captionof{figure}[\blindtext 7]
    
    \begin{table}[htb]
        \sffamily
        \centering
        \caption{Ich bin eine Tabelle}
        \begin{tabular}{p{0.16\textwidth} p{0.20\textwidth} p{0.55\textwidth}}
        \textbf{Buchstabe}	& \textbf{Bedeutung} & \textbf{Beschreibung}\\
        \hline
        S	&	Spezifisch	&	Ziele müssen eindeutig definiert sein.\\
        M	&	Messbar		&	Ziele müssen messbar sein.\\ 
        A	&	Akzeptiert	&	Ziele müssen von den Empfängern akzeptiert werden.\\
        R	&	Realistisch	&	Ziele müssen möglich sein.\\
        T	&	Terminiert	&	Zu jedem Ziel gehört eine klare Terminvorgabe, bis wann das Ziel erreicht sein muss.\\
        \hline
        \end{tabular}
        \label{tab:01}
    \end{table}
    
    \captionof{table}[\blindtext 1]
    
    \captionof{table}[\blindtext 2]
    
    \captionof{table}[\blindtext 3]
    
    \captionof{table}[\blindtext 4]
    
    \captionof{table}[\blindtext 5]
    
    \captionof{table}[\blindtext 6]
    
    \captionof{table}[\blindtext 7]
    
	% Anhang mit Verzeichnissen (Abbildungen, Tabellen, Literatur)
    \appendix

	% Abbildungsverzeichnis
    \listoffigures
    
    % Tabellenverzeichnis
    \listoftables
    
    % Literatur
	\ifnorm
		\printbibliography[heading=Literatur,notkeyword=Norm] % Literaturverzeichnis
		\printbibliography[heading=Norm,keyword=Norm] % Normenverzeichnis
	\else
		\printbibliography[heading=Literatur]
	\fi
\end{document}

Die wichtigsten Funktionen sind die vier Schalter gleich zu Beginn des Codes.
Dort kann ein- oder zweiseitiger Druck;
Dissertation oder Studienarbeit;
Deutsch oder Englisch als Hauptsprache des Dokumentes
und Normenverzeichnis ja oder nein gewählt werden.

Ziel bei der Erstellung der Vorlage war, so viel als möglich Funktionen aus KOMA Script zu nutzen.

Aktuell habe ich noch folgende Probleme, für die ich eure Hilfe brauche.

Problem 1: Titelseite
Auf der Titelseite muss ich mit dem geometry Paket die Seitenränder umstellen, die Kommandos \coverpagebottommargin etc. nur funktionieren, wenn ich \maketitle benutzen würde. Kann ich aber nicht, da es von der Hochschule ein vorgegebens Layout gibt, welches sich durch TiKZ sehr gut annähern lässt. Den Code habe ich euch erspart, der funktioniert aber gut. Geht das wirklich nicht anders? Die Titelseite soll halt, egal ob ein- oder zweiseitiger Druck, mittig auf dem Papier platziert sein.

Problem 2: Kopfzeile im Literaturverzeichnis
Die Kopfzeilen sollen im ganzen Dokument gleich definiert sein. Außen steht immer die Seitenzahl.
Bei einseitigem Druck steht innen (links) der Titel des aktuellen Kapitels.
Bei zweiseitigem Druck steht innen auf der linken Seite der Titel des Kapitels und innen auf der rechten Seite der Titel des aktuellen Unterkapitels. Wenn kein Unterkapitel vorhanden ist, bleibt die rechte Innenseite einfach leer, damit nicht zweimal das Gleiche nebeneinander steht.
Diese Vorgaben lassen sich mit meinem Code auch einhalten, einzig im Inhaltsverzeichnis klappt es nicht. Da steht zweimal das Kapitel in der Kopfzeile.


Problem 3: Große vertikale Abstände
KOMA Script scheint sich irgendwie anders zu verhalten als die vorher verwendete article Klasse was das Strecken der vertikalen Abstände angeht. Da entstehen doch ganz schön größe weiße Flächen im Dokument, nur damit unten die letzte Zeile bündig ist. Das ist wahrscheinlich auch nicht im Sinne des Erfinders. Was kann ich denn hier machen um zum einen die Vorgaben bezüglich der Seitenränder und des Zeilenabstandes einzuhalten (ich habe den scrguide gelesen und auch das Kapitel zum Satzspiegel, ich weiß meiner ist hässlich aber es ist nunmal die Vorgabe und mit Professoren streitet man nicht, wenn man noch promovieren will) und zum anderen diese großen vertikalen Abstände verhindern will?


Generell wäre ich auch für Tipps und Tricks dankbar, die das eine oder andere besser, einfacher oder auch nur schöner machen.


Vielen Dank schon einmal für eure Hilfe!


Tim
"Wenn du nicht helfen kannst, dann störe. Dabei sein ist alles."
Jürgen von der Lippe

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Oh nein. Nicht wieder eine Vorlage.
https://de.m.wikibooks.org/wiki/LaTeX-K ... e_Arbeiten
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Lowrider614
Forum-Anfänger
Forum-Anfänger
Beiträge: 44
Registriert: Mi 3. Aug 2011, 16:29

Beitrag von Lowrider614 »

Lieber Johannes_B,
Oh nein. Nicht wieder eine Vorlage.
https://de.m.wikibooks.org/wiki/LaT.... ... e_Arbeiten
sagt eigentlich nur aus, dass jeder das Rad neu erfinden soll. Wenn ich mir so überlege, wieviel Zeit ich mit Einarbeiten in Latex und damit in geschlossenen Räumen zu z.T. sehr später Stunde an meinem Schreibtisch verbracht habe, kann ich jeden Studierenden oder Doktoranden nachvollziehen, der dann lieber auf Word oder OpenOffice umschwenkt. Da geht vieles nicht, das Aussehen des Dokumentes ist am Ende - naja grausam ist wahrscheinlich übertrieben aber schön ist halt definitiv auch anders. Um einfachste Formatierungen am Dokument wie beispielsweise Seitenränder als Laie umzusetzen braucht man da aber nicht tagelang googeln und Dokus lesen. Verstehe mich bitte nicht falsch, ich bin großer LaTeX Fan und weiß um seine Vorzüge, aber die Usability ist zum Teil echt zum Heulen. Und ja, ich habe auch die Bemerkungen von Markus Kohm in diversen anderen Foren dazu gelesen, was der eingefleischte LaTeX Guru zum Einstellen der Seitenränder meint, das ändert halt wenig bis gar nichts daran, dass es trotzdem alle so machen und es immer wieder gefordert wird. Typografie hin oder her, Bier trinken ist auch ungesund, wissen alle, macht trotzdem fast jeder.

Schade ist eigentlich, dass ich eine solche, nicht zielführende Antwort von ein Tex Meister bereits erwartet hatte und genau das nun eingetreten ist.

Vielleicht hat ja noch jemand Erbarmen und schaut sich mein Dokument mal an.

Schöne Grüße

Tim
"Wenn du nicht helfen kannst, dann störe. Dabei sein ist alles."
Jürgen von der Lippe

Gast

Beitrag von Gast »

Diese Vorlage hat ein paar Mängel und einige Dinge, zu denen man sicher Anmerkungen machen könnte. Das beginnt damit, dass man sich schon fragen muss, ob Anfänger die Sache mit den Schaltern wirklich verstehen und eine Wrapper-Klasse mit echten Optionen nicht besser wäre.

Dann wird vom KOMA-Script-Autor keinesfalls für alle Optionen empfohlen, diese per \KOMAoptions zu setzen. Bei einigen ist das eher eine Notlösung. Beispielsweise sollte man die Schriftgröße besser beim Laden der Klasse angeben. Wenigstens passiert es in der Vorlage noch vor dem Laden anderer Pakete.

Das Papierformat A4 ist ohnehin die Voreinstellung.

Müsst ihr wirklich listof=entryprefix verwenden, damit keiner vermutet, dass im Abbildungsverzeichnis statt Abbildungen auch die wichtigsten Daten der Geschichte der Antarktis aufgeführt sind?

\recalctypearea ist ziemlich sinnlos, wenn man geometry verwendet.

Dafür wäre es ggf. sinnvoll scrlayer-scrpage mit Option singlespacing zu laden, wenn man setspace verwendet. Außerdem könnte es sinnvoll sein, die Verbesserungen von scrhack für setspace zu nutzen.

Eine aktuelle LaTeX-Distribution vorausgesetzt, könnte man sich inputenc komplett sparen. Da andererseits der eine oder andere versucht, seine Dissertation via Overleaf zu erstellen …

Bei babel wäre es vielleicht sinnvoll, eine der beiden Sprachen explizit mit main= als Hauptsprache zu deklarieren.

Aber mal einen Blick in die log-Datei geworfen? Dort sollte sich beispielsweise eine Warnung zur Option babel für csquotes finden.

scrlayer-scrpage schaltet scrheadings automatisch ein.

Wirklich keine Seitenzahlen auf plain-Seiten?

mathptmx ist sicher nicht falsch, aber eigentlich trotzdem überholt. Schau Dir mal newtx an. Ähnliches gilt für helvet.

Die Änderung von \rmdefault und \sfdefault nach dem Laden der Fontpakete ist schlichtweg Unfug. \familydefault ist ebenfalls in der Voreinstellung bereits \rmdefault.

Die Änderung der Abstände vor und nach Kapitelüberschriften macht man schon länger nicht mehr durch Umdefinieren von \chapterhead(start/end)vskip, sondern mit \RedeclareSectionCommand. Schrift kann man dort wahlweise auch gleich ändern.

Wenn man Abstände mit \RedeclareSectionCommand ändert, sollte man besser nicht den kompletten Leim entfernen. Irgendwo muss LaTeX ggf. Abstände dehnen oder schrumpfen und das ist eine gute Stelle dafür.

Wenn man alle Überschriften nicht serifenlos, sondern nur fett haben will, ist es sicher besser, das nicht für jede Überschrift einzeln zu ändern, sondern via Element disposition, so wie das in einem Beispiel in der Anleitung und im Buch gezeigt wird.

Die Umdefinierung von \figureformat und \tableformat erscheint mir auch sehr fragwürdig.

Will man übrigens in der Voreinstellung überhaupt keine serifenlose Fonts, dann gibt es dafür sogar eine Option. Ist inzwischen sogar dokumentiert.

Sprachabhängige Umschaltung von Begriffen beherrscht sowohl KOMA-Script als auch biblatex. Dafür einen Schalter \ifen und \defbibheading zu verwenden, ist eher merkwürdig.

blindtext ist für Minimalbeispiele sicher sehr praktisch. Ob allerdings die Anwender verstehen, dass sie es aus der Vorlage vor deren Verwendung eher entfernen sollten?

graphicx braucht man nach tikz sicher nicht mehr zu laden.

Wenn man biblatex mit backend=biber verwendet, ist es durchaus sinnvoll auch die bib-Datei utf8 zu codieren und dafür auf Kerning-Killer wie {\"u} zu verzichten.

Wie gesagt: Die Hauptsprache gibt man besser per Option an, statt am Anfang des Dokuments mit \selectlanguage umzuschalten. Für das eine oder andere Paket mag das auch etwas spät sein.

Zu der Verwendung von römischen Seitenzahlen sei auf die Auslassungen im Forum »richtig publizieren« hingewiesen. Wenn man die schon haben will, sollte man außerdem scrbook statt scrreprt verwenden und dann \frontmatter und \mainmatter verwenden statt mit \cleardoublepage und \pagenumbering herumzuhampeln. Ansonsten wäre \cleardoubleoddpage die bessere Wahl.

Bitte dem Anwender kein \\ im Haupttext vorführen!

Was soll das \sffamily in der figure-Umgebung bewirken?

Irgendwie ist es seltsame für Überschriften auf eine Serigenschrift umzuschalten, dann aber im Dokument für alles mögliche \sffamily zu verwenden.

Nur für Verzeichnisse sollte man keinen Anhang beginnen. In der Regel ist es auch sinnlos.

Fazit: Johannes liegt goldrichtig. Nicht schon wieder eine schlechte Vorlage!!!

Gast

Beitrag von Gast »

Hier im Forum werden Vorlagen ja traditionell kritisch gesehen: https://komascript.de/latexvorlage https://github.com/johannesbottcher/templateConfusion Vorlagen für die Vorgaben eines bestimmten Lehrstuhls sind dabei weniger im Verruf als "allgemeine Vorlagen", die zehntausend Pakete laden, um alles abdecken zu können, aber auch dort zeigt sich nach der Erfahrung hier im Forum, dass häufig das Gegenteil von gut eben doch gut gemeint ist.

Bei dieser Vorlage stellt sich mir konkret die Frage: Müssen denn alle Schalter sein? Könnte man den Schalter für die englische Sprache durch Nutzung der Übersetzungsschnittstelle von biblatex und mit einer globalen Option überflüssig machen? Ebenso gibt es in LaTeX den Test \if@twoside, was \ifprint wie hier gezeigt überflüssig machen könnte. \ifnorm scheint nur an einer Stelle eingesetzt zu werden. Da Vorlagen eh dokumentiert werden sollten, könnte man die Dokumentation des Schalters einfach gegen eine Erklärung der zwei Möglichkeiten ersetzen und wird so einen Teil der Komplexität los.

Schalter mögen zwar auf den ersten Blick bequem sein, auf dem zweiten Blick fällt aber auf, dass sie auch zu mehr und unnötig gedoppelten Code führen können. Ferner bin ich der Meinung, dass ein kurzer Code-Kommentar die ordentliche Dokumentation solcher Einstellungen nicht ersetzen kann. Zuletzt habe ich das Gefühl, dass Schalter auf Anfänger entweder abschreckend wirken können oder ein falsches Gefühl davon vermitteln, wie LaTeX aussieht (denn die genutzten Schalter sind ja ein TeX-Konstrukt).

Der Name des Schalters \ifprint hat mich gerade übrigens sehr verwirrt. Er schaltet doch zwischen einseitigem und zweiseitigem Druck und nicht, wie der Name zumindest mir suggeriert, zwischen einer Online- und einer Printversion.

Ich bin bei biblatex kein Freund davon, bibstyle und citestyle getrennt anzugeben, wenn es sich um denselben Stil handelt. Das verführt dann doch eher zum Mischen von verschiedenen Stilen, als wenn man die Option style nimmt.

Mit \defbibheading beraubst Du Dich natürlich einer Teil der Flexibilität von biblatex (und seit neustem auch wieder) von KOMA-Script, da Du damit die durch Optionen anpassbaren Voreinstellungen, die sich übrigens auch automatisch an die Dokumentensprache anpassen würden, überschreibst.

Nun zu Deinem Problem 2: Ich kann das Problem nicht nachvollziehen. Wenn ich genügend Einträge zum Literaturverzeichnis hinzufüge, so dass ich ein mehrseitiges Verzeichnis bekomme wird bei \printfalse auf ungeraden Seiten rechts (außen) die Seitenzahl genannt und links (innen) steht nichts. Auf geraden Seiten ist links (außen) die Seitenzahl und rechts (innen) steht "C Bibliography". Wenn das bei Dir nicht so ist, schlage ich vor, eine neue Frage mit einem auf ein Minimalbeispiel reduzierten Code zu stellen. Bitte überprüfe auch, ob Deine Paketversionen aktuell sind. biblatex hat vor einiger Zeit die Unterstützung von Überschriften mit der KOMA-Klasse verbessert, wobei das eigentlich irrelevant sein sollte, da Du das mit \defbibheading erbarmungslos überschreibst.

Es ist natürlich nur in dem Beispiel, aber wenn das so auch im verteilten Code ist, wäre es nicht so schön: Man sollte im Text eigentlich nie \\ benutzen müssen. Insbesondere ist \\ nicht dazu da, einen neuen Absatz zu beginnen und innerhalb eines Absatzes macht man im Allgemeinen keinen manuellen Zeilenumbruch. \\ sollte außerhalb von Tabellen und abgesetzten Matheumgebungen nicht genutzt werden.

Problem 3: Eventuell kann \raggedbottom weiterhelfen, ist aber bei zweiseitigem Druck nicht so hübsch. Übermäßig große und viele vertikale Abstände deuten aber eher auf ein anderes Problem hin: Sind besonders viele Gleitumgebungen oder andere nicht umbrechbare Objekte vorhanden? Sind irgendwelche flexible Längen mit riesigen Werten belegt worden? Im gezeigten Beispiel fiel mir jetzt nichts besonders auf. Vielleicht kannst Du auch da ein spezifisches Minimalbeispiel liefern.

Lowrider614
Forum-Anfänger
Forum-Anfänger
Beiträge: 44
Registriert: Mi 3. Aug 2011, 16:29

Beitrag von Lowrider614 »

Hallo ihr beiden Gäste,

vielen Dank für diese vielen Tipps!
Ich habe auch die Bemerkungen zu den Vorlagen gelesen und ja, da ist viel Wahres dran. So lange sich bei den hohen Herren noch nicht die Erkenntnis durchgesetzt hat, dass andere Leute die Formatierung von langen Dokumenten besser können als sie selbst, wird man wohl immer wieder auf das gleiche Problem stoßen.
Ich mache mich jetzt mal an die Arbeit und miste kräftig aus. Das war ja auch die Idee hinter dem Post.

Schöne Grüße

Tim
"Wenn du nicht helfen kannst, dann störe. Dabei sein ist alles."
Jürgen von der Lippe

Lowrider614
Forum-Anfänger
Forum-Anfänger
Beiträge: 44
Registriert: Mi 3. Aug 2011, 16:29

Beitrag von Lowrider614 »

Gleich vorweg noch einmal vielen Dank für eure vielen Tipps, ich habe versucht so viele wie möglich umzusetzen.

Grundsätzlich soll und darf der User an der Vorlage herumspielen. Sollte er das aber nicht wollen, hat er nun die Möglichkeit, über Ergaenzungen.tex seine eigenen Pakete zu laden.
Zusätzliche Kapitel muss er in der Vorlage über Input Befehle einbinden. Ich habe hier versucht den Grundtenor der Tipps umzusetzen, dem User nur eine Starthilfe an die Hand zu geben und sonst auf seine Eigenständigkeit zu vertrauen.
Hier im Forum werden Vorlagen ja traditionell kritisch gesehen: https://komascript.de/latexvorlage https://github.com/johannesbottcher/templateConfusion Vorlagen
Danke für diese beiden hilfreichen Links, ich denke, ich habe noch einmal einen neuen Blickwinkel auf die Thematik erhalten können. Die aktuelle Vorlage wird daher nur noch so lange verwendet werden, bis wir eine frei verfügbare, gut gepflegte Vorlage gefunden haben, die sich an unsere, recht wenigen Vorgaben, anpassen lässt. Falls ihr hier noch einen Tipp habt, bin ich dafür sehr dankbar. Wir müssen allerdings in den nächsten Wochen mehrere Dissertationen einreichen, daher muss erstmal weitergearbeitet werden können. Und für das Suchen einer Vorlage die unseren Anforderungen entspricht, würde ich mir gerne etwas Zeit lassen und sie intensiv testen.
Bei dieser Vorlage stellt sich mir konkret die Frage: Müssen denn alle Schalter sein?
Definitiv nein, daher sind jetzt alle weg.
Mit \defbibheading beraubst Du Dich natürlich einer Teil der Flexibilität von biblatex (und seit neustem auch wieder) von KOMA-Script, ...
Habe ich rausgenommen. Allerdings brauche ich Literatur- und Normenverzeichnis mit Kapitelnummer. Die dazu genutzte KOMA Script Option funktioniert bei mir leider nicht. Außerdem bräuchte ich das Literaturverzeichnis nach DIN EN ISO 690 Anhang C formatiert. Das ist gemeinhin das, was von einigen Leute als "Normvorgabe" bezeichnet wird. Ist zwar nur eine Empfehlung, steht aber in einer Norm und erspart lästige Diskussionen zum Aussehen eines Literaturverzeichnisses.
Nun zu Deinem Problem 2: Ich kann das Problem nicht nachvollziehen. Wenn ich genügend Einträge zum Literaturverzeichnis hinzufüge, ...
Sorry, mein Fehler. Ich meinte das Inhaltsverzeichnis. Da funktioniert es immer noch nicht. Falls du da nochmal schauen könntest?
Es ist natürlich nur in dem Beispiel, aber wenn das so auch im verteilten Code ist, wäre es nicht so schön: Man sollte im Text eigentlich nie \\ benutzen müssen. Insbesondere ist \\ nicht dazu da, einen neuen Absatz zu beginnen und innerhalb eines Absatzes macht man im Allgemeinen keinen manuellen Zeilenumbruch. \\ sollte außerhalb von Tabellen und abgesetzten Matheumgebungen nicht genutzt werden.
Wie macht man denn einen manuellen Zeilenumbruch? Bei uns ist das Gang und Gäbe, dass wir bei größeren Gedankensprüngen einen Zeilenumbruch machen. Beispiel: Es geht um die Beschreibung eines Versuchstandes der in ein Ober- und ein Unterteil geteilt werden kann. Nach dem Ende der Beschreibung des Oberteils kommt ein manueller Zeilenumbruch mit entsprechendem Absatz und die Beschreibung des Unterteils folgt. Für eine zusätzliche Gliederungsebene ist das zu wenig, da jeder Beschreibungsteil nur ein Drittel der Seite füllt. Mit \newline und \linebreak erreiche ich nicht das Gewünschte.
Übermäßig große und viele vertikale Abstände deuten aber eher auf ein anderes Problem hin: Sind besonders viele Gleitumgebungen oder andere nicht umbrechbare Objekte vorhanden?
Jawohl, wir bewegen uns in den Ingenieurswissenschaften und da sind Bilder und Tabellen in großer Anzahl zu finden. Ich habe festgestellt, dass man hier ein bisschen an den Positionierungsparametern der Gleitumgebungen herumspielen muss und dann besteht das Problem auch nicht mehr. Außerdem habe ich den Standard bei den Abständen der Kapitelüberschriften wiederhergestellt, was den Vorgaben so nahe kommt, dass ich hier keinen Handlungsbedarf mehr sehe.
Müsst ihr wirklich listof=entryprefix verwenden, damit keiner vermutet, dass im Abbildungsverzeichnis statt Abbildungen auch die wichtigsten Daten der Geschichte der Antarktis aufgeführt sind?
:D witziger Vergleich, völlig richtig. Ist aber die Vorgabe, da die konkurrierende Vorlage in Word erstellt ist und es dort so gemacht wird. Wir müssen hier immer Kompromisse finden, wie wir in beiden Welten das Erstellen von Arbeiten ermöglichen, empfehlen unseren Studenten und Kollegen auch immer LaTeX, aber nicht jeder folgt der Empfehlung. Und getreu der Freiheit von Forschung und Lehre darf und will ich niemanden zwingen.
Dafür wäre es ggf. sinnvoll scrlayer-scrpage mit Option singlespacing zu laden, wenn man setspace verwendet.
Und dann soll ich im Nachgang den Zeilenabstand auf die korrekturfreundlichen und vorgegebenen eineinhalb Zeilen setzen? Was ist da der Unterschied gegenüber dem direkten Laden der onehalfspacing Option?
Da andererseits der eine oder andere versucht, seine Dissertation via Overleaf zu erstellen …
Wir nutzen tatsächlich den von der Uni gehosteten Sharelatex Dienst dazu. Das hat schon aus Sicht der Administratoren viele Vorteile, da wir (ich bin auch einer davon) keine Latex Distribution nebst Editor auf über 200 Rechnern pflegen müssen. Außerdem kann so der User von überall auf der Welt aus an seinem Dokument arbeiten und muss nicht auf jedem Endgerät Distribution und Editor konfigurieren. Und Konfigurationsänderungen auf allen Endgeräten manuell (!) synchron halten. Da muss ich sagen, ich finde dieses lokale Installieren und Pflegen von Distribution und Editor ist irgendwie in Zeiten von Office365, GoogleDocs und Co nicht mehr sonderlich zeitgemäß. Ich schreibe aktuell meine Dissertation in Sharelatex und die Vorteile überwiegen, aus meiner Sicht als User und Administrator, definitiv die Nachteile.
Aber mal einen Blick in die log-Datei geworfen? Dort sollte sich beispielsweise eine Warnung zur Option babel für csquotes finden.
Habe ich keine gefunden.
Wirklich keine Seitenzahlen auf plain-Seiten?
Wirklich nicht.
Schau Dir mal newtx an. Ähnliches gilt für helvet.
Was wäre denn die neuere Variante für helvet? Newtx habe ich eingebunden, bei helvet aber keinen eindeutig neueren und besseren Nachfolger ausmachen können.
Die Änderung der Abstände vor und nach Kapitelüberschriften macht man schon länger nicht mehr durch Umdefinieren von \chapterhead(start/end)vskip, sondern mit \RedeclareSectionCommand. Schrift kann man dort wahlweise auch gleich ändern.
Das war das ursprüngliche Vorgehen, das klappt aber nicht. So wie ich es gemacht habe, ist es auch noch im scrguide S.500f. vorgesehen, falls RedeclareSectionCommand nicht funktioniert (was es nicht tut, das habe ich ja ausprobiert).
blindtext ist für Minimalbeispiele sicher sehr praktisch. Ob allerdings die Anwender verstehen, dass sie es aus der Vorlage vor deren Verwendung eher entfernen sollten?
Das ist auch nur für das Beispiel hier, das ist der richtigen Vorlage nicht enthalten.
Irgendwie ist es seltsame für Überschriften auf eine Serigenschrift umzuschalten, dann aber im Dokument für alles mögliche \sffamily zu verwenden.
Nur die Schrift in Tabellen und in Bilder ist serifenlos. Das soll so sein, damit sich die Schrift in Bildern vom restlichen Text abhebt. Für Tabellen gilt das Gleiche. Sonst sind überall Serifenschriften.
Nur für Verzeichnisse sollte man keinen Anhang beginnen. In der Regel ist es auch sinnlos.
Kann man m.M.n. halten wie ein Dachdecker. Es soll nur bei den Kapiteln von arabischer Nummerierung zu Großbuchstaben umgestellt werden. Mehr nicht. Außerdem gibt es nach den Verzeichnissen eine normalen Anhang, den habe ich im Beispiel aber weggelassen.
Fazit: Johannes liegt goldrichtig. Nicht schon wieder eine schlechte Vorlage!!!
Im Gegensatz zu deinem Beitrag hat sein Beitrag an der Qualität meiner Vorlage nichts geändert. Daher ist er - immer noch - nicht zielführend.


Ich danke euch beiden noch einmal ganz herzlich für das Engagement und die Zeit, die ihr an und mit meiner Vorlage verbracht habt!

Hier ist der nochmal der aktuelle Stand.

Schöne Grüße

Tim
% Hier zwischen einseitigem und doppelseitigem Dokument umschalten durch Kommentieren
%\documentclass[a4paper,oneside,12pt]{scrbook} % für einseitigen Druck
\documentclass[a4paper,twoside,12pt]{scrbook} % für zweiseitigen Druck

\KOMAoptions{usegeometry=true%
             ,parskip=half%
             ,captions=nooneline%
             ,captions=tableheading%
             ,numbers=noenddot%
             ,listof=entryprefix%
             ,open=right%
             ,bibliography=numbered%
             }
             
% Zeilenabstand
\usepackage{scrhack}
\usepackage[onehalfspacing]{setspace} % Zeilenabstand auf eineinhalbzeilig

% Festlegen Schriftarten
\usepackage{newtxtext}			 % Times
\usepackage[scaled=0.82]{helvet} % Helvetica

% Seitenenlayout
\usepackage{geometry}
\makeatletter
\if@twoside%
   \geometry{inner=25mm,outer=20mm,top=30mm,bottom=20mm,bindingoffset=5mm}
\else%
   \geometry{inner=22.5mm,textwidth=160mm,tmargin=30mm,bmargin=20mm,bindingoffset=5mm}
\fi%  
\makeatother

% Einstellungen Schrift/Sprache/Kodierung
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[autostyle]{csquotes}

% Kopf- und Fußzeilen
\usepackage[headsepline]{scrlayer-scrpage} 
\clearpairofpagestyles
\automark[section]{chapter}
\ohead{\pagemark}
\ihead{\headmark}
\setkomafont{pageheadfoot}{\rmfamily\normalsize}

% Setzen Überschriften
\addtokomafont{chapter}{\rmfamily\mdseries\Huge}
\renewcommand*{\chapterheadstartvskip}{\vspace*{0pt}}% Abstand vor chapter einstellen
\addtokomafont{section}{\rmfamily\bfseries\large}
\addtokomafont{subsection}{\rmfamily\bfseries}
\addtokomafont{subsubsection}{\rmfamily\bfseries}
                         
% Tabellen- und Abbildungsüberschriften
\addtokomafont{caption}{\itshape} % Schriftart der Beschreibung
\addtokomafont{captionlabel}{\itshape}  % Schriftart des Labels

%Abstand Gleitumgebungen zum Text
\setlength{\intextsep}{12pt}
\setlength{\textfloatsep}{12pt}

% Inhaltsverzeichnis
\addtokomafont{chapterentry}{\rmfamily}
\addtokomafont{chapterentrydots}{\rmfamily\bfseries}
\KOMAoption{toc}{chapterentrywithdots, listofnumbered}

% Umgebung und Nummerierung für Gleichungen
\newcounter{gleichung}[chapter]
\setcounter{gleichung}{0}
\newenvironment{Gleichung}
% {\begin{equation}
% 	\tag{\textit{Equation~\arabic{chapter}.\arabic{gleichung}}}}
% 	{\addtocounter{gleichung}{1}
% \end{equation}}
{\begin{equation}
	\tag{\textit{Gleichung~\arabic{chapter}.\arabic{gleichung}}}}
	{\addtocounter{gleichung}{1}
\end{equation}}


% Umgebung und Nummerierung für Formeln
\newcounter{formel}[chapter]
\setcounter{formel}{0}
\newenvironment{Formel}
% {\begin{equation}
% 	\tag{\textit{Formula~\arabic{chapter}.\arabic{formel}}}}
% 	{\addtocounter{formel}{1}
% \end{equation}}
{\begin{equation}
	\tag{\textit{Formel~\arabic{chapter}.\arabic{formel}}}}
	{\addtocounter{formel}{1}
\end{equation}}

% Verwaltung Literaturverzeichnis und Zitation
\usepackage[backend		 = biber,
		    style	     = authoryear,
		    sorting		 = nyvt,
		    maxcitenames = 3,
		    maxbibnames	 = 25] {biblatex}	    

\usepackage{filecontents} 
\begin{filecontents}{LitDaten.bib} 
@book{MAXW69,
 author = {Maxwell, James Clerk and Niven, W. D.},
 year = {1869},
 title = {The Scientific Papers of James Clerk Maxwell},
 address = {Cambridge},
 publisher = {{Cambridge University Press}},
 isbn = {978-1108015387}
}
@misc{DIN690,
 year = {2013},
 title = {Information und Dokumentation -- Richtlinien f{\"u}r Titelangaben und Zitierung von Informationsressourcen},
 author = {{DIN ISO 690}},
 keywords = {Norm},
 number = {690},
 label = {DIN ISO}
}
\end{filecontents}

\begin{filecontents}{Ergaenzungen.tex}
    \usepackage{blindtext} % Nur zum Erstellen des Minimalbeispiels auf golatex
\end{filecontents}

\begin{filecontents}{2_Titelseite_Dissertation.tex}
    \begin{titlepage}
        Ich bin die Titelseite
    \end{titlepage}
\end{filecontents}

\addbibresource{LitDaten.bib}

% Ergänzungen
\input{Ergaenzungen}


\begin{document}
    \frontmatter
    \pagenumbering{Roman}
    \input{2_Titelseite_Dissertation} % So sollen weitere Kapitel eingebunden werden
    \tableofcontents
    \mainmatter
    \Blinddocument
    \addchaptertocentry{2}{\blindtext 1} 
    \addsectiontocentry{2.1}{section} 
    \addsubsectiontocentry{2.1.1}{\blindtext} 
    \addsubsectiontocentry{2.1.2}{\blindtext} 
    \addsubsectiontocentry{2.1.3}{\blindtext} 
    \addsubsectiontocentry{2.1.4}{\blindtext}
    \addsubsectiontocentry{2.1.5}{\blindtext} 
    \addsubsectiontocentry{2.1.6}{\blindtext}
    \cite{MAXW69}\\
    \cite{DIN690}
    \appendix
    \listoffigures % Abbildungsverzeichnis
    \listoftables % Tabellenverzeichnis
    \printbibliography[notkeyword=Norm] %Literaturverz.
	\printbibliography[title={Normenverzeichnis},keyword=Norm] % Normenverzeichnis
\end{document}
"Wenn du nicht helfen kannst, dann störe. Dabei sein ist alles."
Jürgen von der Lippe

Gast

Beitrag von Gast »

Lowrider614 hat geschrieben:Wie macht man denn einen manuellen Zeilenumbruch?
Vorzugsweise gar nicht. Man macht Absätze (Leerzeile oder \par im Quelltext).
Lowrider614 hat geschrieben:Bei uns ist das Gang und Gäbe, dass wir bei größeren Gedankensprüngen einen Zeilenumbruch machen.
Das ist aber absolut unüblich. Ich würde es noch verstehen, wenn man bei einem größeren Gedankensprung einen vertikalen Abstand machen würde. Das macht man dann aber keinesfalls mit \\, sondern mit Absatz und einem Abstandsbefehl wie \bigskip oder mit einem Gliederungsbefehl wie \minisec{}.
Lowrider614 hat geschrieben:
Dafür wäre es ggf. sinnvoll scrlayer-scrpage mit Option singlespacing zu laden, wenn man setspace verwendet.
Und dann soll ich im Nachgang den Zeilenabstand auf die korrekturfreundlichen und vorgegebenen eineinhalb Zeilen setzen?
??? Mit Option singlespacing für Paket scrlayer-scrpage[/p]

[quote="Lowrider614"][quote]Da andererseits der eine oder andere versucht, seine Dissertation via Overleaf zu erstellen … [/quote]
Wir nutzen tatsächlich den von der Uni gehosteten Sharelatex Dienst dazu.[/quote]
Dann sollte euch zumindest klar sein, dass die dortige TeX-Live-Installation regelmäßig stark veraltet ist. Support für Probleme gibt es dann u. a. von den Paketautoren ggf. nur eingeschränkt. Schließlich kann man nicht erwarten, eine Sonderlösung für Probleme zu bekommen, die in der aktuellen Release längst beseitigt sind.

[quote="Lowrider614"]Und Konfigurationsänderungen auf allen Endgeräten manuell (!) synchron halten.[/quote]
Was habe ihr denn für eine IT-Abteilung? Man kann sowohl TeX-Distributionen als auch Editoren im Netzwerk installieren. Und dann gibt es Dropbox etc. mit dem man Installationen ebenfalls zentral verwalten und dann an lokale Installationen ausrollen kann.

[quote="Lowrider614"][quote]Aber mal einen Blick in die log-Datei geworfen? Dort sollte sich beispielsweise eine Warnung zur Option babel für csquotes finden. [/quote][/quote]
Dann ist die TeX-Installation noch mehr veraltet, als ich befürchtet habe.

[quote="Lowrider614"][quote]Schau Dir mal newtx an. Ähnliches gilt für helvet. [/quote]
Was wäre denn die neuere Variante für helvet? Newtx habe ich eingebunden, bei helvet aber keinen eindeutig neueren und besseren Nachfolger ausmachen können.[/quote]
newtx lädt bei Verwendung von newtxfonts bereits einen Helvetica-Clone. Steht auch in der Anleitung. Skaliert wird in der Voreinstellung auch. Also braucht man kein weiteres Paket.

[quote="Lowrider614"][quote]Die Änderung der Abstände vor und nach Kapitelüberschriften macht man schon länger nicht mehr durch Umdefinieren von \chapterhead(start/end)vskip, sondern mit \RedeclareSectionCommand. Schrift kann man dort wahlweise auch gleich ändern. [/quote]
Das war das ursprüngliche Vorgehen, das klappt aber nicht.[/quote]
Das klappt seit KOMA-Script 3.17 also schon seit Anfang 2015. Seither sind 14 weitere Versionen von KOMA-Script erschienen und es hat sich eine Menge getan. Selbst Overleaf (und damit auch ShareLaTeX) hat zumindest Version 3.23.

[quote="Lowrider614"]Nur die Schrift in Tabellen und in Bilder ist serifenlos.[/quote]
Ein \sffamily in figure ändert aber nicht die Schrift in einem mit \includegraphics geladenen Bild und ist damit sinnlos. Die Schrift der Bildunterschrift ändert man ja ggf. mit \setkomafont/\addtokomafont.

[code]%\documentclass[a4paper,oneside,12pt]{scrbook} % für einseitigen Druck
\documentclass[a4paper,twoside,12pt]{scrbook} % für zweiseitigen Druck[/code]
a4paper ist default (wurde AFAIR schon früher erwähnt).

[code]\usepackage[autostyle]{csquotes}[/code]
Aha, jetzt also doch mit Option autostyle statt babel. Dann sollte die ursprüngliche Fassung mit Option babel aber tatsächlich eine Warnung hervorgebracht haben.

[code]\addtokomafont{chapter}{\rmfamily\mdseries\Huge}

\addtokomafont{section}{\rmfamily\bfseries\large}
\addtokomafont{subsection}{\rmfamily\bfseries}
\addtokomafont{subsubsection}{\rmfamily\bfseries}[/code]
Das mit dem Element disposition hast du anscheinend nicht verstanden. :(

Den Rest habe ich mir nicht mehr angeschaut. Irgendwann muss gut sein, denn obwohl vieles aus meinen bisherigen Kommentaren im Forum schon mehrfach von mir erwähnt wurde, hat mich das insgesamt wieder mehrere Stunden gekostet, die mir niemand bezahlt.

Gast

Beitrag von Gast »

Das Problem mit solchen Vorlagen ist gar nicht immer, dass sie von Anfang an schlechten oder falschen Code enthalten (obwohl das auch manchmal der Fall ist), das Problem ist auch, dass sie sich auf einer sehr ungünstige Art und Weise entwickeln.

Häufig startet eine Institutsvorlage so, dass ein motivierter Student entweder von sich aus oder als Auftrag von jemand anderem eine Vorlage für die aktuellen Vorgaben des Institutes erstellt. Die Vorgaben sind dann zumeist an einigen Stellen typographisch fragwürdig, unschön oder total bekloppt, aber trotzdem müssen sie ja so implementiert werden, denn das war ja die Aufgabe. Im besten Fall wird dazu auch noch eine ordentliche Dokumentation angelegt, die beschreibt, was die Vorlage kann, und ein paar weitere Tipps gibt. Häufig besteht die Dokumentation aber nur aus ein paar Code-Kommentaren. Im schlimmsten Fall gibt es gar keine zusätzliche Dokumentation. Soweit so gut - es läuft und die ersten Nutzer geben zufrieden ihre Arbeiten ab.

Wenn es nicht so gut läuft wird die Vorlage dann nur von Kommilitonin zu Kommilitonin weiterverbreitet, so nach dem Motto: Ich zeig Dir mal, wie ich meine Abschlussarbeit gemacht habe, das kannst Du als Vorlage nehmen. Im etwas besseren Fall gibt es eine zentrale Anlaufstelle für die 'offizielle Version' der Vorlage (z.B. eine Uniwebseite oder eine GitHub-Seite).

So oder so, nach drei Jahren ist der ursprüngliche Autor der Vorlage nicht mehr erreichbar oder hat zumindest keine Zeit mehr, sich aktiv um die Vorlage zu kümmern. So lange alles ohne große Fehler kompiliert, beschwert sich da auch keiner. Im vierten Jahr seit Erstellung der Vorlage wird die Prüfungsordnung geändert und das Institut entscheidet, dass unbedingt jede gerade Seite rosa Seitenzahlen braucht. Irgendjemand findet einen Weg, das hinzufrickeln, leider hat sich die LaTeX-Welt inzwischen weiter bewegt, sodass es inzwischen elegantere Methoden gibt, bestimmte Einstellungen in der Vorlage vorzunehmen. Außerdem werden die Änderungen werden nur mit halben Verständnis der ursprünglichen Struktur der Vorlage durchgeführt. Spätestens jetzt lebt die Vorlage nur noch als Weitergabe unter den Studenten fort. Einzig und allein Prof. XYZ verweist noch auf den veralteten Download auf der Institutsseite.

Durch die Weitergabe untereinander und den kleinen Änderungen, die jeder für seine eigene Arbeit vornimmt, existieren nun unzählige verschiedene Vorlagen, die mit der Zeit immer mehr unnötigen Kram anhäufen.

Noch ein Jahr später möchte Student ABC seine Arbeit schreiben: er bekommt die Vorlage. Aber irgendetwas passt nicht. Also wendet er sich an ein LaTeX-Forum: "Ich muss meine Arbeit mit der Vorlage des Instituts schreiben." oder "Für meine Arbeit hat mir ein Kommilitone seine Bachelorarbeit zur Verfügung gestellt." oder "Ich weiß, dass das alles kompliziert ist, aber ich bin schon dreiviertel mit meiner Arbeit durch und kann jetzt nichts mehr ändern, da ich dann Angst habe, dass alles auseinander fällt." Und dann wird einfach Code gedumpt, der ungefähr doppelt so lang ist, wie das was Du hier zeigst und durch jahrelanges Patchwork total unverständlich geworden ist. Nur die eine Hälfte funktioniert, wie sie soll, ein Viertel des Code hast keine Funktion mehr und ein Viertel ist total veraltet oder einfach nur kaputt. Und dann muss bis in zwei Tagen zu Abgabe alles anders sein...

Natürlich kann die Evolution des Codes nicht nachvollzogen werden, da Versionsangaben, Datumsangaben und Änderungshistorien nicht vorhanden sind.

Daher die Skepsis. Ich bin der Meinung, dass man Vorlagen nur einer Öffentlichkeit zugänglich machen sollte, wenn man bereit ist, sich langfristig um den Erhalt der Vorlage zu kümmern. Ansonsten ist es immer nett, seinen Kommilitonen zu helfen, aber dann sollte das besser individuell stattfinden und nicht mit riesigen Vorlagen und mit hunderten Optionen, die der Einzelne eh nicht nutzt: Das hält die Sache schlank, klar und übersichtlich.

Aber genug meines Gesabbels.
Lowrider614 hat geschrieben:Allerdings brauche ich Literatur- und Normenverzeichnis mit Kapitelnummer. Die dazu genutzte KOMA Script Option funktioniert bei mir leider nicht. Außerdem bräuchte ich das Literaturverzeichnis nach DIN EN ISO 690 Anhang C formatiert. Das ist gemeinhin das, was von einigen Leute als "Normvorgabe" bezeichnet wird. Ist zwar nur eine Empfehlung, steht aber in einer Norm und erspart lästige Diskussionen zum Aussehen eines Literaturverzeichnisses.
Eigentlich sollten die KOMA-Optionen mit einer aktuellen Version von biblatex funktionieren. Mit älteren Versionen von biblatex funktionierte es nur, wenn die KOMA-Option beim Laden der Klasse übergeben wurde, \KOMAoptions wurde nicht von biblatex abgegriffen.
\documentclass[ngerman, bibliography=numbered]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[style=authoryear, backend=biber]{biblatex}

\newcaptionname{ngerman}{\norms}{Normenverzeichnis}
\newcaptionname{british}{\norms}{Norms}

\DefineBibliographyStrings{german}{
  bibliography = {Literaturverzeichnis},
}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@standard{din690,
 year      = {2013},
 title     = {Information und Dokumentation -- Richtlinien für
              Titelangaben und Zitierung von Informationsressourcen},
 author    = {{DIN ISO 690}},% <- das ist nicht schön,
 % aber ich habe gerade keine Lust, das Beispiel mit
 % https://tex.stackexchange.com/q/65637/35864 kompliziert zu machen
 shorthand = {DIN ISO 690},
}
\end{filecontents}

\addbibresource{\jobname.bib}
\addbibresource{biblatex-examples.bib}


\begin{document}
\tableofcontents
\chapter{Kapitel}
\cite{sigfridsson,din690}
\printbibliography[nottype=standard]
\printbibliography[type=standard, title={\norms}]
\end{document}
Ansonsten gibt es immer noch die Möglichkeit statt der KOMA-Option bibliography=numbered beim Aufruf von \printbibliography die vordefinierte heading=bibnumbered zu nutzen.

Von ISO 690 halte ich persönlich nicht so viel. ISO 690 ist übrigens zumindest in der ISO-Version auch gar nicht so eindeutig definiert, wie man landläufig denkt. Aber da ich heute schon so viel erzählt habe verlinkte ich nur auf ein paar Diskussionen zu dem Thema: viewtopic,p,100202.html viewtopic,p,101951.html viewtopic,p,92530.html oder https://tex.stackexchange.com/q/438515/35864

Ich halte es also für fragwürdig, ob man Diskussionen durch ISO 690 wirklich aus dem Weg gehen kann. Der Bequemlichkeit würde ich einfach einen Standardstil von biblatex nutzen und dann mal schauen, ob da noch etwas geändert werden muss.
Lowrider614 hat geschrieben:Wie macht man denn einen manuellen Zeilenumbruch? Bei uns ist das Gang und Gäbe, dass wir bei größeren Gedankensprüngen einen Zeilenumbruch machen. Beispiel: Es geht um die Beschreibung eines Versuchstandes der in ein Ober- und ein Unterteil geteilt werden kann. Nach dem Ende der Beschreibung des Oberteils kommt ein manueller Zeilenumbruch mit entsprechendem Absatz und die Beschreibung des Unterteils folgt. Für eine zusätzliche Gliederungsebene ist das zu wenig, da jeder Beschreibungsteil nur ein Drittel der Seite füllt. Mit \newline und \linebreak erreiche ich nicht das Gewünschte.
Manuelle Zeilenumbrüche macht man (gemeinhin) nicht. Stattdessen wird der Text in Absätze unterteilt, die in LaTeX durch eine Leerzeile getrennt werden.
\documentclass[ngerman, parskip=false]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{babel}
\usepackage{csquotes}
\usepackage{hyperref}

\begin{document}
Dies ist ein erster Gedankengang, der durch genügend Fülltext auf
eine angemessene Länge gebracht werden muss.
Nur so lässt sich der Effekt von Absätzen ordentlich darstellen.
Ein Absatz sollte ruhig mehrere Zeilen lang sein.
Innerhalb eines Absatzes sollte im Allgemeinen kein \emph{manueller}
Zeilenumbruch erfolgen.
Der neue Absatz wird durch eine Leerzeile gestartet.

Ein neuer Gedankengang kann dann durch einen neuen Absatz eingeleitet
werden.
Eine neue Gliederungsebene ist nicht erforderlich.
Standardmäßig wird ein neuer Absatz durch die Einrückung seiner ersten
Zeile gekennzeichnet.
Das ist in vielen gedruckten Büchern der Fall~--~schau mal in
Deinem Bücherregal nach -- allerdings sorgen Word und das Internet
dafür, dass häufig als Absatzauszeichung ein vertikaler Leerraum
zwischen den Absätzen gewünscht wird.
Das entspricht dann ganz dem Bild im Quelltext, wo ein neuer Absatz~%
--~wie erwähnt~-- durch eine Leerzeile gekennzeichnet wird.
Die KOMA-Script-Klassen bieten die Option \texttt{parskip} zum Anpassen
der Absatzauszeichnung.

Um es noch einmal konkret zu zeigen, es ist absolut verpönt mittels
\texttt{\textbackslash\textbackslash} eine neue Zeile innerhalb eines
Absatzes zu beginnen.\\
So sollte es nicht sein, denn der neue \enquote{Absatz} ist im schlimmsten Fall
nicht erkennbar.\\
War da was?
Ferner kann \texttt{\textbackslash\textbackslash} zu Verwirrung bei
\LaTeX s Boxen führen.
Früher konnte man mit formal nicht beendeten, nur mit
\texttt{\textbackslash\textbackslash} durchsetzen Absätzen sogar
\href{https://tex.stackexchange.com/questions/82664/when-to-use-par-and-when-or-blank-lines#comment404307_82666}{den Speicher überlaufen lassen}.
\end{document}

Nun zu Deinem neuen Code. Die Beseitigung der Optionen hat der Vorlage sicher gut getan. Die Verwendung von internen Dingen wie \if@twoside und das mit einhergehende \makeatletter...\makeatother sind für den Anfänger vielleicht abschreckend, man könnte versuchen, dass in einer Klasse oder einer anderen Datei zu verstecken, aber dann wächst natürlich die Komplexität der Vorlage.

Die % sind übrigens nach \if@twoside, \else und \fi nicht nötig, denn die verschlucken das nachfolgende Leerzeichen von selbst. Ferner sind an der Stelle in der Präambel die Leerzeichen eh egal.

Von den dann folgenden KOMA-Anpassungen habe ich keine Ahnung, aber mir fällt auf, dass Du häufig \rmfamily\bfseries nutzt, eventuell wäre das bereits erwähnte disposition-Font-Element doch etwas für Dich.

Muss diese Dichotomie von Gleichung und Formel mit neuen Umgebungen wirklich sein? Ich würde bei equation bleiben und das ordentlich anpassen. Ich halte es für eine sehr schlechte Idee, "Standardobjekte" dieser Art mit einem eigenen Wrapper zu versehen und dann anders zu nennen. Das führt nur dazu, dass etwas versiertere Nutzer von LaTeX Gleichung nicht benutzen, da sie den "Standard" equation, \[...\] oder align nutzen. Anfänger, die mit Deiner Vorlage LaTeX lernen, müssen dann später damit klarkommen, dass es Gleichung im Allgemeinen nicht gibt.


Von Dateien wie Ergaenzungen.tex, in denen die Nutzerin eigene Pakete laden darf, halte ich nicht so viel. Ich finde es praktischer, wenn alle Pakete in einer Datei geladen werden. Noch schlimmer finde ich nur, wenn es pakete.tex und einstellungen.tex gibt und dann nach einem Zufallsverfahren einige Präambeleinstellungen in pakete.tex landen und andere in einstellungen.tex.

Was Dateinamen angeht bin ich übrigens ein großer Freund davon, nur Kleinbuchstaben zu verwenden. Dann verheddert man sich nicht auf Systemen, die zwischen Groß- und Kleinschreibung unterscheiden und weiß immer, wie man die Datei schreiben muss.

Antworten