조직 모드로 내 보낸 HTML 문서 제목의 줄 바꿈


26

나는 org-mode를 사용하여 물건을 문서화하고 보통 pdf (라텍스를 통해)와 html로 내 보냅니다.

\\문자가 줄 의 끝에 있으면 pdf 및 html로 내보낼 때 줄 바꿈 문자를 강제 적용합니다.

그러나 html로 내보낼 때 줄 사이 에 줄 바꿈 문자를 강제하는 방법을 알고 싶습니다 . 이 솔루션을 사용하면 html 내보내기에도 여러 줄 제목을 가질 수 있습니다.

예:

#+TITLE: First Line of Title \\ Second Line of Title

위의 pdf 내보내기에서 두 줄로 내보내 지지만 \\문자는 html 내보내기로 유지됩니다 (줄의 끝이 아니기 때문에).

여러 줄의 제목을 두 가지 형식으로 모두 잘 내보내도록 제목을 어떻게 형식화 할 수 있습니까?

답변:


36

조직 모드 8은 더 이상 LaTeX 문자를 허용하지 않습니다. 올바른 방법은 제목에 내보내기 스 니펫을 포함시키는 것입니다.

#+TITLE: Foo @@latex:\\@@ Bar

따라서 LaTeX와 HTML 모두에서 줄 바꿈을 내보내려면 코드가 다음과 같아야한다고 가정합니다.

#+TITLE: Foo @@latex:\\@@ @@html:<br>@@ Bar

출처 : https://lists.gnu.org/archive/html/emacs-orgmode/2014-09/msg00466.html

문서의 여러 위치에 이러한 줄 바꿈 문자를 추가해야하는 경우이 상세 @@latex:\\@@ @@html:<br>@@문자열을 조직 모드로 바꾸는 MACRO것이 더 적합합니다.

아래의 MACRO 정의는 문서 상단 또는 조직 문서에 포함 된 공통 "org config"파일에 배치 할 수 있습니다.

#+MACRO: NEWLINE @@latex:\\@@ @@html:<br>@@

그런 다음 MACRO를 사용하여 다음과 같이 제목 형식을 지정할 수 있습니다.

#+TITLE: Foo {{{NEWLINE}}} Bar

MACRO 접근 방식의 장점은 다음과 같습니다.

  • 조직 모드 문서를보다 쉽게 ​​읽을 수 있습니다.
  • {{{NEWLINE}}}새로운 내보내기 형식을 지원하기 위해 정의를 변경해야하는 경우 한 곳에서 변경해야합니다.

예:

#+MACRO: NEWLINE @@latex:\\@@ @@html:<br>@@ @@ascii:|@@

참고 : @@ascii:|@@ASCII 내보내기에는 줄 바꾸기를 삽입하지 않습니다. 그것은 단순히 조직 문서에서 사용 된 |곳에 파이프 캐릭터를 배치 할 것 {{{NEWLINE}}}입니다.

마지막으로 #+SUBTITLE키워드도 도움이 될 수 있습니다.


관련 질문 : ASCII 수출을위한 개행을 전달하는 방법을 알고 있습니까? @@ascii:\n@@작동하지 않습니다.
Kaushal Modi

작동하지 않는 것 같습니다. 이 기능을 구현하려면 기능 요청이 필요하다고 생각합니다.
mankoff

1
ascii의 줄 바꿈이 작동하지 않는다는 것을 의미합니까? 그렇지 않으면 솔루션이 html 및 pdf 내보내기에 작동합니다. ascii의 줄 바꿈이 지원되면 NEWLINE 매크로를 업데이트하기 만하면됩니다.
Kaushal Modi

3

나는 원치 않는 부작용이 없을 것이라고 확신하지 못하지만 다음과 같이 작동 할 수 있습니다

(push (cons "\\\\\\\\" "<br />") org-html-special-string-regexps)

LaTeX 익스포터가 아니기 때문에 특수 익스텐션 확장 목록이 HTML 익스포터에서 확장 가능하다는 사실은 운이 좋다 ...

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