[LaTeX] (MiKTeX & TeXnicCenter) Tipps & Hinweise Präambel / Header Bachelorarbeit

Ömerich

Commander
Registriert
Apr. 2003
Beiträge
2.069
Hallo Forumbaseler!

Ich schreib schon seit einigen Wochen an meiner Bachelorarbeit. Ich verwende MiKTex und TeXnicCenter.
Ist ne super Sache, ich konnte bisher zu allen meinen Problemen auch zahlreiche Lösungsvorschläge und gute Hilfestellungen im WWW finden. Hab dadurch (denke ich) auch schon einiges in Sachen LaTeX und wie es arbeitet hinzugelernt.

Vielleicht gibt's ja hier bei CB den einen oder anderen LaTeX-Crack, der mir ein paar Tipps und Tricks bezüglich meiner Präamel geben kann:
- elegantere Lösungen
- bessere Packages
- veraltete/umständliche Befehle und so Sachen
- falsche Komentare/Annahmen meinerseits (100-%-ig verstanden habe ich wahrscheinlich nicht alles was ich verwende)

Ich habe wie gesagt immer Lösungen gefunden, wenn Probleme aufgetaucht sind. Dabei bin ich auch öfters auf Hinweise bezüglich "unschöner" und eleganter Lösungen gestoßen, allerdings immer zufällig.

Jetzt würde ich das ganze Dokument gern noch ein bisschen "tunen" und optimieren.

Beste Grüße,
Ömerich


