From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, URIBL_DBL_BLOCKED_OPENDNS,URIBL_ZEN_BLOCKED_OPENDNS autolearn=ham autolearn_force=no version=3.4.4 Received: from cgl.ntg.nl (Cgl.ntg.nl [5.39.185.202]) by inbox.vuxu.org (Postfix) with ESMTP id 9AFF127190 for ; Tue, 9 Sep 2025 10:00:21 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by cgl.ntg.nl (Postfix) with ESMTP id F095D486F63 for ; Tue, 9 Sep 2025 10:00:09 +0200 (CEST) Authentication-Results: cgl.ntg.nl (amavis); dkim=pass (1024-bit key) reason="pass (just generated, assumed good)" header.d=ntg.nl DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ntg.nl; h= content-transfer-encoding:content-type:content-type:from:from :list-unsubscribe:list-subscribe:list-post:list-owner:list-help :list-archive:archived-at:list-id:subject:subject:reply-to :precedence:in-reply-to:references:content-language:user-agent :mime-version:date:date:message-id:received:received:received :received:received:received:received; s=cgl; t=1757404809; x= 1759996810; bh=3sYH5+j08WUVM05KMpYMh+jc8Y+LEmAd59vG0Eyxj3I=; b=S RSpZABnho5xuf0awUy1y0JDeue5v5Qf6/naxWFpPlGs8L2BN1V0lwy0TapLJd0oZ NM2ObY1EJIO4UEyfR1DOCY29wRld9sBMZgDm3Hz5co9H3w2dlPDSPwEp4mppAJWD Gaas1mSJr53YmmGO7x3ihyfB1M8ZfXxhbDdKPM/QvA= X-Virus-Scanned: Debian amavis at cgl.ntg.nl Authentication-Results: cgl.ntg.nl (amavis); dkim=fail (2048-bit key) reason="fail (message has been altered)" header.d=xs4all.nl Received: from cgl.ntg.nl ([127.0.0.1]) by localhost (cgl.ntg.nl [127.0.0.1]) (amavis, port 10024) with ESMTP id NM1Artj1luBX for ; Tue, 9 Sep 2025 10:00:09 +0200 (CEST) Received: from cgl.ntg.nl (localhost [127.0.0.1]) by cgl.ntg.nl (Postfix) with ESMTP id 74EF6486D2F for ; Tue, 9 Sep 2025 09:59:29 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by cgl.ntg.nl (Postfix) with ESMTP id 0FEA0486440 for ; Tue, 9 Sep 2025 09:59:09 +0200 (CEST) X-Virus-Scanned: Debian amavis at cgl.ntg.nl Received: from cgl.ntg.nl ([127.0.0.1]) by localhost (cgl.ntg.nl [127.0.0.1]) (amavis, port 10024) with ESMTP id DGNAohEkq5om for ; Tue, 9 Sep 2025 09:59:07 +0200 (CEST) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=195.121.94.186; helo=ewsoutbound.kpnmail.nl; envelope-from=j.hagen@xs4all.nl; receiver=ntg.nl Received: from ewsoutbound.kpnmail.nl (ewsoutbound.kpnmail.nl [195.121.94.186]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by cgl.ntg.nl (Postfix) with ESMTPS id D9CAA48642D for ; Tue, 9 Sep 2025 09:59:07 +0200 (CEST) X-KPN-MessageId: 61f11e06-8d53-11f0-8592-00505699b430 Received: from smtp.kpnmail.nl (unknown [10.31.155.5]) by ewsoutbound.so.kpn.org (Halon) with ESMTPS id 61f11e06-8d53-11f0-8592-00505699b430; Tue, 09 Sep 2025 10:02:51 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xs4all.nl; s=xs4all01; h=content-type:from:to:subject:mime-version:date:message-id; bh=5CjaROyqnu8lSUKq/EkaUfmt+pUfsO+NNrTtY69Epmo=; b=Y+KjHKSuOUKl12aZalXHdDG/rG5iPtIuwD2DMvmtgCSG1PO9s9zrRxihfrLwtUZ3yKZ21RYW8w1E6 QCY6a+rsoigE7PayZTcJwc1J+R7F2y39laesUf2lR7DRfPAEs5EhpViD3FSgjtQ05eaqKexjhe6uRr sKNhoPULo2XZVroZ3+u/4E4wWllsn1LZNSVOlYKpZhr0HKt1iq7jgGiFme1u8jRG5Tln7vSTHx9Xcm uk47tNu6IUvB4I8vEShP4iGH3Pm2hr+nyWrK5XUHVNSsOlVVjf4kZ0eMZy9Ni5yE37zYrJkLUJ3XMc pgzw1ghNl6X11WQXx22bHBeYAwX0keA== X-KPN-MID: 33|iFdhUWZ7F5+BAcFnFvTzRgyNcyqzHyJFVUATlAtLJJ8kigg+guqoxZPoNSGoTXR 3rQvPAgY05vmgNl0xT/oPrAt5l27+PohUAmyGNqMnSck= X-KPN-VerifiedSender: Yes X-CMASSUN: 33|d0tP+Fq/2uZHX1cypZSvwMYkhXeRxy0u17H6Tpsivfn7k4hfmlno4S+/yCwa1fx K7GUYDzH8mxJAkzRxHRS2sw== X-Originating-IP: 213.125.29.162 Received: from [10.100.1.105] (d57d1da2.static.ziggozakelijk.nl [213.125.29.162]) by smtp.xs4all.nl (Halon) with ESMTPSA id dc347bbc-8d52-11f0-8d56-00505699b758; Tue, 09 Sep 2025 09:59:07 +0200 (CEST) Message-ID: <1d8ea465-d48d-49db-bd22-0c82d0b928f4@xs4all.nl> Date: Tue, 9 Sep 2025 09:59:06 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: ntg-context@ntg.nl References: In-Reply-To: Message-ID-Hash: 2YXT4SI457CR7XNDZMQGJXPUSO2DK2AX X-Message-ID-Hash: 2YXT4SI457CR7XNDZMQGJXPUSO2DK2AX X-MailFrom: j.hagen@xs4all.nl X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header X-Mailman-Version: 3.3.9 Precedence: list Reply-To: mailing list for ConTeXt users Subject: [NTG-context] Re: OpenType contextual alternates disabled by default List-Id: mailing list for ConTeXt users Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: From: Hans Hagen via ntg-context Cc: Hans Hagen Content-Type: text/plain; charset="us-ascii"; format="flowed" Content-Transfer-Encoding: 7bit On 9/9/2025 9:34 AM, Max Chernoff via ntg-context wrote: > Hi Hans, > > OpenType contextual alternates ("calt") seem to be disabled by default > in ConTeXt. However, the OpenType spec recommends that this is enabled > by default > > https://learn.microsoft.com/en-us/typography/opentype/spec/features_ae#tag-calt > > and it's enabled by default in both HTML and HarfBuzz > > https://drafts.csswg.org/css-fonts/#default-features > > https://harfbuzz.github.io/shaping-opentype-features.html > > Changing this default in ConTeXt probably isn't possible due to > backwards compatibility concerns, so this is more of an FYI than a > request for any changes to be made. > > Background: this came up in a recent TeX.SE question > > https://tex.stackexchange.com/a/750767 > > where a new user was surprised by ConTeXt's default setting since it > makes some fonts render differently than other programs. We started with opentype support (2005) when there wasn't much info about it. The reference implementation was uniscribe so we had to guess and compare with that. The xetex engine was using some libraries and changed them later on. So we couldn't check that out either. Now, when it comes to features, those experiences, also with specific fonts, made us decide for the defaults. Over time the specification became better and more complete but as you say: we want to remain compatibility. (I assume that ltx folk spend substantial time on checking changes in hb every time there is an update in tex live, which is quite often if i look at git syncing.) An omission in otf is that the font doesn't specify what features are to be on by default. Combine that with font usage where users have no control over features, and we see why soem are just turned on. Probably the same for some (fixing) heuristics. It's now how tex works: there we *ask* for something, not being *enforced* to. If I could motivate myself we could of course make such a list of default features per font. Of course one can wonder why we have rlig/lig/clig as well as kern/dist split into several features when they are supposed to be always on. But I will not waste time on pondering that. 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 / https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl webpage : https://www.pragma-ade.nl / https://context.aanhet.net (mirror) archive : https://github.com/contextgarden/context wiki : https://wiki.contextgarden.net ___________________________________________________________________________________