Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.

  • 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
  • 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
    • 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
    • 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
    • 최소 예제는 "Minimal working example"을 읽어 보세요.
  • 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
  • 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
  • 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
    • 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
  • MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
  • 사용하는 편집기는 CKeditor입니다.
    • 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
    • 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
    • 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.

1. 수식에서도 \verb 명령을 쓰는 것까지는 해결하고 (수직모드를 일단 빠져나오도록 하는) 

2. 그리고 수식에서 그 부분만 컬러를 주고 싶은데, 그게 잘 안됩니다.


etoolbox 패키지의 \preto, \appto, \pretocmd, \apptocmd 따위를 잘 패치하면 될 것 같은데, 잘 안 됩니다. 


etoolbox_and_customized_verb_command_patch.png


\documentclass[nanum,b4paper]{oblivoir}



\usepackage{listings}


\usepackage{etoolbox}

\expandafter\patchcmd\csname \string\lstinline\endcsname{%

\leavevmode

\bgroup

}{%

\leavevmode

\ifmmode\hbox\fi

\bgroup

}{}{%

\typeout{Patching of \string\lstinline\space failed!}%

}


\usepackage{xcolor}


\let\mverb\lstinline


\lstset{basicstyle=\ttfamily}


\pretocmd{\mverb}{\color{red}}{}{}

%\apptocmd{\mverb}{}{}{}


\lstset{columns=fullflexible,frame=single}


\begin{document}


이것은 \lstinline{listings} 패키지의 \lstinline{\lstinline} 명령어입니다.


\verb!\lstinline{\foo X_S %&$}!와 같이 입력하면 \lstinline{\foo X_S %&$}와 같이 나옵니다.


이 \lstinline{\lstinline} 명령을 수식에서도 쓰도록 하기 위해 다음과 같이 패치하였습니다. 수직모드를 잠시 빠져나오도록 하는 것 같습니다. (\href{http://www.rqna.net/qna/qiiuuq-how-can-i-make-lstinline-function-normally-inside-math-mode.html}{Heiko Oberdiek 씨의 글})

\begin{lstlisting}

\usepackage{etoolbox}

\expandafter\patchcmd\csname \string\lstinline\endcsname{%

\leavevmode

\bgroup

}{%

\leavevmode

\ifmmode\hbox\fi

\bgroup

}{}{%

\typeout{Patching of \string\lstinline\space failed!}%

}

\end{lstlisting}


따라서 다음과 같이 수식에서도 \lstinline{\lstinline} 명령을 쓸 수 있습니다.

\begin{lstlisting}

\begin{equation}

x = \lstinline{\foo X_S %&$#^&*()} \sum_{i =1}^\infty

\end{equation}

\end{lstlisting}


\begin{equation}

x = \lstinline{\foo X_S %&$#^&*()} \sum_{i =1}^\infty

\end{equation}


이제 \lstinline{\lstinline} 명령을 \lstinline{\let\mverb\lstinline}처럼 함으로써 강제로 \mverb{\mverb}\color{black} 명령어로 만들었습니다. 그리고 \lstinline{\mverb} 명령 안에 있는 것들은 붉은 색으로 칠하려고 \lstinline{\pretocmd}를 이용하여 패치하였습니다.

\begin{lstlisting}

\pretocmd{\mverb}{\color{red}}{}{}

\end{lstlisting}

근데, \lstinline{\mverb}를 벗어난 뒷부분에도 컬러가 칠해집니다. \verb!\color{red}!가 아마 계속 전역적인 효과를 발휘하는 것일텐데요, 이를 딱 \lstinline{\mverb} 영역에서만 적용하고 싶습니다.

\begin{equation}

x = \mverb{\foo X_S %&$#^&*()} \sum_{i =1}^\infty

\end{equation}


\end{document}


===


장황해졌네요. 


* 전에 "인자를 verbatim으로 찍는 명령"의  newverbs 패키지의 \collectverb를 이용하면 컬러를 쉽게 제어할 수 있었는데, 

이것은 수식 모드에서는 쓸 수 없습니다. 위의 예로 든 \lstinline를 후킹(패치)할 수 밖에 없던 것이, \collectverb를 수식 모드에서 쓰는 방법을 찾아내는 데 실패했기 때문입니다. 


* 결국 제가 구현하고 싶은 것은 본문이든 수식이든 간에, verbatim 텍스트를 구현하는 "\mverb" 명령을 쓰되 컬러까지 제어하고 싶은 것입니다. 


\pretocmd{\mverb}{\color{red}}{}{} %% \bgroup을 넣어주고 

%\apptocmd{\mverb}{}{}{} %% 적당히 \egroup을 넣어주면 될 것 같은데, 잘 모르겠습니다. 




번호 제목 글쓴이 날짜 조회 수
공지 Minimal Working Example을 첨부해주세요 [4] nanim 2015.06.23 230464
199 index(색인, 찾아보기)에서 기역 니은 디귿 등등의 구분 빈줄이 없습니다. [4] file jmc 2020.06.09 2528
198 LuaLaTeX 에러 [2] Dennis 2014.01.08 2462
197 기묘한 chapter/page style [5] puzzlist 2014.12.19 2451
196 그림과 수식을 양 옆에 배열했는데, 수직으로 align하는 방법을 잘 모르겠습니다. [2] file 신라면블랙 2019.02.05 2432
195 捩 나타나게 하기 [4] 느림보 2014.04.16 2430
194 한자, 그리스 문자, 히브리 문자가 섞인 문서 [3] file puzzlist 2019.01.21 2427
193 LaTeX Warning: Unused global option(s): [3] 태준 2014.01.26 2409
192 글자 크기 질문 및 여백설정 질문 [2] 고무 2019.05.22 2373
191 kosection 옵션과 수식 번호 [2] file 아뜨거따시 2015.10.30 2361
190 찾아보기(index) 상에서 동일 단어가 반복되는 경우와 장절의 제목으로 상호참조 방법 [2] file 안개나무 2014.01.29 2354
» 수식에서도 사용가능한 verbatim 구현 명령과 색깔 지정 [9] file Progress 2014.05.16 2342
188 XeLaTeX 상에서 텍스트 아래 첨자 오류 문의드립니다.(한자 문제 아닙니다. ^^) [2] file 안개나무 2014.01.29 2307
187 Texpad(iOS)에서 Local Typesetter인 TexpadTex로 작업하면 pdf북마크가 생성되지 않습니다. [4] file Texpad 유저 2021.08.18 2247
186 아래의 환경에서 한글을 사용하기 위해서 추가되어야 페키지가 뭐인지요? [1] 2013.11.29 2241
185 한글출력문제... ( 문서 저장시 인코딩방식에 따른 컴파일 오류 ) [1] file 불아이언 2018.06.13 2230
184 oblivior에서 러시아어 사용하기 [2] file 변선생 2019.10.08 2217
183 xelatex tabu 에러 [1] noob 2019.03.30 2174
182 TeXLive 업데이트 후 oblivoir 문서 빌드 조언 구합니다. [4] file pinder 2020.10.04 2157
181 폰트경고 해결 [1] 추블리 2014.01.14 2136
180 XeLaTeX와 관련된 컴퓨터 환경 질문 [3] file hwaomboy 2014.06.27 2134



XE Login