ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
* lmtx
@ 2022-02-03 21:00 Hans Hagen via ntg-context
  0 siblings, 0 replies; 29+ messages in thread
From: Hans Hagen via ntg-context @ 2022-02-03 21:00 UTC (permalink / raw)
  To: mailing list for ConTeXt users; +Cc: Hans Hagen

Hi,

There haven't been updates and the reason is that we're in the middle of 
math and/or wrapping up on transliteration / indic (for which there is 
also a nice wiki page being made).

Concerning math, we're progressing with some rather flexible spacing, 
penalty, linebreak extensions but don't want to risk that when not used 
it gives different results (probably not all can be completely 
compatible but that is a side effect of getting rid of some hard coded 
assumptions in the engine). One objective is to make input a bit easier 
and predictable, esp wrt the often needed correction spacing (\, and 
friends).

Anyway, in addition to Mikaels request for input an while ago ... if 
there are 'tex math annoyances' that you think originate in the way tex 
expects input, and you'd like them to be taken into account, let us know.

Hans

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 29+ messages in thread
* lmtx
@ 2021-02-19 12:32 Hans Hagen
  0 siblings, 0 replies; 29+ messages in thread
From: Hans Hagen @ 2021-02-19 12:32 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hi,

In the last couple of lmtx uploads \startTEXpage should work a bit 
better. These uploads also introduced a new option for alignments, which 
can be checked in:

\def\DemoA#1{\vbox{\red                      \hsize#1\input tufte }}
\def\DemoB#1{\vbox{\green \setupalign[always]\hsize#1\input tufte }}
\def\DemoC#1{\startTEXpage[offset=10pt]\DemoA{#1pt}\blank\DemoB{#1pt}\blank#1pt\stopTEXpage}

