대체 eqref 명령(각주 생성)

대체 eqref 명령(각주 생성)

때로는 참조 번호 외에 인용된 방정식에 대한 시각적 참조를 갖는 것이 도움이 된다고 생각합니다. 내가 말하는 내용에 대한 (수동) 예를 들어 보겠습니다.

\begin{document}
(...)

\begin{equation}\label{1.1}
  y=x
\end{equation}

<several pages later>

... in equation \eqref{1.1}\footnote{y=x} ...
\end{document}

이 프로세스를 자동으로 수행하는 명령을 만들고 싶습니다. 다음과 같은 것

\newcommand{\foo}[1]{\eqref{#1}\footnote{eqcont}}

여기서 'eqcont' 부분은 방정식 환경의 내용에 대한 호출입니다. 그러나 이 작업을 수행하는 코드를 알아낼 수 없습니다.

어떤 제안이 있으십니까?

답변1

@cgnieder의 의견이 매우 도움이 될 수 있지만 질문의 초점이 약간 다르며 추가 처리가 필요하다고 생각합니다.

패키지 environ는 여기에서 매우 유용합니다. 이를 \eqref통해 'eqcont'를 약간 변경해야 했던 의도한 대로 정확하게 재정의할 수 있습니다 .

\documentclass{article}
\usepackage{lipsum}
\usepackage{amsmath}
\usepackage{environ}
\NewEnviron{refeq}[1]{%
  \label{#1}
  \begin{equation} \BODY \end{equation}
  \expandafter\xdef\csname eq#1\endcsname{\BODY}
  }
\let\AMSeqref\eqref
\renewcommand{\eqref}[1]{\aftergroup\AMSeqref{#1}\footnote{\csname eq#1\endcsname}}

\begin{document}
\lipsum[8]
\begin{refeq}{1.1}
  y=x
\end{refeq}
\lipsum
... in equation \eqref{1.1} ...
\end{document}

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

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

관련 정보