Verbatim-Umgebung: Einrücken ausschalten

Schriftbild, Absätze und Auflistungen einstellen


Arjen
Forum-Anfänger
Forum-Anfänger
Beiträge: 22
Registriert: Sa 9. Mai 2015, 20:12

Verbatim-Umgebung: Einrücken ausschalten

Beitrag von Arjen »

Hallo in die Runde,

ich würde gerne wissen, wie man das Einrücken bei einer Verbatim-Umgebung ausschaltet. Anbei ein Minimalbeispiel. Ich hab es bereits mit \noindent versucht, ging bisher nicht.

\documentclass{article}
\usepackage{verbatimbox}
\makeatletter
\setcounter{VerbboxLineNo}{-1}
\renewenvironment{verbnobox}{%
	%  \setcounter{VerbboxLineNo}{-1}%
	\let\my@par\par%
	\def\verbatim@processline{%
		{\addtocounter{VerbboxLineNo}{1}%
			\@tmp\setbox0=\hbox{\@tmp\the\verbatim@line}%
			\hsize=\wd0 \the\verbatim@line\my@par}}%
	\verbatim\verbbox@inner%
}
{%
	\endverbatim%
	\global\def\@tmp{}%
	\addtocounter{VerbboxLineNo}{-1}%
}
\makeatother
\begin{document}
	\def\tmp{\makebox[0pt][r]{\scriptsize\theVerbboxLineNo\ \smash{\rule[-1.4\dp\strutbox]{1pt}{1.4\baselineskip}}\ }\small}
\noindent NO INDENT SHOULD BE AFTER THIS 
	\begin{verbnobox}[\tmp]
		ADASFASFASF
	\end{verbnobox}
\noindent NO INDENT SHOULD BE AFTER THIS 
	\begin{verbnobox}[\tmp]
		AFASDASFASGASDF
		
	\end{verbnobox}
\noindent RESET LINE NUMBERS
	\setcounter{VerbboxLineNo}{-1}
	\begin{verbnobox}[\tmp]
		Reset Line Numbers should appear here
	\end{verbnobox}
\end{document}

Danke.

Grüße,

Arjen

Gast

Beitrag von Gast »

Möglicherweise stehe ich ein bisschen auf dem Schlauch, aber hast Du nicht bereits bei TeX.SX in No indent for verbatim environment die Antwort erhalten?

Besserwisser

Beitrag von Besserwisser »

Das ist kein Einzug, sondern das sind schlicht die Leerzeichen aus deiner Eingabe. Wenn du die nicht haben willst, lass sie weg:
\documentclass{article}
\usepackage{verbatimbox}
\makeatletter
\setcounter{VerbboxLineNo}{-1}
\renewenvironment{verbnobox}{%
   %  \setcounter{VerbboxLineNo}{-1}%
   \let\my@par\par%
   \def\verbatim@processline{%
      {\addtocounter{VerbboxLineNo}{1}%
         \@tmp\setbox0=\hbox{\@tmp\the\verbatim@line}%
         \hsize=\wd0 \the\verbatim@line\my@par}}%
   \verbatim\verbbox@inner%
}
{%
   \endverbatim%
   \global\def\@tmp{}%
   \addtocounter{VerbboxLineNo}{-1}%
}
\makeatother
\begin{document}
   \def\tmp{\makebox[0pt][r]{\scriptsize\theVerbboxLineNo\ \smash{\rule[-1.4\dp\strutbox]{1pt}{1.4\baselineskip}}\ }\small}
\noindent NO INDENT SHOULD BE AFTER THIS 
   \begin{verbnobox}[\tmp]
ADASFASFASF
   \end{verbnobox}
\noindent NO INDENT SHOULD BE AFTER THIS 
   \begin{verbnobox}[\tmp]
AFASDASFASGASDF

   \end{verbnobox}
\noindent RESET LINE NUMBERS
   \setcounter{VerbboxLineNo}{-1}
   \begin{verbnobox}[\tmp]
