context-todo.tex / last modification: 2020-01-30 14:16




  [itemize] [each]
  [packed] [color=ColorThree,symcolor=ColorThree]




\definefont[PunkFont][demo@punk at 20pt]

% \def\aterm{\sym{?}}
% \def\rterm{\sym{--}}
% \def\dterm{\sym{+}}
% \def\pterm{\sym{!}}
% \startitemize[packed]
%     \aterm on the agenda (update, extension, rewrite)
%     \rterm no longer on the agenda, rejected
%     \dterm no longer on the agenda, done
%     \pterm work in progress (so keep an eye on the betas)
% \stopitemize

\definecolor[ColorOne]  [c=0.5,m=0.2,y=0.5,k=0.2]
\definecolor[ColorTwo]  [c=0.5,m=0.5,y=0.1,k=0.1]


    StartPage ;
        numeric n ; n := 200 ;
        numeric o ; o :=  25 ;

        pair p[] ;
        for i=1 upto n :
            p[i] = (o + uniformdeviate (PaperWidth-2*o), o + uniformdeviate (PaperHeight-2*o)) ;
        endfor ;

        picture d ; d := image (      for i=1 upto n :             draw p[i] ; endfor ) ;
        picture l ; l := image ( draw for i=1 upto n : if i > 1 : -- fi p[i]   endfor ) ;
        picture t ; t := textext("\framed[frame=off,align={middle,lohi},foregroundcolor=ColorThree,foregroundstyle=\PunkFont]{\ConTeXt\endgraf MkIV\endgraf\kern-\strutdepth RoadMap}") ;

        fill Page enlarged 10 withcolor "ColorOne" ;

        draw d withcolor white      withpen pencircle scaled  o      ;
        draw d withcolor "ColorTwo" withpen pencircle scaled (o - 5) ;
        draw l withcolor white      withpen pencircle scaled (o / 5) ;
        draw l withcolor "ColorTwo" withpen pencircle scaled (o /10) ;
        draw thelabel.ulft((t xsized .5PaperWidth),lrcorner Page shifted - (PaperWidth/20,-PaperWidth/40)) ;
    StopPage ;


There is not really a long term roadmap for development. One reason is that there
is already a lot available. When we started with \LUATEX, the \CONTEXT\ code was
mostly rewritten from \MKII\ to \MKIV, and that process is more of less finished.
Of course there is always work left. We have moved on to \LUAMETATEX\ and \LMTX\
as follow up on \MKIV. Deep down some things might (and will) change but the user
interface will stay the same (as usual).

This file is not a complete overview of our plans but users can at least get an
idea of what we're working on and what is coming. Feel free to submit

Hans Hagen
Hasselt NL


\startsubject[title={On the agenda for \LUAMETATEX}]

The agenda for \LUATEX\ is basically empty as this program is (supposed to be)
frozen, but for \LUAMETATEX\ we can still consider improvements. In fact, there
are quite some changes between the engines already (internally). Items that
concern \LUATEX\ have been removed from the agenda but some improvements in
\LUAMETATEX\ might trickle back.

        cleanup passive nodes in the par builder
        optimize some callback resolution (more direct) but there is not that
        much to gain there
        remove local par in head of line when done with linebreak and maybe also
        ensure leftskip and rightskip
        only return nil in lua helpers when we expect multiple calls in in one
        experiment a bit more with the new protrusion code


\startsubject[title={On the agenda for \CONTEXT\ \MKIV}]

        play with par callback and properties
        optimize positions for columnareas and parpos (sequential)
        add flag to font for math engine
        get rid of components in glyph nodes
        play with box attributes
        check consistency between footnotes and running text (main color,
        styles, properties)
        freeze actions and tasks (by name or function), maybe a register
        function that does that so no one can overload built-in features
        redo some of the spacing (adapt to improvements in engine)
        more node and code injections
        maybe reorganize position data (more subtables)
        use \type {\matheqnogapstep}, \type {\Ustack}, \type {\mathscriptsmode},
        \type {\mathdisplayskipmode} and other new math primitives
        cleanup some lua helpers (io.exists vs lfs.isfile)