LaTeX는 [일부] TeX 기본 요소를 재정의합니까?

LaTeX는 [일부] TeX 기본 요소를 재정의합니까?

나는 "에서 읽었다.TeX과 LaTeX의 차이점은 무엇입니까?" LaTeX는 TeX 위에 구축된 매크로(확장)의 모음입니다. 아마도 TeX 기본 요소는 TeX에서와 동일한 방식으로 LaTeX에서 작동해야 합니다. 그러나 항상 그런 것은 아닌 것 같습니다. "\char는 수학 모드에서 어떻게 처리되나요?", 왜 텍스트 모드에서 수학 모드와 다르게 동작하는지 설명합니다 \char. 그러나 이는 TeX에만 해당됩니다. 그러나 LaTeX에서는 \char다음 예에서 볼 수 있듯이 텍스트 모드와 수학 모드에서 동일하게 동작합니다.

\documentclass{article}  
  \begin{document}
    In text mode, we obtain \char"5. In math mode, we also obtain $\char"5$.
  \end{document}

TeX에서는 결과가 다릅니다.

In text mode, we obtain \char"5. In math mode, we obtain $\char"5$.
\bye

\charLaTeX에서는 일부 TeX 기본 요소(적어도 하나:)가 재정의된 것 같습니다 . LaTeX에서 TeX 기본 요소를 재정의해야 하는지 알고 싶습니다. 그렇다면 왜 그렇습니까? LaTeX에서 재정의된 다른 TeX 기본 요소가 있습니까? TeX와 LaTeX는 (예제에서처럼) 간단한 코드 조각에서 동일한 결과를 생성할 것으로 예상되지 않습니까?

답변1

LaTeX는 기본 요소인 \input, \end, \-, 및 일부 컨텍스트에서는 \/을 재정의합니다 . 를 재정의하지는 않지만 다른 수학 코드를 사용합니다.\underline\par\char

일반 TeX에서는 다음을 볼 수 있습니다.

\mathcode`\^^E="023A % \lnot

그러나 LaTeX는 (ASCII 5)에 수학 코드를 할당하지 않으므로 ^^E값은 초기와 마찬가지로 5입니다.

TeX가 수학 모드에서 처리할 때 \char<number>마치 문자가 직접 입력된 것처럼 문자의 수학 코드를 사용합니다. 따라서 일반 TeX에서는 "3A계열 2( \lnot) 의 문자를 얻습니다 . LaTeX에서는 "5계열 0에 문자가 표시됩니다 .

재정의된 프리미티브

  • \input허용하도록 재정의되었습니다 \input{<filename>}.
  • \end환경의 끝을 표시하기 위해 재정의되었습니다.
  • \-\/기술적인 이유로 재정의되었습니다 .
  • \underline텍스트 모드에서도 사용되도록 재정의되었습니다.

목록과 같은 환경 에서는 \par재정의가 필수적입니다.

일반 TeX이 수학 코드를 ASCII 5에 할당하는 이유는 무엇입니까?

Knuth는 확장 문자 세트를 사용했고 키보드에서 ¬ 및 기타 문자를 직접 입력할 수 있었기 때문입니다. 그래서 그는 확장 문자 집합에 대한 수학 코드를 설정하는 것이 편리하다는 것을 알았습니다.

관련 정보