pegue espaço depois da vírgula no modo matemático

pegue espaço depois da vírgula no modo matemático

Procurei muito a resposta para esta pergunta, mas não consegui encontrá-la. Estou digitando um artigo e tenho que escrever muitas fórmulas, e para mim é mais bonito escrever f(x, y)do que f(x,y). Estou cansado de sempre escrever um espaço fino \,depois de uma vírgula no modo matemático, e isso também é confuso. Existe uma maneira de automatizar isso?

Responder1

Se você estiver disposto a ter mais espaço depoistodovírgula no modo matemático.

\documentclass{article}

\AtBeginDocument{%
  \mathchardef\stdcomma=\mathcode`,
  \mathcode`,="8000
}
\begingroup\lccode`~=`, \lowercase{\endgroup\def~}{\stdcomma\,}

\begin{document}

$f(x,y)$

$a,b,c$

\end{document}

insira a descrição da imagem aqui

Se você quiser apenas o espaço ao especificar variáveis, você pode usar o mesmo método do package icomma, mas isso requer disciplina na entrada: se uma vírgula for seguida por um espaço (no modo matemático), um espaço fino é adicionado.

\documentclass{article}

\makeatletter
\AtBeginDocument{%
  \mathchardef\stdcomma=\mathcode`,
  \mathcode`,="8000
}
\begingroup\lccode`~=`, \lowercase{\endgroup\def~}{%
  \futurelet\@let@token\spaced@comma
}
\newcommand{\spaced@comma}{%
  \stdcomma
  \ifx\@let@token\@sptoken\,\fi
}
\makeatother

\begin{document}

$f(x, y)$ % added space

$f(x,y)$ % compare with the standard

$a,b,c$ % no space is added

\end{document}

insira a descrição da imagem aqui

Eu evitaria definir \thinmuskipum valor maior. Aqui está o porquê.

\documentclass{article}

\thinmuskip=6mu

\begin{document}

$f(x,y)=\sin x-\sin y$ % with the new setting

\thinmuskip=3mu

$f(x,y)=\sin x-\sin y$ % with the standard setting

\end{document}

insira a descrição da imagem aqui

Como você pode ver, \thinmuskipnão é usado apenas após vírgulas, mas em vários outros locais, que seriam afetados pelo mesmo espaço ampliado.

Responder2

,é \mathpunctassim que tem um espaço fino por padrão, a menos que você tenha alterado as configurações. Compare com{,}

insira a descrição da imagem aqui

\documentclass{article}

\begin{document}

$f(x, y)$

$f(x{,} y)$

\end{document}

Responder3

Você também pode definir seu próprio comando com o espaço que desejar:

\documentclass{article}

\newcommand{\fxy}{$f(x,\,y)$}

\begin{document}
    \fxy, compared to
    

    $f(x,y)$
    
\end{document}

insira a descrição da imagem aqui

informação relacionada