org-mode에서 LaTeX 방정식 레이블 및 참조


15

이것은 조직을 라텍스 및 HTML 참조로 내보내는 것과 비슷 하지만 방정식입니다.

내 조직 파일에서 LaTeX 수학 스 니펫을 사용하고 싶습니다.

* The Quadratic Equation
The roots of $ax^2 + bx + c$ are given by
\begin{equation}
\label{eq:1}
x = \frac{-b \pm \sqrt{b^2-4ac}}{2a}
\end{equation}

According to Equation \ref{eq:1}, ...

LaTeX로 내보낼 때 \ref{eq:1}올바르게 방정식에 대한 하이퍼 링크로 바뀝니다. 그러나 다음과 같은 추가 동작을 달성하고 싶습니다.

  1. 조직 파일 내에서 텍스트를 클릭 할 수 있습니다 \ref{eq:1}(텍스트는 \ref{eq:1}하이퍼 링크 가 필요하지 않습니다 ). 이 기능은 [[The Quadratic Equation]]조직 모드에서 클릭 할 수있게되므로 헤더에 존재 합니다.

  2. HTML로 내보낼 때 참조를 유지하려고합니다 (실제로 레이블 (1)이 HTML 내보내기에도 표시되지 않음).

이것을 달성 할 수있는 방법이 있습니까?


기술적으로 ... 식으로 포장 #+begin_src latex... #+end_src당신이 배치하면, 다음과를 #+name: eq:1하고 #+label: eq:1, 당신은 링크를 사용하여 즉, 당신이 원하는 방식으로,이 블록을 참조 할 수 있어야 [[eq:1][first equation]]하지만, 어떤 이유로 나를 위해 일을하지 않습니다 (하지만 변경 사항으로 인해 발생할 수 있습니다).
wvxvw

@wvxvw advices를 통해 동작을 변경 한 경우을 통해서만 변경없이 테스트 할 수 있습니다 emacs -Q. 당연히 소스를 직접 변경 한 경우에는 도움이되지 않습니다.
Tobias

@ Tobias nah, 조직 코드, 특히 언어 \label{}환경에 삽입하는 것과 관련된 내용을 패치하는 것을 기억 하지만 내 변경 사항을 파헤쳐 내 잘못인지 확인해야합니다. 누군가가 제안 된 방식으로 #+name작동 하는지 확인할 수 있다면 도움이 될 것 입니다.
wvxvw

@wvxvw html-export 에서 환경 주위에 <pre>/ </pre>-Tags를 얻습니다 equation. 따라서 파이어 폭스는 방정식이 아닌 소스를 보여줍니다.
Tobias

@Tobias, 맞아요. 완전히 잊어 버렸습니다 by-backend. 여기 에서 매크로 가 필요합니다 : orgmode.org/worg/org-contrib/babel/languages/…
wvxvw

답변:


15

나는 약간의 테스트를 수행해야했지만 라텍스와 HTML로 올바르게 내보내는 작은 파일을 실행할 수 있었고 org 8.2.10에서만 테스트되었지만 다른 버전에서는 작동해야합니다.

대답은 실제로 라텍스 및 HTML 참조조직 내보내기 에서와 동일합니다.

여기 작은 예가 있습니다

*  This is a latex experiment
so with the text...
#+NAME: code:1
#+BEGIN_SRC shell-script
echo hello world 
#+END_SRC
[[code:1]] is a reference to src block

#+NAME: eqn:1
\begin{equation}
    f(x) =  \sum\limits_0^\infty(f^{(n)}(x)|_{x=0} \cdot x)
\end{equation}

And this is an equation [[eqn:1]]

좋아, 이것은 상자에서 나에게 효과적입니다.
Tobias

이것은 LaTeX에서도 나에게 효과적이지만 HTML에는 "out of the box"에서는 작동하지 않습니다. 방정식에는 숫자가 없기 때문에 (일부 Mathjax 옵션이 설정되지 않았을 수도 있음). RefTeX만이 이것을 지원한다면 다른 질문입니다. 수락하기 전에 며칠 더 기다릴 것입니다. 다른 사람이 들어올 지 알아보기 위해 :)
Kevin

동의하지만 아래의 내 답변을 참조하십시오 (나중에 Org 버전은 즉시 지원됩니다).
Kevin

LaTeX에서 "정의되지 않은 참조"를 얻습니다. Emacs 24.5.1 (Org 모드 8.2.10)에서 작동하지 않음
Reb.Cabin

1
레이블이 방정식의 일부 에만 적용되는 alignand subequations등의 다중 선 AMS 환경으로 어떻게 확장 될 수 있습니까 ?
kdb

5

실제로, 조직 모드 8.3.1은 질문의 내용을 기본적으로 지원합니다. label그리고 ref상자 밖으로 작동합니다.

패키지 관리자를 통해 조직 모드를 업데이트해야합니다. 그런 (package-initialize)다음 초기화 파일의 상단 근처 에 붙어 있습니다.

편집하다. 이렇게하면를 클릭 \ref{...}하고 레이블로 이동할 수 없습니다 . 이를 위해서는 위의 허용 된 답변을 참조하거나 org-ref를 사용하십시오 .


1
그러나 \ ref {.}를 클릭하여 \ label {.}으로 이동하지 않아도됩니다.
rvf0068

아니 난 할 수 없어. 이를 위해, 당신은 위의 두 Joafigue의 답변을 사용하거나 관한 위 내 댓글 봐야 github.com/jkitchin/org-ref을 . 이를 반영하여 답변을 편집하겠습니다.
Kevin

1

내부 링크에 설명 된대로 .

당신이 사용할 수있는 <<id>>대상의 ID와 사용을 설정 [[id]]하거나 [[id][description]](당신이 사용할 수있는 C-c C-l대상을 찾기 위해이 삽입).

이것은 HTML로 내보내는 동안 저에게 효과적입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.