跳过可选参数后的空格 2024-5-25 • macros white-space 我有一个命令,其中第一个参数是可选的: \documentclass{minimal} \newcommand{\z}[2][]{\texttt{\underline{#1} #2}} \begin{document} \noindent \z[First]{Second}\\ \z{Only} \end{document} 有没有办法避免在未指定时#1和之间的空格,以使其看起来像这样:#2#1 答案1 \documentclass{article} \usepackage{xparse} \NewDocumentCommand\z{o m }{\texttt{\IfNoValueF{#1}{\underline{#1} }#2}} \begin{document} \noindent \z[First]{Second}\\ \z{Only} \end{document} 答案2 和etoolbox: \documentclass{minimal} \usepackage{etoolbox} \newcommand{\z}[2][]{\texttt{\ifblank{#1}{#2}{\underline{#1} #2}}} \begin{document} \noindent \z[First]{Second}\\ \z{Only} \end{document} 相关内容 更改 Tikz 节点的背景颜色? Postfix 和 Gmail 中继:我无法发送电子邮件 NGINX 基本身份验证仅适用于 POST 限制用户可用的内存 保护Linux分区免受Windows的影响 如何在不绘制图表的情况下从数据中得出二次方程? DNScrypt 代理和 Ubuntu 16.04-无法在启动时运行它 删除多个 MS 团队 如何在 ubuntu 18.04 上设置无密码登录? 无法 apt-get 安装、无法在速度测试期间上传或无法识别下载服务器