verwende \def für mein eigenes \newenvironment

verwende \def für mein eigenes \newenvironment

Ich versuche, einen Befehl zu schreiben, der einen Befehl zum Schreiben von Beweisen verkürzt. Im Moment habe ich verwendet

\newenvironment{proof}%
{\textbf{Proof:}}%
{\begin{flushright} $\blacksquare$ \end{flushright}}

Jetzt habe ich es satt, die ganze Zeit zu schreiben , deshalb möchte ich zu oder \begin{proof}wechseln .\pf{ ...content... }\pf[ ...content... ]

Ich habe versucht,

\def\pf[#2\]{\begin{proof} #2 \end{proof}}

Das hat mir nicht gefallen. Ich sollte erwähnen, dass ich bereits

\def\[#1\]{\begin{align}#1\end{align}}

für align, deshalb habe ich das nicht für verwendet proof.

Antwort1

Ich empfehle es sehrnichtdies zu tun. Es ist jedoch wahrscheinlich nicht so schlimm wie das, was Sie getan haben align, also, wenn Sie müssen:

\documentclass{article}
\usepackage{xparse,amssymb}
\NewDocumentCommand \pf { +r[] } {%
  \noindent\textbf{Proof:}
    #1\hspace*{\fill}\nolinebreak$\blacksquare$}

\begin{document}

 \pf[
   Alice saw Nobody on the road, whereas the King did not.\\
   So, Alice has sharper eyes than the King and Nobody is travelling on the road.]
 \pf[
   Alice saw Nobody on the road, whereas the King did not.\\
   Hence, Alice has sharper eyes than the King.]

\end{document}

Kurzschriftbeweis

BEARBEITEN:Gehen Sie etwas besser mit Zeilen-/Seitenumbrüchen um. [Aber wie ich oben sagte, ist das wirklich keine gute Methode. Es gibt Pakete und Umgebungen, die diese Dinge richtig machen und gleichzeitig Ihren Code verständlich halten!]

Antwort2

Ich würde das nicht empfehlen, aber es funktioniert (ohne jegliche Garantie)

\documentclass{article}
\usepackage{amsmath,amssymb}
\newenvironment{proof}%
{\textbf{Proof:}}%
{\hfill$\blacksquare$}
\def\pf#1{\begin{proof} #1 \end{proof}}
\begin{document}
  \pf{some proof here}
\end{document}

Bildbeschreibung hier eingeben

Es ist besser

  1. um amsthm und seine Umgebungen für proofusw. zu verwenden.
  2. \newcommandanstelle von wie zuvor zu verwenden \defist eine LaTeX-Methode zum Definieren neuer Makros, bei der die Existenz des Makros überprüft wird.

verwandte Informationen