Path: twister.socal.rr.com!cyclone.socal.rr.com!news-west.rr.com!news-east.rr.com!localhost.localdomain!news.bellsouth.net!peer01.cox.net!cox.net!cyclone1.gnilink.net!wn14feed!worldnet.att.net!4.24.21.153!chcgil2-snh1.gtei.net!news.bbnplanet.com!nycmny1-snh1.gtei.net!news.gtei.net!bloom-beacon.mit.edu!senator-bedfellow.mit.edu!dreaderd!not-for-mail Message-ID: Supersedes: Expires: 30 Jun 2003 13:40:39 GMT X-Last-Updated: 2002/03/03 Organization: none From: jari.aalto@poboxes.com (Jari Aalto+mail.emacs) Subject: Emacs references and faqs Summary: This posting contains pointer to Emacs resource page at http://tiny-tools.sourceforge.net/emacs-elisp.html Newsgroups: comp.emacs, comp.answers, news.answers Followup-To: poster Precedence: bulk Approved: news-answers-request@MIT.EDU Originator: faqserv@penguin-lust.MIT.EDU Date: 01 Jun 2003 13:45:01 GMT Lines: 1375 NNTP-Posting-Host: penguin-lust.mit.edu X-Trace: 1054475101 senator-bedfellow.mit.edu 3951 18.181.0.29 Xref: cyclone.socal.rr.com comp.emacs:52543 comp.answers:23964 news.answers:126509 Archive-name: GNU-Emacs-FAQ/reference-pointer Posting-Frequency: 2 times a month Maintainer: Jari Aalto X-Last-Modified: $Docid: 2002-03-03 Jari Aalto $ Announce: "Emacs references: pointers to ports, packages, papers, lisp" [X]Emacs FAQ is available to you via keypress C-h F. Official GNU Emacs FAQ available also at http://www.faqs.org/faqs/GNU-Emacs-FAQ/ List of Emacs resources at http://tiny-tools.sourceforge.net/emacs-elisp.html from where this is an excerpt. Have a look ar Stephen's condenced lisp list at http://www.anc.ed.ac.uk/~stephen/emacs/ell.html 1.0 Document id 1.1 Description 1.2 Emacs first aid 1.2.1 Finding old Emacs packges or articles 1.2.2 Emacs mailing lists and newsgroups 1.2.3 IRC and Emacs channels 1.2.4 Emacs webring(s) 1.2.5 Emacs and XEmacs usage percentages 1.3 Developer contact addresses and site list 2.0 General information 2.1 Free software pointers 2.2 Free Software articles 2.3 Other documents 2.4 Jokes 2.4.1 The Word Emacs 2.4.2 New commands in Emacs 2.5 GNU Emacs 2.6 GNU Emacs history 2.7 XEmacs - Emacs the next generation 2.8 Emacs or XEmacs future plans 2.9 Emacs and XEmacs compatibility issues 2.10 Emacs resources 2.11 Emacs books, free 2.12 Emacs books, commercial 2.13 Lisp references 2.14 Emacs and misc links 3.0 Win32 3.1 Win32 Emacs ports 3.2 Win32 XEmacs ports 3.2.1 Compiling XEmacs with cygwin 3.2.2 CVS access 3.2.3 Tips for debugging 3.3 Emacs-like Win32 ports 3.4 NTEmacs and clisp 3.5 NTEmacs and lisp package 3.6 NTEmacs and printing 3.6.1 NT print 3.6.2 Gnu enscript 3.7 Cygwin 3.7.1 Reporting Cygwin problems 3.8 Win32 Unix software ports 3.9 Win32 terminal programs 3.10 Win32 ftp clients 3.11 Win32 programs and Emacs feel 3.12 Win32 miscellaneous 4.0 Emacs tips 4.1 Emacs startup and load-path 4.2 Loading files from .emacs 4.3 Many emacs startup files 4.4 Editing files as ROOT 4.5 Saving files as Unix 5.0 Byte compiling files 5.1 Compiling lisp files 5.2 Shell alias 5.3 Dired byte compilation 6.0 Reporting bugs or improvements 6.1 Activating debug 6.2 Use uncompiled packages 6.3 Use package's contact function 6.4 Requesting changes 7.0 Library kits 7.1 CEDET, Collection of Emacs Dev Env Tools 7.2 Tiny Tools kit 7.3 Ttn Emacs kit 7.4 Dot files 8.0 Gnus 8.1 Gnus homepage 8.2 Gnus grouplens 8.3 Gnus-eyecandy.el 8.4 Gnus-bbdb.el (*) 8.5 Gnus-filterhist.el 8.6 Gnus-junk.el, Send UBE complaint 8.7 Gnus-ml.el, Mailing list minor mode for gnus (*) 8.8 Gnus-todo.el 8.9 Deja.el, Search dejanews with nnweb 8.10 Message-utils.el 8.11 Message-x.el, customizable completion in message headers 8.12 Messkeyw.el, automatic keyword support during composition 8.13 Ngn.el, insert newsgroup name into buffer using completion 8.14 Nnmaildir.el, one group per maildir 8.15 Nnir.el, search mail with various search engines 8.16 Nnir-grepmail.el --- A grepmail plugin for nnir.el 8.17 Nnimap.el, IMAP client (*) 8.18 Fogey-subscribe.el 8.19 Rmail-spam-filter.el 8.20 TinyGnus.el, additional gnus utilities 8.21 Uce.el, reply to unsolicited commercial email 8.22 Spamprod.el, generate spam complaint email 8.23 Vcard.el (*) 9.0 Mail 9.1 Getting remote mail 9.2 Bbdb.el, email database (*) 9.3 Bbdb-pgp.el (*) 9.4 Bbdb-mail-folders.el 9.5 Bbdb-expire.el, expiry and expire-proof entries for the BBDB 9.6 Blackbook.el, manage email aliases easily 9.7 EUDC, the Emacs Unified Directory Client (LDAP) 9.8 Epop.el, General POP support for all MUAs 9.9 Footnote.el (*) 9.10 Fortunesig.el 9.11 Feedmail.el, replacement for sendmail (*) 9.12 Ldbdb.el, Little Brother's Database interface 9.13 MH Mail user agent 9.14 Rmail-extras.el, support remote inboxes 9.15 Rmailsort.el, sort by date-author-time permanently 9.16 Signature.el 9.17 Tc.el, a lightweight to supercite 9.18 TinyMail.el, email minor mode + email notification package 9.19 TinyRmail.el, additional RMAIL utilities 9.20 Unmunge.el 9.21 Vm-complain.el, send spam complaint 10.0 Mime 10.1 Mime package setups, articles or pages 10.2 Rmime.el 10.3 Tm.el 10.4 Semi and apel 10.5 Extra tools for mime viewers 11.0 WWW 11.1 Apache-mode.el 11.2 Browse-help.el, WWW context-sensitive help 11.3 Css-mode.el, Cascading style sheet handling 11.4 Emacs-wiki.el, Emacs-friendly markup 11.5 Hbmk.el, Manage bookmarks in HTML 11.6 Html menus, write html page 11.7 Html-helper-mode.el - Visual basic, ASP, JSP 11.8 Html-toc.el 11.9 Htmlize.el, font-lock to html converter (*), XEmacs 11.10 Httpd.el, Emacs inetd webserver 11.11 Iso-sgml.el 11.12 Mkhtml.el, Create HTML with links 11.13 Psgml-mode.el, HTML, XML, SGML (*) 11.14 Psgml extension 11.15 Quickurl.el, insert URL at point 11.16 TinyUrl, url finder minor mode 11.17 Watson.el, query search engines 11.18 Web-mode.el, cvsweb 11.19 Wup.el, web page distribution 11.20 XAE, XML Authoring Environment 11.21 Xml-lite.el, an indentation-engine for XML 11.22 XSLT (Apache Xalan) 12.0 Version control 12.1 Version control books 12.1.1 RCS Books 12.1.2 CVS Books 12.2 Comparision of version control sotfware 12.3 CVS software 12.4 CVS and Emacs 12.5 Installing CVS to NT Emacs 12.5.1 INTRODUCTION 12.5.2 THE DISTRIBUTION 12.5.3 INSTALLATION 12.5.4 USING CVS UNDER EMACS 12.6 Accurev software 12.7 Clearcase software 12.8 RCS software 12.9 PRCS, Project Revision Control System 12.10 PCVS 12.11 StarTeam source control system 12.12 Perforce P4 revision control software 12.12.1 Comments 12.13 Starteam.el, VC-type mode for StarTeam 12.14 WinNT MKS Source Integrity revision control software 12.15 Visual SourceSafe 12.16 Razor 12.17 BitKeeper 12.18 Version control articles 12.19 SCM Continuous Change Management 12.20 SCM CodeSave 12.21 SCM, Software Configuration Management links 13.0 Programming 13.1 Ascii.el 13.2 C and Java code browser (Xref-Speller) 13.3 C-mode-addons.el, some addon functions for c-mode 13.4 C-includes.el 13.5 Cc-mode (*) 13.6 Cc-mode with correct tab-indent 13.7 Cc-tempo-electric.el 13.8 Cperl-mode.el (*), [X]Emacs 13.9 Delphi mode 13.10 ECB, Emacs code Browser 13.11 EDE, Emacs development environment 13.12 Eiffel-mode.el 13.13 Else-mode.el, language sensitive editing package 13.14 Glasses.el, MakeThis Make_This 13.15 IDL Interactive Data Language (*) 13.16 Java buffi.el, compile multiple java projects 13.17 Java Expert System Shell (jess-mode) 13.18 Java Jdok.el, Javadoc template generator 13.19 Java-Find.el, find and visit Java source files 13.20 Java-Font-Lock20.el 13.21 Javahelp.el, Contextual java help 13.22 Jcall.el, call Java from Elisp 13.23 Jde.el, Java Development Environment (JDE or JDEE) 13.24 Java-open.el 13.25 Java Template, jtemplate.el 13.26 Lazy-look.el, context-sensitive language help 13.27 Lisp variants 13.28 Macro mode m4 (*) 13.29 Maplev.el, Maple code 13.30 Mathlab-mode.el 13.31 M56k.el, mode for Motorola's DSP56300 assembly code 13.32 Multiple major modes in same buffer 13.32.1 mml.el 13.32.2 mml.el 13.32.3 multi-mode.el 13.32.4 two-mode.el 13.33 OO-Browser 13.34 Showing tabs in buffer 13.34.1 Ascii-display.el 13.34.2 Tab-display.el 14.0 Lisp programming 14.1 Writing portable XEmacs and Emacs code 14.2 Autolisp.el, edit AutoCAD AutoLISP files 14.3 Bm-hcmplt.el, facility to display descriptions of completions 14.4 Checkdoc.el (*), Emacs 14.5 Cl-array.el, CL's multi-dimensional arrays 14.6 Closure.el (*), Emacs 14.7 Crm.el, completing read multiple 14.8 Eieio, subset of CLOS (Common Lisp Object System) 14.9 Elder.el, emacs lisp document writer 14.10 Eldoc.el, show Emacs lisp function arglist (*), [X]Emacs 14.11 Elint, Emacs lisp syntax checker 14.12 Ell.el, Browse the Emacs Lisp List 14.13 Elp.el, emacs lisp profiler (*), [X]Emacs 14.14 Eval-expr.el, Better eval expression prompt 14.15 Extre.el, extended regular expression syntax support 14.16 Find-func.el, find func definition near point (*) [X]Emacs 14.17 Getdoc.el 14.18 Gnueval.el, fill out GNU evaluation form 14.19 Hyperspec.el, browse Common Lisp specs 14.20 Ilisp.el, Inferior Lisp replacement 14.21 Lisp-index.el, Index Lisp files, with descriptions 14.22 Lispdir.el 14.23 Regexp-opt.el (*), Emacs 14.24 Minibuffer-complete-cycle.el, cycle Completion buffer 14.25 Obarray-fns.el, obarray-manipulating routines 14.26 Regress.el 14.27 Require statement tracing 14.28 Run-command.el, lib for running external commands 14.29 Sregex.el (*) 14.30 Texidoc.el, have texi embedded in defvar 14.31 Timerfunction.el 14.32 Tmenu.el, a text based interface to the menubar 14.33 Working.el, show progress while working 14.34 Xray.el, display internal object structures 15.0 Modes 15.0.1 Mason-mode.el 15.1 PHP modes 15.2 Project-am.el, a project mode for emacs based on automake 15.3 Ps-mode.el, mode for editing postscript code 15.4 Tmmofl.el, toggles other minor modes based on font lock info 15.5 Sawmill.el 15.6 SML-mode.el 15.7 Verilog-mode.el 15.8 Winmgr-mode.el, generic window manager mode 15.9 W32-help.el 16.0 Shell 16.1 ANSI-color.el, translate ANSI into text-properties (*) 16.2 Dircolors.el, provide the same facility of ls --color inside emacs 16.3 Eshell.el, Emacs shell 16.4 Fshell.el 16.5 Mode-compile, remote compilation 16.6 Which.el, where is command 17.0 Processes 17.1 Analog.el, monitor lists of files or command output 17.2 Df.el, show disk usage 17.3 Run-command.el, running external commands 17.4 Top.el, running top(1) in emacs window 17.5 Wget.el, wget interface for emacs 18.0 Networking and Clients 18.1 AIM - AOL Instant messenger 18.2 Dig.el, Domain Name System dig interface (*), Gnus 18.3 Firewall.el, A tunnel for network connection 18.4 ICQ - I Seek You, XEmacs and Linux ONLY (eicq) 18.5 Junkbust.el, configuring the Internet Junkbuster Proxy 18.6 Lookup.el, electronic dictionaries 19.0 System files 19.1 Protocols.el, reading the contents of /etc/protocols 19.2 Services.el, reading the contents of /etc/services 20.0 Find-file, ftp, ssh 20.1 Iman.el, man and info page completion 20.2 Efs, successor to ange-ftp (*). XEmacs only 20.3 Filecache.el, files using a pre-loaded cache 20.4 Fff.el, fast file finder 20.5 Ff-paths.el, searches certain paths to find files 20.6 Tramp.el, transparent remote accs, ssh 21.0 Dired 21.1 Dired-a.el, extensions to dired 21.2 Dired-single.el, reuse the current dired buffer 21.3 Js-dired.el, lisp ls emulation for win32 21.4 Browsing ls-lR 21.5 Mc.el, Midnight commander emulation 21.6 Md5-dired.el, make dired sensitive to file changes 21.7 Dired-dd.el, Dired Drag and Drop 21.8 Dired-single.el 21.9 Dired-sort.el, sort by date-type-size-field 21.10 Dired-sort-menu.el, 21.11 Dired-tar.el 21.12 Wdired.el, rename files in dired 22.0 Compression and cryptography 22.1 Browse-tar.el 22.2 Crypt++ 22.3 Mailcrypt.el (*) 22.4 Mc-safe-sign-message.el 22.5 Ssl-hacks.el 22.6 TinyPgp.el 23.0 Tags 23.1 Sure-tags.el 24.0 Backup 24.1 Auto-save.el (*) 24.2 Backup-dir.el, place backups to separate dir (*) 24.3 Backup-subdir.el, backup files in separate directory 24.4 Ebackup.el, Enhanced backup operation for Emacs 25.0 Drawing 25.1 Artist.el, hi-tech character based drawing package 25.2 Boxquote.el, wrapping text 25.3 Gnuplot.el, mouse driven GUI for gnuplot program 25.4 Rebox.el, Handling of comment boxes in various styles 25.5 Rect-mark.el, deleting-manipulating-moving rectangles 25.6 Table.el, 26.0 Writing, reading and modifying documents 26.1 AUCTeX 26.2 Auto-capitalize.el, capitalize the first word 26.3 Auto-correcting words 26.4 Clipper.el, save strings of data for further use 26.5 Blank-mode.el, Minor mode to visualize whitespace 26.6 Deleting text 26.6.1 General deleting utilities 26.6.2 Deleting whitespace 26.7 Dict.el, retrieving definitions of words 26.8 DocBook IDE 26.9 Faq-mode-el, reading faqs 26.10 Flyspell.el and Ispell (*) 26.11 Glyph-highlight.el, display non-ascii chars 26.12 Ietf.el, IETF Document Retrieval 26.13 Longlines.el, automatically wrap long lines Some text 26.14 Maniac.el, fill like maniac 26.15 Mult-press.el, home, end key-magic 26.16 Pc-keys.el, Smart home and end keys 26.17 Rewrite.el, rewrite text files with regexps 26.18 RFC.el 26.19 Rfc-page.el 26.20 Rfc-util.el, RFC-util interface for emacs 26.21 Rfcview.el, view IETF RFCs 26.22 Translation.el, translation minor mode 26.23 QA.el 26.24 TinyTf.el, white paper minor mode 26.25 Templates: tempo, skeleton, expand, dmacro 26.26 Extra tools for document handling 27.0 Organizing content 27.1 Bookmark-menu.el, setup a menu of bookmarks 27.2 Desire.el, Emacs startup file organir 27.3 Esheet.el, Emacs spreadsheet 27.4 Hideshow.el, display blocks of code (*), [X]Emacs, Emacs 27.5 Hier-imenu.el, Hierarchical index menu for emacs 27.6 Folding.el, keep your text or code organised (*), XEmacs 27.7 Outline modes 27.8 Outline-imenu.el 27.9 SES, Emacs spreadsheet 28.0 Tracking changes 28.1 Autorevert.el (*), Emacs 28.2 Blinking-cursor.el (*), XEmacs 28.3 Change-mode.el, changes made get highlighted (*) 28.4 Csdiff.el, component software diff 28.5 Etail.el, tail -f 28.6 Himark.el 28.7 Hi-lock.el, highlight words (*), Emacs 21 28.8 Highlight-current-line.el 28.9 Hl-line.el, highlight the current line (*), Emacs 28.10 Highline.el, Minor mode to highlight current line in buffer 28.11 Linemenu.el, highlight current line 28.12 Live-mode.el, periodically revert-file 28.13 Mic-paren.el, highlight sexps (*), Xemacs 28.14 Notes-mode.el, indexing system for on-line note-taking 28.15 Records.el 28.16 Remember.el, mode for remembering data 28.17 Simplemerge.el, resolving CVS conflicts (*), Emacs 28.18 Tail.el, tail -f 28.19 Tinymy.el, y-or-n-p autorevert by timer process 28.20 Time - Timecard-mode.el 28.21 Time - Timeclock.el (*) 28.22 Time - Timelog.el 28.23 Todoo.el, editing todo files 28.24 Todo-mode.el (*), Emacs 28.25 Worklog-mode.el, keep track of stuff you do 28.26 X-symbol (*), XEmacs 29.0 Buffers 29.1 A day with buffers 29.2 Popup menu based buffer selection utilities 29.3 Typing buffer name in echo area 29.4 Buffer utilities 29.5 Rolling buffers in same window 29.6 Window selecting utilities 29.7 Demax.el, Delete too narrow windows 30.0 Desktop 30.1 Overview of to state change packages 30.2 Desktop.el and extensions to it 30.3 Grabbox.el, project bookmarks 30.4 Protbuf.el, protect buffers from accidental killing 30.5 Session.el 30.6 TinyDesk.el, simple file and dir information saver 30.7 Windows.el 31.0 Screen and window 31.1 Escreen.el, mimic sun's screen(1) 31.2 Follow-mouse.el 31.3 Resize-help-window.el 31.4 Screen-lines.el, minor mode 31.5 Screenlines.el 31.6 Winner.el, restore old window configurations 31.7 Winring.el, Window configuration rings (*), Emacs 20.4 32.0 Mouse 32.1 Mouse-copy.el 32.2 Mouse-extra.el, one-click text copy and move 32.3 Strokes.el, mouse stroke commands (*), XEmacs 32.4 Xt-mouse.el, mouse support for non-windowed emacs (*), [X]Emacs 33.0 Amusement 33.1 Ascii animation 33.2 Comics.el, read www.comics.com 33.3 Elite game 33.4 Faith.el, Spread the word of Emacs 33.5 Thinks.el, draw bubbles 33.6 Zone.el, screen saver 33.7 Paperclip-mode.el 34.0 Music 34.1 Cddb.el, CD DataBase interface 34.2 Cda.el, interface to CD players 34.3 Cdrw.el, frontend to various commandline CDROM 34.4 Mp3-tools.el A simple Linux MP3 Tag Editor 34.5 Mp3player.el, Interface to mpg123 34.6 Workbone.el, CD player for program workbone 35.0 Miscellaneous 35.1 After-save-commands.el, update xrdb(1) after save 35.2 Align.el (*) 35.3 Apm.el, Power Management From Within (X)Emacs 35.4 Archie.el, archie server search 35.5 Autoarg.el, easy arguent passing to commands 35.6 Auto-arg.el, passing arguents easily to commands 35.7 Bm-man.el, unix man page completion 35.8 Buffer-perm-map.el 35.9 C-comment-edit2.el 35.10 Calc.el 35.11 Calculator.el, A simple pocket calculator for Emacs 35.12 Color-mode.el 35.13 Color-themes.el, preview and install color themes 35.14 Comment.el 35.15 Cib.el, Complete into Buffer for Emacs 35.16 Complete-menu.el, complete items from x-popup 35.17 Ctypes.el, custom defined types for font lock 35.18 Dekeys, disable and enable keys without modifying keymaps 35.19 Diminish-mode.el, modeline display help 35.20 Etalk, run talk(1) in emacs buffer 35.21 File-log.el, keep change information for each file. 35.22 Gdialog.el, Widget frontend for directory-recursive text searches 35.23 Igrep.el, an improved interface to grep 35.24 Initsplit, code to split customizations into different files 35.25 Irc, internet relay char system (*) 35.26 Ishl.el, incremental search highlighting (*), Emacs 35.27 Lprint, print to your local printer 35.28 Mathlab.el 35.29 Master.el, scroll other buffer 35.30 Mss.el, Make smart Win32 shortcuts 35.31 Multi-term.el, manage multiple term buffers 35.32 Narrow-stack.el, recursive narrow 35.33 Next-screen-line.el, Move logical next line even if long display 35.34 Pager.el, Keep page up and down position 35.35 Pcomplete, context aware complete 35.36 Power-macros.el, assign macro to key 35.37 Printing.el, Printing utilities. 35.38 Redo.el, Redo/undo system (*), XEmacs 35.39 Rpm.el, Redhat Linux package browser 35.40 Rpm for Mandrake 35.41 Rpm-spec-mode.el 35.42 Setnu.el, permanent line numbers (*), XEmacs 35.43 Sql modes 35.44 Sqlplus-html.el, Render SQL*Plus HTML output on-the-fly. 35.45 Tablature-mode.el 35.46 Vi-dot.el, repeat the preceding command 36.0 Ported xemacs or emacs packages 36.1 Crisp.el, xemacs brief editor emulation 36.2 Pc-select.el, select region with cursor keys (*), Emacs 36.3 Ffap.el, find file at point (*), Emacs 36.4 Printing.el 36.5 Print - a2ps-print.el 36.6 Ps-print.el, print font lock color buffers (*) 36.7 Ps-print-interface.el 36.8 Uptimes.el, Emacs uptime 37.0 Emulation packages 37.1 Cua.el, Windows key-bindings 37.2 Fsf-mouse.el, FSF mouse emulation in XEmacs 37.3 Fsf-compat, FSF function library in XEmacs 38.0 Ancient packages or included in Emacs 38.1 Browse-url.el, delegate url to www browsers (*) 38.2 Custom.el (*), Emacs and XEmacs 38.3 Fdb.el, ignore emacs error signals 38.4 Filladapt.el, adaptive filling 38.5 Mview.el, view minor mode 38.6 Suggbind.el, keybind command reminder 38.7 Smtpmail.el (*) 38.8 Supercite.el, mail citing package (*) 38.9 Term.el (*) 38.10 W3.el browser (*) 39.0 Directory listings of site-lisp 39.1 File structure 2001-01 39.2 File structure 2000-11 39.3 File structure 1999 39.4 Old structure of simple ~/elisp Emacs first aid o _Ell_ In addition to this page, a concise package list can be found from Stephen's Emacs Lisp List page at http://www.anc.ed.ac.uk/~stephen/emacs/ell.html o Emacs Wiki at http://www.emacswiki.org/ Full link list http://www.emacswiki.org/cgi-bin/wiki.pl?action=links&url=2 o Emacs Gnus community at http://my.gnus.org/ o Lisp archive project at lisp package page at http://www.lispmeralda.org/ and http://www.elisparchive.net/ o Newsgroup archives at http://groups.google.com/groups?group=comp.emacs and `news.gnus.org' (aka. Quimby) has a full gnu.* feed. No expiry is done one these groups, so they can be used if you're looking for old articles. o _Sourceforge_ Emacs projects. All the sourceforge projects have ftp area where you can pick the packages. The best method is to use CVS access for easy and efficient update. Learn more about CVS at http://www.cvshome.com/ Here is link to all Sourceforge projects: ftp://download.sourceforge.net/pub/sourceforge/ o _Savannah_ mimics the sourceforge for GNU projects at http://savannah.gnu.org/ o EmacsLisp Org. http://www.emacslisp.org/ o Dot Emacs home http://www.dotemacs.de/ o Emacs com. There is NO EMACS SITE at -http://www.emacs.com because it is owned by "Zippy Technology" Emacs webring Formerly Emacs webring was hosted in Yahoo by Christoph Conrad and Ingo Koch. The current Emacs webring is hosted at http://www.gnusoftware.com/Emacs by Steve Kemp. 2.0 General information 2.1 Free software pointers o _Open_ _Source_ - Free Redistribution. http://www.opensource.org/ and http://opensource.oreilly.com/ o _GPL_ - GNU General Public License http://www.gnu.org/copyleft/gpl.html o _LGPL_ Gnu Lesser General Public License http://www.gnu.org/copyleft/lesser.html o _Perl_ _Artistic_ License http://language.perl.com/misc/Artistic.html o _OPL_, Open Publication License http://www.opencontent.org/ o Papers for _granting_ _copyright_ to FSF ftp://ftp.xemacs.org/pub/xemacs/beta/FSF/ Or Phone to FSF office: +1 617 542 5942 o _GNU_ documentation for Bison, bash, cpp, gzip, make, rcs... See http://www.gnu.org/software/software.html and http://www.aps.anl.gov/helpdocs/gnu/contents.html and http://www.delorie.com/gnu/docs/GNU/ o _Opinions_ on various licenses and terms. See paper that discusses GPL vs. BSD at http://www.gnu.org/philosophy/bsd.html and http://www.osopinion.com/Opinions/DaveStanley/DaveStanley1.html Open source or Free Software? See http://www.gnu.org/philosophy/free-software-for-freedom.html A very good article titled "LinuxMonth: Open Source Licenses Explained" at http://linuxtoday.com/ or full article at http://linuxtoday.com/news_story.php3?ltsn=2000-12-31-006-04-OS-CY 2.2 Free Software articles "Richard Stallman (aka RMS), The saint of free software" http://www.salonmagazine.com/21st/feature/1998/08/cov_31feature.html Article by Andrew Leonard under salon@salonmagazine.com. Quotes used by permission of Andrew. ... But Stallman just doesn't care about pragmatic arguments - he declares he would prefer to use a free software program even if it wasn't the best solution for his needs. His stance makes some factions of the burgeoning "open source" community uncomfortable - so uncomfortable, in fact, that the very choice of the name "open source" demonstrates an attempt to distance those factions from the unsavory radicalism of Richard Stallman ..."The reason I care especially," said Stallman, "is that there is a philosophy associated with the GNU project" "Richard Stallman (aka RMS), The saint of free software (redux)" http://www.salonmagazine.com/21st/feature/1998/09/11feature.html Article by Andrew Leonard under salon@salonmagazine.com. Quotes used by permission of Andrew. ...Last week, I profiled Richard Stallman, a central figure in the ongoing saga of the free software movement. Within minutes of the publication of the story, "The saint of free software," my e-mailbox began filling up with a provocative outpouring from Stallman's colleagues, friends and enemies. "An Ode to Richard Stallman" Linux Gazette issue #37 1999-02 By Stephen Adler . Quotes used by permission of Stephen. http://www.linuxgazette.com/issue37/adler.html ...Jay begins. He tells us a story about how the free software movement started with Richard. Back some time ago at the MIT software labs, Richard was trying to print to some ding doing printer and couldn't. There was a software bug which stood between him and his printout. Richard wanted to solve the problem by getting the source code and fixing it. He couldn't, the source code was not available and more important, could not be made available because the company who sold MIT the printer would not hand over the code. The code was locked up behind legal doors and Stallman was not going to be able to solve this problem. Thus the beginning of the free software movement which has evolved into what we know today. ...[Stallman] The free software effort is about freedom, not software which costs nothing. A freedom which goes beyond source code and into the way we interact as a community. Free software is a manifestation of this freedom and is an example of it. I think it's best to see this in the opposite sense. When you are encumbered with software which you cannot change, even if you have the source code in front of you but are not allowed legally to change and distribute the changes, then your personal, inherent freedom has been taken from you. "More Articles on Richard Stallman" .http://segfault.org/search.phtml?mode=2&text=stallman .http://linuxtoday.com/search.php3?query=richard+stallman "Philosophy" http://www.gnu.org/philosophy/philosophy.html http://www.dejanews.com/ Group: gnu.emacs.help Date: Jun 6 1998 Subject: non-free documentation and GNU groups Search: FSF o Articles concerning free software or Emacs documentation. See Thread starting with Barry Margolin 1998/11/17 which says that non-free software should not be advertised in GNU groups o Thread about non-free _advertising_ in Gnu groups. ...Non-free Emacs documentation publishers should say in the cover of the book that with Emacs they get free docs already: 2.3 Other documents "Netiquette" http://www.albion.com/netiquette/book/ WWW version of the book Netiquette by Virginia Shea, published by Albion Books .#URL-HOME/emacs-keys.html - Key binding help file .#URL-HOME/emacs-package-make.html - Checklist for making elisp packages .#URL-HOME/emacs-font.html - Fontifying/Faces article file .#URL-HOME/emacs-code.html - My personal thoughts about Emacs lisp 2.4 Jokes 2.4.1 The Word Emacs In the early days, when memory was tight and machines slow people got upset how much memory Emacs used. And it still uses all the memory it can get if you use GNUS with unlimited cache setting. You heard this a lot back then. And no wonder Emacs uses so many key combinations, because Emacs is actually.... [this is from Gnus manual...] What the word in reality means, is explained in the Emacs FAQ. See also the Emacs distribution and file `etc/JOKES'. Q: What does the word "EMACS mean again?" A: "Eight Megabytes And Constantly Swapping" (E)macs (M)akes (a) (C)omputer (S)low (E)scape-(M)eta-(A)lt-(C)ontrol-(S)hift 2.4.2 New commands in Emacs 2000-12-03 gnu.emacs.help thread under subject "Re: Gnu Emacs 21?", participating writers Eli Zaretskii, Andre Spiegel, Stefan Monnier, Kai Großjohann and the answering guy: Per Abrahamsen I need to graduate sometime With sufficient Emacs training, you will gain access to command: M-x write-thesis RET Err... I cannot find that in the manual... What does this command do when invoked with a prefix argument? I am also confused about the implementation of this command. How is the interaction between the supervisor and student simulated in lisp? And what function does emacs use to emulate extracting that last chapter before the deadline from the student, and the student getting the supervisor to actually read the damn thing. I tried an apropos search for "thesis-blood-from-stone" but got nothing.... Without a prefix argument, it writes a master's thesis. You get a PhD thesis when you invoke it with a prefix argument, and as far as I recall, the quality of the resulting work can somehow be tuned by using numeric arguments. However, to avoid flooding the libraries on earth, I have heard that the command can only be invoked exactly once per user. Yes. You can imagine my dismay when I accidentally typed `M-x' `write-thesis' `RET' rather than the intended `M-x' `write-the-sis' `RET'. Perhaps when 21 is released I will get another shot. It is simply crushing to think I may have to write a thesis the old-fashioned way. Don't just whine about it here! Submit a bug report with M-x report-emacs-bug RET If you find some point of the documentation lacking or unclear. How do you expect the Emacs documentation ever to improve if the users are too lazy to even report the bugs and deficits they encounter? Sheesh, kids these days, they expect everything to be prepared for them, and have no sense of giving back! When *I* was young, we didn't ask what Emacs could do for us. We asked what we could do for Emacs. Kids of today could learn *a lot* from that! What does this command do when invoked with a prefix argument? What does the command do if you call it programmatically? Writes multiple theses, of course. What did you expect? Please read tutorial (type `C-h' `t') before bothering with such elementary questions. Each message costs the net hundreds if not thousands of dollars. (Poor fellow replied...) And you there, yes, you man. Don't attempt to answer a question when you obviously haven't a clue. Maybe you "tested" the command, and it did as you said, but that is just an accident. The type of thesis generated depends on 1) the previous generated thesis[1], and 2) an examination of the content of all the files the user have opened with Emacs[2]. It is not like the command is magic or anything. _Footnotes:_ [1] So if the previous generated thesis was a Master Thesis, the next will default to a PhD. Thesis. [2] So use W3 to read as many relevant online articles as possible, before invoking the command. And *don't* browse for porn unless that is what you want to graduate in. What a stupid user interface. Maybe you elders were content with something like that, but it is certainly not the type of thing users would expect in the 21st century. I bow before the enormous wisdom that must have gone into M-x write-thesis, but we need to find a way to use it effectively. What if I need to write multiple Master's Theses before embarking on my first PhD? And what if I write multiple PhD theses, and then again, a Master's Thesis to qualify for yet another PhD? Clearly, these possibilities weren't considered at all when designing the user interface of M-x write-thesis; you elders were content with that simplistic default mode (and DON'T tell me that I just need to hack a few lisp expressions to get what I want. I'm not attempting to write a PhD about EMACS, and besides I've got other things to do than spending hours or even days for writing a thesis!). When Emacs prompt you with: Thesis level (default `Master'): press TAB to see a list of available choices, then type the name of the one you prefer. You can use TAB to complete the answer after typing a unique prefix, or (I know you young ones love this) choose an answer by clicking the middle button while the mouse pointer is above the answer in the *Completions* buffer. If you don't have a mouse and are afraid to type, you can even switch to the *Completions* buffer, move the cursor to the answer, and press RET to select it. Isn't that amazing! I don't see how using the prefix argument to write multiple theses makes any sense at all. By what do these theses differ, then? They are all based on the currently loaded buffers, no? So am I supposed to actually READ them and find out which I like most or what? And what if I write multiple PhD theses, and then again, a Master's Thesis to qualify for yet another PhD? I suggest using the prefix argument to distinguish between a Master's Thesis and a PhD Thesis, period. Very simple, very easy to understand. Just a pity that this change won't make it into Emacs 21.1 anymore, as we're already too late in the pretest. This would make it inconsistent with `self-insert-command'. Or do you propose that `self-insert-command' should be modified as well, so the prefix argument changes the inserted character? I can see it now, `C-u' `2' `i' inserts `k', `C-u' `-' `2' `i' inserts `g'. _Another_ _choice:_ Switch to *XEmacs*, and you'll have it. The code has been written since Emacs 18.62, but GNU refused to accept it because `M-x' `write-thesis' won't print the standard GPL blurb before the thesis and the assignment paper after it... I wonder how do I choose between *roff and LaTeX as the thesis format? Hm. [time passes] Ah, see the variable `write-thesis-format'. Just a warning, it doesn't work if you set it directly. Either call `set-thesis-format' from your .emacs, or set the variable with Customize. [Q1] All this stuff seems to be very complicated to a beginner like me. Anybody can send me some code to put a easily accessible menu option to write my thesis? I don't see the point in spend time learning new key-combos and writing things only to write my thesis. Just two mouse clicks should be enough (or one, with the new buttons of the GNU Emacs 21). [Q2] I remember a neat hack floating around that allowed you to specify the subject with a prefix argument, in case you've browsed too much crappy sites. But _deja_ of course doesn't have the article any more. Anybody still has it somewhere ? Prefix argument... sigh. Not me, but the _standard_ thesis package has `thesis-ignored-buffers', which is a regexp of buffer names that will be ignored when writing the thesis. 2.5 GNU Emacs o _Homepage_ http://www.emacs.org/ (Contact ) and http://www.gnu.org/gnulist/production/emacs.html and http://www.gnu.org/software/emacs/emacs.html The Project Leader is Gerd Moellmann at Report Development bugs to o _Download_ at ftp://ftp.gnu.org/gnu/emacs o Official GNU Emacs _FAQ_ at http://www.faqs.org/faqs/GNU-Emacs-FAQ/ ftp://the-tech.mit.edu/pub/GNU-Emacs/faq and ftp://rtfm.mit.edu/pub/usenet/comp.emacs/ and o _CVS_ server access instructions CVS from http://savannah.gnu.org/projects/emacs/ cvs -d :pserver:anoncvs@subversions.gnu.org:/cvsroot/emacs login password: [press enter] cvs -d :pserver:anoncvs@subversions.gnu.org:/cvsroot/emacs co emacs o Emacs 21 press release at http://www.gnu.org/press/2001-10-22-Emacs.html 2.6 GNU Emacs history See Richard Stallman's Personal Homepage at http://www.stallman.org "Why GNU?"_ See whole article at http://www.mandrakeforum.com/article.php3?sid=20001222092909 Article by Denis Havlik published under mandrakeforum.com. Quotes used by permission of Denis. "First part of the speech was "why did I start GNU project" info. Official RMS biography only says: Stallman graduated from Harvard in 1974 with a BA in physics. During his college years, he also worked as a staff hacker at the MIT Artificial Intelligence Lab, learning operating system development by doing it. He wrote the first extensible Emacs text editor there in 1975. In January 1984 he resigned from MIT to start the GNU Project. Without stating the REASON why he left the MIT lab and started GNU project." "When Richard M. Stallman started his programmers career, world of programming was much different from what it looks like today: back then, ND-agreements and shrink-wrap licenses simply didn't exist, and sharing code was considered normal behavior. Then someone came to idea that he can make a lot of money by NOT sharing the source code, and started the avalanche which ultimately led to Single-click patent and UCITA. The form in which RMS first encountered this brave new world for the first time was somewhat bizarre: Xerox donated a laser printer to the MIT lab he worked in, and this printer was controlled by proprietary software. This printer was great, but it often jammed, and "no source" meant that they had no way of implementing the "printer jammed" warning as they did for other printers, used in the lab. As you can imagine, walking up and down or camping next to printer turned out into a somewhat annoying experience... Worse yet, some time later, Stallman actually met a college which had source code of printer controlling software, and refused to share it because he signed the NDA! Instead of accepting this bizarre situation as "normal", RMS turned around, quit the job at MIT and started the GNU project. (the rest is a history)" "EMACS: The Extensible, Customizable Display Editor" ftp://ftp.dl.ac.uk/pub/fx/emacs/emacs-AI-memo/ by Richard M. Stallman 1981-03-26 "(TECO) Multics Emacs: The History, Design and Implementation" http://www.multicians.org/mepap.html "AI memo 519a describing the early development of Emacs." "EMACS: The Extensible, Customizable Display Editor" by Richard M. Stallman 1981-03-26 ftp://ftp.dl.ac.uk/pub/fx/emacs/emacs-AI-memo/AI-519a.html "Biography of Guy Steele who designed the original Emacs" Guy is also the author of book "Common Lisp the Language, 2nd Edition". The bio used to be located at -http://www.cs.utah.edu/dept/organick/past/GLSbio.htm Current location unknown, so the text has been copied here. _About_ _Guy_ _L._ _Steele_ _Jr._ Guy L. Steele Jr. is a Distinguished Engineer at Sun Microsystems, Inc. He received his A.B. in applied mathematics from Harvard College (1975), and his S.M. and Ph.D. in computer science and artificial intelligence from M.I.T. (1977 and 1980). He has also been an assistant professor of computer science at Carnegie-Mellon University; a member of technical staff at Tartan Laboratories in Pittsburgh, Pennsylvania; and a senior scientist at Thinking Machines Corporation. He joined Sun Microsystems in 1994. He is author or co-author of five books: Common Lisp: The Language (Digital Press); C: A Reference Manual (Prentice-Hall); The Hacker's Dictionary (Harper & Row), which has been revised as The New Hacker's Dictionary, edited by Eric Raymond with introduction and illustrations by Guy Steele (MIT Press); The High Performance Fortran Handbook (MIT Press); and The Java Language Specification (Addison-Wesley). He has published more than two dozen papers on the subject of the Lisp language and Lisp implementation, including a series with Gerald Jay Sussman that defined the Scheme dialect of Lisp. One of these, "Multiprocessing Compactifying Garbage Collection," won first place in the ACM 1975 George E. Forsythe Student Paper Competition. Other papers published in Communications of the ACM are "Design of a LISP-Based Microprocessor" with Gerald Jay Sussman (November 1980) and "Data Parallel Algorithms" with W. Daniel Hillis (December 1986). He has also published papers on other subjects, including compilers, parallel processing, and constraint languages. One song he composed has been published in CACM ("The Telnet Song", April 1984). The Association for Computing Machinery awarded him the 1988 Grace Murray Hopper Award and named him an ACM Fellow in 1994. He was elected a Fellow of the American Association for Artificial Intelligence in 1990. He led the team that received a 1990 Gordon Bell Prize honorable mention for achieving the fastest speed to that date for a production application: 14.182 Gigaflops. He was also awarded the 1996 ACM SIGPLAN Programming Languages Achievement Award. He has served on accredited standards committees X3J11 (C language) and X3J3 (Fortran) and is currently chairman of X3J13 (Common Lisp). He was also a member of the IEEE committee that produced the IEEE Standard for the Scheme Programming Language, IEEE Std 1178-1990. He represents Sun Microsystems in the High Performance Fortran Forum, which produced the High Performance Fortran specification in May, 1993. He has served on Ph.D. thesis committees for eight students. He has served as program chair for the 1984 ACM Lisp Conference and for the 15th ACM POPL conference (1988) and 23rd ACM POPL conference (1996); he also served on program committees for 30 other conferences. He served a five-year term on the ACM Turing Award committee, chairing it in 1990. He served a five-year term on the ACM Grace Murray Hopper Award committee, chairing it in 1992. He has had chess problems published in Chess Life and Review and is a Life Member of the United States Chess Federation. He has sung in the bass section of the MIT Choral Society (John Oliver, conductor) and the Masterworks Chorale (Allen Lannom, conductor) as well as in choruses with the Pittsburgh Symphony Orchestra at Great Woods (Michael Tilson Thomas, conductor) and with the Boston Concert Opera (David Stockton, conductor). He has played the role of Lun Tha in The King and I and the title role in Li'l Abner. He designed the original EMACS command set and was the first person to port TeX. At Sun Microsystems he is responsible for research in language design and implementation strategies, and architectural and software support, and for the specification of the Java programming language. 2.7 XEmacs - Emacs the next generation Send patches to: . Rsync service is available. Try "rsync rsync.xemacs.org::" for more about the service, visit http://www.xemacs.org/Download See Q1.1.2 in FAQ for Beta tester mailing lists: with BODY subscribe with BODY subscribe o _Homepage_ http://www.xemacs.org/ Mirror sites http://www.xemacs.org/Download/ Ftp area ftp://ftp.xemacs.org/pub/xemacs/packages/ CVS information at http://cvs.xemacs.org/#committers o XEmacs _betas_ ftp://ftp.xemacs.org/pub/xemacs/beta/ o XEmacs _FAQ_ http://www.xemacs.org/faq/xemacs-faq.html and Hyperachive at http://www.xemacs.org/list-archives/ o _Xemacs-L_ Mailing lists. Send an email message to with the magic word `lists' in the body for a complete list of available mailing lists. subscribe list [address] o _Ben_ _Wing_ - The architect of XEmacs 20.x line http://www.666.com/xemacs/ o Erik Sundermann's XEmacs Customization Page http://petaxp.rug.ac.be/~erik/xemacs/ o Robin Socha's EXCELLENT XEmacs page http://socha.net/XEmacs/ o List of XEmacs packages and _maintainer_ _info_ ftp://ftp.xemacs.org/pub/xemacs/packages/package-index.LATEST.pgp o NT Win32 XEmacs versions (=> See Win32 Emacs section) o _CVS_ access cvs -z3 -d :pserver:xemacs@cvs.xemacs.org:/usr/CVSroot checkout \ -d xemacs-21.2 -r release-21-2 xemacs o You can Upload to ftp://ftp.xemacs.org/xemacs/beta/incoming/ and use the Lisp Packaging system with: (setq package-get-remote '(("ftp.xemacs.org" "xemacs/beta/incoming"))) 2.8 Emacs or XEmacs future plans There has been talk on making `let' to work like in modern languages, i.e. binding variables locally(lexical scoping), and making Elisp mode line Common Lisp, possibly replacing Elisp altogether. It's big a task and won't happen soon, but it is on the sketch board. o Lisp Engine Changes, Implementation of a Lisp Engine Replacement http://www.xemacs.org/Architecting-XEmacs/index.html o Perlmacs - Perl as Emacs extension language http://www.perl.com/CPAN/authors/id/JTOBEY/ and http://search.cpan.org/search?distEmacs-PerlmacsPatch [Comment from the DING-L] ...Scary. manipulate a buffer in Perl, you either have to call the lisp routines, or use buffer-string to convert the buffer to a string that Perl can use, which is ... icky. But what worries me more is I'm not clear on how safe the wedding is. like, I don't know if things work right if you 'die' out of a Perl function called from a lisp function called from a Perl function. and the intertwined garbage collection is a mess. 2.9 Emacs and XEmacs compatibility issues About Emacs package *easy-mmode.el* Incompatible re-implementation of XEmacs `add-minor-mode', see article http://www.xemacs.org/list-archives/xemacs-beta/199908/msg00701.html and article http://www.xemacs.org/list-archives/xemacs-beta/199908/msg00706.html and article http://www.xemacs.org/list-archives/xemacs-beta/199908/msg00816.html 2.10 Emacs resources o Gnusosftware (for windows?) http://www.gnusoftware.com/Emacs o GNU Emacs 19 teaching class (GOOD) http://www.cgd.ucar.edu/gds/thibaud/Emacs/slides.html o Jayakrishnan's EXCELLENT Emacs page http://www.csr.uvic.ca/~jk/emacs.html o Kai Grossjohan's Emacs tutorials: TAB, key-bindings, Gnus ftp://ls6-ftp.cs.uni-dortmund.de/pub/src/emacs/tutorials/tutorials_toc.html o Holger's Emacs Resources (short) http://www.coling.uni-freiburg.de/~schauer/emacs.html o List of Emacs implementations (historical) http://www.finseth.com/~fin/emacs.html by Craig Finseth o PHOAKS - people helping one another http://www.phoaks.com/comp/emacs/index.html 2.11 Emacs books, free o Emacs _Lisp_ _Reference_ Manual. ftp://ftp.gnu.org/pub/gnu/emacs (older pointer below; prefer the above instead) ftp://prep.ai.mit.edu/pub/gnu/emacs elisp-manual-* (20.5) o GNU Emacs _Manual_ - M. Richard Stallman's book on emacs http://www.cieux.com/rvw/emacs.html and http://www.delorie.com/gnu/docs/elisp-manual-20/elisp_toc.html and http://sunland.gsfc.nasa.gov/info/elisp/Top.html edition 2.4 of the GNU Emacs Lisp Reference Manual, corresponding to GNU Emacs version 19.29 o Emacs CL Package documentation (19.x) at http://www.cs.utah.edu/dept/old/texinfo/emacs19/cl_toc.html o _Programming_ _in_ _Emacs_ _Lisp_ - Elisp introduction. (by Robert J. Chassell lisp-intro-1.xx) ...This is an elementary introduction to programming in Emacs Lisp for people who are not programmers, and who are not necessarily interested in programming, but who do want to customize or extend their computing environment. http://www.gnu.org/manual/emacs-lisp-intro/emacs-lisp-intro.html and ftp://ftp.cs.columbia.edu/archives/gnu/prep/ and HTML format on-line at http://www.delorie.com/gnu/docs/emacs-lisp-intro/ o _Nguyen_ _Thien-Thi's_ Emacs tutorial http://www.glug.org/people/ttn/software/elisp-tutorial/ This directory contains a simple elisp tutorial, presented in several lessons. After going through the lessons, you should be familiar enough with Emacs Lisp to read and write elisp programs of moderate complexity, and to continue your studies independently. o Emacs for the Modern World (1991) by Craig A. Finseth http://www.finseth.com/~fin/craft/ 2.12 Emacs books, commercial First, this is strictly not an Emacs Lisp book, but highly recommended if you write or consider writing Emacs lisp programs. http://www.norvig.com/paip.html A book published by Morgan Kaufmann, Paperbound, xxviii + 946 pages, ISBN 1-55860-191-0. Another highly regarded book is "On LISP: Advanced Techniques for Common LISP " by Paul Graham (Out of print) amazon.co.uk may still have copies, try also http://www.abebooks.com and http://www.bibliofind.com See also http://www.linuxlinks.com/Books/Applications/Emacs/ "(2001-06) GNU Emacs and XEmacs" ._Author:_ by Larry Ayers ISBN 0-7615-2446-0. 700 Pages. .http://www.livejournal.com/userinfo.bml?user=layers [Eric Marsden] I was the technical editor for this book. However, I don't get paid anything per book sold. The book is very approachable and readable in style, as you'll expect if you've read Larry Ayers' articles in the online Linux Gazette. Downside: it's more linux-specific than necessary in some places (probably for marketing reasons). Why buy the book given that the Emacs manuals are excellent? The style is different, probably easier to read and navigate for beginners. There are many tips, hints, screenshots, code snippets which you won't find in the manual, which is more a reference guide. And the book covers many modules which aren't described in the manuals. Given that it has around 550 pages, it can go into quite a lot of detail, including o history of Emacs and the free software movement o Motivation of the utility of an extensible editor o intro to Customize o notions of elisp, including dissection of an add-on module o how to install packages (sections for Emacs and XEmacs) o discussion of several builtin packages: bookmarks, ediff etc o intro to VM, ange-ftp/EFS, w3, doctor, great chapter on Gnus o where to find help (manual, C-h keys, apropos, USENET) o CD with Emacs and XEmacs source and binaries, doc, add-on modules "(1999-04) Sams Teach Yourself Emacs in 24 Hours" ._Author:_ By Jesper Pedersen http://www.imada.sdu.dk/~blackie/ ISBN 0-672-31594-7 or http://www.mcp.com/ (ProductSupport->0-672-31594-7) McMillan book publishing company. 445 pages. Aimed for the Emacs and XEmacs, Win32 NT Emacs beginner. Not only standard Emacs is discussed, but also Gnus (pgnus 0.80+ MIME) and 3rd party software like BBDB. The CD includes 650MB: Win32 NT Emacs 20.3.1, 20.4 pretest, Cygwin 19, 20.1, various Cygwin Unix tool ports and 200+ Lisp packages and libraries that are not yet included in Emacs distribution. "(1997-04) Writing GNU Emacs Extensions" ._Book _description_ http://www.ora.com/catalog ._Book _files_ ftp://ftp.ora.com/pub/examples/nutshell/emacs_extensions/ ._Author:_ Bob Glickstein, O'Reilly & Assoc, ISBN 1-56592-261-1, 233 pages. [1997-08-13 gnu.emacs.help Paul Seelig ] This is probably meant for people who need to really customize their Emacs and is therefore meant for advanced users. [1997-05-02 comp.emacs ] This is an excellent book for anyone who knows programming, but doesn't know Lisp or how it can be used with Emacs. It starts by teaching a few simple skills for finding out what functions are bound to what keys (and how), and then goes into making minor modifications to existing functionality by hooking functions. It goes through a light introduction to Lisp, and then dives into Minor and Major Modes. It winds up with a long chapter describing the development of a substantial major mode. Appendices include a Lisp quick reference, tips on debugging and profiling code, how to package and share code, and how to obtain and compile Emacs. The writing is stream of consciousness, but is tightly focused on specific topics, and has the feel of looking over someone's shoulder as they explore Emacs at the keyboard. Many footnotes and asides give "try it yourself" tidbits that show the commands used to test Emacs and get information from it. During the development of code, a simple attempt is made and then critiqued, resulting in the introduction of a more refined method for accomplishing the same thing. Each chapter builds on the last, and is fairly quickly paced. Very few words are wasted. For old hands at writing packages like efs and w3, this book would not add anything to what you already know. Also: While it is specifically focused on Emacs, it speaks well to those us who use XEmacs; the focus of the book is Lisp code, and how to modify Emacs with it, not graphics, X, or specific packages. I've been waiting for a recently written book on Emacs to be published by O' Reilly and Associates for a long time. I'm glad I picked this one up. "(1996-09) Learning GNU Emacs 2nd edition" ._Book_ _description_ http://www.ora.com/catalog/gnu2/ ._Author:_ Debra Cameron, Bill Roseblatt, Eric Raymond O'Reilly + Associates,ISBN 1-56592-152-6, 557 pages. [1997-08-13 gnu.emacs.help Paul Seelig ] This is a fine book and is worth every penny IMHO. If you plan to only *use* Emacs without any Lisp hacking just stick with this one. Very good for beginners and advanced users. [anon commented] ..has typos and lot of misinformation either things that were plain wrong or things that were excessively complexly written, ...authors, didn't have much experience with Emacs Lisp. [2000-02-05 Brian Masinick ] For what it is worth, I agree more with the first writer than the second; that is, I think that Learning GNU Emacs is a decent book. I bought the first edition, and have not purchased the second edition. The first edition really dealt with GNU Emacs in the 18.55-59 time frame. Admittedly, many user interface issues have changed. Still, even today, the first edition is a useful tool to learn the basics of Emacs. I cannot speak for the second edition, but I suspect that it is already quite out of date, given the recent changes to customization. As far as Elisp code, it is true, Cameron and Rosenblatt (and now Raymond?) are not expert Lisp or Emacs Lisp coders. Their simple examples are adequate; for more complicated extensions, I think the other text, about Writing GNU Emacs Extensions, is a more appropriate source. Like others, I recommend the FSF texts as the definitive resources, particularly when it comes to Emacs Lisp. "(1992) GNU Emacs: UNIX Text Editing and Programming" ._Authors:_ Michael A. Schoonover, John S. Bowie and William R. Arnold, http://204.179.152.61/book/0,3828,0201563452,00.html Addison-Wesley, ISBN: 0-201-56345-2, Pages: 640 3.0 Win32 3.1 Win32 Emacs ports ._Homepage:_ http://www.gnu.org/software/emacs/windows/ntemacs.html ._Download:_ ftp://ftp.gnu.org/gnu/windows/emacs ._Mirror:_ http://sunsite.doc.ic.ac.uk/packages/ntemacs/ ._MailingList:_ majordomo ._Hyperarchive:_ http://www.findmail.com/listsaver/NTEmacs-users/ In the download site, *barebin* has just the .exe's and a few other files, and is only useful in conjunction with the "src" tarball. This gives you the full source to everything, if you happen to want that. *bin* is usable by itself, but doesn't include the elisp source (that is provided by the "lisp" tarball). If you know you want the elisp source, you can just get "fullbin", which is basically "bin+lisp". *leim* is the Library of Emacs Input Methods, which is only of interest if you want to enter non-ascii characters in a convenient way. --Andrew Innes o Setting up NT Emacs by Charles Curley http://w3.trib.com/~ccurley/emacs.html o Win3x/95/NT -- Emacs 19.34 port by Eli Zaretskii There is also another version of Emacs for Win32s: the version compiled with the DJGPP port of GNU C. This version runs on MS-DOS and MS-Windows (Windows 3.X, 9X and NT) and supports long file names on Windows 9X. The canonical place to get a pre-compiled binary for this version: ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/ emacs.README ftp://ftp.simtel.net/pub/simtelnet/gnu/djgpp/v2gnu/ em1934*.zip o Tertius NT Emacs and Cygwin page http://www.tertius.com/projects/library/ 3.2 Win32 XEmacs ports Beta versions of XEmacs now run on 32-bit Windows platforms (NT and 95). The current betas require having an X server to run XEmacs; however, a native NT/95 port is in alpha. The NT development is now coordinated by a mailing list at . If you are willing to contribute or want to follow the progress, mail to to subscribe. ._NetInstall:_ ftp://ftp.xemacs.org/pub/xemacs/windows/setup.exe [NEW!!] ._Official:_ ftp://ftp.xemacs.org/pub/xemacs/binary-kits/win32/ ._Win32Faq:_ http://jagor.srce.hr/~hniksic/xemacs-on-windows-faq.txt .http://www.xemacs.org/faq/xemacs-faq.html#Q1_0_10 .ftp://ftp.xemacs.org/pub/xemacs/beta/ ._Hyperarchive_: http://www.xemacs.org/list-archives/xemacs-nt/ See also ports at ftp://ftp.ese-metz.fr/pub/xemacs/win32/ by Fabrice Popineau and ftp.xemacs.org/pub/xemacs/binary-kits/win32/ and http://users.ev1.net/~toland for files like xemacs-21.1.9-i586-pc-win32.exe 3.2.1 Compiling XEmacs with cygwin [Cygwin-L 2000-07-28 Rod Whitby] XEmacs 21.1.10, 21.2.34 and 21.2.35 have all compiled out of the box for me with Cygwin 1.1.2 and the pre-release 1.1.3, using the following configure line for Cygwin. There is one small problem with building 21.2.35 where src/xemacs.exe is not getting the executable bit set during the build (when dumped from temacs.exe). Just "chmod ugo+x src/xemacs.exe", and type make again. ./configure --with-x=no --site-includes=/usr/local/include \ --site-libraries=/usr/local/lib --with-dragndrop ./configure \ --with-mule \ --package-path=/usr/local/lib/xemacs/site-packages:/usr/local/lib/xemacs/xemacs-packages:/usr/local/lib/xemacs/mule-packages \ --cppflags=-I/usr/local/include \ --site-prefixes=/usr/local/pgsql \ --with_file_coding=yes \ --with-sound=native \ --with_msw=no 3.2.2 CVS access Compression level *-z3* is recommended, because any higher value would put too much burden on the small xemacs CVS server. http://cvs.xemacs.org/ cvs -d :pserver:xemacs@cvs.xemacs.org:/usr/CVSroot login password: zawinski cvs -f -z3 -d :pserver:xemacs@cvs.xemacs.org:/usr/CVSroot checkout xemacs-packages 3.2.3 Tips for debugging xemacs -vanilla -debug-paths End