The LysKOM Emacs Lisp Client
-------------------------------------------
Release notes for version 0.46.1
LysKOM is a project in progress at the Lysator Academic Computing
Society at Linköping University in Sweden. For information about
Lysator, see . For more information
on LysKOM, see .
The latest version of the Emacs Lisp client for LysKOM is available
from .
LysKOM is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your
option) any later version.
LysKOM is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with LysKOM; see the file COPYING. If not, write to Lysator,
c/o ISY, Linköpings universitet, S-581 83 Linköping, SWEDEN, or
the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA
02139, USA.
Please mail bug reports to bug-lyskom@lysator.liu.se.
Please mail change requests to kom@lysator.liu.se.
1. REQUIREMENTS
You need an Emacs. The client appears to work with the following
versions of Emacs:
* XEmacs version 20.4, 21.1 and 21.2.
* Gnu Emacs version 19.34 [1]
* Gnu Emacs version 20.5 and newer [2]
[1] You'll have to replace the included custom package, and if you
use Gnus, you may have to update that as well.
[2] It should be possible to run the client in Gnu Emacs 20.2 and
later, but you may experience some additional problems. Column
alignment is known to fail in version 20.2.
There are also some requirements on supplemental elisp packages:
* custom
You need to have a recent version of the custom package
installed. The custom.el file that is bundled with Gnu Emacs
19.34 and older versions of Gnus will not work.
The version that is bundled with recent versions of XEmacs, with
Gnu Emacs 20, with recent versions of Gnus and w3 is the one you
need.
Custom is not longer distributed as a separate package, but it
may be available at . An old version is available in the elisp-client ftp
directory at .
If you have a version of Gnus installed that uses the old custom
package, it's time to upgrade. The latest version of Gnus is
available from .
* You must NOT HAVE macedit.el
Make sure you do not have a file called macedit.el early in your
load path. This file redefines a function that the client relies
heavily on. The redefinition is buggy. You can recognize this
problem if your Emacs says something like this: "Key sequence <
m o u s e - 2 > uses invalid prefix characters" when you load or
compile the elisp client.
* w3 4.0 or later (optional)
LysKOM can use w3 for displaying HTML. At the time of writing
this, the latest version of W3 is 4.0. It is available from
and included in
many distributions of Emacs. If w3 is not installed, LysKOM will
be unable to display HTML.
* calc (optional)
LysKOM uses calc to implement the "Compute" command. If you want
to use it you need calc. The latest version of calc, as of
writing this, is available at
2. Installation
You will have received the client in a compressed tar archive or
in a zip archive. The archive contains all the files needed to
build the client.
You can either install manually (see section 2.1) or use the
Makefile (section 2.2). However you install, there are a few
additional steps that you may want to follow to facilitate using
the client (section 2.3).
The client is also available as a Debian package, which works for
all supported Emacs/XEmacs flavors listed in section 1 above. You
can also get the Debian package automatically via apt; see
for more information. After installing the package, continue
reading section 2.3.
There are currently no prebuilt RPMs, but the source archive
includes an RPM spec file that might be useful.
2.1 Manual installation
This procedure should work on any system, including Windows.
1. Compile the client with the command `emacs -batch -f
batch-byte-compile lyskom-0.46.1.el'
You may see some warnings when you compile. Most of these can
be ignored. When compilation is done you should have a new file
named lyskom-0.46.1.elc located in the same directory as
lyskom-0.46.1.el.
2. Copy lyskom-0.46.1.elc to where you want to install
the client and either rename the file lyskom.elc or create a
symbolic link from lyskom.elc to lyskom-0.46.1.elc.
If possible you should place it in your site-lisp directory.
Check the value of load-path (C-h v l o a d - p a t h RET) to
see possible locations.
2.2 Using the Makefile
If you are on a Unix-like system (or anything that supports
Makefiles) you can use make to install the client. You have to use
the Makefile method if you want to change the list of available
languages.
1. Edit the Makefile in the distribution to reflect your
environment. There are instructions in the Makefile.
Optionally, use the configure script. It attempts to find
suitable defaults for the settings in the Makefile. Simply run
./configure in the directory containing the client sources.
You may customize the output of the configure script with the
following command-line arguments:
--with-emacs=EMACS Specify the name of the Emacs you want to
use (usually `emacs' or `xemacs'). The
script will attempt to locate an emacs
automatically.
--with-lispdir=DIR Specify where to install the client. You
will have to specify this if the script
fails to locate a suitable directory
automatically.
--enable-language=LANG
Enable a language. Currently Swedish and
English are available. If you do not
explicitly enable any language, all will
be enabled.
--with-default-language=LANG
Set the default language to LANG (Swedish
or English). If you do not specify a
default language the script will choose
one for you.
The configure script is an experiment. It might work and it
might not. If it doesn't, edit the Makefile by hand instead.
2. Run `make envcheck' to make sure your Emacs environment is set
up correctly. The environment check does not read your .emacs,
so it will not find libraries that are not in the default load
path. This means that it is possible that LysKOM will run just
fine for you even if it complains.
3. Edit the file lpath.el if you need to change the default load
path for compiling (this should only happen if the custom
package is not on your default load path).
4. If you changed the list of languages, ran the configure script
or are recompiling with a different Emacs version, run `make
clean'.
5. Run `make'. If your environment is set up correctly, LysKOM
should be compiled. When compilation is finished, type `make
install' to copy all the relevant files to the relevant places.
If you do `make install' without just doing `make', you'll
bypass the environment check.
2.3 After installing
After installing you can set Emacs to load LysKOM automatically.
1. Set up autoloading by adding the following line to your .emacs
or any other file that Emacs loads at startup (such as
site-start.el or default.el):
(autoload 'lyskom "lyskom" "Start LysKOM" t)
(This is not needed if you are using the Debian package.)
2. If you have your own LysKOM server you may want to modify the
variable kom-server-aliases. The best place to change it is in
your site init file (default.el or site-start.el). For example,
if you are running a server on kom.domain.org, you might want
to say something like this in your init file:
(defvar kom-server-aliases
'(("kom.domain.org . "DomainKOM")
("kom.lysator.liu.se . "LysKOM")))
The first server listed in kom-server-aliases will be the
default server for new users.
3. Restart Emacs. You should be able to use the command lyskom
(M-x l y s k o m RET) to start the client. Enjoy!
3. Reporting bugs
Before reporting a bug, please check that it is not one of the
known issues below. Report bugs to bug-lyskom@lysator.liu.se.
Please give us the following information (at least):
o The LysKOM version you are using. This is shown when you start
LysKOM and is also contained in the variable
lyskom-clientversion.
o The symptoms of the bug. Please be as detailed as possible.
Please do not try to make conclusions. Just give us the facts.
o How you triggered the bug. If you know how to reproduce it,
please tell us. We're pretty good at fixing bugs we can
reproduce.
o How you started Emacs, what variables you have changed and
which packages you have loaded. If possible, try to reproduce
the bug with Emacs started with the -q command line switch.
The command kom-bug-report may come in handy. It gives us a lot of
information that you might not think of (such as what the internal
data structures look like).
4. Known issues
Issue: I see \201 before Swedish characters in the string showing
what some other user is doing (e.g. L\201äser).
Reason: The user is probably using an old version of the client in
a new version of Emacs. You can confirm this by using the
command kom-list-clients (Lista klienter, List clients).
Issue: I get the message "Key sequence < m o u s e - 2 > uses
invalid prefix characters" when I load lyskom.elc.
Reason: You have a file named macedit.el or macedit.elc installed.
Remove this file.
Issue: I get the "Symbol's value as variable is void: \," when I
try to run lyskom.
Reason: You have loaded the uncompiled client (e.g. lyskom.el or
lyskom-0.46.1.el). Compile the client and load the compiled
file (e.g. lyskom.elc or lyskom-0.46.1.elc).
Issue: Columns containing Swedish characters or characters in
numeric representation are not aligned correctly.
Reason: This happens in certain versions of Emacs when running
without multi-byte character support and is due to bugs in
Emacs. The only workaround is to either upgrade Emacs or
enable multi-byte character support.
Issue: Swedish characters show up as blanks, question marks or
numbers.
Reason: If Swedish characters show up as blanks your font probably
does not support them. If they show up as question marks or
numbers your language environment does not support them.
Make sure that your language environment is set correctly
with set-language-environment. Just setting the environment
variable LC_CTYPE to the proper value (iso_8859_1 is
usually correct) should be enough.
Do not use standard-display-european to fix this problem.