showexpl에서 중괄호 색상을 어떻게 지정할 수 있나요?

showexpl에서 중괄호 색상을 어떻게 지정할 수 있나요?

showexplLaTeX 코드를 컬러 중괄호로 인쇄하여 사용하고 싶습니다 . lstlisting아래 예와 같이 읽기 옵션을 추가하여 환경 내에서 이 작업을 수행할 수 있지만 LTXexample환경 내에서는 수행할 수 없습니다(오류가 발생함). 환경의 코드 블록에서 중괄호에 색상을 지정하는 방법이 있습니까 LTXexample?

\documentclass{article}
\usepackage{xcolor}
\usepackage{showexpl}
\lstset{language=[LaTeX]Tex,texcsstyle=*\color{red}}

\begin{document}
\begin{LTXexample}
\textit{Test}
\end{LTXexample}

\begin{lstlisting}[
    literate=
        *{\{}{{\textcolor{blue}{\{}}}{1}
        {\}}{{\textcolor{blue}{\}}}}{1}
]
\textit{Test}
\end{lstlisting}
\end{document}

컬러 교정기의 예

답변1

showexpl는 패키지를 기반으로 하기 때문에 키를 listings포함한 대부분의 후자 기능은 literate이론적으로 즉시 작동해야 합니다. 하지만 어떤 이유로든 리터럴 대체를 전역적으로 정의하면 다음과 같습니다.

\lstset
{
  literate=
    *{\{}{{\textcolor{blue}{\{}}}{1}
     {\}}{{\textcolor{blue}{\}}}}{1},
}

showexpl에 대해 불평 하는 Undefined control sequence \textitTest. 나는 showexpl그 오류에 대해 좋은 설명을 할 만큼 내부를 잘 모르지만 , 하지 말아야 할 때 중괄호가 삭제되는 것 같습니다. 특히 (1999) 의 키 showexpl도입이 (2004) 의 첫 번째 릴리스보다 앞서 기 때문에 이것은 나에게 버그처럼 보입니다 .literatelistingsshowexpl

한 가지 해결 방법은 전역적으로가 아니라 사용자 정의 스타일 내에서 이러한 문자 대체를 정의하는 것입니다. 그러면 오류가 발생하지 않아야 합니다.

여기에 이미지 설명을 입력하세요

\documentclass{article}

\usepackage{xcolor}
\usepackage{showexpl}

%% returns an error!
%\lstset
%{
%  literate=
%    *{\{}{{\textcolor{blue}{\{}}}{1}
%     {\}}{{\textcolor{blue}{\}}}}{1},
%}

\lstdefinestyle{myLaTeX}
{
  language=[LaTeX]Tex,
  texcsstyle=*\color{red},
  literate=
    *{\{}{{\textcolor{blue}{\{}}}{1}
     {\}}{{\textcolor{blue}{\}}}}{1},
}

\begin{document}

\begin{LTXexample}[style=myLaTeX]
\textit{Test}
\end{LTXexample}

\begin{lstlisting}[style=myLaTeX]
\textit{Test}
\end{lstlisting}

\end{document}

관련 정보