Normalizing space after stacked characters in LaTeX: Typesetting o͘
If I understand well what you want, here is a solution with the \stackinset command from stackengine
:
\documentclass{article}
\usepackage{stackengine}
\newcommand{\Oo}{\stackinset{r}{}{t}{-1.5pt}{.}{o}}
\begin{document}
o\Oo o \Oo oo \Oo\Oo o ooo
\end{document}
If you want to preserve the automatic kerning between letters, you need to print the ‘o’ twice, superimposing them but adding, in the middle, a raised dot.
\documentclass{article}
\newcommand{\oo}{o\DOTABOVERIGHT{o}{0.6}o}
\DeclareRobustCommand{\DOTABOVERIGHT}[2]{%
\kern-\fontcharwd\font`#1% back up
\makebox[0pt][l]{%
\sbox0{#1}%
\raisebox{\ht0}[0pt][0pt]{\kern#2\wd0 .}%
}%
}
\begin{document}
o\oo o \oo oo \oo\oo o ooo
ooo ooo ooo ooo
\end{document}
The \DOTABOVERIGHT
command takes two arguments: the letter the dot should be applied to and the amount of offset (as fraction of the letter width).