\ref{key}
첫 번째 열에만 내용이 포함된 테이블을 만들고 있습니다 . 에서 항목 번호를 동적으로 참조하고 있습니다 \enumerate{}
. CHKTeX에서 경고를 표시합니다 Non-breaking space (`~') should have been used.
. 앞에 물결표를 추가하려고 시도했지만 \ref
CHKTeX에서 경고를 표시합니다 Double space found.
.
이 경고를 어떻게 제거합니까?
현재 입력:
\begin{tabular}{l c c c c c c}
~\ref{key} & & x & x & & & \\
~\ref{anotherkey} & x & x & x & & & \\
\end{tabular}
답변1
최소한의 예는 다음과 같습니다
\documentclass{article}
\begin{document}
\section{Zzzz\label{zz}}
\begin{tabular}{ll}
\ref{zz} & zzzz\\
\ref{zzz} & zzzz zzz\\
\end{tabular}
\section{Zzzz zzz\label{zzz}}
\end{document}
생산하는
Warning 2 in dd197.tex line 8: Non-breaking space (`~') should have been used.
\ref{zz} & zzzz\\
^
Warning 2 in dd197.tex line 9: Non-breaking space (`~') should have been used.
\ref{zzz} & zzzz zzz\\
^
이러한 경고는 단순히 잘못된 것이므로 무시하거나 chktex를 실행하지 않는 것이 합리적인 선택이 될 것입니다.
잘못된 구문 검사기를 침묵시키기 위해 잘못된 간격이나 불필요하게 복잡한 코드를 강제하고 싶지는 않지만 원할 경우 이를 수행하고 참조를 그룹에 넣을 수 있는 것 같습니다.
\documentclass{article}
\begin{document}
\section{Zzzz\label{zz}}
\begin{tabular}{ll}
{\ref{zz}} & zzzz\\
{\ref{zzz}} & zzzz zzz\\
\end{tabular}
\section{Zzzz zzz\label{zzz}}
\end{document}
경고가 없습니다
답변2
나는 그것을 스스로 알아냈습니다. ~
CHKTeX에서 제안한 것을 사용하면 항목 앞에 공간이 만들어집니다. 대신 이를 수행하는 올바른 방법은 입니다 \nolinebreak
. 이것은 물결표이지만 보이지 않습니다. 경고를 생성하지 않고 앞에 공백을 추가할 수도 있습니다. 이렇게 하면 코드가 여전히 들여쓰기되지만 공백이 추가되지 않습니다. 코드는 다음과 같습니다:
\nolinebreak\ref{reqBoot} & & x & x & & & \\
\nolinebreak\ref{reqDisplays} & & & x & & & \\
\nolinebreak\ref{reqBoot} & & x & x & & & \\
출력은 다음과 같습니다.