reutenauer / polyglossia

An alternative to Babel for XeLaTeX and LuaLaTeX
http://www.ctan.org/pkg/polyglossia
MIT License
191 stars 51 forks source link

Problem with decimal numbers in RTL language #401

Closed Gochkin closed 4 years ago

Gochkin commented 4 years ago

I have been using polyglossia last accademic year without an issue. This year I have encountered a problem that I didn't have before. When I am rebuilding last year's documents without changing them, the problem appears in them too, so I assume that it is something that has been introduced in one of the last releases of polyglossia. The problem is this: I'm writing in Hebrew. My text contains some decimal numbers with a precision point - 32.12 for example. But in my text those numbers are appearing backwards - 12.32. It wasn't the case last year, all those numbers were ok.

Maybe there is something that I didn't pay attention to in the manual, but I didn't find anything that could point me to the solution.

jspitz commented 4 years ago

Can you please provide a minimal example file?

jspitz commented 4 years ago

And also report your polyglossia version. There has been a fix for Hebrew numbering in polyglossia 1.47 (2020-01-29) and it would be relevant to know whether you have this fix or not.

jspitz commented 4 years ago

I tried to set up a MWE myself, but I fail to reproduce the problem. The following:

% !TeX TS-program = xelatex
\documentclass[10pt,a4paper]{article}
\usepackage{polyglossia}
\setmainlanguage{hebrew}
\setmainfont{FreeSerif}
\begin{document}
12

13

32.12

$32.12$
\end{document}

outputs this with polyglossia (devel), which strikes me correct, no? image

Gochkin commented 4 years ago

I have checked the polyglossia version that is installed on my system, it is v1.45. This is the version that is currently in the stable branch of my Linux distribution. In my setup when I build the following:

% !TeX TS-program = xelatex
\documentclass[10pt,a4paper]{article}
\usepackage{polyglossia}
\setmainlanguage{hebrew}
\setmainfont{David CLM}
\begin{document}
12

13

32.12

$32.12$

\end{document} 

I get this output (that is not correct): image

I will try to install vanilla tex-live distribution (not from my Linux distribution repository) so I could try the last and the most updated version of polyglossia.

I'm not really familiar with the packaging system of tex-live, is there a way to update polyglossia package only in my tex-live installation? Maybe there is a way to use an updated version of polyglossia in one specific project? So I could try the last version without installing vanilla tex-live, and if it works fine, I could just wait until my distro will update tex-live packages?

jspitz commented 4 years ago

I have checked the polyglossia version that is installed on my system, it is v1.45.

OK. so that's the problem. This bug has been fixed in 1.47, as written above.

I'm not really familiar with the packaging system of tex-live, is there a way to update polyglossia package only in my tex-live installation? Maybe there is a way to use an updated version of polyglossia in one specific project? So I could try the last version without installing vanilla tex-live, and if it works fine, I could just wait until my distro will update tex-live packages?

You can simply grab the polyglossia package from CTAN and put that in your user texmf directory. This is usually in ~/texmf (you can check where it is with kpsewhich -var-value=TEXMFHOME). Store the whole polyglossia package in the subdirectory tex/latex/polyglossia (create it if it's not there). Then LaTeX will take this version rather then the globally installed one.

Don't forget, though, to remove the package again when your distro finally updates.