From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/108007 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Richard Mahoney | Indica et Buddhica Newsgroups: gmane.comp.tex.context Subject: Re: Space after Round bracket before Punctuation Date: Fri, 10 Jul 2020 12:09:22 +1200 Organization: Indica et Buddhica Message-ID: <1de9021812dc39009d8dc24b6d707acd12f8c515.camel@indica-et-buddhica.org> References: <844c36c11b594deddb8da589b6961edd443263af.camel@indica-et-buddhica.org> <60f35dfb-e127-d04d-c678-a8c3bfe80d81@xs4all.nl> Reply-To: mailing list for ConTeXt users Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============8906180683188046515==" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="28378"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Evolution 3.36.3 To: Hans Hagen , mailing list for ConTeXt users Original-X-From: ntg-context-bounces@ntg.nl Fri Jul 10 02:13:12 2020 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane-mx.org Original-Received: from zapf.boekplan.nl ([5.39.185.232] helo=zapf.ntg.nl) by ciao.gmane.io with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jtgf8-0007Fb-Of for gctc-ntg-context-518@m.gmane-mx.org; Fri, 10 Jul 2020 02:13:10 +0200 Original-Received: from localhost (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id F3E301857B8; Fri, 10 Jul 2020 02:12:39 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at zapf.boekplan.nl Original-Received: from zapf.ntg.nl ([127.0.0.1]) by localhost (zapf.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5qrmB4fa5vCn; Fri, 10 Jul 2020 02:12:36 +0200 (CEST) Original-Received: from zapf.ntg.nl (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id ABE6E1857B3; Fri, 10 Jul 2020 02:12:36 +0200 (CEST) Original-Received: from localhost (localhost [127.0.0.1]) by zapf.ntg.nl (Postfix) with ESMTP id 7534E1857B2 for ; Fri, 10 Jul 2020 02:12:35 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at zapf.boekplan.nl Original-Received: from zapf.ntg.nl ([127.0.0.1]) by localhost (zapf.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UawICmV7tJh1 for ; Fri, 10 Jul 2020 02:12:32 +0200 (CEST) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=103.2.141.181; helo=e2i437.smtp2go.com; envelope-from=bt.zr85590=3tnpnysemdy8fr=x2xq5s@em110947.indica-et-buddhica.org; receiver= X-Greylist: delayed 141 seconds by postgrey-1.36 at zapf.ntg.nl; Fri, 10 Jul 2020 02:12:32 CEST Original-Received: from e2i437.smtp2go.com (e2i437.smtp2go.com [103.2.141.181]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by zapf.ntg.nl (Postfix) with ESMTPS id 642A61857B1 for ; Fri, 10 Jul 2020 02:12:32 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=smtpcorp.com; s=a1-4; h=Feedback-ID:X-Smtpcorp-Track:Date:To:From:Subject: Message-ID:Reply-To:Sender:List-Unsubscribe; bh=OTGwi1f1qbNYaEgkyrrH23b9WOpHiTr4uKx7zy0JhBc=; b=Tm/yuGr+Ww4G8exNVJfkFTM7d1 rHkzemHZutoggtlwL0pFg/IfRhkZIVhWHNkiD7GkhP7IGz9e41uZsCe1Gmzd5kDE93BSvZE+9IALd 7TxMe5CnJRbJ/z8KVqWITKXLzft/QDOp9DrPxmU5bLWZ+YDrwSaVU6k+qb9k4MjxVvRRKNXq5E9st hCEmdMiHn151tkBjDnswOnikOQJiUaUY5oj0odFMSIofUke4t7hB2hL2XC9AlCavF67VCM90/I4sF vdE0Ywnq4vfK08P6vfq5sMPwOjjRvYM3tbAMdZXU6Xkqo211Ijsz7b9iXyEsy9esrhwaJrrqPdhg7 6wQ8Qw+A==; DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=indica-et-buddhica.org; i=@indica-et-buddhica.org; q=dns/txt; s=s110947; t=1594339952; h=from : subject : to : message-id : date; bh=OTGwi1f1qbNYaEgkyrrH23b9WOpHiTr4uKx7zy0JhBc=; b=O6hjRZjUDNa9mkFMLP5l2lTOmQ9R3uINx6RA/mxYXm5ydA6SV2Pnxzrze6QPTf5lbDKtU oVeNF6zDjvZ/1xC7AT9cXoYHRj8ZWY/0YeX/dJPGEXGrsyhfHDnkx4MjpmEcQkZJzwN5aWF VMjUojTK9TkGrjx2BcsZpJGmubzTFrbYXPlLsk2J9Vhj9BiLoO0u7nH/1gZ1DqcQQauyJXo rsH0KZ6SGEfWxIGZ3nv/+wS3EyNy1aAuk4yRv5WAW0+OgWGQkSEO5VBANRUo8LglMn0O7l6 x3N6zf/BScjTYIvCu04D+L5qA1BhbKhz+UR/8TXTryh0dqRGWGye2saxGbCA== Original-Received: from [10.45.63.29] (helo=SmtpCorp) by smtpcorp.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92-S2G) (envelope-from ) id 1jtgcE-cp4akA-Fc; Fri, 10 Jul 2020 00:10:10 +0000 Original-Received: from [10.203.96.209] (helo=ieb-01000-hp-8570w.localdomain) by smtpcorp.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92-S2G) (envelope-from ) id 1jtgcB-WfZbon-EP; Fri, 10 Jul 2020 00:10:07 +0000 Original-Received: by ieb-01000-hp-8570w.localdomain (Postfix, from userid 1000) id 60B6713D436F; Fri, 10 Jul 2020 12:09:26 +1200 (NZST) In-Reply-To: <60f35dfb-e127-d04d-c678-a8c3bfe80d81@xs4all.nl> X-Smtpcorp-Track: 1MtgcUWfZPonEe.UwH-4tBbB Feedback-ID: 110947m:110947aJu5aPi:110947sbyCOUdf2k X-Report-Abuse: Please forward a copy of this message, including all headers, to X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.26 Precedence: list List-Id: mailing list for ConTeXt users List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ntg-context-bounces@ntg.nl Original-Sender: "ntg-context" Xref: news.gmane.io gmane.comp.tex.context:108007 Archived-At: --===============8906180683188046515== Content-Type: multipart/alternative; boundary="=-TaMRgLjH17AhMfDCDV8z" --=-TaMRgLjH17AhMfDCDV8z Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Thank you Hans, this was very helpful. I found that the following worked (apart from in two or three cases): \startluacode fonts.handlers.otf.addfeature { name =3D "iebpkerns", type =3D "kern", data =3D { [")"] =3D { [","] =3D -80, ["."] =3D -80, [":"] =3D -80, [";"] =3D -80, [")"] =3D -80, ["]"] =3D -80, }, ["]"] =3D { [","] =3D -80, ["."] =3D -80, [":"] =3D -80, [";"] =3D -80, [")"] =3D -80, ["]"] =3D -80, }, }, } \stopluacode Best, Richard -----Original Message----- From: Hans Hagen To: mailing list for ConTeXt users , Richard Mahoney | Indica et Buddhica Subject: Re: [NTG-context] Space after Round bracket before Punctuation Date: Thu, 9 Jul 2020 12:21:02 +0200 Mailer: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 X-Spam-Score: 0.0 On 7/9/2020 11:59 AM, Richard Mahoney | Indica et Buddhica wrote: > I'm typesetting some proceedings which include a good number of > roundbrackets followed by punctuation. This often occurs in the body > of thetext, but also in the hand coded bibliographies, e.g.: > ) plus . , ; : > The trouble is that excessive space is often introduced between > thebracket and the punctuation. I can control the excessive space > thatsometimes occurs between ) and . by using )\periods[1], although > thisruins the protrusion if it occurs at the end of a line. > Does anyone know how I might be able to somehow "tie" ) to . , ; : > sothat the distance remains reasonable, and so that protrusion > stillworks? you first have to make an MWE that demonstrates how protrusion works here ... then we can see how we can best deal with it Anyway, often tricks for this can be found in the test suite of font manual(s) ... here is a variant ... \startluacode fonts.handlers.otf.addfeature { name =3D "mykerns", type =3D "kern", data =3D { [")"] =3D { [","] =3D -300, ["."] =3D -300, [":"] =3D -250, [";"] =3D -250, [")"] =3D -100, }, }, }\stopluacode \definefontfeature[default][default][mykerns=3Dtrue] \setupbodyfont [dejavu,12pt] \startTEXpage[offset=3D10pt] whatever), whatever): whatever) ; whatever). whatever))\stopTEXpage Hans --------------------------------------------------------------- -- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl |=20 www.pragma-pod.nl ----------------------------------------------------------------- --=20 Richard Mahoney | Indica et Buddhica Littledene Bay Road Oxford NZT: +64 3 312 1699 M: +64 210 640 216IM: @rmaho= ney https://t.me/rmahoneyrmahoney@indica-et-buddhica.org https://indica-et-buddhica.org/ --=-TaMRgLjH17AhMfDCDV8z Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable
Thank=20you=20Hans,=20this=20was=20very=20helpful.=20I=20fou= nd=20that=20the=20following
worked=20(apart=20from=20in=20two=20o= r=20three=20cases):

