Stephan Hennig | 15 Apr 00:09 2014

hyphenation disabled with polyglossia and variant=usmax


in this document

\parbox{0pt}{\mbox{} example}

the word 'example' is happily hyphenated using either

  xelatex + variant=us
  xelatex + variant=usmax
  lualatex + variant=us

But not with

  lualatex + variant=usmax

Is that to be expected or a bug?

Best regards,
Stephan Hennig

Stephan Hennig | 11 Feb 23:54 2014

convert language name to number in Lua


consider the following macro \langnum, which stores the language number
corresponding to an arbitrary language name in a Lua variable

      local number = \the\csname l <at> #1\endcsname
  \langnum{USenglish} \langnum{UKenglish}

How would I do the same conversion of a name to a number in pure Lua,
given a string containing an arbitrary language name?

Best regards,
Stephan Hennig

Stephan Hennig | 26 Jan 18:39 2014

towards non-standard hyphenation support in LuaTeX

[ To tex-hyphen@...
  CC luatex@...
  CC lualatex-dev@...
  Please keep tex-hyphen copied in your replies.]


I'd like to invite you to checkout
<URL:>.  The repository contains a
package that provides support for pattern driven node list manipulations
in LuaTeX.

There are a handful of typographic features missing in TeX that involve
certain kinds of glyph replacement and in principle can be implemented
at the node list level in LuaTeX.  Examples are non-standard
hyphenation, smart ligature building or long/round s handling in
black-letter fonts.  There's two main questions that need to be answered
when doing low-level operations like this on node lists:

  a) Where to apply manipulations?

  b) What manipulations to apply?

The purpose of the padrinoma package is to give a higher-level answer to
the first question.  Given suitable patterns (that look like ordinary
Liang patterns), the package can scan a node list, apply the patterns to
the words found and return data structures that contain the results of
the pattern matching.

Some basic, illustrative examples of how that can be used can be found
(Continue reading)

Stephan Hennig | 15 Jan 18:26 2014

hyphenation with ligatures in input

[CC: lualatex-dev@...
Please reply to tex-hyphen@...]


in the following, I'm only considering LuaTeX with UTF-8 encoded input.

When a ligature character, e.g., fi, is already present in the input
stream, LuaTeX won't hyphenate that word correctly.

\showhyphens{financial financial}

> This is LuaTeX, Version beta-0.76.0-2013120414 (rev 4627)  (format=luatex 2013.12.11)  15 JAN 2014 18:17
> [...]
> [][] \tenrm fi-nan-cial finan-cial

The same is true for LuaLaTeX, by default, or when activating US
hyphenation patterns with either Babel or Polyglossia.

However, when activating UK hyphenation patterns the word containing the
ligature is also hyphenated (code attached at the end).

> This is LuaTeX, Version beta-0.76.0-2013120414 (rev 4627)  (format=lualatex 2013.12.11)  15 JAN 2014 18:20
> [...]
> [][] \EU2/lmr/m/n/10 fin-an-cial fin-an-cial

Why is that?  I can't find an fi ligature character neither in UK
hyphenation patterns nor in the exception list (hyph-en-gb.pat.txt,
(Continue reading)

Wolfgang Jeltsch | 16 Aug 13:45 2013

luatex.sty and luatexbase.sty


it seems that luatex.sty tries to solve problems that also
luatexbase.sty tries to solve. For example, both seem to deal with
attributes and catcode tables.

Now I have discovered that I cannot load luatexbase if I have already
loaded luacolor, which uses luatex.sty. If I try, I get the following
error message:

    ! LuaTeX error
    luatexbase error: attribute 0 has already been set by
    ewattributemacro from luatex.sty, not belonging to this package,
    this makesluaotfload unusable. Please report to the maintainer of
    stack traceback:
            [C]: in function 'error'
            in main chunk
            [C]: in function 'require'
            [string "\directlua "]:1: in main chunk.
    l.90 ...exbase <at> directlua{require('luatexbase.attr')}

Is luatex.sty just outdated and shouldn’t be used anymore? If yes, than
maybe I shouldn’t tell the maintainer of luatex.sty about this problem,
but ask the maintainer of luacolor (which happens to be the same person)
to not use luatex.sty anymore.

Any enlightenment would be greatly appreciated.
(Continue reading)

Wolfgang Jeltsch | 3 Aug 19:28 2013

patch for lualatex-math.lua

Hi Philipp,

I don’t know if you have followed the recent discussion on lualatex-dev
about an issue with the lualatex-math package.

The code in lualatex-math.lua relies on unpack being a global variable,
which was the case in Lua 5.1, but is not the case anymore in Lua 5.2.
As a result, I get the following error when importing amsmath and
lualatex-math in the same document:

    ! LuaTeX error
    attempt to call upvalue 'unpack' (a nil value)
    stack traceback:
            in function 'print_class_fam_slot'
            [string "\directlua "]:1: in main chunk.
    \__lltxmath_set_mathchar:NN ...\int_eval:n {`#2})}

Other Lua files (lualibs-basic-merged.lua, lualibs-lua.lua, and
luaotfload-merged.lua) use the following code to work around this
incompatibility between Lua 5.1 and Lua 5.2:

    if not table.unpack then
    elseif not unpack then

(Continue reading)

Wolfgang Jeltsch | 3 Aug 13:27 2013

lualatex-math cannot find unpack function


if I import both amsmath and lualatex-math, I get the following error
message when LuaLaTeX tries to process \begin{document}:

! LuaTeX error
attempt to call upvalue 'unpack' (a nil value)
stack traceback:
        in function 'print_class_fam_slot'
        [string "\directlua "]:1: in main chunk.
\__lltxmath_set_mathchar:NN ...\int_eval:n {`#2})}

What is the reason for this?

Best wishes,

Wolfgang Jeltsch | 3 Aug 12:20 2013

luatexbase-loader having problems with symbolic links


I’m working under Linux and use TeXlive 2013, which contains
luatexbase-loader v0.6 from 11 May 2013.

I have some symbolic links under $TEXMFHOME/tex/latex that point to
directories that contain LaTeX packages. Usually, I can import these
packages without problems using \usepackage. However when I import
luatexbase-loader, then import of the abovementioned local packages
isn’t possible anymore.

For example, let’s assume that I have two packages called abc and xyz
under directories linked to from $TEXMFHOME/tex/latex. Consider the
following LaTeX source:






Processing this source with LuaLaTeX gives me the following error

(Continue reading)

David Bellows | 31 Jul 17:57 2013

Optical sizes and Adobe fonts

Hello all,

I posted the following question on Stack Exchange about how to specify
optical sizes for fonts that come with them. I had thought there would
be some set of options I could specify with \setmainfont but it's
looking more and more like that's not the case. So instead it might be
an issue with luaotfload that I'm not capable of dealing with.

Is this the sort of issue y'all want to hear about in general? Is
there more information you need from me? While I'm not a coder I am
interested in helping in whatever little ways I can. I am going
through all the commercial fonts I've purchased over the years and
making sure they work perfectly with LuaTeX so do you want me to
communicate those findings with you?

David Bellows

Ulrike Fischer | 30 Jul 14:00 2013

input normalization

Due to a discussion in d.c.t.t. I realized that lualatex is still
missing input normalization. E.g. the following document




gives in the pdf output 

oU+0308 (o + combining dieresis)
U+00F6  (ö)

while with xetex one gets with both inputs U+00F6.

context seems to do input normalization too. Would it be possible to
add the code to lualatex too?


Ulrike Fischer

Troy Henderson | 24 Jul 04:37 2013

luamplib + lualatex

Is \begin{mplibcode} ... \end{mplibcode} analogous to ConTeXt's
\startMpcode ... \stopMPcode?  If so, are there a LaTeX versions of

\startMPinclusions ... \stopMPinclusions
\startuseMPgraphic ... \stopuseMPgraphic
\startreusableMPgraphic ... \stopreusableMPgraphic
\startMPpage ... \stopMPpage

Primarily, what I would like to have is a MetaPost "preamble".  That
is, it would be nice to be able to have variables/types defined before
any beginfigs and have their values/types used in each figure.  For
example, I am thinking something like this:


	draw fullcircle scaled (2*u);

	draw unitsquare scaled (2*u);
(Continue reading)