예를 들어 pandoc을 사용하여 groff 텍스트를 라텍스로 변환할 수 있습니까?

예를 들어 pandoc을 사용하여 groff 텍스트를 라텍스로 변환할 수 있습니까?

groff매크로를 사용하면 방정식을 일반 영어로 간단하게 설명할 수 있다는 사실을 알았기 때문에 eqn시간을 들여 배우고 싶었습니다. 때때로 나는 정말 진지한 수학을 입력합니다 LaTeX(이것은 내가 이 사업에 너무 많은 시간을 보낸다는 뜻입니다. 한편으로는 텍스트 편집기(s?ed|n?vim)와 같은 많은 이점을 얻었습니다. ?); regex; ( vimscript| lua); tree-sitter그리고 lsp; 이것은 snippets또한 나를 기계식 키보드의 세계로 이끌었습니다 qmk. via반면에, 제가 완벽한 작업 흐름을 찾기 위해 노력했다는 사실은 그 자체로 이 작업이 매우 시간 소모적이라는 것을 암시합니다. 여행을 하면서 배운 것 중 하나는 톱날 가는 것을 결코 포기하지 않는다는 것입니다. (일단, 제가 이 토끼굴을 파기 시작한 4년 전과 비교하면 요즘 제가 보내는 시간은 상당히 줄어듭니다. ).

eqn나는 에서 내 자신의 명령을 정의하는 것과 유사하게 를 사용하여 매크로를 정의할 수 있다는 사실을 좋아합니다 LaTeX. 또한 표, 그림, 목차, 수식 등을 만들고 참고자료와 인용문을 만들 수도 있습니다. 내가 마음을 정하고 확실히 로 이동할 수 있도록 두 가지만 열려 있습니다 eqn. 사람들은:

  1. 예를 들어 및 를 \nabla사용하여 와 같은 복잡한 기호를 올바르게 표시하려면 어떻게 해야 합니까 ?groffeqn
  2. 소스를 로 변환해야 하는 경우 LaTeX표준 도구가 있습니까? 어쩌면 pandoc이렇게 할 수도 있겠지만, 어떻게?

PS 처음에는 이 질문을 게시할 계획이었지만 stackoverflow웹사이트에서 내 태그를 보고 바로 이 포럼으로 리디렉션되었습니다. 이런 질문을 하기에 적합한 장소가 아니라면 죄송합니다.

답변1

아래는 Nabla에 관한 첫 번째 질문에 대한 답변입니다. 두 번째 질문에 대한 답은 모르겠습니다.

나블라(Nabla)는 그리스 대문자 델타(Delta)를 거꾸로 쓴 것입니다. 그러므로 당신은 사용할 수 있습니다https://lists.gnu.org/archive/html/groff/2000-08/msg00068.html(의견에 언급된 Groff 메일링 리스트에서) Delta 문자를 반전시킵니다. 즉, \[*D].

\vGroff/eqn에서 설정(세로 위치) 대신 Postscript를 x y translate직접 사용했습니다. 경계 상자가 증가하지 않기 때문입니다. 메일링 리스트의 원래 솔루션에서는 문자의 높이가 기준선 주위의 전체 회전으로 구성됩니다. 즉, 두 줄로 인해 분수가 너무 높아집니다. 다른 크기(예: 위 첨자)의 경우 번역 값을 조정해야 할 수도 있습니다.

예제 방정식은 다음에서 가져온 것입니다.https://tex.stackexchange.com/a/527873:

.ds Nabla "\h'\w'X'u'\X'ps: exec gsave currentpoint \
0 -6.5 translate 2 copy translate -180.0000 rotate neg exch neg exch \
translate'\[*D]\X'ps: exec grestore'\h'-\w'X'u'
.char \(Nb \*[Nabla]

.EQ
s = sqrt { { sum from i=1 to N ( x sub i - x bar ) sup 2 } over { \(Nb - 1 } }
.EN

결과는 다음과 같이 컴파일됩니다 groff -e example.tr > example.pdf.

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

관련 정보