ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Henri Menke <henrimenke@gmail.com>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: Bug: \adjustspacing=1 does not disable expansion
Date: Thu, 5 Dec 2019 13:39:46 +1300	[thread overview]
Message-ID: <8e62ca5e-279f-c8bf-6db6-b0d2041df966@gmail.com> (raw)
In-Reply-To: <f79aa4bb-3195-32a9-dd10-3b400eacd803@gmail.com>

It actually seems as if the documentation of LuaTeX is wrong here,
because the behaviour of `\adjustspacing=1' is compatible with
`\pdfadjustspacing=1` in pdfTeX.  From the pdfTeX manual:

     When \pdfadjustspacing is set to 1, font expansion is applied after
     TeX’s normal paragraph breaking routines have broken the paragraph
     into lines. In this case, line breaks are identical to standard TeX
     behavior.

So maybe just copy this paragraph to the LuaTeX manual.

On 12/5/19 1:34 PM, Henri Menke wrote:
> Possible patch (can be directly used with `git apply')
> 
> diff --git a/source/texk/web2c/luatexdir/tex/postlinebreak.c b/source/texk/web2c/luatexdir/tex/postlinebreak.c
> index cbc77e556..9cd76b5fa 100644
> --- a/source/texk/web2c/luatexdir/tex/postlinebreak.c
> +++ b/source/texk/web2c/luatexdir/tex/postlinebreak.c
> @@ -440,7 +440,7 @@ void ext_post_line_break(int paragraph_dir,
>            }
>            adjust_tail = adjust_head;
>            pre_adjust_tail = pre_adjust_head;
> -        if (adjust_spacing > 0) {
> +        if (adjust_spacing > 1) {
>                just_box = hpack(q, cur_width, cal_expand_ratio, paragraph_dir);
>            } else {
>                just_box = hpack(q, cur_width, exactly, paragraph_dir);
> 
> On 12/5/19 10:04 AM, Henri Menke wrote:
>> Dear devs,
>>
>> The \adjustspacing register is described in the LuaTeX manual as
>> follows:
>>
>>        When \adjustspacing has value 2, hz optimization will be applied to glyphs and kerns. When
>>        the value is 3, only glyphs will be treated. A value smaller than 2 disables this feature.
>>
>> However, setting \adjustspacing=1 will only disable shrink but not
>> stretch.  Please find a minimal example example, where I have used
>> exaggerated values for shrink and stretch to emphasize the issue.  It
>> can be reproduced with both mtxrun --script plain and luatex with
>> luaotfload.sty.
>>
>> I have already checked linebreak.c but add_to_widths looks innocuous and
>> properly checks the adjust_spacing parameter.
>>
>> Cheers, Henri
>>
>> ---
>>
>> %\input luaotfload.sty
>> \directlua{
>>      fonts.expansions.setups.default.stretch = 2000
>>      fonts.expansions.setups.default.shrink = 2000
>> }
>> \adjustspacing=1
>> \font\1="file:lmroman10-regular.otf:expansion=default"
>> \hsize=5em
>> \1 \input lorem
>> \bye
>>
___________________________________________________________________________________
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
___________________________________________________________________________________

  reply	other threads:[~2019-12-05  0:39 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-04 21:04 Henri Menke
2019-12-05  0:34 ` Henri Menke
2019-12-05  0:39   ` Henri Menke [this message]
2019-12-05  8:33     ` Hans Hagen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=8e62ca5e-279f-c8bf-6db6-b0d2041df966@gmail.com \
    --to=henrimenke@gmail.com \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).