dockerfiles icon indicating copy to clipboard operation
dockerfiles copied to clipboard

Internationalized LaTeX

Open tarleb opened this issue 5 years ago • 6 comments

Support for

  • Cyrillic,
  • CJK,
  • Arabic,
  • Farsi,
  • Hebrew,
  • ?

I see three good ways to support these:

  1. Separate images for each of these;
  2. all-in-one "international" LaTeX image;
  3. docs on how to create localized images.

Each has its own pros and cons.

tarleb avatar Mar 07 '19 13:03 tarleb

  1. Separate images for each of these;

I feel like this is not going to be easy to maintain, ? would include the asian languages. It would make things pretty cluttered.

  1. all-in-one "international" LaTeX image;

After we fix up the biber thing we can try this, but the fonts are going to make the image huge. I would be surprised if that were advantageous for users, considering the download of the compressed megaimage will probably be a lot slower than them just installing the font(s) they need.

apk actually just downloads a zip from arch

https://sources.archlinux.org/other/texlive/

texlive-fontsextra-2017.46787-src.zip              04-Mar-2018 09:48           378573418
texlive-fontsextra-2018.47288-src.zip              29-Apr-2018 13:30           391787328
texlive-fontsextra-2018.48561-src.zip              04-Sep-2018 19:06           407618679
texlive-fontsextra-2018.49197-src.zip              01-Dec-2018 13:51           419955127
texlive-fontsextra-2018.50019-src.zip              18-Feb-2019 06:35           436622229
texlive-fontsextra-2018.50019-src.zip.asc          18-Feb-2019 06:35                 833

~~So compressed we're talking about +400mb...~~ Whoops...was looking at the wrong thing, visit link above, the lang* packages are the ones in question for a rough idea of how big the fonts are. They range between 2 and 60MB or so.

  1. docs on how to create localized images.

Pending results from testing (2), this would be my vote. For example, all they really need is

FROM pandoc/latex
RUN tlmgr install <language package(s)>

It seems less likely to me that somebody who needs a "non-scheme-small" font will need all international fonts, they probably just want one or two.

svenevs avatar Mar 08 '19 11:03 svenevs

Pending results from testing (2), this would be my vote. For example, all they really need is

FROM pandoc/latex
RUN tlmgr install <language package(s)>

It seems less likely to me that somebody who needs a "non-scheme-small" font will need all international fonts, they probably just want one or two.

Please write example how I can do this?

Sending build context to Docker daemon  2.048kB
Step 1/2 : FROM pandoc/latex
 ---> 10c438f5ffcf
Step 2/2 : RUN tlmgr install texlive-langcyrillic
 ---> Running in 64c6a0d494c7
TeX Live 2019 is frozen forever and will no
longer be updated.  This happens in preparation for a new release.

If you're interested in helping to pretest the new release (when
pretests are available), please read https://tug.org/texlive/pretest.html.
Otherwise, just wait, and the new release will be ready in due time.
tlmgr-actual: package repository ftp://tug.org/historic/systems/texlive/2019/tlnet-final (not verified: gpg unavailable)
tlmgr-actual install: package texlive-langcyrillic not present in repository.
tlmgr-actual: action install returned an error; continuing.
tlmgr-actual: An error has occurred. See above messages. Exiting.
The command '/bin/sh -c tlmgr install texlive-langcyrillic' returned a non-zero code: 1

Kirill avatar May 13 '20 15:05 Kirill

Does this answer help? I'm not sure where you got texlive-langcyrillic from but it doesn't appear to be a package for ctan.org (where tlmgr looks). Usually texlive-* packages are for the system package manager, apk, apt-get, etc, which you want to avoid here because they will depend on the core tex packages meaning you'd end up with two (potentially conflicting) Tex installs.

Please let us know!

Also, do you have any preferences re original conversation of options 1 or 2? From a maintenance perspective we'd prefer a single huge image, but then if you're using Russian and have to download all the others (the font files are what take up all the space) that's a pretty big overhead... But in exchange you get the convenience of not needing to build your own.

svenevs avatar May 16 '20 19:05 svenevs

Clarification on thought process: it's evident that docs for (3) are not necessarily very helpful. In that event we'd over time want to end up with a list of packages for each respective language tier. But if we end up with that, provided international users can help us test / identify / verify it works for their language... Well doing (1) may not be that impractical.

AKA we could add a new tag for a given language as users visit here and help us and use this issue to track progress. I just personally have concerns (as a native English speaker) that whatever tests I'd create won't actually verify if we're doing language X correctly :slightly_smiling_face:

svenevs avatar May 16 '20 19:05 svenevs

Sorry, I create own pandoc image file with this content:

FROM pandoc/latex
RUN apk --update add ttf-dejavu

And this solve my request for converting Markdown file to PDF with Cyrillic text. No other package I don't install. I only create image with needed font and use it. For me question closed. For other If can do add font of or create image with pack of fonts. Or create FAQ with description how create own image with needed font. https://hub.docker.com/repository/docker/krak/pandoc-latex

Kirill avatar May 16 '20 19:05 Kirill

I'm adding a docs label, because I think this is a documentation issue. We could be linking to relevant projects built on top of the official images.

tarleb avatar May 30 '20 13:05 tarleb