\starttext

     \dostepwiserecurse{300}{600}{10}{
         \startTEXpage[offset=10pt]
             \startoverlay
                 {\DemoA{#1pt}}
                 {\DemoB{#1pt}}
             \stopoverlay
             \blank
             \the\dimexpr#1pt\relax
         \stopTEXpage
     }

     \DemoC{370} \DemoC{390} \DemoC{490} \DemoC{540} \DemoC{580}

\stoptext

I leave it to users to determine if the few cases where the results 
differ are better or worse but one can for instance use it to influence 
(as side effect) the last line. In general, tweaking the machinery can 
give different results and i guess that hardly any user can make 
consistent claims about what is better. It all depends on what one deals 
with.

(The keyword is suboptimal, it kind of tells what happens but on the 
other obscurew what really goes on: always forcing a first hyphenation 
pass when breaking lines.)

Hans

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 29+ messages in thread
* lmtx
@ 2021-01-18 18:20 Hans Hagen
  2021-01-19 10:57 ` lmtx Floris van Manen
  2021-01-19 19:12 ` lmtx Jan U. Hasecke
  0 siblings, 2 replies; 29+ messages in thread
From: Hans Hagen @ 2021-01-18 18:20 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hi,

There's a new lmtx upload with a few fixes in publication lists (TS made 
some tests).

For those who like fonts, there is an update of the punk font (the mkiv 
variants dates from 2008 which is ancient on a software timeline).

You can run

   meta-imp-punk.mkxl

to get an idea. There's also a typescript:

   type-imp-punk.mkxl

one can create different versions and play with random variants and 
such. The question is: do we need more metapost font magic and 
infrastructure?

For "pdf features that browsers implement fuzzy or not at all" lovers 
there is

test
     \startalternate[text={A}]
         \dorecurse{10}{A }
         \startalternate[text={B}]
              \dorecurse{10}{B }
         \stopalternate
          \dorecurse{10}{A }
     \stopalternate
test \par


test \startalternate[text={e=mc^2}]!$e=mc^2$\stopalternate\par
test \alternate{e=mc^2}{copy:}\nbsp$e=mc^2$\par

which cheats on cut and paste (if you know where to click). (It actually 
will replace something more low level which is probably not used 
anyway.)

Hans



-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 29+ messages in thread
* lmtx
@ 2020-10-30 22:29 Hans Hagen
  2020-10-31  2:50 ` lmtx Jairo A. del Rio
  0 siblings, 1 reply; 29+ messages in thread
From: Hans Hagen @ 2020-10-30 22:29 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hi,

I might have uploaded a new version by accident so be careful when you 
update. Make a backup first. Sorry,

The test suite compiles, which doesn't day all is ok as i just run it.

There are no funcional changes, only a bit of conceptual reworking of 
some internals in the process of adapting to new features as well as 
protection, so

   \starttext

       \start
           \def\framed{oeps}
       \stop

   \stoptext

is permitted, but when you run with

   context --overloadmode=warning

you get a warning and with

   context --overloadmode=error

the run aborts. Here is a user macro example:

   \frozen    \def\foo{oeps}
              \def\foo{oeps} % warning or error
   \overloaded\def\foo{oeps} % okay

eventually all system macros will be way more protected, being 
primitive, permanent, immutable to mention some of the possible 
properties. It's work in progress as you can imagine some pitfals and in 
order for it to work well quite some has to be flagged. Also, I have to 
play with some related additions.

(This version also makes more extensive use of some new macro features 
but that's for later.)

Hans

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 29+ messages in thread
* lmtx
@ 2020-06-19 10:11 Hans Hagen
  0 siblings, 0 replies; 29+ messages in thread
From: Hans Hagen @ 2020-06-19 10:11 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hi,

Here's an update about what Wolfgang and I are doing in the lmtx code 
base i.e. where it differs from the mkiv code. Much has to do with 
cleaner code, less memory usage and less tracing clutter. To some extend 
it might be more efficient in terms of runtime, but in practice there is 
not much (measurable) to gain at the macro level wrt speed. Most 
bottlenecks are at the Lua end anyway.

(1) macro arguments:

In tex a macro argument is defined with numbers, so

   \def\foo#1#2{... #2 ... #2 ...}

in luametatex we can have some variants

   #0 : the argument is picked up but not stored
   #- : the argument is ignored and not even counted
   #+ : the argument is picked up but no outer braces are removed

There is some explanation in the evenmore document, like:

   \def\foo    [#1]{\detokenize{#1}}
   \def\ofo    [#0]{\detokenize{#1}}
   \def\oof    [#+]{\detokenize{#1}}
   \def\fof[#1#-#2]{\detokenize{#1#2}}
   \def\fff[#1#0#3]{\detokenize{#1#3}}

   \meaning\foo\ : <\foo[{123}]> \crlf
   \meaning\ofo\ : <\ofo[{123}]> \crlf
   \meaning\oof\ : <\oof[{123}]> \crlf
   \meaning\fof\ : <\fof[123]>   \crlf
   \meaning\fff\ : <\fof[123]>   \crlf

I mention this because you may encounter something other than #1 .. #9 
in error reports or tracing.

(2) interception of unmatched delimiters

If you define macros like

   \def\foo[#1=#2]{...}

the brackets and equal had better be there. However there is some 
trickery in the macro parsing that can be used to intercept cases where 
they are missing: optional tokens as well as forcing end of scanning (so 
if you see \ignorearguments and \ifarguments in the code, that is what 
we're talking about: premature quitting and checking why that happened 
and acting upon it: less hackery is needed but then of course also less 
possibility to 'show off how clever one is wrt writing obscure macros' 
... so be it.

Both (1) and (2) are relatively lightweight extensions that are downward 
compatible as well as have no impact on performance. We don't expect 
them to be used at the user level (where one seldom defines macros 
anyway) but we apply them in some low level macros (and might apply them 
more). One can measure better performance but only when applied millions 
of times which is seldom the case in context (we're often more talking 
thousands there than millions of expansions).

(3) There is some more 'matching token sequences' code that is being 
applied stepwise but again this is normally not seen at the user level. 
It sometimes permits cleaner fully expandable solutions.

(4) There are some additional if tests but these are already around for 
quite a while and probably went unnoticed anyway.

(5) Nested conditions can be flattened by using \orelse and that's what 
happens now in quite some places in the lmtx code (it's already there 
for a quite a while and kind of well tested). Again this leads to less 
tracing, can in priniciple be more efficient, but also demands less 
multiple expand after situations. It also just looks nicer.

(6) Upcoming code can use some more (simplified) grouping magic but that 
is something we need to test more (which is what we are doing now).

Just that you know when you get some error and see unfamiliar primitives,

Hans

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 29+ messages in thread
[parent not found: <mailman.1.1576234801.28358.ntg-context@ntg.nl>]
* lmtx
@ 2019-12-12  0:37 Hans Hagen
  2019-12-12  5:28 ` lmtx Otared Kavian
                   ` (2 more replies)
  0 siblings, 3 replies; 29+ messages in thread
From: Hans Hagen @ 2019-12-12  0:37 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hi,

The last few days there have been reports about garbled files in the 
lmtx installation so I did some test oinon a linux machine and indeed 
there was some issue (I'm not sure what causes it). Anyway, I made new 
zips so maybe one needs to reinstall (using the installer zip). It 
installs okay on wsl so probably also on other linuxes.

This version (luametatex 2.03.3) has (again) a little smaller mem 
footprint as I still want it all to perforem ok on relative small 
devices or vm's and as side effect a bit smaller format file, not that 
that matters much (compared to general mem usage). There is not much to 
gain anyway, in terms of memory usage and performance so it's more an 
occasional challenge than a neccessity I guess.

Anyway, hopefully nothing got broken. Peter Rolf and I are updating some 
of the pdf validation related stuff (additional formats), so that can be 
in flux.

Hans

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 29+ messages in thread
* lmtx
@ 2019-08-05 12:38 Hans Hagen
  0 siblings, 0 replies; 29+ messages in thread
From: Hans Hagen @ 2019-08-05 12:38 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hi,

As we're progressing with the lmtx project (aka luametatex + context) 
the codebase gets adapted a bit. There are a few things that you need to 
keep an eye on:

- As we test with lua 5.4 it can be that you need to wipe the
   cache after an update due to differences in byte code. This
   is only needed when you run into issues. At some point there
   might be a split in lua code (for luatex and luametatex) as
   5.2 (luajittex, not evolving), 5.3 (luatex, stable frozen)
   and 5.4 (luametatex, experimental progressing) have a couple
   of different properties that we might want to benefit from.

- The code base gets split in "Mark Four" and "Mark Fourty"
   files. Some of these are permanent, some can be temporary. It
   can for instance relate to features in and experiments with
   the engine. The only convenient way to test things is in
   'real situations' and often issues can be solved fast.

- As we're experimenting with metafun (and luagraph and ...) we
   also explore new interfaces. This results in a different
   codebase but should go unnoticed for existing code. Of course
   metafun 2.0 (hip and modern internet version speak) can bring
   interesting new things in the end.

As usual, happy testing.

Hans

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 29+ messages in thread
* lmtx
@ 2019-04-02  9:05 Hans Hagen
  2019-04-02 19:03 ` lmtx Taco Hoekwater
  2019-04-02 20:11 ` lmtx Henri Menke
  0 siblings, 2 replies; 29+ messages in thread
From: Hans Hagen @ 2019-04-02  9:05 UTC (permalink / raw)
  To: mailing list for ConTeXt users

Hi,

So, for those who hesitate to check out lmtx, here is some information.

- In order to achieve long term stability context will use a lean and 
mean variant of luatex (although for now context will keep running on 
luatex too; i might drop support for luajittex). Eventually the source 
code will be part of the context distribution so that one can always 
compile a binary that matches an archived context version.

- This version also permits us to experiment (even very extreme) without 
interupting the parent program luatex, which is now used by other macro 
packages too and therefore needs to be frozen in functionality. Some 
features might trickle back into luatex eventually (unless it breaks 
compatibility).

- As a direct effect it means that context does a bit more: creating the 
pdf file (already most is done anyway in mkiv), dealing with font 
embedding, handling image inclusion, etc. For sure there can be issues 
with that but it has run on my machine already for quite a while.

- It is hard to be conclusive about performance but for instance the 
luatex manual processes a bit faster with lmtx as does the test suite. A 
gain in performance on very demanding documents is also observed by Alan 
and Thomas. Normally one can expect a similar performance. However, the 
memory footprint could be a bit smaller.

- The current somewhat hybrid codebase of context will stepwise be 
adapted so that at some point we can start experimenting with some 
pending ideas. (Which is why i sometimes answer "later this year".)

Anyway, it might not look like it, but it is a conceptual change in how 
context evolves.

Hans


-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2022-02-03 21:00 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <mailman.310.1576128525.1207.ntg-context@ntg.nl>
2019-12-12 23:48 ` lmtx Jeong Dal
2019-12-13  8:39   ` lmtx Otared Kavian
2022-02-03 21:00 lmtx Hans Hagen via ntg-context
  -- strict thread matches above, loose matches on Subject: below --
2021-02-19 12:32 lmtx Hans Hagen
2021-01-18 18:20 lmtx Hans Hagen
2021-01-19 10:57 ` lmtx Floris van Manen
2021-01-19 11:10   ` lmtx Hans Hagen
2021-01-19 11:31     ` lmtx Jano Kula
2021-01-19 19:12 ` lmtx Jan U. Hasecke
2021-01-19 23:03   ` lmtx Hans Hagen
2020-10-30 22:29 lmtx Hans Hagen
2020-10-31  2:50 ` lmtx Jairo A. del Rio
2020-11-02 19:43   ` lmtx Hans Hagen
2020-06-19 10:11 lmtx Hans Hagen
     [not found] <mailman.1.1576234801.28358.ntg-context@ntg.nl>
2019-12-13 19:29 ` lmtx Jeong Dal
2019-12-12  0:37 lmtx Hans Hagen
2019-12-12  5:28 ` lmtx Otared Kavian
2019-12-12  6:04   ` lmtx Otared Kavian
2019-12-12 10:08   ` lmtx Hans Hagen
2019-12-12  6:36 ` lmtx Richard Mahoney | Indica et Buddhica
2019-12-12 16:59 ` lmtx Pablo Rodriguez
2019-12-12 20:13   ` lmtx Pablo Rodriguez
2019-08-05 12:38 lmtx Hans Hagen
2019-04-02  9:05 lmtx Hans Hagen
2019-04-02 19:03 ` lmtx Taco Hoekwater
2019-04-02 20:11 ` lmtx Henri Menke
2019-04-02 20:19   ` lmtx Hans Hagen
2019-04-02 20:30     ` lmtx Henri Menke
2019-04-02 20:47       ` lmtx Hans Hagen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).