메므와 색인 스타일(memman.ist)에는 이렇게 선언되어 있습니다.
actual '?'
\indexentry{foo@\foo} 대신 \indexentry{foo?\foo}를 쓰겠다는 뜻입니다. \cmd 명령도 이에 맞춰 정의되어 있습니다.
\newcommand{\cmd}[1]{\cmdprint{#1}%
\index{\expandafter\@gobble\string#1?\string\cmdprint{\string#1}}}
전에는 작가의 유별난 기호인가보다 생각했는데, 실은 @가 포함된 매크로들을 색인에 넣기 위한 것으로 보입니다.
문제는, makeindex 대신 texindy를 쓸 때, texindy에게 actual 문자로 ?를 사용하라고 알려줄 방법이 없다는 것입니다. '@'가 포함된 단어를 색인에 넣을 일이 제게 없으니 사실 문제는 아닙니다. 그냥 actual 문자를 "@"로 되돌려놓으면 그만입니다. 그리고 정 그런 일이 필요하다면 @를 다른 문자로 바꾸어 \indexentry에 넣고 \printindex에서 되돌리는 꼼수를 써도 될 것 같습니다.
그런데 texindy에 actual 문자를 설정하는 파라미터 같은 게 당연히 있으리라 기대하고 인터넷을 뒤져보았지만 찾지 못했습니다. 답을 얻지 못하니 필요한 것이 아닌데도 괜시리 언짢습니다.
KTUG 한국 텍 사용자 그룹