Code:
\documentclass[a4paper			% DIN-A-4 als Seitengröße
,12pt					% Schriftgröße 12pt
,headsepline,footsepline		% Trennlinie nach der Kopf- und vor der Fußzeile
,listof=totoc,bibliography=totoc	% Abbildungs- und Literaturverzeichnis-Seiten mit ins Inhaltsverzeichnis
,captions=tableheading			% Tabellen-Überschriften wie normale Überschriften behandeln
%,draft					% Overfull Boxes anzeigen & keine Grafiken einbinden
]{scrartcl}				% Artikel-Klasse (KOMA-Script)
%
%
\setuptoc{toc}{totoc}		% Inhaltsverzeichnis-Seite als Punkt ins Inhaltsverzeichnis
%
%
\usepackage{lmodern}		% Vektorbasierte Serifen-Schrift verwenden
\usepackage[T1]{fontenc}	% Europäische Zeichenkodierung
\usepackage[latin1]{inputenc} 	%      "      Zeichen-Eingabe: 'ä' statt '\"a' usw.
\usepackage[ngerman]{babel}	% Sprachpaket Babel: neue deutsche Rechtrschreibung mit Trennregeln
%
%
\usepackage{graphicx} 		% Grafiken einbinden können
\graphicspath{{./Bilder/}}	% Pfad für Bilder: Relativ im Projektordner, Unterordner 'Bilder'
\usepackage{caption}		% Bildunterschriften
\captionsetup{figurename=Abb.}	% Präfix 'Abb.' bei Abbildungen
%
%
\makeatletter			% '@' zum Buchstaben machen
\g@addto@macro\@floatboxreset\centering	% Floatbox-Inhalte zentriert darstellen
\makeatother			% '@' wieder zu was Anderem machen
%
%
\usepackage{mdwlist}		% enge Listen mit '\begin{itemize*}', normal weite Listen ohne '*'
\usepackage{paralist}		% enge Listen mit '\begin{compactitem}'
\usepackage{siunitx}		% Tabelleninhalte am Dezimalpunkt ausrichten mit 'S' (statt 'l', 'c', 'r')
\usepackage{booktabs}		% mit toprule, midrule, bottomrule schöne Trennlinien in Tabellen
\usepackage{tabularx}		% Tabellen mit fester Gesamtbreite und Umbruch in einer Zelle
\captionsetup{tablename=Tab.}	% Präfix 'Tab.' bei Tabellen
% Unterschied {itemize*}/{compactitem}:	compactitem entfernt auch Zwischenraum vor und nach der Tabelle!
%
%
\usepackage{amssymb}	% Häkchen mit \checkmark zum Abhaken
%
%
\usepackage{datetime}	% Erweitert '\today' zu mehr Umfang
%
%
\hyphenation{	% Trennstellen für Wörter definieren: {Bei-spiel noch-ein-Bei-spiel und-noch-eins}
Hand-an-trieb 	%
Hand-an-triebs 	%
Hand-an-trie-be %
In-ter-bus	%
Pro-fi-bus	%
}		%
%
%
\newcommand{\din}{DIN~EN~ISO~13849}	% Ersetzt '\din' durch 'DIN~EN~ISO~13849'
\newcommand{\en}{DIN~EN~954}		%    "    '\en'    "   'DIN~EN~954'
%
\newcommand{\MTTFd}{MTTF\textsubscript{d}}	% MTTFd mit tiefergestelltem d ohne Mathematik-Modus
\newcommand{\DCavg}{DC\textsubscript{avg}}	% analog MTTFd
\newcommand{\BXd}{B10\textsubscript{d}}		% analog MTTFd
\newcommand{\PLr}{PL\textsubscript{r}}		% analog MTTFd
%
\newcommand{\sifu}[1]{\textit{\glqq#1\grqq}}			% Stil für die sicherheitsfunktionen
\newcommand{\giraffe}{0.95\textheight}				% '\giraffe' als height-option für ganzseitige Bilder
\newcommand{\anm}[1]{\small\emph{$\tau o\ \delta o$: #1}}	% um Anmerkungen zu ignorieren: ändern in {\anm}[1]{}
\newcommand{\obj}[1]{\textsc{\glqq#1\grqq}}			% Stil für Objekte in Sistema, z. B. 'Projektname'
%
%
\usepackage{scrpage2}					% Kopf- und Fußzeilen
\pagestyle{scrheadings}					% ausführliche Kopf- und Fußzeilen
\clearscrheadfoot					% Voreinstellungen löschen und...
\ifoot{\rightmark}					% ...ab hier selbst definieren
\ohead{\includegraphics[height=.6cm]{mrws_logo.pdf}}	%
\ihead{Risikobeurteilung von Sicherheitsfunktionen an Rollendrucksystemen}%
\ofoot{Seite~\pagemark}					%												
\automark{section}					% Kapiteltitel
\renewcommand{\sectionmark}[1]{\markright{\ #1}}	% Kapiteltitel ohne Kapitelnummer einfügen
%
%
\usepackage[intoc]{nomencl}			% Abkürzungsverz. erstellen u. ins Inhaltsverz.s einfügen
\let\abk\nomenclature				% Befehl umbenennen in '\abk{}{}': z.B.\abk{z.B.}{zum Beispiel}
\renewcommand{\nomname}{Abkürzungsverzeichnis}	% deutsche Überschrift
\setlength{\nomlabelwidth}{.20\hsize}		% Punkte zwischen Abkürzung und Erklärung
\renewcommand{\nomlabel}[1]{#1 \dotfill}	% -"-
\setlength{\nomitemsep}{-\parsep}		% Zeilenabstände verkleinern
\makenomenclature				% Abkürzungsverzeichnis erstellen
\usepackage{ifthen}				% 'ifthen'-Package einbinden für folgenden Befehl
\renewcommand{\nomgroup}[1]{\ifthenelse{\equal{#1}{G}}{\item[\textbf{Griechische Buchstaben}]}}
% Eigener Teil für die Grichischen Buchstaben, Einordnung '\lambda' bei 'l' geht nicht
%
%
\addtocounter{secnumdepth}{1}	% \paragraph auch nummerieren
\addtocounter{tocdepth}{1}	% \paragraph mit Nr. ins TOC
%
%
\usepackage[german]{fancyref}				% Querverweise mit automatischem Typ: Abschnitt x.x auf Seite y
\fancyrefchangeprefix{\fancyrefenumlabelprefix}{item}	% Aufzählungsschlüsselwort zu 'item' ändern
%
%
\usepackage[square,numbers,sort]{natbib}		% Zitierstilpaket: eckige Klammer, mit Nummer, Reihenfolge wie im Text
\bibliographystyle{natdin}				% Zitierstil laden
%
%
\usepackage[bookmarksnumbered=true]{hyperref}	% klickbare Links im fertigen PDF, in der Navigationsleiste mit Nummern
%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%\titlehead{\includegraphics[width=0.4\textwidth,page=1]{mrws_logo.pdf}\hspace{4.5cm}%mrws_logo.pdf
%\includegraphics[height=3.5cm,page=1]{HSA_Fk_E_Logo.pdf}}%HSA_Fk_E_Logo.pdf
\subject{Bachelorarbeit zur Erlangung des akademischen Titels "`Bachelor of Engineering"' ("`B.~Eng."') im Fach Mechatronik}
\title{Risikobeurteilung von Sicherheitsfunktionen an Rollendrucksystemen nach der Maschinenrichtlinie~2006/42/EG und der \din}
\author{
Stefan Ohm\\
******\\
8**** T****\\
Mat.-Nr. 123456}				%alt: 654321
%\vspace{1cm}
\date{Erstellt am \today\ um \currenttime\ Uhr}% DATUM ÄNDERN %%%
\publishers{Erstprüfer: Prof. Dr.-Ing. Franz Raps}
%\thispagestyle{empty}
\pagenumbering{roman}		%ab hier Seitenzahlen i, ii, iii...
\maketitle
%
%
\newpage
\input{Vorwort}
%
%
\newpage
\input{Kurzfassung}	%Kurzfassung/Abstract de/en mit '{\begin{abstract}'
%
%
\newpage
\tableofcontents 				%Inhaltsverzeichnis
%
%
\newpage
\cleardoublepage							%or \clearpage
\markboth{\nomname}{\nomname}	%maybe with \MakeUppercase 
\printnomenclature						%Abkürzungsverzeichnis
%
%
\newpage
\listoffigures					%Abbildungsverzeichnis
%
%
\newpage
\listoftables						%Tabellenverzeichnis
%
%
\newpage
\pagenumbering{arabic}	%Seitenzahlen 1, 2, 3...
\anm{auf Grund / aufgrund kontrolliert? \\
mit Hilfe / mithilfe kontrolliert? \\
itemize/compactitem überprüft?\\
alle eignen Befehle auf anschließendes Leerzeichen überprüfen\\
Abkürzungen: erstes Auftreten finden, alles andere abkürzen\\
Abkürzungen wie z.B., d.h., u.a.: auf kleines Leerzeichen überprüfen!\\
SBD/FBD Konsistenz: sich../Sich.. funk../Funk.. (kleingeschrieben?) Blockdiagramm}
\input{Abkuerzung}
\input{Einleitung}
\input{Grundlagen}
\input{Beispiel-1}
\input{Beispiel-2}
\input{ErgAusbl}
%
%
\newpage
\pagenumbering{Alph}		%Seitennummerierung A, B, C...
\appendix	%ab hier Anhang
\bibliography{BA_Nov_12} %Literaturverzeichnis
%
%
\input{Eidesstattliche.tex}
%
%
\input{Anhaenge.tex}
%
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\end{document}%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
Es zählt doch eh nur das was Du ausdruckst und abgibst. Warum also sich jetzt mit dem Kram beschäftigen? Steck die Zeit lieber in den Inhalt der Arbeit und pushe damit Deine Note.

Viele Grüße
13inch
 
Also ich hab bei meiner Diplomarbeit in Mathe vielleicht ein Drittel deiner Präambel gehabt und davon war ein guter Teil schon Definitionen von Operatoren die Im Standardpaket nicht enthalen waren.

Du solltest dem KISS Prinzip Folgen. Was brauchst du denn wirklich an Paketen? Solltest du natürlcih den ganzen Kram wie unterschiedliche Nummerierungen tc. wirklich brauchen betrachte meinen Kommentar als gegenstandslos.

Im Allgemeinen werden aber zur viele Pakete benutzt die man eigentlich nicht wirklich braucht.
 
@ 13inch:
Ich möchte so halt gerne etwas dazulernen über die Verwendung und Arbeitsweise von LaTeX und die verschiedenen Pakete, auch im Zusammenspiel.
Aber du hast schon recht, der Inhalt ist wichtiger (ist ja auch der Grund, warum man LaTeX benutzt). Danke für den Hinweis!

@ Quickbeam2k1:
Die Präambel hab ich ja nicht so irgendwo übernommen. Sie wurde im Verlauf der Arbeit so lang. Ich habe im Verlauf der Arbeit immer wieder verschiedene Pakete mit eingebunden, um bestimmte Sachen realisieren zu können.
Die verschiedenen Listen-Umgebungen wie itemize*, itemize und compactitem werde ich mir nochmal anschauen und mich wahrscheinlch auf ein Paket und somit einen Stil konzentrieren. Meinst du das mit
unterschiedliche Nummerierungen tc.
?
Welche Pakete sind deiner Meinung nach überflüssig?
 
Ich sehe gerade nichts überflüssiges. Ob man wirklich "datetime" oder "fancyref" braucht, weiß ich nicht, aber der Rest ist durchaus sinnvoll.
Meine from scratch BA.tex sieht auch so ähnlich aus.

Der Code könnte übersichtlicher gestaltet werden, aber ist sonst i.O. ;).
 
@ Ömerich, ja oder auch dass du die Seitennummerierung später änderst. Von arabisch auf Buchstaben. Wenn das aber so verlangt ist oder dir es so gefällt ist ja alles in Ordnung.

Wie gesagt, bei mir war das wesentlich kürzer aber ich schreibe halt auch in einem anderen Fach. Da wird nicht viel am Layout rumgebastelt und man braucht nur ein paar Theorem umgebungen (im wesentlichen). Wenn du damit klar kommst und alle Pakete verwendest ist doch gut.

Ich kenne aber auch genügend Leute die erstmal 50 Pakete laden und dann nur 3 verwenden
 
@ tao te: "daytime" hab ich als kleine Spielerei mit drin, auch, um dem PDF sofort anzusehen wann es generiert wurde (eine rudimentäre Versionierung).
"fancyref" baut meiner Meinung nach einfach saubere und schön zu lesende Verweise, deswegen hab ich das drin.
Wie würdest du mehr Übersichtlichkeit reinbringen? Ich hab versucht, die Pakete und Befehle dazu thematisch zu gruppieren. Die vielen Kommentare sind auch für mich, damit ich später noch weiß, warum ich Paket xy eingebunden hab.

@Quickbeam2k1: Die Seitennummerierung (römisch klein für den Vorspann, arabisch für den Hauptteil, Großbuchstaben für den Anhang) ist so vorgeschrieben.

Danke für eure Hilfe!
 
Zurück
Oben