我想创建一个新环境,将其输入之一作为可能包含特殊字符的链接,并且我希望对其进行转义,而无需每个人手动转义每个字符。我无法verbatim
在参数中使用环境,Google 和 ChatGPT 都无法理解/帮助它。
这是我在 cls 中的环境:
\newenvironment{rProjects}[4]{ % 4 input arguments - project title, brief description, project link name, project link
{\bf #1} {#2} % Bold project name then description
\ifthenelse{\equal{#3}{}}{}{
\hfill \href{#3}{#4}
}\smallskip
}{}
以下是我在 .tex 中使用它的方法
\begin{rProjects}{Project name}{description}{link with special characters}{link name}
\end{rProjects}
答案1
您可以尝试 v 类型:
\documentclass[]{article}
\usepackage{hyperref,ifthen}
\NewDocumentEnvironment{rProjects}{mmvm}{%
\textbf{#1} {#2} % Bold project name then description
\ifthenelse{\equal{#3}{}}{}{
\hfill \href{#3}{#4}
}\smallskip
}{}
\begin{document}
\begin{rProjects}{Project name}{description}{https://abc.de&%blub xxx}{link name}
\end{rProjects}
\end{document}
但你应该测试一下你想要使用的特殊字符。我不确定是否所有字符都正确传递给了 hyperref。