명령 이름 시작 부분의 "@"은 무엇을 의미합니까?

명령 이름 시작 부분의 "@"은 무엇을 의미합니까?

그만큼이 질문에 대한 답변\@author\@directorlatex.ltx 와 같은 명령이 포함되어 있습니다. 그러나 내 문서에서 사용하면 \@author"author"라는 단어만 출력됩니다. in 명령 이름 은 무엇을 @의미합니까?

답변1

@명령 이름의 시작 부분은 명령을 구현하는 일반적인 방법입니다 .프라이빗 네임스페이스,즉, 사용자에게 숨겨진 명령을 정의하는 것입니다. 따라서 사용자는 이를 실수로 수정할 수 없습니다. 이것은 안전벨트입니다.

명령의 식별자(문자 뒤의 텍스트 \)는 일련의 문자여야 합니다. 어떤 문자가 문자인지 아닌지에 대한 TeX의 아이디어는 다음 표에 의해 정의됩니다.고양이 코드,런타임 시 재구성될 수 있습니다.

많은 패키지에서 정의하는 것이 유용하다고 생각합니다.사적인사용자가 쉽게 접근할 수 없는 매크로이므로 사용자가 부주의하게 수정하거나 사용하는 것을 방지할 수 있습니다. 이는 다음과 같은 방식으로 catcode를 사용하여 달성됩니다.

  1. @문자의 캣코드를 가지 도록 배열하세요 .
  2. @이름에 문자가 포함된 개인 매크로를 정의합니다 .
  3. @더 이상 문자의 캣코드가 없도록 배열하세요 .

사용자 코드가 3단계 이후 실행 흐름을 제어하게 되면 @이름에 가 있는 매크로와 실수로 상호 작용할 수 없습니다.

관련 정보