Formatting numbers with smaller glyphs for decimals
You might do like this:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage{siunitx,relsize}
\sisetup{locale=FR}
\ExplSyntaxOn
\NewDocumentCommand{\hnum}{>{\SplitArgument{1}{.}}m}
{
\hnumA#1
}
\NewDocumentCommand{\hnumA}{mm}
{
\num{#1}
\IfValueT{#2}{\hnumB{#2}}
}
\NewDocumentCommand{\hnumB}{>{\SplitArgument{1}{e}}m}
{
\hnumC#1
}
\NewDocumentCommand{\hnumC}{mm}
{
\ensuremath
{
{,}\mathsmaller{\num[add-integer-zero=false,output-decimal-marker={}]{.#1}}
\IfValueT{#2}{{}\times\num{e#2}}
}
}
\ExplSyntaxOff
\begin{document}
$\{\hnum{0.1},\hnum{2.3},\hnum{4.5e10}\}$
\bigskip
$\{\num{0.1};\num{2.3};\num{4.5e10}\}$
\end{document}
However the result is really ugly and difficult to interpret. Much better to use a semicolon.
How is this for a start?
\documentclass{article}
\def\numX#1.#2\relax{\mbox{$#1$\small$\mathord,#2$}}
\newcommand{\num}[1]{\numX#1\relax}
\begin{document}
$\{\num{0.1}, \num{2.3}\}$
\end{document}