New proposals (and requests) should be addressed to Hraban Ramm.
There are several mechanisms for adding content to the text flow: inserts, marks,
adjust and local boxes. Inserts are taken into account when breaking a paragraph
into lines and are for instance used for notes. Marks travel with their location
and are used top set variables that can be accessed in the page builder and make
it possible to synchronize for instance running headers. The adjust feature
permits injection of material before and after the line where they are used.
Local boxes end up at the start and/or end of a line (and can be repeated) and
as such they can be taken into account when calculating the line width.
Each of these features has its own characteristics (for good reason) and find its origin in some specific typographic demand. In the meantime all these mechanisms have been upgraded in Luametatex and are supported in ConTeXt with generic mechanisms on top of which one can build advanced features. In this talk I will present that current state and possible usage, especially of the now more useable local boxes and users are invited to come up with possible examples of usage.
(This presentation is likely to be split into smaller parts.)
Upgrading the math engine
The original TeX engine is famous for handling math. Right from the start the
way it was done because the standard. In LuaTeX there has been some adaptations
to OpenType math and quite a bit was already made configurable. It was a trade
off between the two font models as well as the available fonts. Although e-TeX
introduced a \middle as new primitive, and Luametatex introduced a couple
of new things, not that much fundamental has happened. We are not aware of any
demands with respect to the math sub|-|engine, probably because LaTeX and AMS
math set an indisputable standard.
However, we can do better! Mikael Sundqvist and I spent a year more or less full time on re-engineering the Luametatex math engine. Mikael will present the math end of this game and I will spend some words on how the engine got adapted. We will discuss fonts, spacing, multi line formulas, alignments, and all that cam eon our path.
Under the hood: Luametafun updates
The Metafun interface to TeX has been stepwise upgraded with what Luametatex as to offer. Some interfaces are now more efficient and reliable. I will show a bit of that.
Stepping up MetaPost
For various reasons Mikael Sundqvist and I have seen reasons to add some functionality to the (already superb) MetaPost machinery. There are some new primitives and in the process of investigating possibilities we ran into some curious (but intentional) side effects. Time to show off.
The LMTX distribution
Together with Mojca I'm looking at the upcoming LMTX distribution. Where MKII (for PdfTeX and XeTeX) has already been frozen for a long time, MKIV (for LuaTeX) is also sort of frozen. Of course we keep it up to date and apply fixes, but new functionality ends up in \LMTX. Most users already made the switch. Now that Luametatex is reaching a state of completion, we pick up the thread of repositories, engine source inclusion, users being able to compile a matching binary, releases, core resources (like a basic set of fonts), modules, installation in general, etc.
MetaPost and SQL
On the mailing list there was a question about storing runtime data from a MetaPost sub run. Using Lua for that is quite okay, as is the MetaPost writer. In this short talk I'll show a way to save and restore from an sqlite database, just in case one ever needs it. (Category: weird talks)
The ValentinE concept
The entry level for typesetting with ConTeXt is quite high, which leads to a limited number
of users. Unfortunately, a lot of possible users cannot benefit from high typesetting quality.
It would be ideal for a widespread use of the ConTeXt system, if pupils and teachers at school
and students at universities could get in touch with it.
An approach for reaching this objective is discussed, which is called the ValentinE concept. The concept consists in writing the text in the lightweight markup language Asciidoc in a similar vein as writing with a typewriter. A library, developed for this purpose in Ruby as an extension to the program Asciidoctor, undertakes the conversion into ConTeXt.
The result is a text with high typesetting quality in PDF format based on a source in plain text which can be read easily. The preview of the text in a browser or the conversion of the text to other formats are additional benefits.
Other objectives for this approach are repeatability and flexibility. Furthermore, it should be extendible and it should be possible using other capabilities of the ConTeXt typesetting system.
MetaPost: program flow control
A look at the program flow control primitives in the MetaPost engine.
A look at the MetaPost operations on picture objects.
The Danlan font
When Frans Goddijn first showed me the Danlan font article in September 2019, I immediately thought that it would be fun to play with those letters a bit in TeX and MetaPost. This article will show what a few days playing around with a specification and MetaPost, FontForge, and ConTeXt got me. I have not created a complete font by any means, but it is just enough of one to show off a little bit and document how the creation process worked out for me.