Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

multicol with arabic works fine in texlive but broke in some miktex #1315

Closed
hpvd opened this issue Apr 11, 2023 · 9 comments
Closed

multicol with arabic works fine in texlive but broke in some miktex #1315

hpvd opened this issue Apr 11, 2023 · 9 comments

Comments

@hpvd
Copy link

hpvd commented Apr 11, 2023

When combining multicol with arabic, I got a broken document, after the second run.
Reporting this to babel see latex3/babel#233
because there were some similar problems already solved with a babel update (latex3/babel#228)
@jbezos told me he could not reproduce it with Texlive.
@u-fischer couldn't reproduce it in her Miktex installation either,
but @jbezos hinted there may be a problem in Miktex:

perhaps there is misconfiguration in MikTeX (which is loading a bblopts.cfg almost 20 years old!).

Since I have this problem

  • on two different windows machines (W10 and W11),
  • with latest miktex and
  • using texworks and
  • could not remember about having done any customizations in Miktex,

I would like to ask if you may have a look/have an idea about this?

The Example Code:

\listfiles
\documentclass[a4paper]{book}

\usepackage{multicol}
\usepackage{lipsum}
%\usepackage{linebreaker} %was first seen with linebreakre enabeled
\usepackage[bidi = basic]{babel}

\babelprovide[main, import]{english}
\babelprovide[import]{arabic}

\babelfont[english]{rm}{arial}
\babelfont[arabic]{rm}{Amiri}


\begin{document}

\begin{multicols}{3}
    \lipsum[1-6]

    \begin{otherlanguage}{arabic}
        لكن لا بد أن أوضح لك أن كل هذه الأفكار المغلوطة حول استنكار  النشوة وتمجيد الألم
        نشأت بالفعل، وسأعرض لك التفاصيل لتكتشف حقيقة وأساس تلك السعادة البشرية، فلا أحد
        يرفض أو يكره أو يتجنب الشعور بالسعادة، ولكن بفضل هؤلاء الأشخاص الذين لا يدركون بأن
        السعادة لا بد أن نستشعرها بصورة أكثر عقلانية ومنطقية فيعرضهم هذا لمواجهة الظروف
        الأليمة، وأكرر بأنه لا يوجد من يرغب في الحب ونيل المنال ويتلذذ بالآلام، الألم هو الألم
        ولكن نتيجة لظروف ما قد تكمن السعاده فيما نتحمله من كد وأسي.\par
    \end{otherlanguage}
\end{multicols}

\end{document}

The Result:
2023-04-08_20h47_42

The Logfile:
can be found here latex3/babel#233 (comment)

@hpvd
Copy link
Author

hpvd commented Apr 11, 2023

maybe just

  • a quick check if it works for you
  • a comment on jbezos comment regarding MikTeX is loading a bblopts.cfg almost 20 years old

would be already sufficient.

=> If both is fine on your side, I would first try a complete fresh installation on my machines.

Many thanks!

@u-fischer
Copy link

As said, I can't reproduce it. The bblopts.cfg is not a problem: I load since many times an empty local version, but even without that I can't reproduce the problem. My system loads zerohyph.tex as patterns for arabic, but disabling that doesn't break anything.

I can only think that you perhaps changed linebreaker, so deinstall and reinstall the package.

@hpvd
Copy link
Author

hpvd commented Apr 11, 2023

thanks for feedback. I can reproduce it without linebreaker.
After the first run it looks fine. The second run breaks it.
If par in the arabic part is included, the arabic part looks broken
without par the arabic part "disappear" (but can be c and p from acrobat)
2023-04-11_11h43_28

ok seems to be broken on my site only.

@u-fischer
Copy link

try with a non-miktex font as main font, e.g. texgyreheros instead of arial.

@hpvd
Copy link
Author

hpvd commented Apr 11, 2023

thanks @u-fischer
You pointed in the right direction...

the result is strange:

  • without linebreaker there is only one sign visible
  • with linebreaker everything is visible

independent of the number of runs
see
2023-04-11_13h34_41

@hpvd
Copy link
Author

hpvd commented Apr 11, 2023

code:

\listfiles
\documentclass[a4paper]{book}

\usepackage{multicol}
\usepackage{lipsum}
\usepackage{linebreaker}
\usepackage[bidi = basic]{babel}

\babelprovide[main, import]{english}
\babelprovide[import]{arabic}

\babelfont[english]{rm}{texgyreheros}
\babelfont[arabic]{rm}{Amiri}


\begin{document}

\begin{multicols}{3}
    \lipsum[1-6]

    \begin{otherlanguage}{arabic}
        لكن لا بد أن أوضح لك أن كل هذه الأفكار المغلوطة حول استنكار  النشوة وتمجيد الألم
        نشأت بالفعل، وسأعرض لك التفاصيل لتكتشف حقيقة وأساس تلك السعادة البشرية، فلا أحد
        يرفض أو يكره أو يتجنب الشعور بالسعادة، ولكن بفضل هؤلاء الأشخاص الذين لا يدركون بأن
        السعادة لا بد أن نستشعرها بصورة أكثر عقلانية ومنطقية فيعرضهم هذا لمواجهة الظروف
        الأليمة، وأكرر بأنه لا يوجد من يرغب في الحب ونيل المنال ويتلذذ بالآلام، الألم هو الألم
        ولكن نتيجة لظروف ما قد تكمن السعاده فيما نتحمله من كد وأسي.
    \end{otherlanguage}
\end{multicols}

\end{document}

@hpvd
Copy link
Author

hpvd commented Apr 11, 2023

only at the very beginning of arabic it still looks a little wired...
But this looks like another topic...

@hpvd
Copy link
Author

hpvd commented Apr 11, 2023

adding now microtype to the equation,
once again

  • the first run (fresh folder, only .tex) looks fine (even no more wired at the beginning of the arabic part!!)
  • the second run breaks it again...

code:

\listfiles
\documentclass[a4paper]{book}

\usepackage{multicol}
\usepackage{lipsum}
\usepackage{microtype}
\usepackage{linebreaker}
\usepackage[bidi = basic]{babel}

\babelprovide[main, import]{english}
\babelprovide[import]{arabic}

\babelfont[english]{rm}{texgyreheros}
\babelfont[arabic]{rm}{Amiri}


\begin{document}

\begin{multicols}{3}
    \lipsum[1-6]

    \begin{otherlanguage}{arabic}
        لكن لا بد أن أوضح لك أن كل هذه الأفكار المغلوطة حول استنكار  النشوة وتمجيد الألم
        نشأت بالفعل، وسأعرض لك التفاصيل لتكتشف حقيقة وأساس تلك السعادة البشرية، فلا أحد
        يرفض أو يكره أو يتجنب الشعور بالسعادة، ولكن بفضل هؤلاء الأشخاص الذين لا يدركون بأن
        السعادة لا بد أن نستشعرها بصورة أكثر عقلانية ومنطقية فيعرضهم هذا لمواجهة الظروف
        الأليمة، وأكرر بأنه لا يوجد من يرغب في الحب ونيل المنال ويتلذذ بالآلام، الألم هو الألم
        ولكن نتيجة لظروف ما قد تكمن السعاده فيما نتحمله من كد وأسي.
    \end{otherlanguage}
\end{multicols}

\end{document}

2023-04-11_14h49_54

@u-fischer
Copy link

well the only difference I see in the PDF between first and second run is that the font number changes, and that is quite normal (and happens because in the second run babel loads the language when reading the aux). Everything else is identical. If you want to look into the PDF too, use \ExplSyntaxOn\sys_ensure_backend:\pdf_uncompress:\ExplSyntaxOff before \documentclass.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants