Re: MakeUppercase not recognizing ß
Joseph Wright
joseph.wright at morningstar2.co.uk
Tue May 2 20:33:51 CEST 2023
On 01/05/2023 18:22, Martin Münch wrote:
> When lualatex-ing this code:
>
> \documentclass{article}
> %\usepackage{libertine}
> %\usepackage{libertinus}
> %\usepackage{ebgaramond}
> \begin{document}
> \ss\ \SS\ ß\ ẞ
>
> \MakeUppercase{\ss\ \SS\ ß\ ẞ}
> \end{document}
>
> I get a lot of "SS", which I understand, because the capital ẞ is
> missing in the font. Now with any of the three packages, ẞ is available.
>
> But: \MakeUppercase{ß} still produces "SS" instead of "ẞ", which
> everything in \MakeUppercase{\ss\ \SS\ ẞ} produces.
>
> On the one hand just writing \ss instead of ß solves the immediate
> issue, but on the other hand UTF-8 is supported and should also work for
> ß, shouldn't it?
The capital Eszett is a stylistic variation which is not part of the
standard orthography. Moreover, Unicode stability rules mean it will
never be the standard uppercase mapping for lowercase Eszett, which will
always be "SS". LaTeX supports the stylistic variation. At present, this
is opt-in or needs a bit of low-level work, but from the summer we are
improving mechanisms, as are babel and polyglossia, and this will get
smoother. For the present, try:
\documentclass{article}
\usepackage{libertine}
%\usepackage{libertinus}
%\usepackage{ebgaramond}
\begin{document}
\ss\ \SS\ ß\ ẞ
\MakeUppercase[lang = de-x-eszett]{\ss\ \SS\ ß\ ẞ}
\end{document}
Joseph
More information about the texhax
mailing list.