O'Reilly logo

Learning GNU Emacs, Second Edition by Eric S. Raymond, Bill Rosenblatt, Debra Cameron

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Properties, Frames, Menus, and Mouse Events

Now we’re going to discuss Emacs LISP programming for X, picking up where Chapter 13 left off. Through our discussion of the various user-accessible ways of working with the X primitives, you should already have some intuitive understanding of how Emacs’ X-interface code works. In order to discuss Emacs LISP programming under X, we’ll have to go into these concepts a bit more formally and in somewhat greater detail.

In this section, we’ll discuss each of the major new primitive concepts associated with Emacs’ X support. If you’re not interested in programming Emacs LISP, you can bail out from here to the end of chapter.

There are three things keep in mind as you read this section:

  • Yes, some of these concepts (menus and text properties in particular) could make sense outside of an X or GUI environment. At the time of the writing, however, they’re only spottily supported on character-terminal Emacs, if they’re supported at all. [88]

  • Each concept is generally associated with a new Emacs LISP data structure. In understanding the new behaviors, it’s helpful to bear in mind what kinds of operations on each data structure make sense—and what kinds of operations will be cheap or expensive.

  • The behavior of some X-related functions and the shape of some X-related data structures have changed (in a few cases incompatibly) since the first release of Emacs 19. Although dramatic changes in future releases seem unlikely at this time, a little care and extra ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required