
일부 명령을 텍스트 파일에 작성하는 매크로를 작성 중입니다. 이 텍스트 파일은 나중에 일부 매크로를 실행하기 위해 읽어야 합니다.
매크로:
\documentclass{article}
\begin{document}%
\newwrite\tmpfile%
\immediate\openout\tmpfile=output.tex%
\immediate\write\tmpfile{some text and a percent sign}%
\immediate\closeout\tmpfile%
\end{document}%
내보낸 텍스트
some text and a percent sign
지루한 공백을 피하려면 줄을 백분율 기호로 마무리해야 합니다.%
나는이 라인을 시도했다
\immediate\write\tmpfile{some text and a percent sign\%}%
준 :
some text and a percent sign\%
그리고 그것은 내가 원하는 것이 아닙니다. 갖고 싶은 것 :
some text and a percent sign%
파일에 단일 퍼센트 기호(%)를 쓰는 것이 가능합니까? 어떻게 해야 합니까?
답변1
은 주석 문자 이므로 의미를 catcode 14에서 문자 %
로 변경해야 합니다 . 이것은 의 정의 12
에서 수행되지만 이는 또 다른 '어색한' 사용법을 소개합니다. 그래서 쌍 을 생략 하고 를 사용하는 방식을 보여줍니다 .latex.ltx
\@percentchar
\makeatletter...\makeatother
latex.ltx
\writepercent
\makeatletter...\makeatother
\documentclass{article}
\catcode`\%=12
\def\writepercent{%}
\catcode`\%=14
%Also possible
\makeatletter
\def\writepercentother{\@percentchar}%
\makeatother
\begin{document}%
\newwrite\tmpfile%
\immediate\openout\tmpfile=output.tex%
\makeatletter
\immediate\write\tmpfile{some text and a percent sign\@percentchar}
\makeatother
\immediate\write\tmpfile{Another important text and a percent sign\writepercent}
\immediate\closeout\tmpfile%
\end{document}