Como eliminar o espaço após a fórmula química no ambiente mhchem

Como eliminar o espaço após a fórmula química no ambiente mhchem

É muito conveniente usar mhchempara compor fórmulas químicas. Funciona muito bem na escrita em inglês, mas ao usar o chinês (ctex), toda fórmula química é seguida de um espaço, o que torna o texto feio. Como resolver este pequeno (mas aparentemente não tão trivial) problema? Obrigado.

Aqui está o que quero dizer.

\usepackage[version=4]{mhchem}
There is no space after \ce{HNO3} in English environment. 
如果是在中文的环境中\ce{HNO3}会有一个空格。

O que dá o resultado:

insira a descrição da imagem aqui

Responder1

insira a descrição da imagem aqui

O espaço parece ser adicionado pelo código ctex ao mudar da escrita latina para o chinês. O acima é gerado com xelatex. Observe que o espaço também é adicionado após !!colocar um espaço vazio \mbox{}para suprimi-lo, conforme mostrado na última linha.

\documentclass{article}
\usepackage[UTF8]{ctex}
\usepackage[version=4]{mhchem}
\begin{document}

\showoutput
(\ce{HNO3})


AA \ce{HNO3} BB

中\ce{HNO3}会

中\ce{HNO3}!!会

中\ce{HNO3}\mbox{}会

\end{document}

com xetex o espaço parece ter sido adicionado no \XeTeXinterchartokscódigo, e para luatex a saída é diferente, sem espaço depois, !!mas ainda com espaço após a fórmula química.

insira a descrição da imagem aqui

informação relacionada