Reset Line Numbers should appear here
   \end{verbnobox}
\end{document}
Das Paket listings bietet übrigens Optionen für einen tatsächlichen Einzug oder zum Entfernen von (Leer-)Zeichen am Anfang jeder Zeile.

Gast

Beitrag von Gast »

Für das sehr empfehlenswerte listings-Paket gibt es neben dem manuellen gobble=n, mit dem die ersten n Zeichen ignoriert werden, wohl auch automatische Möglichkeiten.
Nämlich [d]lstautogobble[/d], das aus How to automatically skip leading white spaces in listings hervorging, ein paar weiter Fragen dazu sind Verbatim environment with correct tab handling and special characters und How to remove the leading unnecessary white spaces when using linerange option?

Besserwisser

Beitrag von Besserwisser »

Ach, Mensch! Schon wieder vergebliche Liebesmühe, wegen so einem blöden heimliches Crosspost! Was soll der Unfug? :(

Arjen
Forum-Anfänger
Forum-Anfänger
Beiträge: 22
Registriert: Sa 9. Mai 2015, 20:12

Auf Nummerierung bezogen

Beitrag von Arjen »

Das ist auf die Nummerierung bezogen.

alles was im Code ist, sollte einen einheitlichen Rand haben.


Die Zahlen stehen etwas ab.


Danke.

Grüße,

Arjen

Gast

Beitrag von Gast »

Ich verstehe wohl nicht ganz, worauf Du hinaus möchtest. Aber nutze doch einfach listings anstatt dieser selbst zusammengebastelten Version. Da hast Du die volle Kontrolle über Zeilennummern und den ganzen Spaß.
\documentclass{article}
\usepackage{listings}

\lstset{
  basicstyle=\ttfamily,
  frame=leftline,
  framerule=1pt,
  numbers=left,
  numberstyle=\scriptsize,
}

\begin{document}
Lorem ipsum
   \begin{lstlisting}[gobble=6]
      lorem
      ipsum
   \end{lstlisting}
dolor sit amet.
   \begin{lstlisting}[firstnumber=last]
      dolor sit amet
   \end{lstlisting}
Consecetur
   \begin{lstlisting}[gobble=6]
      Reset Line Numbers should appear here
   \end{lstlisting}
\end{document}

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

Beitrag von Johannes_B »

Crossposts werden von vielen geächtet. Hier bei goLaTeX sind sie sogar nach dem Regelwerk nicht erlaubt.

Deswegen: Transparenz, ein einfacher Link mit dem Satz Ich habe auch bei XY gepostet, aber noch keine Antwort erhalten.

Was ich allerdings nicht verstehe: Du hast bereits eine Antwort erhalten, gibst Steven aber absolut kein Feedback.
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.

Gast

Beitrag von Gast »

Möchtest Du so etwas wie
\documentclass{article}
\usepackage{listings}

\lstset{
  basicstyle=\ttfamily,
  frame=leftline,
  framerule=1pt,
  numbers=left,
  numberstyle=\scriptsize,
  xleftmargin=\parindent,
}

\begin{document}
Lorem ipsum
   \begin{lstlisting}[gobble=6]
      lorem
      ipsum
   \end{lstlisting}
dolor sit amet.
   \begin{lstlisting}[firstnumber=last]
      dolor sit amet
   \end{lstlisting}
Consecetur
   \begin{lstlisting}[gobble=6]
      Reset Line Numbers should appear here
   \end{lstlisting}
\end{document}
Das habe ich zumindest aus Deinen Äußerungen bei TeX.SX herausgelesen.

Arjen
Forum-Anfänger
Forum-Anfänger
Beiträge: 22
Registriert: Sa 9. Mai 2015, 20:12

Beitrag von Arjen »

danke für die vielen Hilfen, es hat wirklich sehr geholfen und tut mir leid für das crossposten

kommt nicht noch mal vor.

Grüße,

Arjen

Antworten