From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Stephen J. Turnbull" Newsgroups: gmane.emacs.xemacs.beta,gmane.emacs.devel Subject: Re: port x-symbol to GNU emacs 24. Date: Mon, 17 Aug 2015 10:59:23 +0900 Message-ID: <87pp2mwu84.fsf@uwakimon.sk.tsukuba.ac.jp> References: <87oaia6ict.fsf@mat.ucm.es> <837foxor1t.fsf@gnu.org> <878u9d7vdg.fsf@mat.ucm.es> 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 1439776796 17077 80.91.229.3 (17 Aug 2015 01:59:56 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 17 Aug 2015 01:59:56 +0000 (UTC) Cc: Eli Zaretskii , XEmacs Beta Discussion , emacs-devel@gnu.org To: Uwe Brauer Original-X-From: xemacs-beta-bounces@xemacs.org Mon Aug 17 03:59:45 2015 Return-path: Envelope-to: gexb-xemacs-beta-2@gmane.org Original-Received: from [209.190.247.153] (helo=calypso.tux.org) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZR9iA-0007q2-49 for gexb-xemacs-beta-2@gmane.org; Mon, 17 Aug 2015 03:59:42 +0200 Original-Received: from localhost (localhost.localdomain [127.0.0.1]) by calypso.tux.org (Postfix) with ESMTP id 60565D181CA; Sun, 16 Aug 2015 21:59:36 -0400 (EDT) X-Virus-Scanned: amavisd-new at tux.org Original-Received: from calypso.tux.org ([127.0.0.1]) by localhost (calypso.tux.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yB53oHgc7+lC; Sun, 16 Aug 2015 21:59:34 -0400 (EDT) Original-Received: from calypso.tux.org (localhost.localdomain [127.0.0.1]) by calypso.tux.org (Postfix) with ESMTP id 19288D181F7; Sun, 16 Aug 2015 21:59:33 -0400 (EDT) Original-Received: from localhost (localhost.localdomain [127.0.0.1]) by calypso.tux.org (Postfix) with ESMTP id A6B19D181F7 for ; Sun, 16 Aug 2015 21:59:31 -0400 (EDT) X-Virus-Scanned: amavisd-new at tux.org Original-Received: from calypso.tux.org ([127.0.0.1]) by localhost (calypso.tux.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id adwMfJ0danFN for ; Sun, 16 Aug 2015 21:59:31 -0400 (EDT) Original-Received: from gwyn.tux.org (gwyn.tux.org [207.172.156.132]) by calypso.tux.org (Postfix) with ESMTP id F0C10D181CA for ; Sun, 16 Aug 2015 21:59:30 -0400 (EDT) Original-Received: from gwyn.tux.org (ident-user@localhost.localdomain [127.0.0.1]) by gwyn.tux.org (8.12.11/8.12.11) with ESMTP id t7H1xTsn011267 for ; Sun, 16 Aug 2015 21:59:30 -0400 Original-Received: (from xemacweb@localhost) by gwyn.tux.org (8.12.11/8.12.11/Submit) id t7H1xTNl011266 for xemacs-beta@calypso.tux.org; Sun, 16 Aug 2015 21:59:29 -0400 Original-Received: from gwyn.tux.org (ident-user@localhost.localdomain [127.0.0.1]) by gwyn.tux.org (8.12.11/8.12.11) with ESMTP id t7H1xQOw011255 for ; Sun, 16 Aug 2015 21:59:26 -0400 Original-Received: (from mailnull@localhost) by gwyn.tux.org (8.12.11/8.12.11/Submit) id t7H1xQ3R011254 for xemacweb@tux.org; Sun, 16 Aug 2015 21:59:26 -0400 Original-Received: from shako.sk.tsukuba.ac.jp (shako.sk.tsukuba.ac.jp [130.158.97.161]) by gwyn.tux.org (8.12.11/8.12.11) with ESMTP id t7H1xOd6011249 for ; Sun, 16 Aug 2015 21:59:25 -0400 Original-Received: from uwakimon.sk.tsukuba.ac.jp (uwakimon.sk.tsukuba.ac.jp [130.158.99.156]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by shako.sk.tsukuba.ac.jp (Postfix) with ESMTPS id 520271C390D; Mon, 17 Aug 2015 10:59:23 +0900 (JST) Original-Received: by uwakimon.sk.tsukuba.ac.jp (Postfix, from userid 1000) id 3760D11EF83; Mon, 17 Aug 2015 10:59:23 +0900 (JST) In-Reply-To: <878u9d7vdg.fsf@mat.ucm.es> X-Mailer: VM undefined under 21.5 (beta34) "kale" ffb5abc8dc4e XEmacs Lucid (x86_64-unknown-linux) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-1.6 (gwyn.tux.org [0.0.0.0]); Sun, 16 Aug 2015 21:59:30 -0400 (EDT) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-1.6 (gwyn.tux.org [0.0.0.0]); Sun, 16 Aug 2015 21:59:26 -0400 (EDT) X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-1.6 (gwyn.tux.org [207.172.156.133]); Sun, 16 Aug 2015 21:59:26 -0400 (EDT) X-XEmacs-List: beta X-BeenThere: xemacs-beta@xemacs.org X-Mailman-Version: 2.1.9 Precedence: list List-Id: "Bug reports and discussion of XEmacs development." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: xemacs-beta-bounces@xemacs.org Errors-To: xemacs-beta-bounces@xemacs.org X-Broken-Reverse-DNS: no host name found for IP address 209.190.247.153 Xref: news.gmane.org gmane.emacs.xemacs.beta:39303 gmane.emacs.devel:188826 Archived-At: Uwe Brauer writes: > Ok, so I have to dig more into the code or hope that somebody in > xemacs-beta could point me out what is the GNU emacs equivalent to those > functions. I still wonder how x-symbol could have worked under GNU > emacs 21, given that extents and specifiers did not exist neither for > emacs 21. AFAIK you're the only user left, and you've spent quite a bit of time, both yours and others', on trying to keep this code working (which was idiosyncratic when written, to say the least). I'm giving up. This is my last post, ever, on x-symbol (except if necessary to veto changes to XEmacs :-/ ). Extents are a unification[1] of Emacs's overlays and text properties, with a similar API. Most likely you want to use the text property API rather than the overlay API. Specifiers are a unification and generalization of buffer-local and frame-local variables[2], but with a rather different API that has to be invoked explicitly to reference and mutate them, rather than being a special type of variable that is referenced and mutated in the usual way. I suppose that you can probably ignore the specifier stuff, however, and just use Customize to define the appropriate faces (defface) which are selected for the x-symbol charset. Another problem you'll run into in more recent GNU Emacs is that the internal encoding (a UTF-8 extension) no longer has charsets in the sense that Mule encoding did, as part of each character. So you will need to define a charset to hold the x-symbol characters (a Unicode block, possibly in Unicode private space but perhaps outside of the official range of Unicode scalars) using an API that is not relevant to XEmacs, I suspect. Note that it's probably possible to achieve what x-symbol does in 1/5 the code and without defining a new charset or glyphs by simply taking advantage of the fact that most (all?) of those symbols are already in Unicode. I believe there are TeX add-ons that allow you to use them instead of the traditional macros, as well, so you might not even need to fiddle the display of the TeX file at all, and x-symbol would be completely irrelevant. Footnotes: [1] IIRC, there's a corner case involving text properties that can't be properly simulated using only extent properties, but it's otherwise equivalent. [2] ISTR frame-locals have been deprecated or removed in recent Emacs?