From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/79741 Path: news.gmane.org!not-for-mail From: Khaled Hosny Newsgroups: gmane.comp.tex.context Subject: Re: \not\in doesn't work properly Date: Tue, 4 Dec 2012 17:18:55 +0200 Message-ID: <20121204151855.GF10913@khaled-laptop> References: <50BD068F.2050308@wxs.nl> Reply-To: mailing list for ConTeXt users NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1354634357 5963 80.91.229.3 (4 Dec 2012 15:19:17 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 4 Dec 2012 15:19:17 +0000 (UTC) Cc: mailing list for ConTeXt users , Jeong Dal To: Hans Hagen Original-X-From: ntg-context-bounces@ntg.nl Tue Dec 04 16:19:29 2012 Return-path: Envelope-to: gctc-ntg-context-518@m.gmane.org Original-Received: from balder.ntg.nl ([195.12.62.10]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1TfuHP-0001j2-Ta for gctc-ntg-context-518@m.gmane.org; Tue, 04 Dec 2012 16:19:27 +0100 Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 634D910202; Tue, 4 Dec 2012 16:19:13 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at balder.ntg.nl Original-Received: from balder.ntg.nl ([127.0.0.1]) by localhost (balder.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id ic98aWGpkveo; Tue, 4 Dec 2012 16:19:11 +0100 (CET) Original-Received: from balder.ntg.nl (localhost [IPv6:::1]) by balder.ntg.nl (Postfix) with ESMTP id F20FA101EA; Tue, 4 Dec 2012 16:19:10 +0100 (CET) Original-Received: from localhost (localhost [127.0.0.1]) by balder.ntg.nl (Postfix) with ESMTP id 56BEA101EA for ; Tue, 4 Dec 2012 16:19:10 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at balder.ntg.nl Original-Received: from balder.ntg.nl ([127.0.0.1]) by localhost (balder.ntg.nl [127.0.0.1]) (amavisd-new, port 10024) with LMTP id l0PQlI28EJlM for ; Tue, 4 Dec 2012 16:19:09 +0100 (CET) Original-Received: from filter2-ams.mf.surf.net (filter2-ams.mf.surf.net [192.87.102.70]) by balder.ntg.nl (Postfix) with ESMTP id 45C36101E6 for ; Tue, 4 Dec 2012 16:19:09 +0100 (CET) Original-Received: from mail-ea0-f169.google.com (mail-ea0-f169.google.com [209.85.215.169]) by filter2-ams.mf.surf.net (8.14.3/8.14.3/Debian-9.4) with ESMTP id qB4FJ40b025300 for ; Tue, 4 Dec 2012 16:19:05 +0100 Original-Received: by mail-ea0-f169.google.com with SMTP id a12so2009977eaa.14 for ; Tue, 04 Dec 2012 07:19:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=t4j4G6vYoDwLMLAIg5s1pcQfDvEp+c0TJ0ZEcK9jX5Y=; b=aneovkDCUb0lLwTBfNaxiZPm92OnZppBpMxOHgO5uusTS+4aV/R2tjxMRXz/AjfMM2 a1YsB+zXRbClGmWkdIEa8ZgTykRvvYB47u1qRg3XMHUe7CvOfCtgaA61iPnerda407os Y6EJGZhqV090+p2XWMxmmkeaq/rrys30lekKdT8LjawLtm5k5sktVZzM0Reoe4TKW79L rNaSgIqzgCd9G1pCNnTix/1iQRHhB5FYOiRzHMJqKkAjLCLSpv77zzwsV1CjYcc0pZpi XvPx9c/rNhnC3zPd79VvtDpFB+TTPiI8IMwWfZfeRk4dX85AEFNm7LHGNFk7u6yeMEct kPVg== Original-Received: by 10.14.203.2 with SMTP id e2mr49517897eeo.20.1354634344039; Tue, 04 Dec 2012 07:19:04 -0800 (PST) Original-Received: from localhost ([217.55.111.16]) by mx.google.com with ESMTPS id b49sm3089554eem.16.2012.12.04.07.18.59 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 04 Dec 2012 07:19:02 -0800 (PST) Content-Disposition: inline In-Reply-To: <50BD068F.2050308@wxs.nl> User-Agent: Mutt/1.5.21 (2010-09-15) X-Bayes-Prob: 0.0001 (Score 0, tokens from: @@RPTN) X-CanIt-Geo: ip=209.85.215.169; country=US; region=CA; city=Mountain View; postalcode=94043; latitude=37.4192; longitude=-122.0574; metrocode=807; areacode=650; http://maps.google.com/maps?q=37.4192,-122.0574&z=6 X-CanItPRO-Stream: uu:ntg-context@ntg.nl (inherits from uu:default, base:default) X-Canit-Stats-ID: 0QIvrj4Hm - 4b37a6c42478 - 20121204 (trained as not-spam) X-Scanned-By: CanIt (www . roaringpenguin . com) on 192.87.102.70 X-BeenThere: ntg-context@ntg.nl X-Mailman-Version: 2.1.14 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-bounces@ntg.nl Xref: news.gmane.org gmane.comp.tex.context:79741 Archived-At: On Mon, Dec 03, 2012 at 09:07:43PM +0100, Hans Hagen wrote: > On 11/30/2012 10:26 AM, Jeong Dal wrote: > >Hi, > > > >After updating ConTeXt, math command '\not\in' is not shown properly. > > > >For example, > > > >$a \not\eq b$ is good. > > > >but $a \not\in A$ shows two symbols separately. > > > > > >I am using Mac OS X 10.8 and the versions of LuaTex and ConTeXt are > > > >This is LuaTeX, Version beta-0.70.2-2012052309 (TeX Live 2012) > >ConTeXt ver: 2012.11.23 17:35 MKIV fmt: 2012.11.26 int: english/english > > I assume that you use lm ... before I start looking into it I'd like > to know Khaleds point of view on this. The main issue here is that \not in was largely a hack in CM fonts, the glyph was specially crafted so that it overlays the next symbol by having zero width and -ve right side bearing and it was centered over equal and similar symbols, anything with different width would not look good. This can't be relied on with OpenType fonts mainly because we don't control all the fonts and since U+0338 is a combining mark it tends to have -ve left side bearing (the opposite of CM). Previously I thought it should be handled as special math accent that don't get shifted above, but this didn't work because accent noads do not inherit the spacing of their nuclei, and changing this is not simple AFAICT. When I checked Word it had no notion of negations either, you can only use pre-composed negated symbols (but accents respect the spacing of its accentee, BTW). The solution currently used by unicode-math package is to look ahead and see if the next symbol after \not has a precomposed negated form and use it (such a list can be obtained by checking Unicode characters that decompose to something + U+0338), else just output U+0338. This probably can be even enhanced by inserting a kern between \not and the next symbol that would center their bounding boxes together, to handle cases why no precomposed symbol exists. My be we need a new primitive \Unegation that would do this in the engine? Regards, Khaled ___________________________________________________________________________________ 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://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___________________________________________________________________________________