all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Stephen J. Turnbull" <stephen@xemacs.org>
To: Uwe Brauer <oub@mat.ucm.es>
Cc: Eli Zaretskii <eliz@gnu.org>,
	XEmacs Beta Discussion <xemacs-beta@xemacs.org>,
	emacs-devel@gnu.org
Subject: Re: port x-symbol to GNU emacs 24.
Date: Mon, 17 Aug 2015 10:59:23 +0900	[thread overview]
Message-ID: <87pp2mwu84.fsf@uwakimon.sk.tsukuba.ac.jp> (raw)
In-Reply-To: <878u9d7vdg.fsf@mat.ucm.es>

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?

  parent reply	other threads:[~2015-08-17  1:59 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-14 14:43 port x-symbol to GNU emacs 24 Uwe Brauer
2015-08-14 14:58 ` Eli Zaretskii
2015-08-14 15:16   ` Uwe Brauer
2015-08-14 15:30     ` David Kastrup
2015-08-14 18:15       ` Uwe Brauer
2015-08-14 16:05     ` Tassilo Horn
2015-08-14 17:21       ` Stefan Monnier
2015-08-14 18:19       ` Uwe Brauer
2015-08-17  7:29         ` Tassilo Horn
2015-08-17 15:10           ` Eli Zaretskii
2015-08-17 15:20             ` David Kastrup
2015-08-17 15:36               ` Eli Zaretskii
2015-08-18  8:38               ` Tassilo Horn
2015-08-18 15:52                 ` Stefan Monnier
2015-08-19  7:33                   ` Tassilo Horn
2015-08-19 12:33                     ` Tassilo Horn
2015-08-19 16:34                       ` Tassilo Horn
2015-08-19 17:29                     ` Stefan Monnier
2015-08-19 19:05                       ` Tassilo Horn
2015-08-19 21:43                         ` Stefan Monnier
2015-08-21  6:21                           ` Tassilo Horn
2015-08-21  7:28                             ` David Kastrup
2015-08-21  8:44                               ` Tassilo Horn
2015-08-21  9:51                                 ` David Kastrup
2015-08-21 13:08                                   ` Tassilo Horn
2015-08-20  8:11                       ` Generalizing prettify-symbols-mode (was: port x-symbol to GNU emacs 24.) Tassilo Horn
2015-08-20 14:15                         ` Generalizing prettify-symbols-mode Stefan Monnier
2015-08-21  6:48                           ` Tassilo Horn
2015-08-21  7:43                             ` Tassilo Horn
2015-08-21 13:19                               ` Stefan Monnier
2015-08-14 18:38       ` port x-symbol to GNU emacs 24 Uwe Brauer
2015-08-17  1:59     ` Stephen J. Turnbull [this message]
2015-08-17  9:20       ` Uwe Brauer
2015-08-17 10:50         ` Stephen J. Turnbull
2015-08-17 11:12           ` David Kastrup

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=87pp2mwu84.fsf@uwakimon.sk.tsukuba.ac.jp \
    --to=stephen@xemacs.org \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=oub@mat.ucm.es \
    --cc=xemacs-beta@xemacs.org \
    /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.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.