PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : seltsame Ausrichtung bei lstlistinng[mathescape=true]



zac
17-01-2011, 23:20
Also mein Problem ist folgendes.
Ich würde gerne ein paar mathematische Symbole in meinen Code einbauen. Dadurch werden die Zeilen dann aber nicht mehr normal ausgerichtet. Hier mal ein Beispiel:


\documentclass[a4paper,10pt, fleqn]{scrartcl}
\usepackage [ansinew] {inputenc}
\usepackage{listings} %listingumgebung für Quellcodes
\lstset{columns=fullflexible, basicstyle=\ttfamily}%Schriftgröße gleich groß wie in verbatim-Umgebung
\usepackage{graphicx}
\usepackage[fleqn]{amsmath} %Ergänzungspaket für mathematische Formeln
%[fleqn] = abgesetzte Formeln linksbün
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}

\usepackage[a4paper,inner=2.5cm,outer=2.5cm,top=1.5cm,bottom=2 cm, includeheadfoot]{geometry}


\begin{document}
\begin{lstlisting}[mathescape=true]
$\hookrightarrow$ (lambda (lis)
($\left\lceil p\right\rceil$ xxx)
zzz)
\end{lstlisting}
\end{document}


zzz soltter eigentlich direkt unter xxx stehen und ($\left... unter (1 nach rechts verschoben) (lambda...

Kann mir einer helfen, wie LaTeX das automatisch richtig ausrichtet?

rais
19-01-2011, 02:03
Moin moin,


zzz soltter eigentlich direkt unter xxx stehen und ($\left... unter (1 nach rechts verschoben) (lambda...

Kann mir einer helfen, wie LaTeX das automatisch richtig ausrichtet?
ob das automatisch umsetzbar ist, weiß ich nicht ... und hätte auch so meine Bedenken, immerhin gibst Du Freiraum entsprechend der Länge des überliegenden Makronamens vor -- so sieht es zumindest aus. Woran sollte sich so ein Automatismus Deiner Meinung nach orientieren?
Versuche es vllt mit $\phantom{\hookrightarrow}$ ...

MfG

zac
19-01-2011, 22:27
naja, das ist etwas nervig und funktioniert leider nur bedingt, siehe hier:


\documentclass[a4paper,10pt, fleqn]{scrartcl}
\usepackage [ansinew] {inputenc}
\usepackage{listings} %listingumgebung für Quellcodes
\lstset{columns=fullflexible, basicstyle=\ttfamily}%Schriftgröße gleich groß wie in verbatim-Umgebung
\usepackage{graphicx}
\usepackage[fleqn]{amsmath} %Ergänzungspaket für mathematische Formeln
%[fleqn] = abgesetzte Formeln linksbün
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}

\usepackage[a4paper,inner=2.5cm,outer=2.5cm,top=1.5cm,bottom=2 cm, includeheadfoot]{geometry}


\begin{document}
\begin{lstlisting}[mathescape=true]
$\hookrightarrow$ (lambda (lis)
$\phantom{\hookrightarrow}$ ($\left\lceil p\right\rceil$ xxx
$\phantom{\hookrightarrow}$ $\phantom{\left\lceil p\right\rceil}$ zzz))
\end{lstlisting}
\end{document}


zzz ist leider nicht direkt unter xxx ausgerichtet.

edico
20-01-2011, 13:25
Passt nicht


keepspaces=true


edico

zac
20-01-2011, 19:09
also so funktioniert es:

s\documentclass[a4paper,10pt, fleqn]{scrartcl}
\usepackage [ansinew] {inputenc}
\usepackage{listings} %listingumgebung für Quellcodes
\lstset{columns=fullflexible, basicstyle=\ttfamily, keepspaces=true}%Schriftgröße gleich groß wie in verbatim-Umgebung
\usepackage{graphicx}
\usepackage[fleqn]{amsmath} %Ergänzungspaket für mathematische Formeln
%[fleqn] = abgesetzte Formeln linksbün
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}

\usepackage[a4paper,inner=2.5cm,outer=2.5cm,top=1.5cm,bottom=2 cm, includeheadfoot]{geometry}


\begin{document}
\begin{lstlisting}[mathescape=true][keepspaces=true]
$\hookrightarrow$ (lambda (lis)
$\phantom{\hookrightarrow}$ ($\left\lceil p\right\rceil$ xxx
$\phantom{\hookrightarrow}$ $\phantom{\left\lceil p\right\rceil}$ zzz))
\end{lstlisting}
\end{document}

Danke!
Ist nur etwas nervig, die ganzen \phantoms{...} einzutippen.