\startluacode
 =     fonts.handlers.otf.addfeature=20{
 &= nbsp;       name    =  =3D=20"iebpkerns",
      &nbs= p;  type     =3D=20"kern",
&nb= sp;        data   &n= bsp; =3D=20{
        = ;     [")"]=20=3D=20{
   =             &nb= sp; [","]=20=3D=20-80,
      &= nbsp;          ["."]=20= =3D=20-80,
         =         [":"]=20=3D=20-80,
            &= nbsp;    [";"]=20=3D=20-80,
   = ;            &n= bsp; [")"]=20=3D=20-80,
      =            ["]"]=20= =3D=20-80,
         =     },
      &n= bsp;      ["]"]=20=3D=20{
 &nb= sp;            =    [","]=20=3D=20-80,
    &nbs= p;            [= "."]=20=3D=20-80,
        = ;         [":"]=20=3D=20-80,
           =       [";"]=20=3D=20-80,
 &nbs= p;            &= nbsp;  [")"]=20=3D=20-80,
     = ;            ["= ]"]=20=3D=20-80,
        =      },
     &n= bsp;   },
     }
\stopluacode



Best,=20Richard



--=20
Richard=20Mahoney=20|=20Indica=20et=20Buddhica

Littl= edene=20Bay=20Road=20Oxford=20NZT:=20+64=203=20312=201699=20M:=20+64= =20210=20640=20216IM:=20@rmahoney=20rmahoney@indica-et-buddhica.org
https://indica-et-buddhica.org/

