파일 경로를 나타내려면 url의 \path 명령을 쓰면 됩니다. 윈도즈에서는 경로에 공백이 포함될 수 있으니까, obeyspaces 패키지 옵션을 주면 완벽한 해법처럼 보입니다. 그런데 \footnote 안에 \path를 넣으면 언더스코어 앞에 공백이 생깁니다.
이 문제는 간단히 말해 "줄바꿈 되는 verb" 명령 만들기라고 할 수 있습니다.
저는 간단히 대체제를 만들 수 있으리라 생각했습니다. 그런데 \tl_to_str:n 명령은 \foo를, 왜 그렇게 만들었는지 모르겠지만 interface3 매뉴얼에 나와 있듯이, backslash + foo + space로 바꿔버립니다. 여기에서부터 삽질이 시작되었습니다.
좌우지간 다음과 같이 만들어서 대략 기대한 결과를 얻었습니다만, verb라고 볼 수 없습니다. 윈도즈에서는 *와 ?를 제외한 기호들을 파일 이름에 쓸 수 있지만 저는 백슬래시와 언더스코어만 고려했습니다. 개선의 여지가 있겠는지요?
\documentclass{article} \ExplSyntaxOn \NewDocumentCommand\winpath{m} { \group_begin: \str_set:Nn \l_tmpa_str {#1} \tl_trim_spaces:N \l_tmpa_str \regex_replace_all:nnN {\\}{\\string\\} \l_tmpa_str \regex_replace_all:nnN {\s\\string}{\\allowbreak\\string} \l_tmpa_str \regex_replace_all:nnN {\_}{\\allowbreak\\_} \l_tmpa_str \regex_replace_all:nnN {\s\\allowbreak}{\\allowbreak} \l_tmpa_str \str_replace_all:Nnn \l_tmpa_str {~}{\space} \tl_set_rescan:Nno \l_tmpa_tl {}{\l_tmpa_str} \texttt{\l_tmpa_tl} \group_end: } \ExplSyntaxOff \begin{document} \noindent Template files, which are to be added according to languages, are in the \winpath{C:\Project-XX\idml_Module\temp lates\backcover} folder. \end{document}
KTUG 한국 텍 사용자 그룹