我正在使用以下代码:
\usepackage{xstring}
\usepackage{embedfile}
%\newcommand{\underscorefix}[1]{\StrSubstitute{#1}{_}{\_}} <-- not working
\newcommand{\underscorefix}[1]{#1}
\embedfile[filespec=name_1.dat,ucfilespec={\underscorefix{name_1.dat}},mimetype=application/octet-stream]{source_dir_1/name_1.dat}
我如何用反斜杠下划线替换选项的下划线ucfilespec
?
原因是我想要这样的命令:
\newcommand{\datafile}[2]{\embedfile[filespec={#2},ucfilespec={\underscorefix{#2}},mimetype=application/octet-stream]{#1#2}}
答案1
设置stringmethod=escape
选项\embedfile
解决了该问题。
完整代码:
\usepackage{embedfile}
\newcommand{\datafile}[2]{\embedfile[filespec={#2},ucfilespec={#2},mimetype=application/octet-stream,stringmethod=escape]{#1#2}}
现在filespec
和ucfilespec
包含下划线。之前只是filespec
。