정리의 매개변수로 사용자 정의 환경의 매개변수를 전달합니다.

정리의 매개변수로 사용자 정의 환경의 매개변수를 전달합니다.

기본적으로 바로가기를 만들고 싶습니다.

\begin{sometheorem}[optional parameter]
    \leavevmode \vspace{-\baselineskip}\vspace{-\baselineskip}\vspace{3pt} %some space adjustments
    \begin{leftbar}
        some text
    \end{leftbar}
\end{sometheorem}

그래서 나는 시도했다:

\newenvironment{defi}[1]
{
\begin{definition}[#1]
\leavevmode \vspace{-\baselineskip}\vspace{-\baselineskip}\vspace{3pt}
\begin{leftbar}\noindent
}
{
\end{leftbar}
\end{definition}
}

하지만 이것은 나에게

정리(])

선택적 매개변수] 일부 텍스트

매개변수를 올바르게 전달하려면 어떻게 해야 합니까?

편집: 저는 왼쪽 막대에 프레임 패키지를 사용하고 정리에는 amsthm을 사용하고 있습니다.

답변1

선택적 인수가 제공되는지 여부에 따라 분기해야 합니다.

\documentclass{article}
\usepackage{framed}

\newtheorem{innertheorem}{Theorem}
\newenvironment{theorem}[1][]
 {\if\relax\detokenize{#1}\relax
    \begin{innertheorem}%
  \else
    \begin{innertheorem}[#1]%
  \fi
  \mbox{}\par\nobreak
  \vspace{-\baselineskip}\vspace{3pt}%
  \begin{leftbar}\noindent\ignorespaces}
 {\end{leftbar}\end{innertheorem}}

\begin{document}

\begin{theorem}
Some statement Some statement Some statement
Some statement Some statement Some statement
Some statement Some statement
\end{theorem}

\begin{theorem}[Something]
Some statement Some statement Some statement
Some statement Some statement Some statement
Some statement Some statement
\end{theorem}

\end{document}

여기에 이미지 설명을 입력하세요

관련 정보