Writing GNU Emacs Extensions: Editor Customizations and Creations with Lisp

Front Cover
"O'Reilly Media, Inc.", Apr 1, 1997 - Computers - 240 pages

Yes, it is possible to be all things to all people, if you're talking about the Emacs editor. As a user, you can make any kind of customization you want, from choosing the keystrokes that invoke your favorite commands to creating a whole new work environment that looks like nothing ever developed before. It's all in Emacs Lisp -- and in this short but fast-paced book.GNU Emacs is more than an editor; it's a programming environment, a communications package, and many other things. To provide such a broad range of functions, it offers a full version of the Lisp programming language -- something much more powerful than the little macro languages provided in other editors (including older versions of Emacs). GNU Emacs is a framework in which you can create whole new kinds of editors or just alter aspects of the many functions it already provides.In this book, Bob Glickstein delves deep into the features that permit far-reaching Emacs customizations. He teaches you the Lisp language and discusses Emacs topics (such as syntax tables and macro templates) in easy-to-digest portions. Examples progress in complexity from simple customizations to extensive major modes.You will learn how to write interactive commands, use hooks and advice, perform error recovery, manipulate windows, buffers, and keymaps, exploit and alter Emacs's main loop, and more. Each topic is explored through realistic examples and a series of successive refinements that illustrate not only the Emacs Lisp language, but the development process as well, making learning pleasant and natural.

 

What people are saying - Write a review

We haven't found any reviews in the usual places.

Contents

Chapter 1 Customizing Emacs
1
Chapter 2 Simple New Commands
13
Chapter 3 Cooperating Commands
34
Chapter 4 Searching and Modifying Buffers
47
Chapter 5 Lisp Files
71
Chapter 6 Lists
81
Chapter 7 Minor Mode
95
Chapter 8 Evaluation and Error Recovery
110
Chapter 10 A Comprehensive Example
133
Conclusion
183
Appendix A Lisp Quick Reference
185
Appendix B Debugging and Profiling
195
Appendix C Sharing Your Code
200
Appendix D Obtaining and Building Emacs
203
Index
207
About the Author
217

Chapter 9 A Major Mode
122

Other editions - View all

Common terms and phrases

Bibliographic information