Declare keymaps using defvar explicitly
[geiser.git] / INSTALL
blobc17c0594c25cbe07501584306babb3fd55584a94
1 Installing Geiser.
2 ------------------
4 Geiser is usable from its source tree, with no configuration
5 whatsoever, or can be installed from ELPA with `M-x install-package'
6 is Marmalade is in your list of archives.  You can also (byte) compile
7 and install it with the usual configure/make/make install dance.
9 * From ELPA
11 Add Marmalade to your `package-archives' list:
13   (require 'package)
14   (add-to-list 'package-archives
15     '("marmalade" . "http://marmalade-repo.org/packages/"))
16   (package-initialize)
18 and run `M-x install-package RET geiser`.  You can also use
19 http://download.savannah.gnu.org/releases/geiser/packages as a repo,
20 or download directly the package from there and use M-x
21 package-install-file.
23 * In place
24     - Extract the tarball or clone the git repository anywhere in your
25       file system. Let's call that place <path-to-geiser>.
26     - In your .emacs:
28       (load-file "<path-to-geiser>/elisp/geiser.el")
30 * Byte-compiled
31     - Create a build directory, `build', say:
32       $ cd <path-to-geiser>
33       $ mkdir build; cd build
34     - Configure and make:
35       $ ../configure && make
37     Now, you can use the byte-compiled Geiser in place by adding to
38     your .emacs:
40     (load "<path-to-geiser>/build/elisp/geiser-load")
42     or, alternatively, install it with:
44     $ make install
46     (you might need to get root access, depending on your installation
47     directory) and, instead of the above load forms, require
48     'geiser-install (not 'geiser, mind you) in your emacs
49     initialization file:
51     (require 'geiser-install)
53 * Chicken Addendum
54     These steps are necessary to fully support Chicken Scheme, but are
55     not required for any other scheme.
57     - Install the necessary support eggs:
58       $ chicken-install -s apropos chicken-doc
59     - Update the Chicken documentation database:
60       $ cd `csi -p '(chicken-home)'`
61       $ curl http://3e8.org/pub/chicken-doc/chicken-doc-repo.tgz | sudo tar zx
63     You're ready to go!
65 * Gambit Addendum
66   These steps are necessary to fully support all Gambit Scheme functionalities,
67   but are not required for any other scheme.
69   # SETUP :
70     1 - clone the last version of gambit and of this repo
71     2 - configure gambit using --enable-rtlib-debug-source to activate autodoc
72     ``` bash
73     $ cd ~/
74     $ git clone "the gambit repo address"
75     $ cd gambit
76     $ ./configure --enable-single-host --enable-debug --enable-rtlib-debug-source
77     $ make bootstrap
78     $ make bootclean
79     $ make -j
80     $ make install
81     ```
82     3 - put a link to geiser/elisp/geiser.el in your init file
83     in your init file paste :
84     ``` elisp
85     (load-file "~/geiser/elisp/geiser.el")
86     ```
87     (the path is your path to geiser.el.)
89   # setup REMOTE CONNECT TO A GAMBIT REPL
90     1 - you need to enable the gambit/geiser module
91     ( if you can't,  substitute the command below
92       with the PS: at the end of the readme )
93     ``` bash
94     $ mkdir ~/gambit/lib/gambit/geiser
95     $ cp ~/geiser/geiser-module/* ~/gambit/lib/geiser/
96     ```
97     2 - now that you have the module you start gsi with it and using the -:d@
98     ``` bash
99     $ gsi -:d gambit/geiser -
100     ```
101     3 - you can now open emacs and write
102     ```
103     M-x geiser-connect gambit
104     ```
105   Enjoy !
107 By the way, if you are unable to use gambit modules,
108 open gsi with the gambit.scm file
109 located in geiser/scheme/gambit/geiser/gambit.scm
111 something like : gsi -:d@ ~/geiser/scheme/gambit/geiser/gambit.scm -
113 Geiser's makefile accepts also all those other standard autotools
114 targets that you've come to know and love and that are documented
115 in virtually all boilerplate INSTALL files out there.