Skip the below and use apt-get to load XEmacs. If you get the dreaded "Can't get fontset resource for Input Method" error, uninstall xemacs21-mule and xemacs21-mulesupport and install xemacs21-nomule.
See http://www.xemacs.org.
XPM is needed by XEmacs. See
http://www.inria.fr/koala/lehors/xpm.html.
Web to the Koala FTP
website and download PNG is needed by XEmacs. It's already installed in Red Hat
Fedora Core 1. If it weren't, I'd have used apt-get instead of the
old way that follows. See
http://www.libpng.org/pub/png/.
To clean out several megabytes, delete the packages that we don't
need. As root, start XEmacs, and do
Tools->Packages->List & Install, then
use "D" on these:
then hit "x".
Get and install XPM
xpm-3.4k-linux.tgz.
At this point, the instructions say to run
xmkmf. Do so and continue if you have it.
Otherwise, skip to the next block...
cd /usr/src
gunzip xpm-3.4k.tar.gz
tar xf xpm-3.4k.tar
rm xpm-3.4k.tar
cd xpm-3.4k
Here's what to do if you're on a Linux system and you don't have
xmkmf...
cd /usr/src/xpm-3.4k
xmkmf -a
make
make install
make install.man
make clean
Here's what to do if you're on a Solaris system and you don't have
xmkmf...
cd /usr/src/xpm-3.4k-linux
install -m 0555 bin/cxpm bin/sxpm /usr/local/bin
mkdir /usr/local/man/man1
install -m 0644 man/man1/cxpm.1x man/man1/sxpm.1x /usr/local/man/man1
install include/X11/xpm.h /usr/X11R6/include/X11
install lib/libXpm.so.4.11 /usr/local/lib
cd /usr/local/lib
ln -s libXpm.so.4.11 libXpm.so
ln -s libXpm.so.4.11 libXpm.so.4
cd /usr/src/xpm-3.4k-solaris
install -c /usr/local/bin -m 0555 bin/cxpm
install -c /usr/local/bin -m 0555 bin/sxpm
install -c /usr/local/man/man1 -m 0644 man/man1/cxpm.1x
install -c /usr/local/man/man1 -m 0644 man/man1/sxpm.1x
install -c /usr/local/lib lib/libXpm.a
install -c /usr/local/lib lib/libXpm.so.4.11
install -c /usr/openwin/share/include/X11 include/X11/xpm.h
cd /usr/local/lib
ln -s libXpm.so.4.11 libXpm.so
Get and install PNG
cd /usr/src
ftp gate.ucar.edu
anonymous@ftp.uu.net
siemsen@ucar.edu
cd graphics/png/src
get libpng-1.0.12.tar.gz
get zlib-1.1.3.tar.gz
quit
gunzip libpng-1.0.12.tar.gz
tar xf libpng-1.0.12.tar
rm libpng-1.0.12.tar
gunzip zlib-1.1.3.tar.gz
tar xf zlib-1.1.3.tar
rm zlib-1.1.3.tar
ln -s libpng-1.0.12 libpng
ln -s zlib-1.1.3 zlib
cd zlib
./configure
make test
make install
make clean
cd ../libpng
(under Linux)
cp scripts/makefile.linux ./makefile
make test
make install
make clean
(under Solaris)
mv scripts/makefile.solaris ./makefile
make test
make install
make clean
Get XEmacs
cd /usr/src
ftp gate.ucar.edu
anonymous@ftp.xemacs.org
siemsen@ucar.edu
cd pub/xemacs/xemacs-21.5
binary
get xemacs-21.5.21.tar.gz
quit
gunzip xemacs-21.5.21.tar.gz
tar xf xemacs-21.5.21.tar
rm xemacs-21.5.21.tar
Build XEmacs
First, get and build XPM and PNG, as described above.
cd /usr/src/xemacs-21.5.21
./configure \
--with-xpm (only if the system has it) \
--with-png (only if the system has it) \
--with-sound=native,nonas (on laptop only) \
--with-postgresql (on laptop only) \
--without-ldap (on Solaris only) \
--site-libraries=/usr/local/lib (on Solaris only) \
--site-includes=/usr/openwin/include/X11:/usr/local/include (on Solaris only)
make
make install
make clean
Get XEmacs packages
Ok, now we have a runnable, minimal XEmacs. To make it useful,
we need to install the XEmacs packages. Read the file
README.packages in the main source directory,
and...
cd /usr/local/lib/xemacs
ftp gate.ucar.edu
anonymous@ftp.xemacs.org
siemsen@ucar.edu
cd xemacs/packages
get xemacs-sumo.tar.gz
quit
gunzip xemacs-sumo.tar.gz
tar xf xemacs-sumo.tar
rm xemacs-sumo.tar
Get XEmacs documentation
cd /usr/src
mkdir xemacs-docs-21.4.8
cd xemacs-docs-21.4.8
ftp gate.ucar.edu
anonymous@ftp.xemacs.org
siemsen@ucar.edu
cd pub/xemacs/docs/letter
get emacs-lisp-intro-letter.pdf.gz
get internals-letter.pdf.gz
get lispref-letter.pdf.gz
get new-users-guide-letter.ps.gz
get xemacs-letter.pdf.gz
quit
gunzip emacs-lisp-intro-letter.pdf.gz
gunzip internals-letter.pdf.gz
gunzip lispref-letter.pdf.gz
gunzip new-users-guide-letter.ps.gz
gunzip xemacs-letter.pdf.gz
Update packages
The above itstallation installed all the packages. You can now
use the package maintenance features of XEmacs to upgrade
packets to their latest versions, add new packages, or delete
unused packages. To do this, you need to temporarily
put the machine outside the firewall.
When XEmacs can't seem to recognize the tags in an HTML file, it's probably because there isn't a DTD at the top of the file.
To get Mozilla to display a just-changed XEmacs buffer, use HTML->View in Netscape. This runs sgml-html-netscape-file, which is defined in psgml. It runs highlight-headers-follow-url-netscape, which is defined in /usr/local/lib/xemacs/xemacs-packages/lisp/mail-lib/highlight-headers.el as an alias for browse-url-netscape. browse-url-netscape is defined in /usr/local/lib/xemacs/xemacs-packages/lisp/mail-lib/browse-url.el.
rm -f /usr/share/emacs/site-lisp/crypt++.el
rm /usr/share/xemacs21/site-lisp/crypt++.elc
cd /usr/local/lib/xemacs/xemacs-packages/lisp/os-utils
xemacs -batch -f batch-byte-compile crypt++.el
ln -s crypt++.el crypt.el
ln -s crypt++.elc crypt.elc
Then add (require 'crypt) to ~/.xemacs/init.el.
News is read from the machine specified by the environment variable NNTPSERVER. GNUs keep state in ~/News and ~/.newsrc* files, but not in a ~/.newsrc. The ~/.newsrc is an old way to do things, and is used by, like, Netscape.
To start GNUs, do M-x gnus. This'll display your "Group" buffer, which lists the groups you're subscribed to.
To read a newsgroup, you have to first subscribe. To subscribe to a newsgroup, do U <name>, where name is the name of the newsgroup. Tab-completion helps. This adds the newsgroup to the group list that's displayed whenever GNUs starts. To check for new news, put the cursor on a newsgroup and hit "g".
To read news in a subscribed newsgroup, go to the group buffer, put the cursor on the newsgroup name and type SPACE, or use the middle mouse button. This'll open a Summary window for the group, showing messages by subject, sorted hierarchically. Hit a RETURN aver a message to read it.
To post a new message to a group you have open, type "a". Fill in the message and type C-c C-s to send it. To post a follow-up to a thread, use "f".
width="123"
to xxx, where the 123 can be any sequence of digits, do
M-x replace-regexp
width="[0-9]+"
xxx
For more information, see pages 193-198 of the O'Reilly book
titled "Mastering Regular Expressions".
in *scratch*
(defvar sort-fold-case t)
put the cursor after the ')' and do C-x C-e