|
|
Archive-name: GNU-Emacs-FAQ/reference-pointer
Posting-Frequency: 2 times a month
Maintainer: Jari Aalto <[email protected]>
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 <[email protected]> under
[email protected]. 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 <[email protected]> under
[email protected]. 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 <[email protected]>.
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/ <power search>
Group: gnu.emacs.help
Date: Jun 6 1998
Subject: non-free documentation and GNU groups
Search: FSF
<URL:http://search.dejanews.com/msgid.xp?MID=%[email protected]%3E>
o Articles concerning free software or Emacs documentation.
<URL:http://x11.dejanews.com/getdoc.xp?AN=362921726&CONTEXT=898700828.506789994&hitnum=0>
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.
<URL:http://www.dejanews.com/dnquery.xp?QRY=EMACS-Programming-how-to&DBS=2&ST=PS&format=threaded&showsort=date&maxhits=200&groups=gnu.emacs.help>
...Non-free Emacs documentation publishers should say in the
cover of the book that with Emacs they get free docs already:
<URL:http://www.dejanews.com/dnquery.xp?QRY=EMACS-Programming-how-to&DBS=2&ST=PS&format=threaded&showsort=date&maxhits=200&groups=gnu.emacs.help>
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 <[email protected]>) and
http://www.gnu.org/gnulist/production/emacs.html and
http://www.gnu.org/software/emacs/emacs.html The Project Leader
is Gerd Moellmann <[email protected]> <[email protected]> at
Report Development bugs to <[email protected]>
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:[email protected]:/cvsroot/emacs login
password: [press enter]
cvs -d :pserver:[email protected]:/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 <[email protected]> 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: <[email protected]>. 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: <[email protected]> with
BODY subscribe <[email protected]> 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
<[email protected]> 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:[email protected]:/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 <[email protected]> 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
<[email protected]> 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
<[email protected]>] 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 <[email protected]>] 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 <[email protected]>]
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 <[email protected]>] 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 <[email protected]>
._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
<[email protected]>. If you are willing to contribute or want to
follow the progress, mail to <[email protected]> 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:[email protected]:/usr/CVSroot login
password: zawinski
cvs -f -z3 -d :pserver:[email protected]:/usr/CVSroot checkout xemacs-packages
3.2.3 Tips for debugging
xemacs -vanilla -debug-paths
End
回应留言
©2003 Google