NT Emacs Installation

20 篇文章 0 订阅
14 篇文章 0 订阅

This writeup reflected NT Emacs version 20.6, released at the end of February, 2000. It has been adjusted to reflect 21.3, and should work.


How to Install NT Emacs.

A complete (I hope) guide for the Unix and Emacs-challenged

Notice:
Please read the instructions carefully, before you start. You may find it useful to print out this web page and check off each paragraph as you complete it.

Lawyer Trap

This document is furnished with no warranties whatsoever, including but not limited to: no warranty of merchantability or fitness for any purpose whatsoever. The user bears full and total responsibility for any and all consequences associated with these instructions, whether they are accurate or not, whether they are accurately carried out or not. Caveat Lector!

Target Audience

These instructions are primarily for folks who have never set up NT Emacs before. If you have set it up before, you may be able to update your installation. See the FAQ.

These instructions should get NT Emacs running on Windows 95, 98 or NT. I ran Emacs on Windows NT 4.0 with no noticeable problems. It runs on Windows 2000 (NT 5). Note: I have not run Windows on my desktop for 6 years, having migrated to Linux. I am not aware of any reason why these instructions should not be useful, but I would appreciate any corrections.

What Is Emacs, Anyhow?

A Baby Gnu
A Baby Gnu

Emacs is an editor, a programming environment, and a whole lot of other stuff besides. It is found on almost every version of Unix, VMS, and Windows NT and Windows 95. It is a very flexible and highly customizable environment.

It is probably the most powerful editor out there. It is powerful not just because it is customizable, but because chances are someone has already customized it to do what you want to do.

A programmer can look at Emacs as a Lisp interpreter written in C. If you can move the C code to a computer and make all the windowing work, you have ported Emacs. (Or don't make the windowing work: it runs in text mode too.) The Lisp is the same regardless of the platform.

Some editors are completely fixed; you cannot customize them at all. Others can be modified by checking boxes and filling in blanks. Some editors let you have a programming environment, often imitating a programming language. Emacs is an editor written in Lisp, and you can get the complete source code. This makes Emacs an incredibly powerful and amazingly customizable environment.

It's the only editor I've ever seen with a built in diary function. An add-on spelling checker you can use to check your source code. It will tell you when the Chinese new year is this year. Or the Jewish new year. OK, let's be fair: the Islamic new year, too. It's the only program (never mind editor) I've ever seen that lets you manipulate dates in the Mayan calendar.

Not only can you edit source code (C, Fortran, Lisp, C++, Java, assembler, and even SQL), but you can edit text formatting languages (nroff and LaTeX families, HTML, cascading style sheets and more). Real programmers can use it to edit the binaries :-). You can use it as a very powerful mail reader, and for news groups as well.

It will even play games with you: the Towers of Hanoi, Go Moku, for two. Need a shrink? It will play Eliza.

Emacs is available from a number of suppliers. The most prolific is the Free Software Foundation, home of the GNU ("Gnu's Not Unix") Project. They distribute what is called (surprise!) GNU Emacs. On NT and Windows 95, the most common version of Emacs is NT Emacs, a direct port of GNU Emacs. Installing NT Emacs is what this page is all about.

Requirements and Preparation

NT Emacs is known to run on NT version 4.0 and up (which includes Windows 2000), and Windows 95 and up. A reasonable installation of Emacs should not unduly burden a machine with 32 MB of main memory and a 150 MHz processor. However, as you will find out, Emacs is a large and memory intensive program (Emacs: Emacs Makes Any Computer Slower :-) Chances are if you need the power of Emacs you are running other tools that require at least as powerful a machine.

If you find your machine challenged for speed by NT Emacs, it is possible to recompile with various optimizations. However, doing so well is beyond the scope of this essay.

You will need about 30 MB of disk space for the whole distribution and various add-ons, and at least 40 MB during the initial unpacking process.

Alternatives

I have not tried these, but you should be able to adapt the instructions below to fill in the blanks in their installation instructions.

  • Steve Kemp has an Installshield based installation package of Emacs 19.34.6 available. I have not experimented with this package. Steve says his package includes the executables and byte-compiled Elisp, but no source. Steve also writes:
    <SHAMELESS_PLUG>

    If you're in the UK then I have a CD-ROM containing
    NTEmacs, lots of lisp, Cygnus b20, and other tools that
    I sell for £5 mailorder.

    </SHAMELESS_PLUG>
Cutting and Pasting

To use this web page effectively, you can cut and paste from this web page into the command line window. To paste under NT, right click anywhere in the cmd.exe window.

For Windows 95, you can speed things up by setting your MS-DOS prompt window to use fast cut and paste.

Preparation: Your Home, Bin and Gnu Directories

If you don't regularly run NT as an administrator log-in, log out and log in again as administrator.

You should have a personal, or home, directory somewhere. Emacs does not require a separate directory, but it is A Good Idea. Emacs looks for your personal start-up information in the home directory. (See the FAQ on startup information for more information.) It lets you keep personal files (your Emacs configuration file, your spelling dictionary file, etc.) all in one place, separate from system and application software like Emacs itself. This is a convenience on a single user system, but it is essential when two or more people share a machine.

Your home directory is also a convenient spot to put files you edit a lot because it is easy to get to. You can specify the home directory in Emacs by typing "~/" (or "~/", Emacs doesn't care). So your .emacs file can be specified by "~/.emacs".

It may be set already. In that case, simply put your .emacs in that directory. To find out your home directory:

  • Open a command prompt and run "echo %HOME%"; or
  • Open Emacs, and run dired mode on your home directory with "C-x C-f /~"

Your .emacs file is used to customize Emacs. Some people have .emacs files in the 10s of kilobytes. Mine is "only" 28K long. It is .emacs on Unix, so that Unix's ls (list directory) tool treats it as a hidden file. Early ports of Emacs used a file name of _emacs, so you will see that file name in email and documentation occasionally. Either one works, but .emacs will port handily to and from Unix, so it is preferred.

I use c:/crc for my home directory. My bin directory, c:/crc/bin, is for executables that aren't part of any package. By Unix tradition and usage, my bin directory is under my home directory.

Of course, if you use Cygwin, you will put your home directory at something like c:/cygwin/home/crc.

Snapshot of NT 4.0 Environment Tab
Snapshot of the NT 4.0 Environment Tab

To set up your home directory, build it as usual. From the command line ("MS-DOS prompt"), substituting your own directory name for crc:

mkdir c:/crc
mkdir c:/crc/bin

Then, make a directory for the general (non user-specific) files. I name mine /gnu, and put other GNU packages in it as well. Also, as I upgrade, I can have two or more versions of Emacs around (distinguished by the directory names under /gnu), so I can fall back if I find a bug in the newer version. Do not put this under c:/program files or any other directory that has a space in the directory name. Emacs has had problems in the past with directory names that have spaces in them. They should be fixed, but I have not tried installing to such a directory, and if your fearless leader hasn't...

mkdir c:/gnu

Then add a variable, HOME, to your user environment and add the executables directory to your path.

  • On NT 4.0 and up, right click on "My Computer" ->Properties ->Environment. Edit your home directory into your user environment. To be sure that you are in the user environment, select an existing user variable first, then edit over it to make the home variable. Hit the "Set" button when you are done.

    While you are at it, insert the bin directory into your path environment variable. You will also want Emacs' bin directory in your path. This will be c:/gnu/emacs-21.3/bin (where the emacs directory is take from the version.) Again, hit the "Set" button.

    To make the changes permanent, hit the "Apply" or "OK" button.

    If you have a command line window open, you will have to close it and re-open it to make these changes effective in the command line window. Other applications will see the change immediately.
  • On Windows 95, edit your autoexec.bat to amend the path statement (if necessary) and to create the HOME variable. In my autoexec.bat, I have something like the following:

    rem used by emacs, lynx, and probably others
    set HOME=C:/CRC

    PATH=c:/crc/bin;%path%

    Be very careful that your path does not exceed 127 characters in total length. If it does things will fail with no warning.

    You will have to reboot to effect the changes to autoexec.bat.

Now, go to the NT Emacs web site. The main site is on the east coast of North America. Alternate sites include:

Bookmark the URL; you'll be back.

Tar and Feathers Gzip

The first thing to get, if you don't already have one, is a decompression and unarchiving tool that supports tar (Tape ARchive) archives and gzip decompression. I'll show you where to get two of them, and how to use them to unpack NT Emacs.

WinZip vs. Tar and Gzip

You can use the two utilities, tar.exe and gzip.exe, on the NT Emacs site. I have had problems using tar and gzip for Windows from other sources, and they are right there on the NT Emacs ftp site, ready to grab.

  • Tar and gzip are freeware (gnuware) under the same General Public License as Emacs; WinZip is shareware (however your company may have a site license).
  • A lot of people are familiar with the WinZip GUI, and don't like the command line.
  • Tar and gzip tend to produce smaller compressed files.
  • WinZip will read tarred and gzipped files, but will not create a tar file or gzip a file.
  • One user reported that he had problems unpacking using WinZip. When he tried to unpack the same files using gzip (the Cygnus version, not the one recommended here), it reported errors in the archive file that WinZip had not reported. He re-downloaded and everything unpacked correctly. So possibly WinZip is not as careful to test archives as gzip.
Getting Tar and Gzip
Gnu Tar and Gzip

If you don't use Cygwin, follow these instructions to get tar.exe and gzip.exe:

Note: Some browsers will change periods to underscores in file names without asking or warning you. IE 3 and Netscape 3.x and 4.x on W32 are both offenders here. You can edit the file name when you are prompted for where to store the file, or later on, either from the command line or from an Explorer window. To do the latter, click on the file name, wait a few seconds, then click again (not a double click!). Then edit away.

Note: If you use an ftp client, make sure you transfer in binary format. While at the ftp command line, "bin" should do it.

  1. From the i386 utilities directory copy in gzip-1.2.4-i386.exe and tar-1.11.2a.exe to your /gnu directory. (Users of other processors can get their utilities from the utilities directory.)

  2. Launch the command line, if you aren't already running it, and CD to the /gnu directory.

    cd /gnu

  3. Rename gzip-1.2.4-i386.exe to gzip.exe:

    move gzip-1_2_4-i386.exe gzip.exe

  4. Similarly for tar:

    move tar-1_11_2a.exe tar.exe

If you want the spelling add-on or other goodies for Emacs, you will need to keep tar.exe and gzip.exe around. Move them to your bin directory. Since that directory is in your path, you will still be able to use them.

Cygwin Tar and Gzip

The Cygwin tar and gzip work with NT Emacs.

tar -xvzf emacs-21.3-fullbin-i386.tar.gz

Getting WinZip

You may want, if you don't have it, WinZip 6.3 SR1 or later.

Getting the Distribution

Note: Some browsers will change periods to underscores in file names without asking or warning you. IE 3 and Netscape 3.x and 4.x on W32 are both offenders here. You can edit the file name when you are prompted for where to store the file, or later on, either from the command line or from an Explorer window. To do the latter, click on the file name, wait a few seconds, then click again (not a double click!). Then edit away.

Note: If you use an ftp client, make sure you transfer in binary format. While at the ftp command line, "bin" should do it.

These instructions refer to the home server at gnu.org. There are mirrors. Please use one if you can to ease load on the main server. Click on a mirror, then cd to windows/emacs/latest. Pull in the file(s) you need after reading what they contain below. The mirrors have anything the main GNU server has, so you should also be able to get gnuserver and other items that are available from gnu.org.

These instructions assume you want NT Emacs for an Intel machine. For other processors, you will have to compile from source, as binaries are not provided. Now, if you'd like to make your binaries available, please drop a note to the NT Emacs list.

You need to select and then pull in a distribution. Read the general instructions. You have several options described in the NT Emacs FAQ.

Pull all the files you do get into the /gnu directory. If your browser is pathologically challenged (won't change paths for you), you will have to copy the executable and (if you get them) source and lisp packages into the /gnu directory after you download them.

You can install the precompiled version or get the source and compile your own. Unless you are curious, there is no real reason to get the source. Your options are:

  • Precompiled Whole Kazoo: You need the precompiled code, including elisp source. Pull it into into your prepared directory (/gnu in the example above).

  • Alternatively, get a bare-bones binary distribution, with no elisp source.

  • Alternatively, you can grab the source, and compile your own. In that case, get emacs-21.3-src.tar.gz. I've done it and if you can run make (nmake on Visual C++) you should be able to compile Emacs. VC++ version 6 works fine. VC++ version 5 should work, but I have not tried it. I have heard no reports on VC++ 4 or earlier. If you do compile, you can change the icon by editing .../nt/emacs.rc prior to a recompile.

I have no experience with LEIM (Library of Emacs Input Methods), so I can't comment on it here. But it is available in source and binary form at the usual place.

To test the integrity of your downloads, run gzip --test <filename>. Success will result in no output; failure in the message "unexpected end of file." You can test multiple files with gzip --test * or other wild cards, as appropriate. Similarly, WinZip will complain. Alas, the remedy is to download again. You did set your ftp client to binary, didn't you?

There are more details on what is available at NT Emacs FAQ.

Unpacking the Archives

Now decompress and untar the lisp archive. This process creates a directory (emacs-21.3) under the current directory, and everything is unpacked into that directory or below it. As you add other tools, they can have their own directories as well. If you get an error message, try grabbing the offending file again.

Using Tar and Gzip:

If you want the lisp source, execute the following command line:

gzip -c -d emacs-21.3-lisp.tar.gz | tar xvmf -

Similarly for the binary archive:

gzip -c -d emacs-21.3-bin-i386.tar.gz | tar xvmf -

Alternatively, you may be able to use a command line like this. It works on the Cygwin BASH shell. The main advantage is less typing.

tar -xvzf emacs-21.3-fullbin-i386.tar.gz

Using WinZip:
  1. Fire up WinZip, and open the binary archive, emacs-21.3-bin-i386_tar.gz.
  2. Be sure CR/LF (end of line character) translation is disabled.
  3. Check that filenames were not truncated to 8.3. Such truncation will render Emacs pretty much useless.
  4. If WinZip asks you to edit the file name, ensure that the extension is ".tar". Do this by editing the suggested file name in the prompt, not by appending ".tar". Be sure to delete the trailing period in the suggested file name!
  5. When WinZip asks if it should decompress the tar file to a temporary folder and open it, click on the "Yes" button.
  6. Hit the "Extract" button. Make the target directory the /gnu directory you made earlier. Make sure "all files" and "Use Folder Names" are checked. Then hit the new "Extract" button.
  7. If you want the lisp source, close this archive, and open the lisp archive, emacs-21.3-lisp_tar.gz, in the same manner. When it asks you if you want to overwrite a file, you can hit "yes", "yes to all", or no", as you please. They are duplicate files.
  8. Now, if they aren't already there, make two empty directories:

    mkdir emacs-21.3/lock

    mkdir emacs-21.3/site-lisp

And, if you grabbed it, the source.

Proceed through all the installation instructions before you try to launch Emacs. It won't run correctly until you have done all the setup.

What To Do With the Archives?

Save them off, say to a Iomega ZIP disk or something similar. Just in case.

Or put them on the company network somewhere and subvertpoint other users toward them.

Setting Up

First, you may want to run the program bin/addpm.exe with the Emacs directory as an argument. Emacs now has all of the registry settings installed by addpm built in. However, running addpm will also build a start menu entry for you. If you want the start menu entry, invoke addpm as:

C:/gnu/emacs-21.3/bin/addpm.exe C:/gnu/emacs-21.3

addpm dialog
addpm dialog

Or you can cd to the directory and run it without arguments, or click on it from Explorer. In any case, make sure it offers the correct directory and accept if it does.

Note: on Emacs 20.6 on my W95 laptop, I found that when I click on addpm from Explorer, it fired up a console window. I click to accept the path, and the console goes away. This could be disconcerting, but it is harmless. Running it from a terminal window does not have this effect.

Invoking addpm.exe will do two things. First, it will create a set of registry keys that tell Emacs where to find its support files (lisp, info, etc.). Second, it will create a folder containing an icon linked to runemacs.exe (a wrapper program for invoking Emacs).

When addpm.exe runs, it pops up a window that represents your start menu's new entry for Gnu software. You may wish to edit the shortcut, for example by adding a shortcut keystroke to launch Emacs. I recommend you copy the shortcut to the desktop. You can dismiss the window when you are done with it.

If you are upgrading, you can ignore addpm. Emacs will ignore the registry entries from old versions.

Using a .reg file

If you are upgrading and have already built a .reg file (emacs.reg, e.g.), now is the time to edit it and execute it. You will need to change the paths from, say, "emacs.20.3.1" to, say, "emacs.20.6".

If you are doing a new installation, don't worry about it for now, but eventually you may want to look at my .emacs file page, which has a sample .reg file on it.

The advantage of a .reg file is that the .reg is human readable, where the results of addpm.exe is binary data, which is hard to read and harder to edit.

Launching Emacs

You should now be able to launch NT Emacs from the start menu, per the instructions on running Emacs.

You can also invoke runemacs.exe from a command prompt. Do not try to run emacs.exe directly. Use runemacs.exe instead. If you use it often enough, put the emacs bin directory into your path.

Upgrading

If you are upgrading, you probably have an extensive .emacs, and a lot of files in your site-lisp directory. Launch emacs. It should pick up your .emacs and start loading it. Since you haven't copied over your files from your old site-lisp into the new one, Emacs will stop and complain that it can't find some package or other.

To solve this problem, copy the missing file (both .el and .elc extensions) from your old site-lisp directory to the new one at C:/gnu/emacs-21.3/site-lisp. Then shut down Emacs and restart it. Do this one file at a time. That way, you only copy files that have not been incorporated into the distribution. Generally, you want the files in the distribution.

If you are short on disk space and have to eliminate the old emacs directory, don't kill off the site-lisp directory yet. You may need something that you haven't yet copied over.

If you have any fonts called out, you may have to re-do them completely. If you are going from 20.3 or earlier to 20.4 or later, you will have to change them. For example,

"EMACS.FONT"="-*-Lucida Sans Typewriter-semibold-r-*-*-16-120-*-*-c-*-*-ansi-"

became

"EMACS.FONT"="-*-Lucida Console-normal-r-*-*-16-120-96-96-c-*-iso8859-1"

That also changed my initial geometry, which I had set up in the registry, but now do in my .emacs.

Help! I Need Somebody! Help!

Probably the most important keystroke on Emacs is C-h (control-h) I, which gets you to the Emacs documentation in Info format, using Emacs' built in Info reader mode. It is a hypertext system rather like HTML. The main keystrokes you need to know in Info are: "d" gets you to the top level menu, "q" exits, "?" lists all Info commands, "h" gives you an info mode primer, "n" takes you to the next node, "p" to the previous, and "u" up a level.

To go down a level, to investigate an interesting topic, move the cursor to that topic in bold, and hit return. Alternatively, "m" gives you a prompt "Menu item:" in the minibuffer (bottom line of the display). Type the first several letters of the menu entry you want. Then hit TAB. Emacs may complete the menu item for you, or it may give you a list of possible completions. If you get a list of possible completions, type one or two more letters, and tab again. Congratulations, you have just used "tab completion", a very powerful feature of Emacs that shows up all over the place.

Another thing to know about is C-h t, which gets you the Emacs tutorial.

If you run into problems, be sure to browse the NT Emacs FAQ (you did book-mark it, didn't you?).

Add-ons

Some add-ons you will want to get eventually:

  • ispell (spell checker). There is an 8-bit-wide version which I have not tried at Eindhoven University.
  • Gnuclient lets you associate files with Emacs, and do other tricks. I highly recommend getting this tool.

    Karel Sprenger reports: On NT, you can make associations by running something like these two lines from the command window:

    assoc .txt=txtfile
    ftype txtfile=c:/emacs/bin/gnuclientw.exe -q -F "%L"

    Alternatively (and with Windows 95/98) you change the standard association in the File Types tab of the View->Options... menu of Explorer, find the Text Document entry, press the Edit button, double click the Open action (or single click, then Edit) and enter c:/emacs/bin/gnuclientw.exe -q -F "%L" in the "Application used to perform action" field.

    BTW, the same command line can be used to add a shortcut to your Send to menu (in the C:/WINDOWS/Sendto directory if you're running Windows 95/98, or C:/WINNT/Profiles/<username>/Sendto if you run NT).

  • html helper mode (for editing HTML source). Get the beta version. It is quite stable and has some features the "release" version does not have which make it much more user and programmer friendly.
  • Lars Marius Garshol's CSS mode for editing cascading style sheets.
  • Visemacs for linking Visual Studio/Visual C++ to Emacs.

The first two are available from web pages pointed to by the FAQ.

Psgml Mode

To edit SGML or XML, see the psgml mode home page or its sourceforge page.

Also, see Bob DuCharme's PSGML Tricks

Emacs as a Windows Application

Uday S. Reddy writes:

I have a useful addition to the page (actually an old message from the
ntemacs-users mailing list), which turns out to be important for some
classes of users. The story is something like this...

The standard NT Emacs distribution is compiled as a Console
application. The runemacs.exe program starts a Console, launches an
Emacs process and then quietly dies. However, the resulting Emacs
application is still seen as Console application (NTVDM process) by
other Windows applications. So, if one needs to communicate from
other Windows applications to Emacs, this causes problems because
NTVDM is a generic description and doesn't identify Emacs processes.
The following message from Andrew Ireland describes a simple procedure
for converting emacs.exe binary to a Windows application so that
runemacs.exe is not necessary.

(This message was posted in 1999 in response to a user who needed to
get speech recognition engine to work with NT Emacs. When I ran into
this problem recently and tried to find the message, it didn't come up
in any of the archives. I was able to dig it up from my old email
archives. It would be useful to put it in a prominent place so that
people will know.)

Cheers,
Uday

-----Original Message-----
From: rmh@blah.blah.blah [mailto:rmh@blah.blah.blah]
Sent: Tuesday, July 06, 1999 6:20 PM
To: ntemacs-users@cs.washington.edu
Subject: Re: NaturallySpeaking and NTemacs...

i'm responding to the console application part of AndrewI's response.
It is easy to make emacs and runemacs (and many other "console" applications
into windows applications. This from AndrewI on 5 Oct 1998:
>
> The difference between GUI and console is a single bit in the executable
> header; you can change it using any binary file editor, including Emacs
> itself. Here's how: load emacs.exe in Emacs using M-x
> find-file-literally, search for "PE" (ie. type C-s P E RET), then type
> "M-9 0 right" to go forward 90 bytes. The character under the cursor
> should now be ^C. Replace that with ^B (type C-q C-b) and save.
>
> You need to save to a different file and then replace emacs.exe, if you
> are editing the binary you are running.
>
> AndrewI
>
It works like a charm. I also did this to many of the Cygwin program, to
gnuclient, and other programs. All of them now run correctly under my
restricted lab policy which
has config.pol set to prohibit programs that
run as 'virtual dos machine' or 'virtual dos mode'.


Try this out and see if gets past the Dragon.

Printing

Emacs was designed for use with Unix, where postscript printing rules. The printing facility supports printing an entire buffer or a region, to either a character printer or to a postscript printer.

"In 20.x, all you should need to do is set `printer-name' (and/or `ps-printer-name') to the name of your printer port. They both default to "PRN" (aka "LPT1") so most people shouldn't even need to change them. You can also specify a network printer as "//host/printer", or specify an ordinary file."

Ghostview

If you don't have a postscript printer and would like to fake it in software, check out Ghostscript and Ghostview. It prints very nicely, and even gray scales any color in your region.

An alternative is to use a Linux box as a printer server, and set up the printcap to handle postscript files automatically. Red Hat 5.x and later distributions do this for you automatically. I did this quite successfully with an old 486 box I had laying around.

Setting up your printer

Here's how I did it in my .emacs, using my Linux server as a remote printer server:

this is test text.

;; Begin Andrew Innes' w32-print-direct.el. Run it only on Win32 and Emacs
;; version less than 20.
(if (and (<= emacs-major-version 19)
(or (eq window-system 'w32) (eq window-system 'win32)))
; (setq printer-name "//server/HP DJ 500") ;doesn't work; set it in the
; file. Maybe I need a "progn" to make this work correctly?
(require 'w32-print-direct))
;; End Andrew Innes' w32-print-direct.el

;; Begin setup for printing on Win32, Emacs 20.3.1
(if (and (>= emacs-major-version 20)
(or (eq window-system 'w32) (eq window-system 'win32)))
(progn (setq printer-name "//server/deskjet")
(setq ps-printer-name "//server/deskjet"))
; (setq ps-printer-name "LPT3")
)
;; End setup for printing on Win32, Emacs 20.3.1

Issues We Haven't Covered

Most of these facilities work on Unix but require some work-around on NT. Often there are multiple work-arounds described in the FAQ. Setting them up is not simple, but it can be done. I will add notes on this page as I gain confidence that my solutions are stable.

Resources

Free Software Foundation Logo
Free Software Foundation Logo

On the Web

Books

I have and use routinely:

  • Debra Cameron et al, Learning GNU Emacs, 2nd Ed, O'Reilly & Assoc, 1996. This documents version 19.30, and does not cover any NT-isms. I am flagging places where NT-isms should be noted, and will post that when I can. Meanwhile, I am impressed with this book. I had been using Emacs for more than three years when I read it, and learned a lot from it, and cribbed some useful code for my .emacs file.

  • You may also want the GNU Emacs Reference Card from SSC. The one I have is dated 1995, and covers version 19.28. The two books above also have reference cards, presumably more recent. This one is much more complete.

  • If you are going to work with Emacs' search facilities heavily, you will eventually want to learn regular expressions. The best and so far only book on the subject I've seen is Jeffrey Friedl, Mastering Regular Expressions, O'Reilley & Associates, 2nd Edition July 2002.

  • Sams Teach Yourself Emacs in 24 Hours (with CD-ROM) by Jesper S. Pedersen, Jeff Koch, is the first Emacs book I know about to cover NT Emacs specific issues. It has Emacs version 20.3.1 and a host of other useful software on the CD-ROM. If you get this book, check the errata page.

  • Finally, if you really want to live dangerously, Bob Glickstein, Writing GNU Emacs Extensions, O'Reilly, 1997.

All of these are available from Amazon.com.

 

The NT Emacs List

You may also wish to subscribe to the NT Emacs list. It is archived.

If All Else Fails

If you run into problems and don't find answers in the FAQ, the split FAQ's archives, or any of the books I suggested, check the archives.

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值