-----Or= iginal=20Message-----
From:=20Hans=20Hagen=20<j.hagen@xs4all.nl>= ;
To:=20mailing=20list=20for=20ConTeXt=20users=20<ntg-context@ntg.nl>,=20Richard
Mahoney=20|=20Indica=20et= =20Buddhica=20<rmahoney@indica-et-bud= dhica.org>
Subject:=20Re:=20[NTG-context]=20Space= =20after=20Round=20bracket=20before
Punctuation
Date:= =20Thu,=209=20Jul=202020=2012:21:02=20+0200
Mailer:=20Mozi= lla/5.0=20(Windows=20NT=2010.0;=20Win64;=20x64;=20rv:68.0)
Gecko/2010010= 1
=20Thunderbird/68.10.0
X-Spam-Score:=200.0

On=207/9/2020=2011:59=20AM,=20Richard=20Mahoney=20|=20Indica=20et=
=20Buddhica=20wrote:
I'm=20typesetting=20some=20proceedings=20which=20=
include=20a=20good=20number=20of
round
brackets=20followed=20b=
y=20punctuation.=20This=20often=20occurs=20in=20the=20body
of=20the
text,=20but=20also=20in=20the=20hand=20coded=20bibliographies,=20e.g.=
:

)=20plus=20.=20,=20;=20:

