Anzeige:
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 16

Thema: Textmarkenbefehle in Kolumnentitel

  1. #1
    Registrierter Benutzer
    Registriert seit
    03.12.2006
    Beiträge
    94

    Textmarkenbefehle in Kolumnentitel

    Hallo,
    ich habe ein Problem mit Textmarkenbefehlen in Kolumnentiteln. Ich benutze die Dokumentenklasse scrbook in einseitigem Druck. Zur Definition des Kolumnentitles nutze ich das Paket fancyhdr. Im Kolumnentitle soll oben links der Name des Chapters und rechts der Name der Section dargestellt werden. Dies funktioniert auch alles total super. Ein Problem ich habe ich nur in meinem Literaturverzeichnis Chapter. Dort möchte ich im Kolumnentitel nur oben links "Literaturverzeichnis" stehen haben; oben rechts soll nichts stehen. Bisher war mein Literaturverzeichnis zwei Seiten lang und ich konnte durch den Befehl \markright{}, also das leere Überschreiben der rechten Marke, den eben beschriebenen Effekt erzielen. Jetzt hat sich allerdings mein Literaturverzeichnis weiter gefüllt und umfasst jetzt drei Seiten. Und jetzt stellt sich die Situation wie folgt dar: Auf der ersten Seite des Literaturverzeichnisses gibt es ja eh noch keinen Kolumnentitel, auf der zweiten Seite steht sowohl links als auch rechts im Kolumnentitel "Literaturverzeichnis". Nur auf der dritten, letzten Seite steht, wie gewünscht, nur links "Literaturverzeichnis". Folgenden Quellcode verwende ich, um das eben beschriebene zu erreichen:

    Code:
    ...
    \usepackage{fancyhdr}
    \pagestyle{fancy}
    \renewcommand\chaptermark[1]{\markboth{\thechapter\ #1}{}}
    \renewcommand\sectionmark[1]{\markright{\thesection\ #1}{}}
    \fancyhf{}
    \setlength\headheight{14pt}
    \fancyhead[R]{\rightmark}
    \fancyhead[L]{\leftmark}
    \fancyfoot[C]{\thepage}
    
    \begin{document}
       ...
       %Literaturverzeichnis
       \bibliographystyle{alpha}
       \nocite{*}
       \bibliography{Literatur}
       \markright{}
    \end{document}
    Hat jemand eine Idee, wie ich erreichen kann, dass auf allen Seiten des Literaturverzeichnisses im Kolumnentitel nur oben links "Literaturverzeichnis" steht? Über Hinweise und Tipps freue ich mich sehr!

  2. #2
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Vergiss das mit dem \markright. Versuch das hier.

    Code:
    \makeatletter
    \renewcommand*\bib@heading{%
      \chapter*{\bibname}%
      \@mkboth{\bibname}{}}%
    \makeatother

  3. #3
    Registrierter Benutzer
    Registriert seit
    03.12.2006
    Beiträge
    94
    Vielen Dank für die Lösung! Es macht genau das, was ich will, auch wenn ich die Definition selber noch nicht bis ins Detail verstehe ;-)

  4. #4
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Das ist nichts spezielles dran. Die Originaldefinition lautet


    Code:
    \renewcommand*\bib@heading{%
      \chapter*{\bibname}%
      \@mkboth{\bibname}{\bibname}}%
    (\@mkboth ist die interne Variante von \markboth. \bib@heading ist die Überschrift der Bibliographie.)

    Ich habe also nur aus dem rechten Argument von \@mkboth das \bibname rausgenommen.

  5. #5
    Registrierter Benutzer
    Registriert seit
    03.12.2006
    Beiträge
    94
    Danke dir für die Erklärung.

    Leider hat der Code, der dafür sorgt, dass jetzt im Kolumnentitel alles richtig dargestellt wird einen unguten Nebeneffekt: Jetzt taucht das Literaturverzeichnis nicht mehr im Inhaltsverzeichnis auf.
    Hat jemand Tipps, um dies zu beheben?

  6. #6
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Naja, das kommt davon, wenn man nur Schnipsel sendet. Dann kann auch niemand wissen, dass du bibliography=totoc benützt.

    In diesem Fall ist die Originaldefinition

    Code:
    \addchap{\bibname}\@mkboth{\bibname}{\bibname}
    Die Anpassung schaffst du wohl selbst.

  7. #7
    Registrierter Benutzer
    Registriert seit
    03.12.2006
    Beiträge
    94
    Ehrlich gesagt, habe ich die Anpassung nicht hinbekommen. Ich konnte mir stattdessen mit folgendem Code helfen:

    Code:
    \addcontentsline{toc}{chapter}{Literaturverzeichnis}
    Und ich hatte nur Codeschnipsel gepostet, weil der gesamte Code recht lang ist.

  8. #8
    Registrierter Benutzer
    Registriert seit
    03.12.2006
    Beiträge
    94
    Hallo,
    wie mir eben erst aufgefallen ist, liefert meine Idee bzgl. des Eintrags in das Inhaltsverzeichnis doch kein so gutes Ergebnis. Mein Literaturverzeichnis startet auf Seite 29 und im Inhaltsverzeichnis ist angegeben, dass das Literaturverzeichnis auf Seite 31 beginnt.
    Könntest du mir vielleicht sagen, wie ich die Originaldefinition
    Code:
    \addchap{\bibname}\@mkboth{\bibname}{\bibname}
    für meine Zwecke anpasse?

  9. #9
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Urprünglich war ich davon ausgegangen, dass die Originaldefinition so lautet

    Code:
    \newcommand*\bib@heading{%
      \chapter*{\bibname}%
      \@mkboth{\bibname}{\bibname}}%
    Dies habe ich so geändert:

    Code:
    \makeatletter
    \renewcommand*\bib@heading{%
      \chapter*{\bibname}%
      \@mkboth{\bibname}{}}%
    \makeatother
    Insgesamt wurde 4 Dinge geändert oder hinzugefügt.

    Mit der Option bibliography=totoc lautet die Originaldefinition nun

    Code:
    \newcommand*\bib@heading{%
      \addchap{\bibname}%
      \@mkboth{\bibname}{\bibname}}%
    Es kann ja wohl nicht so schwer sein, rauszufinden, was du tun musst.

  10. #10
    Registrierter Benutzer
    Registriert seit
    03.12.2006
    Beiträge
    94
    Es ist leider doch für mich schwierig herauszufinden, was ich tun muss, da ich solche Definitionen noch nie benutzt habe. Mit der von dir eben geposteten Definition bekomme ich leider nur Fehler.

    Ich benutzt übrigens die Attributzuweisungen toc=listof und toc=bib der scrbook Klasse.

    Mein Quelltext sieht wie folgt aus:

    Code:
    \documentclass[a4paper, 11pt, oneside, titlepage, BCOR12mm, toc=listof, toc=bib]{scrbook}
    \usepackage[ngerman]{babel}
    \usepackage[latin1]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage{graphicx}
    \usepackage{xspace}
    \usepackage{xcolor}
    \usepackage{bibgerm}
    \usepackage{setspace}
    \usepackage{pxfonts}
    
    \usepackage{tikz}
    \usetikzlibrary{arrows}
    \usetikzlibrary{shadows}
    
    \usepackage{listings}
    \renewcommand{\lstlistingname}{Quelltext}
    \renewcommand{\lstlistlistingname}{Quelltextverzeichnis}
    \definecolor{Gray}{gray}{0.70}
    \lstset{basicstyle=\footnotesize \ttfamily,
    	frame=shadowbox,
    	frameround=tftt,
    	rulesepcolor=\color{Gray},
    	captionpos=b,
    	aboveskip=0.5cm,
    	xrightmargin=.065\textwidth,
    	xleftmargin=.065\textwidth,
    	breaklines=true}
    
    %Kolumnentitel erstellen
    \usepackage{fancyhdr}
    \pagestyle{fancy}
    \renewcommand\chaptermark[1]{\markboth{\thechapter\ #1}{}}
    \renewcommand\sectionmark[1]{\markright{\thesection\ #1}{}}
    \fancyhf{}
    \setlength\headheight{14pt}
    \fancyhead[R]{\rightmark}
    \fancyhead[L]{\leftmark}
    \fancyfoot[C]{\thepage}
    
    \makeatletter
    \renewcommand*\bib@heading{%
      \chapter*{\bibname}%
      \@mkboth{\bibname}{}}%
    \makeatother
    
    
    %Schriftart der Überschriften festlegen
    \setkomafont{chapter}{\normalfont\huge\bfseries}
    \setkomafont{section}{\normalfont\Large\bfseries}
    \setkomafont{subsection}{\large\normalfont\bfseries}
    \setkomafont{subsubsection}{\normalfont\bfseries}
    \setkomafont{chapterentry}{\normalfont\bfseries}
    \setkomafont{chapterentrypagenumber}{\normalfont\bfseries}
    \setkomafont{descriptionlabel}{\normalfont\bfseries}
    \setkomafont{pagenumber}{\normalfont}
    
    \newcommand{\autor}{Name}
    \newcommand{\titel}{Titel}
    \newcommand{\typ}{Arbeit}
    \newcommand{\email}{E-Mail}
    \newcommand{\matnr}{Matr-Nr}
    \newcommand{\datum}{\today}
    \newcommand{\stadt}{Stadt}
    \newcommand{\betreuer}{Name}
    \newcommand{\firstgutachter}{Name}
    \newcommand{\secondgutachter}{Name}
    
    \usepackage{comment}
    
    \usepackage[
    	pdfauthor={\autor},
    	pdftitle={\titel},
    	pdfsubject={\typ},
    	pdfcreator={pdflatex},
    	colorlinks=false,
    	linkcolor={black},
    	citebordercolor={white},
    	linkbordercolor={white},
    	urlbordercolor={white}
    ]{hyperref}
    
    \begin{document}
    \begin{spacing}{1.1}
    	\frontmatter
    	\begin{titlepage}
    	 \begin{center}
    	  \begin{figure}[!ht]
    	   \centering
    	   \includegraphics[width=10cm]{Bilder/uni-logo.png}
    	  \end{figure}
    	  
    	  \vspace{2cm}
    	  
    	  \Large
    	  \typ
    	  
    	  \vspace{0.3cm}
    	  
    	  \Huge
    	  \textbf{\titel}
    	  
    	  \vspace{2cm}
    	  
    	  \Large
    	  \autor \\
    	  Matrikelnummer: \matnr \\
    	  E-Mail: \href{mailto:\email}{\email}
    	  
    	  \vspace{1cm}
    	  
    	  \stadt, den \datum
    	  
    	  \vspace{3cm}
    	  
    	  \Large
    	  
    	  \begin{tabular}{ll}
    	   Betreuer: & \betreuer \\
    	   Gutachter: & \firstgutachter \\
    	   & \secondgutachter
    	  \end{tabular}
    	  
    	  \normalsize
    	  
    	 \end{center}
    	\end{titlepage}
    	
    	\include{Kapitel/Erklaerung}
    	
    	%Inhaltsverzeichnis
    	\tableofcontents
    	
    	\mainmatter
    	
    	%Einbinden der Kapitel
    	\include{Kapitel/Einleitung}
    	\include{Kapitel/Grundlagen}
    	\include{Kapitel/Sprachentwurf}
    	\include{Kapitel/Implementierung}
    	\include{Kapitel/Evaluation}
    	\include{Kapitel/Resuemee}
    	
    	%Abbildungsverzeichnis
    	\listoffigures
    	
    	%Quelltextverzeichnis
    	\lstlistoflistings
    	
    	%Literaturverzeichnis
    	\bibliographystyle{alpha}
    	\nocite{*}
    	\bibliography{Literatur}
    	\addcontentsline{toc}{chapter}{Literaturverzeichnis}
    	
    \end{spacing}
    \end{document}
    So wie es ich jetzt mit dem Befehl
    Code:
    \addcontentsline{toc}{chapter}{Literaturverzeichnis}
    darstellt, wird das Literaturverzeichnis zwar im Inhaltsverzeichnis angegeben, allerdings mit einer falschen Seitenzahl.

    Ich wäre sehr dankbar, wenn du mir noch mal helfen könntest.


    Noch eine weitere Frage: Mein Inhaltsverzeichnis ist gerade angewachsen und geht jetzt über zwei Seiten. Auf der zweiten Seite wird im Kolumnentitel jetzt "Inhaltsverzeichnis" doppelt dargestellt, so wie vorher bei dem Literaturverzeichnis. Wie kann ich denn dafür sorgen, dass im Kolumnentitel nur links "Inhaltsverzeichnis" steht?
    Geändert von misterjan (27-07-2009 um 15:19 Uhr)

  11. #11
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Du sollst hier nicht komplizierten Code schreiben, sondern eine zweizeilige Definition von \bib@heading für deine Zwecke anpassen. Füge das folgende ein (lösche die andere \renewcommand für \bib@heading), kompiliere dein Dokument und dann finde raus, wie du die drei Argumente (mit Blubber, Blabber und Blobber) anpassen musst.

    Code:
    \makeatletter
    \renewcommand*\bib@heading{%
      \addchap{Blubber \bibname}%
      \@mkboth{Blabber \bibname}{Blobber \bibname}}
    \makeatother%

  12. #12
    Registrierter Benutzer
    Registriert seit
    03.12.2006
    Beiträge
    94
    Vielen Dank, jetzt habe ich es hin bekommen.

    Jetzt bleibt noch das Problem mit dem Kolumnentitel im Inhaltsverzeichnis. Ich habe es wie folgt probiert:

    Code:
    \makeatletter
    \renewcommand*\toc@heading{%
      \addchap*{\contentsname}%
      \@mkboth{\contentsname}{}%
    \makeatother
    Doch leider wird im Kolumnentitel zwei mal "Literaturverzeichnis" angezeigt.

  13. #13
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Wie du am folgenden Dokument sehen kannst, benutzt \tableofcontents überhaupt nicht \toc@heading. Also kannst du es umdefinieren bis du schwarz wirst:

    Code:
    \documentclass{scrbook}
    \makeatletter
    \renewcommand\toc@heading{ABC}
    \begin{document}
    \tableofcontents
    
    \chapter{A}
    \end{document}
    KOMA hat aber den Befehl \deftocheading, mit dem sich die Überschrift umdefinieren lässt:

    Code:
    \deftocheading{toc}{\chapter*{Zong!!}\@mkboth{Zang!}{Zing!}}

  14. #14
    Registrierter Benutzer
    Registriert seit
    03.12.2006
    Beiträge
    94
    Vielen Dank für die Hilfe, jetzt klappt auch das. Du kennst wenigstens die ganzen Befehle, sodass das klappt. Alleine hätte ich das nicht hin bekommen.

    Wie lässt sich dieses Problem denn bei "normalen" Kapiteln ohne Unterabschnitte lösen? Meine Einleitung wird in den nächsten Tage sicher bis auf die zweite Seite gehen und dann würde im Kolumnentitel wieder zwei mal Einleitung stehen. Wäre schön, wenn du mir dafür auch noch einen Tipp geben würdest.

  15. #15
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Bei den meisten normalen Kapiteln müsste deine \chaptermark-Definition (\renewcommand\chaptermark[1]{\markboth{\thechapter\ #1}{}}) zum gewünschten Ergebnis führen. Bei anderen Kapiteln (\chapter*{Irgendwas}) kannst du immer nach dem \chapter-Befehl einen \markboth-Befehl einfügen. Schwierig sind ja nur die automatisch erzeugten Kapitel, weil du da nicht so leicht hinter den \chapter-Befehl einfach mal was hinschreiben kannst.

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •