Ändern einer vorhandenen Umgebung unter Beibehaltung des Namens

Ändern einer vorhandenen Umgebung unter Beibehaltung des Namens

Ich möchte in meinem Dokument den Rat befolgen, Zitate einzurücken und in einer kleineren Schriftart zu setzen.

Dies lässt sich natürlich ganz einfach mit folgendem Befehl erledigen:

\begin{quote}\small
  ...
\end{quote}

Aber das ist nicht wirklich die optimale Nutzung von LaTeX und ich könnte das leicht vergessen \small... habe das vergessen \small... mehr als einmal.

Stattdessen könnte ich eine neue Umgebung definieren, etwa so:

\newenvironment{myquote}{\begin{quote}\small}{\end{quote}}

Und haben:

\begin{myquote}
  ...
\end{myquote}

Aber myquote? Wirklich? Daran ist nichts Besonderes myquote, es ist ein ziemlich standardmäßiges Verhalten. Ich würde viel lieber die ursprüngliche quoteDefinition ändern und weiterhin Folgendes verwenden:

\begin{quote}
  ...
\end{quote}

(was meiner Meinung nach ein viel sinnvollerer Umgebungsname ist), aber ändern Sie ihn so, dass der Inhalt \smallautomatisch in der entsprechenden Schriftgröße eingestellt wird.

Also habe ich Folgendes ausprobiert etoolboxund verwendet:

\AtBeginEnvironment{quote}{\small}

So erstellen Sie dieses MWE:

\documentclass[12pt]{article}
\pagestyle{plain}
\usepackage[margin=1.8cm]{geometry}
\geometry{a4paper}
\usepackage[parfill]{parskip}
\usepackage{etoolbox}

\AtBeginEnvironment{quote}{\small}

\begin{document}

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean
commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus
et magnis dis parturient montes, nascetur ridiculus mus. Donec quam
felis, ultricies nec, pellentesque eu, pretium quis, sem.
\begin{quote}
  Nulla consequat massa quis enim. Donec pede justo, fringilla vel,
  aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut,
  imperdiet a, venenatis vitae, justo.
\end{quote}
Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras
dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend
tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac,
enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a,
tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque
rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue. Curabitur
ullamcorper ultricies nisi. Nam eget dui.

\end{document}

Das ist in Ordnung, fügt aber vertikalen Abstand um das Zitat herum hinzu:

Bildbeschreibung hier eingeben

Das wird von der Standardumgebung nicht hinzugefügt quote:

Bildbeschreibung hier eingeben

Wie kann ich dann Änderungen vornehmen, quoteum die \smallSchriftartdeklaration automatisch hinzuzufügen, ohne andere Aspekte des Standardverhaltens zu beeinträchtigen und ohne diesen vertikalen Abstand einzuführen, der meiner Meinung nach nicht vorhanden sein sollte?

Antwort1

In LaTeX rufen \begin{foo}und \end{foo}tatsächlich die Befehle \foound auf \endfoo. Eine Möglichkeit, das gewünschte Ergebnis zu erzielen, besteht darin, einfach neu zu definieren \quote:

\documentclass{article}
\usepackage[margin=1.8cm, a4paper]{geometry}
\usepackage[parfill]{parskip}
\usepackage{lipsum}

\let\origquote=\quote
\def\quote{\origquote\small}

\begin{document}
  <what you had>
\end{document}

Zitat

verwandte Informationen