The=20trouble=20is=20that=20excessive=20space=20is=20often=20introduced= =20between=20the
bracket=20and=20the=20punctuation.=20I=20can=20c=
ontrol=20the=20excessive=20space=20that
sometimes=20occurs=20betw=
een=20)=20and=20.=20by=20using=20)\periods[1],=20although=20this
=
ruins=20the=20protrusion=20if=20it=20occurs=20at=20the=20end=20of=20a=20lin=
e.

Does=20anyone=20know=20how=20I=20might=20be=20a=
ble=20to=20somehow=20"tie"=20)=20to=20.=20,=20;=20:=20so
that=20t=
he=20distance=20remains=20reasonable,=20and=20so=20that=20protrusion=20stil=
l
works?
you=20first=20have=20to=20make=20=
an=20MWE=20that=20demonstrates=20how=20protrusion=20works=20
here=
=20...=20then=20we=20can=20see=20how=20we=20can=20best=20deal=20with=20it

Anyway,=20often=20tricks=20for=20this=20can=20be=20=
found=20in=20the=20test=20suite=20of=20font=20
manual(s)=20...=20=
here=20is=20a=20variant=20...

\startluacode
<= pre>=20=20=20=20=20fonts.handlers.otf.addfeature=20{
=20=20=20=20=
=20=20=20=20=20name=20=20=20=20=20=3D=20"mykerns",
=20=20=20=20=
=20=20=20=20=20type=20=20=20=20=20=3D=20"kern",
=20=20=20=20=20=
=20=20=20=20data=20=20=20=20=20=3D=20{
=20=20=20=20=20=20=20=20=
=20=20=20=20=20[")"]=20=3D=20{
=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20[","]=20=3D=20-300,
=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20["."]=20=3D=20-300,
=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20[":"]=20=3D=20-250,
=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20[";"]=20=3D=20-250,
=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20[")"]=20=3D=20-100,
=20=
=20=20=20=20=20=20=20=20=20=20=20=20},
=20=20=20=20=20=20=20=20=
=20},
=20=20=20=20=20}
\stopluacode

\definefontfeature[default][default][mykerns=3Dtrue]

\setupbodyfont=20[dejavu,12pt]

\startTEXp=
age[offset=3D10pt]
=20=20=20=20=20whatever),
=20=20=20=
=20=20whatever):
=20=20=20=20=20whatever);
=20=20=20=20=
=20whatever).
=20=20=20=20=20whatever))
\stopTEXpage

Hans

----------------------=
-------------------------------------------
=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20Hans=20Hagen=20|=20PRAGMA=20ADE
=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20Ridderstraat=2027=20|=208061=
=20GH=20Hasselt=20|=20The=20Netherlands
=20=20=20=20=20=20=20=20t=
el:=20038=20477=2053=2069=20|=20
www.pragma-ade.nl
=20|=20
www.=
pragma-pod.nl

--------------------------------=
---------------------------------
=
--=-TaMRgLjH17AhMfDCDV8z-- --===============8906180683188046515== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSWYgeW91ciBxdWVzdGlvbiBpcyBvZiBpbnRlcmVz dCB0byBvdGhlcnMgYXMgd2VsbCwgcGxlYXNlIGFkZCBhbiBlbnRyeSB0byB0aGUgV2lraSEKCm1h aWxsaXN0IDogbnRnLWNvbnRleHRAbnRnLm5sIC8gaHR0cDovL3d3dy5udGcubmwvbWFpbG1hbi9s aXN0aW5mby9udGctY29udGV4dAp3ZWJwYWdlICA6IGh0dHA6Ly93d3cucHJhZ21hLWFkZS5ubCAv IGh0dHA6Ly9jb250ZXh0LmFhbmhldC5uZXQKYXJjaGl2ZSAgOiBodHRwczovL2JpdGJ1Y2tldC5v cmcvcGhnL2NvbnRleHQtbWlycm9yL2NvbW1pdHMvCndpa2kgICAgIDogaHR0cDovL2NvbnRleHRn YXJkZW4ubmV0Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCg== --===============8906180683188046515==--