Anzeige:
Ergebnis 1 bis 2 von 2

Thema: Listings: Caption bei Seitenumbruch auf jeder Seite mit "(Fortsetzung)"

  1. #1
    Registrierter Benutzer
    Registriert seit
    10.03.2005
    Beiträge
    28

    Listings: Caption bei Seitenumbruch auf jeder Seite mit "(Fortsetzung)"

    Hallo!

    Gibt es eine Möglichkeit, bei einem Listing aus dem Listings Package, die Caption zu wiederholen, wenn das Listing über mehrer Seiten geht? Auf den nachfolgenden Seiten soll dann nach Möglichkeit "(Fortsetzung)" angehängt werden.

    Ich hoffe, jemand hat einen Tipp für mich.

    Gruß
    Konstantin

  2. #2
    Registrierter Benutzer
    Registriert seit
    09.07.2004
    Beiträge
    2.365
    Caption zu wiederholen, wenn das Listing über mehrer Seiten geht? Auf den nachfolgenden Seiten soll dann nach Möglichkeit "(Fortsetzung)" angehängt werden.
    IMO hat der Autor das nicht eingebaut. Da 'longtable' diese Optionen anbietet, kann eine ein wenig händische Lösung darin liegen, listings in eine longtable zu setzen. Da allerdings ein Seitenumbruch nur nach einer Zeile erfolgt, muss hier die o.g. (händische) Korrektur erfolgen. Ausserdem setzt longtable die Tabelle mittig, so dass listings in die margin ragen würde, würde nicht - wie im Manual beschrieben - eine Linksbündigkeit eingebaut werden.
    Dies alles zeigt das (nicht ganz so minimale) Beispiel:

    \documentclass[a5paper,12pt]{scrartcl}
    \usepackage{showframe}
    \textheight=5cm

    \usepackage{booktabs,longtable}
    \usepackage{dingbat,amsfonts}
    \usepackage{listings}
    \lstset{basicstyle = \ttfamily\footnotesize,%
    breakautoindent = true,
    breakindent = 2em,
    breaklines = true,
    postbreak = ,
    prebreak = \raisebox{-.8ex}[0ex][0ex]{\ensuremath{\lrcorner}}
    }

    \begin{document}

    \setlength\LTleft{0pt}
    \setlength\LTright{0pt}
    \begin{longtable}{l}
    \caption{Listings in Longtable}\\
    %\toprule
    %
    \midrule
    \endfirsthead
    %
    \ldots\ Fortsetzung\\
    %\toprule
    \midrule
    \endhead
    %
    \midrule
    Fortsetzung \ldots\\
    \endfoot
    %
    %\bottomrule
    \endlastfoot
    %
    \begin{lstlisting}[language=Java]
    public class HelloWorld{

    public static void main(String[] args)args){
    System.out.println("Hallo Welt!")
    }
    }
    \end{lstlisting}\\
    \begin{lstlisting}[language=Java]
    public class HelloWorld{

    public static void main(String[] args)args){
    \end{lstlisting}\\
    \begin{lstlisting}[language=Java]
    System.out.println("Hallo Welt!")
    }
    }
    \end{lstlisting}
    \end{longtable}

    \end{document}
    edico

Stichworte

Lesezeichen

Berechtigungen

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